#46 Update to 49.6.0
Merged 3 years ago by churchyard. Opened 3 years ago by pviktori.
rpms/ pviktori/python-setuptools 49.6.0  into  master

file modified
+8 -2
@@ -13,7 +13,7 @@ 

  

  Name:           python-setuptools

  # When updating, update the bundled libraries versions bellow!

- Version:        49.1.3

+ Version:        49.6.0

  Release:        1%{?dist}

  Summary:        Easily build and distribute Python packages

  # setuptools is MIT
@@ -39,6 +39,7 @@ 

  BuildRequires:  python3-mock

  BuildRequires:  python3-pytest-fixture-config

  BuildRequires:  python3-pytest-virtualenv

+ BuildRequires:  python3-jaraco-envs

  %endif # with tests

  %if %{without bootstrap}

  BuildRequires:  python3-pip
@@ -62,7 +63,7 @@ 

  # %%{_rpmconfigdir}/pythonbundles.py pkg_resources/_vendor/vendored.txt

  %global bundled %{expand:

  Provides: bundled(python3dist(appdirs)) = 1.4.3

- Provides: bundled(python3dist(packaging)) = 19.2

+ Provides: bundled(python3dist(packaging)) = 20.4

  Provides: bundled(python3dist(pyparsing)) = 2.2.1

  Provides: bundled(python3dist(six)) = 1.10

  }
@@ -166,6 +167,8 @@ 

  %{python3_sitelib}/easy_install.py

  %{python3_sitelib}/pkg_resources/

  %{python3_sitelib}/setuptools*/

+ %{python3_sitelib}/_distutils_hack/

+ %{python3_sitelib}/distutils-precedence.pth

  %{python3_sitelib}/__pycache__/*

  %{_bindir}/easy_install

  %{_bindir}/easy_install-3.*
@@ -180,6 +183,9 @@ 

  

  

  %changelog

+ * Fri Aug 21 2020 Petr Viktorin <pviktori@redhat.com> - 49.6.0-1

+ - Update to 49.6.0 (#1862791)

+ 

  * Wed Jul 29 2020 Miro Hrončok <mhroncok@redhat.com> - 49.1.3-1

  - Update to 49.1.3 (#1853597)

  - https://setuptools.readthedocs.io/en/latest/history.html#v49-1-3

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (setuptools-49.1.3.zip) = dcad685319a4863e754dec2406d9ce88740c12d54f8a0b04a790e54836346370ea86388c79e40fc6296ebd13bc645b6a3f6a78f987ef12e3e8f598be194c0d52

+ SHA512 (setuptools-49.6.0.zip) = aad6e74b0e276da0f79c9429860a6d1c7860a30e9a02ce55527abbe7671366640423a1e5476da9ecadfc62ae1bf803cb0c664e2a09cf7619a9c8ac3965b9cf31

Setuptools now has a "_distutils_hack" module that replaces the stdlib
"distutils" by setuptools._distutils whenever SETUPTOOLS_USE_DISTUTILS=local
is set. This will become the default in version 50.0.
The stdlib distutils module is deprecated and might be removed in some
future version of Python.
See: https://setuptools.readthedocs.io/en/latest/distutils-legacy.html

See CHANGES.rst for more changes.

Merge Failed.

This change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.

rebased onto 55659ca

3 years ago

Build failed.

There is an rpmlint error.

E: zero-length /usr/lib/python3.9/site-packages/setuptools-49.6.0.dist-info/REQUESTED

I'll try to change the general rpmlint configuration in Fedora to filter this out.

Zuul appears to use Fedora 32 to run rpmlint (right @fbo?).

https://bodhi.fedoraproject.org/updates/FEDORA-2020-e17f5f1103 is the Fedora 32 backport of the configuration change.

About the newly added patch. There is this is %prep:

# We don't do linting or coverage here
sed -i pytest.ini -e 's/ --flake8//' \
                  -e 's/ --cov//'

I don't want to discuss whether a patch or sed call is better, but certainly we should not need both. Has it stopped working?

1 new commit added

  • Remove the unneeded patch
3 years ago

Oops, I missed that. It does work without the patch; let me get rid of it.

Build failed.

Interesting failure in https://copr.fedorainfracloud.org/coprs/churchyard/setuptools-49.6.0/package/numpy/

=================================== FAILURES ===================================
_________________________ TestF77Mismatch.test_lapack __________________________

self = <numpy.linalg.tests.test_build.TestF77Mismatch object at 0x7f23accae8e0>

    @pytest.mark.skipif(not(sys.platform[:5] == 'linux'),
                        reason="no fortran compiler on non-Linux platform")
    def test_lapack(self):
        f = FindDependenciesLdd()
>       deps = f.grep_dependencies(lapack_lite.__file__,
                                   [b'libg2c', b'libgfortran'])

f          = <numpy.linalg.tests.test_build.FindDependenciesLdd object at 0x7f23a4fb6be0>
self       = <numpy.linalg.tests.test_build.TestF77Mismatch object at 0x7f23accae8e0>

numpy/linalg/tests/test_build.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
numpy/linalg/tests/test_build.py:30: in grep_dependencies
    stdout = self.get_dependencies(lfile)
        deps       = [b'libg2c', b'libgfortran']
        lfile      = '/builddir/build/BUILD/numpy-1.19.1/build/testenv/lib64/python3.9/site-packages/numpy/linalg/lapack_lite.cpython-39-x86_64-linux-gnu.so'
        self       = <numpy.linalg.tests.test_build.FindDependenciesLdd object at 0x7f23a4fb6be0>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <numpy.linalg.tests.test_build.FindDependenciesLdd object at 0x7f23a4fb6be0>
lfile = '/builddir/build/BUILD/numpy-1.19.1/build/testenv/lib64/python3.9/site-packages/numpy/linalg/lapack_lite.cpython-39-x86_64-linux-gnu.so'

    def get_dependencies(self, lfile):
        p = Popen(self.cmd + [lfile], stdout=PIPE, stderr=PIPE)
        stdout, stderr = p.communicate()
        if not (p.returncode == 0):
>           raise RuntimeError("failed dependencies check for %s" % lfile)
E           RuntimeError: failed dependencies check for /builddir/build/BUILD/numpy-1.19.1/build/testenv/lib64/python3.9/site-packages/numpy/linalg/lapack_lite.cpython-39-x86_64-linux-gnu.so

lfile      = '/builddir/build/BUILD/numpy-1.19.1/build/testenv/lib64/python3.9/site-packages/numpy/linalg/lapack_lite.cpython-39-x86_64-linux-gnu.so'
p          = <Popen: returncode: 1 args: ['ldd', '/builddir/build/BUILD/numpy-1.19.1/buil...>
self       = <numpy.linalg.tests.test_build.FindDependenciesLdd object at 0x7f23a4fb6be0>
stderr     = b"ldd: error: you do not have read permission for `/builddir/build/BUILD/numpy-1.19.1/build/testenv/lib64/python3.9/site-packages/numpy/linalg/lapack_lite.cpython-39-x86_64-linux-gnu.so'\n"
stdout     = b''

numpy/linalg/tests/test_build.py:25: RuntimeError

Due to https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe we patch distutils (see patch 251 in python3.9 package or the commit in https://github.com/fedora-python/cpython/commits/fedora-3.9).

Setuptools bundles the same code here. I wonder whether we need to repeat the patch here as well. Will do some testing.

Yes, running:

$ export SETUPTOOLS_USE_DISTUTILS=local
$ sudo python3 setup.py install

Makes the project go into /usr/lib/python3.9/site-packages. We need to apply the patch here as well :(

Also technically, if people will update setuptools in their local and then use it to sudo install stuff, they'll get this as well. Not much we can do about this code-wise I am afraid.

The numpy failure seem to no longer happen, running a third build to verify.

The local distutils is only used on demand, so I think we can ship this (I'll verify).

Pull-Request has been merged by churchyard

3 years ago