[
https://issues.apache.org/jira/browse/MESOS-5672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15346893#comment-15346893
]
J. Bobby Dorlus edited comment on MESOS-5672 at 6/23/16 6:18 PM:
-----------------------------------------------------------------
This will be an internal versioning/tagging/labeling issue we'll have to
work-around being that the project has moved from distribute to setuptools
[RB:46813|https://reviews.apache.org/r/46813/]. When building EGG/WHL(s)
setuptools will enforce [PEP 440 | https://www.python.org/dev/peps/pep-0440/]
standards which will
[normalize|https://www.python.org/dev/peps/pep-0440/#normalization] '1.0.0-rc0'
to '1.0.0rc0'. This side-affect will also cause us to revisit our internal
versioning which will actually raise an InvalidVersion exception if we build
with version '1.0.0_tw1':
{code}
In [2]: m = '1.0.0_tw1'
In [3]: version.Version(m)
---------------------------------------------------------------------------
InvalidVersion Traceback (most recent call last)
<ipython-input-3-8996505f8615> in <module>()
----> 1 version.Version(m)
/Users/jdorlus/dev/Apache/mesos/3rdparty/setuptools-20.9.0/pkg_resources/_vendor/packaging/version.py
in __init__(self, version)
200 match = self._regex.search(version)
201 if not match:
--> 202 raise InvalidVersion("Invalid version:
'{0}'".format(version))
203
204 # Store the parsed out pieces of the version
InvalidVersion: Invalid version: '1.0.0_tw1'
{code}
was (Author: jdorlus):
This will be an internal versioning/tagging/labeling issue we'll have to
work-around being that the project has moved from distribute to setuptools
[RB:46813|https://reviews.apache.org/r/46813/]. When building EGG/WHL(s)
setuptools will enforce [PEP 440 | https://www.python.org/dev/peps/pep-0440/]
standards which will
[normalize|https://www.python.org/dev/peps/pep-0440/#normalization] '1.0.0-rc0'
to '1.0.0rc0'. This side-affect will also cause us to revisit our internal
versioning which will actually raise an InvalidVersion exception if we build
with version '0.28.2_tw2':
{code}
In [4]: m = '0.28.2_tw2'
In [5]: version.Version(m)
---------------------------------------------------------------------------
InvalidVersion Traceback (most recent call last)
<ipython-input-5-8996505f8615> in <module>()
----> 1 version.Version(m)
/Users/jdorlus/dev/GitHub/mesos/3rdparty/setuptools-20.9.0/pkg_resources/_vendor/packaging/version.py
in __init__(self, version)
200 match = self._regex.search(version)
201 if not match:
--> 202 raise InvalidVersion("Invalid version:
'{0}'".format(version))
203
204 # Store the parsed out pieces of the version
InvalidVersion: Invalid version: '0.28.2_tw2'
{code}
> Py Setuptools Normalizing EGG/WHL Versions from '1.0.0-rc0' to '1.0.0rc0'
> -------------------------------------------------------------------------
>
> Key: MESOS-5672
> URL: https://issues.apache.org/jira/browse/MESOS-5672
> Project: Mesos
> Issue Type: Bug
> Components: build
> Affects Versions: 1.0.0
> Reporter: J. Bobby Dorlus
>
> Is this the expected result post build for the version number to be
> normalized to '1.0.0rc0'?
> *EGG/WHL(s)*
> {code}
> <mock-chroot>sh-3.2# pwd
> /builddir/build/BUILD/mesos-1.0.0/src/python/dist
> <mock-chroot>sh-3.2# ls
> mesos-1.0.0rc0-py2.7.egg
> mesos.interface-1.0.0rc0-py2.7.egg
> mesos-1.0.0rc0-py2-none-any.whl
> mesos.interface-1.0.0rc0-py2-none-any.whl
> mesos.cli-1.0.0rc0-py2.7.egg
> mesos.native-1.0.0rc0-py2.7.egg
> mesos.cli-1.0.0rc0-py2-none-any.whl
> mesos.native-1.0.0rc0-py2-none-any.whl
> mesos.executor-1.0.0rc0-cp27-none-linux_x86_64.whl
> mesos.scheduler-1.0.0rc0-cp27-none-linux_x86_64.whl
> mesos.executor-1.0.0rc0-py2.7-linux-x86_64.egg
> mesos.scheduler-1.0.0rc0-py2.7-linux-x86_64.egg
> {code}
> *build.log*
> {code}
> DEBUG: libtool: link: g++ -shared -nostdlib /usr/lib/../lib64/crti.o
> /opt/rh/devtoolset-2/root/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtbeginS.o
> -Wl,--whole-archive ./.libs/libmesos_no_3rdparty.a
> ../3rdparty/libprocess/.libs/libprocess.a ./.libs/libjava.a
> -Wl,--no-whole-archive ../3rdparty/glog-0.3.3/.libs/libglog.a
> -L/usr/lib/../lib64 ../3rdparty/leveldb-1.4/libleveldb.a
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/glog-0.3.3/.libs/libglog.a
> -L/usr/lib64
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/libev-4.22/.libs/libev.a
> ../3rdparty/protobuf-2.6.1/src/.libs/libprotobuf.a
> ../3rdparty/zookeeper-3.4.8/src/c/.libs/libzookeeper_mt.a
> /usr/lib64/libsvn_delta-1.so /usr/lib64/libsvn_subr-1.so
> /usr/lib64/libaprutil-1.so -lcrypt -lldap -llber /usr/lib64/libdb-4.3.so
> /usr/lib64/libexpat.so -lsasl2 -lnl-idiag-3 -lnl-route-3 -lnl-3 -lcurl
> /usr/lib64/libapr-1.so -lpthread -ldl -lz -lrt /usr/lib64/libunwind.so -lgcc
> -L/opt/rh/devtoolset-2/root/usr/lib/gcc/x86_64-redhat-linux/4.8.2
> -L/opt/rh/devtoolset-2/root/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../../lib64
> -L/lib/../lib64
> -L/opt/rh/devtoolset-2/root/usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../..
> -lstdc++ -lm -lc -lgcc_s
> /opt/rh/devtoolset-2/root/usr/lib/gcc/x86_64-redhat-linux/4.8.2/crtendS.o
> /usr/lib/../lib64/crtn.o -m64 -mtune=generic -pthread -Wl,-soname
> -Wl,libmesos-1.0.0-rc0.so -o .libs/libmesos-1.0.0-rc0.so
> DEBUG:
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/setuptools-20.9.0/setuptools/dist.py:285:
> UserWarning: Normalizing '1.0.0-rc0' to '1.0.0rc0'
> DEBUG: normalized_version,
> DEBUG:
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/setuptools-20.9.0/setuptools/dist.py:285:
> UserWarning: Normalizing '1.0.0-rc0' to '1.0.0rc0'
> DEBUG: normalized_version,
> DEBUG:
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/setuptools-20.9.0/setuptools/dist.py:285:
> UserWarning: Normalizing '1.0.0-rc0' to '1.0.0rc0'
> DEBUG: normalized_version,
> DEBUG:
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/setuptools-20.9.0/setuptools/dist.py:285:
> UserWarning: Normalizing '1.0.0-rc0' to '1.0.0rc0'
> DEBUG: normalized_version,
> DEBUG:
> /builddir/build/BUILD/mesos-1.0.0/3rdparty/setuptools-20.9.0/setuptools/dist.py:285:
> UserWarning: Normalizing '1.0.0-rc0' to '1.0.0rc0'
> DEBUG: normalized_version,
> DEBUG: running bdist_egg
> DEBUG: running bdist_egg
> DEBUG: running bdist_egg
> DEBUG: running bdist_egg
> DEBUG: running bdist_egg
> DEBUG: running egg_info
> DEBUG: creating src/mesos.executor.egg-info
> DEBUG: writing requirements to src/mesos.executor.egg-info/requires.txt
> DEBUG: writing src/mesos.executor.egg-info/PKG-INFO
> ..........
> DEBUG: writing build/bdist.linux-x86_64/egg/EGG-INFO/native_libs.txt
> DEBUG: zip_safe flag not set; analyzing archive contents...
> DEBUG: mesos.__init__: module references __path__
> DEBUG: creating
> '/builddir/build/BUILD/mesos-1.0.0/src/python/dist/mesos.executor-1.0.0rc0-py2.7-linux-x86_64.egg'
> and adding 'build/bdist.linux-x86_64/egg' to it
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)