watchdog 1.0 lacks python-requires metadata and breaks Python 2 applications not pinning the version

Created on 10 Dec 2020  路  8Comments  路  Source: gorakhargosh/watchdog

First of all, please yank the 1.0.0 release from PyPI - it's broken.

While you have the correct python_requires metadata in setup.py, this metadata is missing on PyPI. This may have happened because you built the package or uploaded it with outdated tooling - having the latest setuptools installed and using twine upload to upload the sdist (or better: the Python wheel!) usually avoids it.

What you can to do fix it:

  • Yank 1.0.0 from PyPI so people no longer get it unless they explicitly ask for this version
  • Release a fixed 1.0.1 version that has the correct metadata.

Tip: You can test via testpypi first in order to not pollute PyPI with a broken 1.0.1 version.

Most helpful comment

OK it should be good now 馃

All 8 comments

For example, pip install sphinx-autobuild pulls in the new watchdog version and thus fails on Python 2.

Hm could you open a PR with required changes in order to fix the mess?
I used setuptools==49.2.1 and a simple python setup.py sdist upload. Yet I know twine is the good move, but how does this have an impact on a release?

I am not an expert on the packaging, so any help is welcome to fix the situation ASAP :)

AFAIK python setup.py sdist upload does not include this metadata; so using twine to upload the same package should do the job (if you check your sdist, the PKG-INFO file in there does contain the metadata, it's just not being sent to PyPI during upload when you do not use twine). See https://stackoverflow.com/a/43851706/298479 for details.

FWIW, this is also a good opportunity to release a wheel in addition to the sdist :)

FTR wheels are out of the table for now.

Ah, I didn't notice you include C code. Nevermind on the wheels then, not that important anyway :)

I would love to release wheels, but it will be for later ;)

OK it should be good now 馃

I can confirm that projects running on python>3.5 depending on watchdog<0.11 now pull 0.10.4 again instead of the newer 1.0.0 or 0.10.[56] versions when installed.

Thanks for the quick reaction @BoboTiG !

Was this page helpful?
0 / 5 - 0 ratings