Skip to content

Update setup.py packaging before dropping Python 3.4 support #281

@nitzmahone

Description

@nitzmahone

setup.py needs to be updated to a newer technology than distutils before we drop support for another Python version. setuptools should be the "easiest" to leave most of the existing custom code in place to support the extension build and integrated testing, etc, but there are other options that I'm sure @webknjaz would love to talk about ;).

We properly updated setup.py's metadata when dropping Python 2.6 and 3.3 support, however, our setup.py is still based on distutils, which doesn't understand python_requires (and prevents pypi from extracting the necessary metadata to ensure that unsupported Pythons will fall back to the last release that did support them). So today, anyone that's doing pip install pyyaml with an unsupported Python will install the latest release, but it will bomb out at install-time with something like PyYAML requires Python '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*' but the running Python is 2.6.9 instead of installing a prior release that did support it.

Since we've released one that way, the fallback to 3.13 will never work again unless all the intermediate releases were pulled (uh, no ;) ). So either we say "tough noogies" or we release a single 5.x version with Python 2.6 and 3.3 support listed (on a packaging framework that supports the right metadata) to fix the glitch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions