visual-layer / fastdup

fastdup is a powerful free tool designed to rapidly extract valuable insights from your image & video datasets. Assisting you to increase your dataset images & labels quality and reduce your data operations costs at an unparalleled scale.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Bug]: Cannot install fastdup on Ubuntu with Python 3.7

dnth opened this issue · comments

What happened?

I ran pip install fastdup in a Python 3.7 conda environment and pip could not resolve a version for the installation.

The following is the error.

ERROR: Cannot install fastdup==1.32, fastdup==1.33, fastdup==1.34, fastdup==1.35, fastdup==1.36, fastdup==1.38, fastdup==1.39, fastdup==1.41, fastdup==1.43, fastdup==1.44, fastdup==1.45, fastdup==1.46, fastdup==1.47, fastdup==1.48, fastdup==1.49 and fastdup==1.50 because these package versions have conflicting dependencies.

The conflict is caused by:
    fastdup 1.50 depends on numpy==1.23
    fastdup 1.49 depends on numpy==1.23
    fastdup 1.48 depends on numpy==1.23
    fastdup 1.47 depends on numpy==1.23
    fastdup 1.46 depends on numpy==1.23
    fastdup 1.45 depends on numpy==1.23
    fastdup 1.44 depends on numpy==1.23
    fastdup 1.43 depends on numpy==1.23
    fastdup 1.41 depends on numpy==1.23
    fastdup 1.39 depends on numpy==1.23
    fastdup 1.38 depends on numpy==1.23
    fastdup 1.36 depends on numpy==1.23
    fastdup 1.35 depends on numpy==1.23
    fastdup 1.34 depends on numpy==1.23
    fastdup 1.33 depends on numpy==1.23
    fastdup 1.32 depends on numpy==1.23

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

I think it's because numpy==1.23 wheel does not exist for Python 3.7. See here - https://pypi.org/project/numpy/1.23.0/#files

What did you expect to see?

Successful installation on Python version officially supported by fastdup.

What version of fastdup were you runnning on?

None

What version of Python were you running on?

Python 3.7

Operating System

Ubuntu 22.04

Reproduction steps

  1. Create a Python 3.7 virtual env.
  2. Run pip install fastdup.

Relevant log output

No response

Attach a screenshot [Optional]

No response

Contact Details [Optional]

No response

hi @dnth please post pip3 debug --verbose

@dbickson the reason is because numpy==1.23 does not exist for Python 3.7. The wheels are only compiled for Python >= 3.8

See the list of available wheels on PyPI here.

Perhaps we could relax the requirement of numpy==1.23? If I'm not wrong it's just used for the paddleocr compatibility right?

A workaround:

pip install fastdup --no-deps
pip install pandas numpy opencv-python-headless packaging pillow pillow-heif pyyaml requests==2.28.1 sentry-sdk tqdm

On a broader scale, Python 3.7 reached it's EOL in June 2023. Perhaps we should drop support for 3.7 and start supporting 3.11?

Fixed on 1.65