SimpleITK / SimpleITKPythonPackage

A setup script to generate a Python Wheels
17 stars 11 forks source link

Update setup version and descriptions #36

Closed blowekamp closed 7 years ago

jcfr commented 7 years ago

With the introduction of +pythonpackage what will be the version string for a source distribution ?

blowekamp commented 7 years ago

These are the dist files produced:

SimpleITK-1.0.1+pythonpackage-cp27-cp27mu-linux_x86_64.whl
SimpleITK-1.0.1+pythonpackage.tar.gz
SimpleITK-1.0.1+pythonpackage.zip

Behavior of version comparison is not quite as expected:

>>> from distutils.version import LooseVersion, StrictVersion
>>> LooseVersion("1.0.1") == LooseVersion("1.0.1+pythonpackage")
False
>>> LooseVersion("1.0.1") > LooseVersion("1.0.1+pythonpackage")
False
>>> LooseVersion("1.0.1") < LooseVersion("1.0.1+pythonpackage")
True

Additionally, PEP 440 specifically says the the local version identifier MUST NOT be used in PiPy.

The addition of +pythonpackage is NOT suitable for distinguishing this Python source distribution from the main SimpleITK distribution. So it appears the file names must be the same.

jcfr commented 7 years ago

Thanks for clarifying

The addition of +pythonpackage is a suitable for distinguishing this Python source distribution form the main SimpleITK distribution.

Since source distribution can (and should) also be distributed on PyPi, should a normal version scheme be used for them ?

blowekamp commented 7 years ago

Apologies to for the confusing error in the previous comment; its now corrected.

The version of the source must be the same as the binary wheels or there would be preference when pip chooses the latest version. And the package name must be SimpleITK too. So I believe there is no alternative but to have the source package be named SimpleITK-1.0.1.tar.gz. Any other options?

blowekamp commented 7 years ago

Abandoning local version specifier #37