[Cython] [cython-users] Re: Cython 0.17 beta 1 released
Yaroslav Halchenko
lists at onerussian.com
Thu Aug 2 19:02:48 CEST 2012
On Thu, 02 Aug 2012, Stefan Behnel wrote:
> Bradley M. Froehle, 01.08.2012 18:35:
> > Yes, this versioning has also impacted mpi4py which had to add some pretty ugly code in setup.py to work around it:
> > https://code.google.com/p/mpi4py/source/detail?r=841e9df
> >> I am not sure what is the status on PEP 386 [1] (not yet adopted afaik)
> It's in state "Accepted".
ah right -- now it is in python3 (but not in python2):
(git)novo:~/proj/misc/cpython[2.7]git
$> git grep NormalizedVersion 2.7
$> git grep NormalizedVersion master
master:Doc/library/packaging.version.rst:.. class:: NormalizedVersion(self, s, error_on_huge_major_num=True)
master:Doc/library/packaging.version.rst: >>> NormalizedVersion('1.2b1') < NormalizedVersion('1.2')
master:Doc/library/packaging.version.rst: :class:`NormalizedVersion` is used internally by :class:`VersionPredicate` to
master:Doc/library/packaging.version.rst: :class:`NormalizedVersion`.
master:Doc/library/packaging.version.rst: >>> NormalizedVersion("irrational_version_number")
master:Lib/packaging/command/bdist_msi.py:from packaging.version import NormalizedVersion
master:Lib/packaging/command/bdist_msi.py:class MSIVersion(NormalizedVersion):
master:Lib/packaging/errors.py: See `error_on_huge_major_num` option in `NormalizedVersion` for details.
master:Lib/packaging/pypi/dist.py:from packaging.version import (suggest_normalized_version, NormalizedVersion,
master:Lib/packaging/pypi/dist.py: self._version = NormalizedVersion(version)
master:Lib/packaging/tests/test_version.py:from packaging.version import NormalizedVersion as V
master:Lib/packaging/tests/test_version.py: self.assertEqual(repr(V('1.0')), "NormalizedVersion('1.0')")
master:Lib/packaging/tests/test_version.py: TypeError: cannot compare NormalizedVersion and str
master:Lib/packaging/tests/test_version.py: TypeError: cannot compare NormalizedVersion and str
master:Lib/packaging/version.py:__all__ = ['NormalizedVersion', 'suggest_normalized_version',
master:Lib/packaging/version.py:class NormalizedVersion:
master:Lib/packaging/version.py: """Create a NormalizedVersion instance from a version string.
master:Lib/packaging/version.py: the introduction of `NormalizedVersion` was version numbers like
master:Lib/packaging/version.py: if not isinstance(other, NormalizedVersion):
master:Lib/packaging/version.py: if not isinstance(other, NormalizedVersion):
master:Lib/packaging/version.py: If you have a version string that isn't rational (i.e. NormalizedVersion
master:Lib/packaging/version.py: - 2312 (53.93%) match NormalizedVersion without change
master:Lib/packaging/version.py: NormalizedVersion(s)
master:Lib/packaging/version.py: NormalizedVersion(rs)
master:Lib/packaging/version.py: return comp, NormalizedVersion(version)
master:Lib/packaging/version.py: version = NormalizedVersion(version)
> >> parsing the version -- bzr and xpra I believe [2]. So may be it is worth
> >> making it '0.17b1' (and use corresponding tags accordingly)?
> I guess so. That would fit the StrictVersion scheme.
just a side-note -- I didn't know that StrictVersion doesn't play nicely with LooseVersion to any degree:
$> python -c 'from distutils.version import LooseVersion as LV, StrictVersion as SV; print SV("0.17") > LV("0.18")'
True
at least in python3 it pukes:
$> python3 -c 'from distutils.version import LooseVersion as LV, StrictVersion as SV; print(SV("0.17") > LV("0.18"))'
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python3.2/distutils/version.py", line 70, in __gt__
c = self._cmp(other)
File "/usr/lib/python3.2/distutils/version.py", line 179, in _cmp
if self.version < other.version:
TypeError: unorderable types: tuple() < list()
--
Yaroslav O. Halchenko
Postdoctoral Fellow, Department of Psychological and Brain Sciences
Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755
Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419
WWW: http://www.linkedin.com/in/yarik
More information about the cython-devel
mailing list