#56 Rebase to version 2022.10.25
Merged a year ago by churchyard. Opened 2 years ago by torsava.
rpms/ torsava/pipenv rebase-2022.10.25  into  rawhide

file modified
+3
@@ -16,3 +16,6 @@ 

  /pipenv-test-artifacts-f5530013426d6392d67cd1703f379d20a768c1cf.tar.gz

  /pipenv-2022.1.8.tar.gz

  /pipenv-2022.5.2.tar.gz

+ /pipenv-2022.7.24.tar.gz

+ /pipenv-2022.8.5.tar.gz

+ /pipenv-2022.10.25.tar.gz

@@ -1,4 +1,4 @@ 

- From 2e7ff8ba15ea146440127eec95ebd06d88a4110a Mon Sep 17 00:00:00 2001

+ From a38de780c259471975b72568ac9858d792ccccae Mon Sep 17 00:00:00 2001

  From: Tomas Orsava <torsava@redhat.com>

  Date: Tue, 5 May 2020 18:20:02 +0200

  Subject: [PATCH] Adds "pytest_pypi.plugin import pypi, ..." to conftest
@@ -9,17 +9,17 @@ 

   1 file changed, 1 insertion(+)

  

  diff --git a/tests/integration/conftest.py b/tests/integration/conftest.py

- index 50f0ea8..4031e69 100644

+ index 66156cf..8533a6d 100644

  --- a/tests/integration/conftest.py

  +++ b/tests/integration/conftest.py

- @@ -17,6 +17,7 @@ import requests

-  from click.testing import CliRunner

+ @@ -28,6 +28,7 @@ from pipenv.vendor.vistir.path import (

+  

   from pytest_pypi.app import prepare_fixtures

   from pytest_pypi.app import prepare_packages as prepare_pypi_packages

  +from pytest_pypi.plugin import pypi, pypi_secure

+  import pypiserver

   

-  from pipenv.cli import cli

-  from pipenv.exceptions import VirtualenvActivationException

+  log = logging.getLogger(__name__)

  -- 

- 2.33.1

+ 2.37.3

  

file modified
+28 -28
@@ -19,59 +19,59 @@ 

  

  # == BEGIN_MACHINE_READABLE_DATA for ./license-helper.py ==

  

- # pipenv/patched/crayons.py is MIT

- # pipenv/patched/notpip/ is ASL 2.0 and BSD and MIT

- # pipenv/patched/notpip/appdirs.py is MIT

- # pipenv/patched/notpip/distro.py is ASL 2.0

- # pipenv/patched/notpip/pyparsing.py is MIT

- # pipenv/patched/notpip/six.py is ASL 2.0

- # pipenv/patched/notpip/typing_extensions.py is Python

- # pipenv/patched/pipfile/ is (ASL 2.0 or BSD)

+ # pipenv/patched/pip/ is ASL 2.0 and BSD and MIT

+ # pipenv/patched/pip/_vendor/cachecontrol/ is ASL 2.0

+ # pipenv/patched/pip/_vendor/certifi/ is MPLv2.0

+ # pipenv/patched/pip/_vendor/chardet/ is LGPLv2+

+ # pipenv/patched/pip/_vendor/colorama/ is BSD

+ # pipenv/patched/pip/_vendor/distlib/ is Python

+ # pipenv/patched/pip/_vendor/distro/ is ASL 2.0

+ # pipenv/patched/pip/_vendor/idna/ is BSD

+ # pipenv/patched/pip/_vendor/msgpack/ is ASL 2.0

+ # pipenv/patched/pip/_vendor/packaging/ is (ASL 2.0 or BSD)

+ # pipenv/patched/pip/_vendor/pep517/ is MIT and ASL 2.0

+ # pipenv/patched/pip/_vendor/pkg_resources/ is MIT

+ # pipenv/patched/pip/_vendor/platformdirs/ is MIT

+ # pipenv/patched/pip/_vendor/pygments/ is BSD

+ # pipenv/patched/pip/_vendor/pyparsing/ is MIT

+ # pipenv/patched/pip/_vendor/requests/ is ASL 2.0

+ # pipenv/patched/pip/_vendor/resolvelib/ is ISC

+ # pipenv/patched/pip/_vendor/rich/ is MIT

+ # pipenv/patched/pip/_vendor/six.py is MIT

+ # pipenv/patched/pip/_vendor/tenacity/ is ASL 2.0

+ # pipenv/patched/pip/_vendor/tomli/ is MIT

+ # pipenv/patched/pip/_vendor/typing_extensions.py is Python

+ # pipenv/patched/pip/_vendor/urllib3/ is MIT

+ # pipenv/patched/pip/_vendor/webencodings/ is BSD

+ # pipenv/patched/pip/six.py is ASL 2.0

+ # pipenv/patched/pip/typing_extensions.py is Python

  # pipenv/patched/safety/ is MIT

- # pipenv/patched/yaml3/ is MIT

  # pipenv/vendor/ is MIT

- # pipenv/vendor/appdirs.py is MIT

  # pipenv/vendor/attr/ is MIT

- # pipenv/vendor/cached-property.py is BSD

- # pipenv/vendor/cached_property.py is BSD

  # pipenv/vendor/cerberus/ is ISC

- # pipenv/vendor/certifi/ is MPLv2.0

- # pipenv/vendor/charset_normalizer/ is MIT

  # pipenv/vendor/click/ is BSD

  # pipenv/vendor/click_didyoumean/ is MIT

  # pipenv/vendor/colorama/ is BSD

  # pipenv/vendor/distlib/ is Python

  # pipenv/vendor/dotenv/ is BSD

  # pipenv/vendor/dparse/ is MIT

- # pipenv/vendor/funcsigs/ is ASL 2.0

  # pipenv/vendor/idna/ is BSD

- # pipenv/vendor/importlib_metadata/ is ASL 2.0

- # pipenv/vendor/importlib_resources/ is ASL 2.0

- # pipenv/vendor/iso8601/ is MIT

  # pipenv/vendor/markupsafe/ is BSD

- # pipenv/vendor/orderedmultidict/ is Unlicense

- # pipenv/vendor/packaging/ is (ASL 2.0 or BSD)

  # pipenv/vendor/parse.py is MIT

- # pipenv/vendor/pep517/ is MIT and ASL 2.0

  # pipenv/vendor/pexpect/ is ISC

- # pipenv/vendor/pip_shims/ is BSD

- # pipenv/vendor/pipdeptree.py is MIT

+ # pipenv/vendor/pipdeptree/ is MIT

+ # pipenv/vendor/platformdirs/ is MIT

  # pipenv/vendor/plette/ is ISC

  # pipenv/vendor/ptyprocess/ is ISC

- # pipenv/vendor/pyparsing.py is MIT

  # pipenv/vendor/pyparsing/ is MIT

  # pipenv/vendor/pythonfinder/ is MIT

  # pipenv/vendor/pythonfinder/_vendor/pep514tools/ is MIT

- # pipenv/vendor/requests/ is ASL 2.0

  # pipenv/vendor/requirementslib/ is MIT

  # pipenv/vendor/shellingham/ is ISC

- # pipenv/vendor/six.py is MIT

  # pipenv/vendor/termcolor.py is MIT

  # pipenv/vendor/toml/ is MIT

  # pipenv/vendor/tomli/ is MIT

  # pipenv/vendor/tomlkit/ is MIT

- # pipenv/vendor/urllib3/ is MIT

  # pipenv/vendor/vistir/ is BSD

  # pipenv/vendor/wheel/ is MIT

  # pipenv/vendor/yaspin/ is MIT

- # pipenv/vendor/zipp.py is MIT

file modified
+31 -23
@@ -1,4 +1,4 @@ 

- From c3e68aae3254511d9dcb4dcaa5e665956528054c Mon Sep 17 00:00:00 2001

+ From df6c4088910c1f931ca7d525c68fda4259ffa4a9 Mon Sep 17 00:00:00 2001

  From: Tomas Orsava <torsava@redhat.com>

  Date: Mon, 31 Jan 2022 16:51:09 +0100

  Subject: [PATCH] Use the system level root certificate instead of the one
@@ -9,35 +9,43 @@ 

  Patch adapted from the certify package:

  https://src.fedoraproject.org/rpms/python-certifi/blob/da7f303d2c2d3260ddeda4ec09a6581789431d05/f/certifi-2020.11.8-use-system-cert.patch

  ---

-  pipenv/patched/notpip/_vendor/certifi/core.py | 8 ++++----

-  1 file changed, 4 insertions(+), 4 deletions(-)

+  pipenv/patched/pip/_vendor/certifi/core.py | 10 ++++------

+  1 file changed, 4 insertions(+), 6 deletions(-)

  

- diff --git a/pipenv/patched/notpip/_vendor/certifi/core.py b/pipenv/patched/notpip/_vendor/certifi/core.py

- index 5b06ce3..41efd00 100644

- --- a/pipenv/patched/notpip/_vendor/certifi/core.py

- +++ b/pipenv/patched/notpip/_vendor/certifi/core.py

- @@ -14,6 +14,8 @@ class _PipPatchedCertificate(Exception):

-  

-  

-  try:

- +    raise ImportError  # force fallback

- +

-      # Return a certificate file on disk for a standalone pip zipapp running in

-      # an isolated build environment to use. Passing --cert to the standalone

-      # pip does not work since requests calls where() unconditionally on import.

- @@ -67,10 +69,8 @@ except ImportError:

+ diff --git a/pipenv/patched/pip/_vendor/certifi/core.py b/pipenv/patched/pip/_vendor/certifi/core.py

+ index 7d22547..e636fc4 100644

+ --- a/pipenv/patched/pip/_vendor/certifi/core.py

+ +++ b/pipenv/patched/pip/_vendor/certifi/core.py

+ @@ -7,7 +7,7 @@ This module returns the installation location of cacert.pem or its contents.

+  import sys

+  

+  

+ -if sys.version_info >= (3, 11):

+ +if False and sys.version_info >= (3, 11):

+  

+      from importlib.resources import as_file, files

+  

+ @@ -41,7 +41,7 @@ if sys.version_info >= (3, 11):

+      def contents() -> str:

+          return files("pipenv.patched.pip._vendor.certifi").joinpath("cacert.pem").read_text(encoding="ascii")

+  

+ -elif sys.version_info >= (3, 7):

+ +elif False and sys.version_info >= (3, 7):

+  

+      from importlib.resources import path as get_path, read_text

+  

+ @@ -100,9 +100,7 @@ else:

       # If we don't have importlib.resources, then we will just do the old logic

       # of assuming we're on the filesystem and munge the path directly.

-      def where():

+      def where() -> str:

  -        f = os.path.dirname(__file__)

  -

  -        return os.path.join(f, "cacert.pem")

  +        return '/etc/pki/tls/certs/ca-bundle.crt'

   

-  

-  def contents():

- -    return read_text("certifi", "cacert.pem", encoding="ascii")

- +    return read_text("certifi", "cacert.pem", encoding="utf-8")

+      def contents() -> str:

+ -        return read_text("pipenv.patched.pip._vendor.certifi", "cacert.pem", encoding="ascii")

+ +        return read_text("pipenv.patched.pip._vendor.certifi", "cacert.pem", encoding="utf-8")

  -- 

- 2.33.1

+ 2.37.3

  

@@ -0,0 +1,48 @@ 

+ From 67d3097f1f337b63d19f95470def367467af9fed Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Tin=20Tvrtkovi=C4=87?= <tinchester@gmail.com>

+ Date: Sun, 16 Jan 2022 02:37:19 +0100

+ Subject: [PATCH] Fix set_closure_cell on 3.11

+ 

+ ---

+  pipenv/vendor/attr/_compat.py | 25 ++++++++++++++++---------

+  1 file changed, 16 insertions(+), 9 deletions(-)

+ 

+ diff --git a/pipenv/vendor/attr/_compat.py b/pipenv/vendor/attr/_compat.py

+ index 6939f33..d385a7d 100644

+ --- a/pipenv/vendor/attr/_compat.py

+ +++ b/pipenv/vendor/attr/_compat.py

+ @@ -206,15 +206,22 @@ def make_set_closure_cell():

+              )

+              set_first_freevar_code = types.CodeType(*args)

+  

+ -        def set_closure_cell(cell, value):

+ -            # Create a function using the set_first_freevar_code,

+ -            # whose first closure cell is `cell`. Calling it will

+ -            # change the value of that cell.

+ -            setter = types.FunctionType(

+ -                set_first_freevar_code, {}, "setter", (), (cell,)

+ -            )

+ -            # And call it to set the cell.

+ -            setter(value)

+ +        if sys.version_info >= (3, 11):

+ +

+ +            def set_closure_cell(cell, value):

+ +                cell.cell_contents = value

+ +

+ +        else:

+ +

+ +            def set_closure_cell(cell, value):

+ +                # Create a function using the set_first_freevar_code,

+ +                # whose first closure cell is `cell`. Calling it will

+ +                # change the value of that cell.

+ +                setter = types.FunctionType(

+ +                    set_first_freevar_code, {}, "setter", (), (cell,)

+ +                )

+ +                # And call it to set the cell.

+ +                setter(value)

+  

+          # Make sure it works on this interpreter:

+          def make_func_with_cell():

+ -- 

+ 2.37.3

+ 

file modified
+82 -95
@@ -3,15 +3,16 @@ 

  # - Update the test_artifacts_commit macro to point to the correct commit

  # - Upload both new sources to the side cache

  # - Update the `bundled-licenses` file (see guidance inside)

+ # - Update the License tag (see guidance above it)

  # - Update licenses in %%files section (see guidance in that section)

  # - Update versions of bundled packages (see files

  #     * pipenv/vendor/vendor.txt

  #     * pipenv/patched/patched.txt

- #     * pipenv/patched/notpip/_vendor/vendor.txt [previously located at pipenv/vendor/vendor_pip.txt]

+ #     * pipenv/patched/pip/_vendor/vendor.txt [previously: pipenv/patched/notpip/_vendor/vendor.txt and pipenv/vendor/vendor_pip.txt]

  #     * pipenv/vendor/pythonfinder/_vendor/vendor.txt

  #   inside the sources, and possibly diff them with the previous version)

  

- %global base_version        2022.5.2

+ %global base_version        2022.10.25

  # %%global prerelease_version  --

  

  # Test artifacts are not released, we have to download the commit tree
@@ -24,12 +25,12 @@ 

  

  Name:           pipenv

  Version:        %{base_version}%{?prerelease_version:~%{prerelease_version}}

- Release:        3%{?dist}

+ Release:        1%{?dist}

  Summary:        The higher level Python packaging tool

  

  # Pipenv source code is MIT, there are bundled packages having different licenses

  # - See file `bundled-licenses` on instructions how to generate the License field here.

- License:        MIT and (ASL 2.0 or BSD) and ASL 2.0 and BSD and ISC and MPLv2.0 and Python and Unlicense

+ License:        MIT and (ASL 2.0 or BSD) and ASL 2.0 and BSD and ISC and LGPLv2+ and MPLv2.0 and Python

  URL:            https://github.com/pypa/pipenv

  Source0:        https://github.com/pypa/%{name}/archive/v%{upstream_version}/%{name}-%{upstream_version}.tar.gz

  
@@ -50,9 +51,9 @@ 

  # pip and distlib

  Patch6:         remove-bundled-exe-files.patch

  

- # Make pipenv work with the venv install scheme if it is detected

- # Upstream: https://github.com/pypa/pipenv/pull/5096

- Patch8:         venv-install-scheme.patch

+ # Fix compatibility with Python 3.11 in the vendored attrs library

+ # See: https://github.com/pypa/pipenv/issues/5449

+ Patch7:         fix-set_closure_cell-on-3.11.patch

  

  BuildArch:      noarch

  
@@ -106,92 +107,72 @@ 

  # will hopefully spare some maintenance burden in the future

  %global bundled %{expand:

  Provides: bundled(python3dist(click-didyoumean)) = 0.0.3

- Provides: bundled(python3dist(pipdeptree)) = 2.2.1

+ Provides: bundled(python3dist(pipdeptree)) = 2.3.1

  # This library uses pip.internals. Some changes in init methods happened there.

  # So version 1.3.3 is useless with pip 19+ and newer versions will break pipenv

  # because pipenv has bundled patched pip.

- Provides: bundled(python3dist(requirementslib)) = 1.6.4

+ Provides: bundled(python3dist(requirementslib)) = 2.1

  

  # The sources contains patched versions of following packages:

- Provides: bundled(python3dist(crayons)) = 0.1.2

- Provides: bundled(python3dist(pipfile)) = 0.0.2

- Provides: bundled(python3dist(pip)) = 22.0.4

+ Provides: bundled(python3dist(pip)) = 22.3

  Provides: bundled(python3dist(safety)) = 1.10.3

  

  # We cannot unbundle this easily,

  # See https://bugzilla.redhat.com/show_bug.cgi?id=1767003

- Provides: bundled(python3dist(tomlkit)) = 0.7.2

+ Provides: bundled(python3dist(tomlkit)) = 0.9.2

  

  # The packages bundled with pip (22.0.4):

- Provides: bundled(python3dist(cachecontrol)) = 0.12.10

- Provides: bundled(python3dist(certifi)) = 2021.5.30

- Provides: bundled(python3dist(chardet)) = 4

- Provides: bundled(python3dist(charset-normalizer)) = 2.0.7

+ Provides: bundled(python3dist(cachecontrol)) = 0.12.11

+ Provides: bundled(python3dist(chardet)) = 5

  Provides: bundled(python3dist(colorama)) = 0.4.4

- Provides: bundled(python3dist(distlib)) = 0.3.3

- Provides: bundled(python3dist(distro)) = 1.6

- Provides: bundled(python3dist(html5lib)) = 1.1

+ Provides: bundled(python3dist(distlib)) = 0.3.6

+ Provides: bundled(python3dist(distro)) = 1.7

  Provides: bundled(python3dist(idna)) = 3.2

- Provides: bundled(python3dist(msgpack)) = 1.0.3

+ Provides: bundled(python3dist(msgpack)) = 1.0.4

  Provides: bundled(python3dist(packaging)) = 21.3

- Provides: bundled(python3dist(pep517)) = 0.12

- Provides: bundled(python3dist(platformdirs)) = 2.4.1

- Provides: bundled(python3dist(progress)) = 1.6

- Provides: bundled(python3dist(pygments)) = 2.11.2

- Provides: bundled(python3dist(pyparsing)) = 3.0.7

- Provides: bundled(python3dist(requests)) = 2.27.1

+ Provides: bundled(python3dist(platformdirs)) = 2.5.2

+ Provides: bundled(python3dist(pygments)) = 2.13

+ Provides: bundled(python3dist(requests)) = 2.28.1

  Provides: bundled(python3dist(resolvelib)) = 0.8.1

- Provides: bundled(python3dist(rich)) = 11

+ Provides: bundled(python3dist(rich)) = 12.5.1

  Provides: bundled(python3dist(setuptools)) = 44

  Provides: bundled(python3dist(six)) = 1.16

- Provides: bundled(python3dist(tenacity)) = 8.0.1

- Provides: bundled(python3dist(tomli)) = 1.0.3

- Provides: bundled(python3dist(typing-extensions)) = 4.0.1

- Provides: bundled(python3dist(urllib3)) = 1.26.6

+ Provides: bundled(python3dist(tenacity)) = 8.1

+ Provides: bundled(python3dist(tomli)) = 2.0.1

+ Provides: bundled(python3dist(typing-extensions)) = 4.4

  Provides: bundled(python3dist(webencodings)) = 0.5.1

  

  # The packages bundles with pipenv

  # Some occur twice - with pip and pipenv, possibly with different versions

  Provides: bundled(python3dist(attrs)) = 21.2

- Provides: bundled(python3dist(appdirs)) = 1.4.4

- Provides: bundled(python3dist(cached-property)) = 1.5.2

  Provides: bundled(python3dist(cerberus)) = 1.3.4

- Provides: bundled(python3dist(certifi)) = 2021.10.8

+ Provides: bundled(python3dist(certifi)) = 2022.9.24

  Provides: bundled(python3dist(click)) = 8.0.3

- Provides: bundled(python3dist(colorama)) = 0.4.4

+ Provides: bundled(python3dist(colorama)) = 0.4.5

  Provides: bundled(python3dist(distlib)) = 0.3.2

- Provides: bundled(python3dist(dparse)) = 0.5.1

- Provides: bundled(python3dist(funcsigs)) = 1.0.2

- Provides: bundled(python3dist(idna)) = 3.3

- Provides: bundled(python3dist(importlib-resources)) = 5.2

- Provides: bundled(python3dist(importlib-metadata)) = 4.6.1

- Provides: bundled(python3dist(iso8601)) = 0.1.16

+ Provides: bundled(python3dist(dparse)) = 0.6.2

+ Provides: bundled(python3dist(idna)) = 3.4

  Provides: bundled(python3dist(markupsafe)) = 2.0.1

- Provides: bundled(python3dist(orderedmultidict)) = 1.0.1

  Provides: bundled(python3dist(packaging)) = 21.3

  Provides: bundled(python3dist(parse)) = 1.19

  Provides: bundled(python3dist(pep514tools))

- Provides: bundled(python3dist(pep517)) = 0.11

+ Provides: bundled(python3dist(pep517)) = 0.13

  Provides: bundled(python3dist(pexpect)) = 4.8

- Provides: bundled(python3dist(pip-shims)) = 0.7

  Provides: bundled(python3dist(platformdirs)) = 2.4

- Provides: bundled(python3dist(plette[validation])) = 0.2.3

+ Provides: bundled(python3dist(plette[validation])) = 0.4.2

  Provides: bundled(python3dist(ptyprocess)) = 0.7

- Provides: bundled(python3dist(pyparsing)) = 3.0.7

- Provides: bundled(python3dist(pythonfinder)) = 1.2.10

- Provides: bundled(python3dist(python-dateutil)) = 2.8.2

+ Provides: bundled(python3dist(pyparsing)) = 3.0.9

+ Provides: bundled(python3dist(pythonfinder)) = 1.3.1

  Provides: bundled(python3dist(python-dotenv)) = 0.19

- Provides: bundled(python3dist(requests)) = 2.26

- Provides: bundled(python3dist(shellingham)) = 1.4

- Provides: bundled(python3dist(six)) = 1.16

+ Provides: bundled(python3dist(requests)) = 2.28.1

+ Provides: bundled(python3dist(shellingham)) = 1.5

  Provides: bundled(python3dist(termcolor)) = 1.1

  Provides: bundled(python3dist(toml)) = 0.10.2

  Provides: bundled(python3dist(tomli)) = 1.1

- Provides: bundled(python3dist(urllib3)) = 1.26.8

- Provides: bundled(python3dist(vistir)) = 0.5.2

- Provides: bundled(python3dist(wheel)) = 0.36.2

+ Provides: bundled(python3dist(urllib3)) = 1.26.12

+ Provides: bundled(python3dist(vistir)) = 0.6.1

+ Provides: bundled(python3dist(wheel)) = 0.37.1

  Provides: bundled(python3dist(yaspin)) = 2

- Provides: bundled(python3dist(zipp)) = 3.5

  }

  %{bundled}

  
@@ -216,7 +197,7 @@ 

  tar -xf %{SOURCE1} --strip-components 1 -C tests/pypi

  

  # this goes together with patch4

- rm pipenv/patched/notpip/_vendor/certifi/*.pem

+ rm pipenv/patched/pip/_vendor/certifi/*.pem

  

  # Remove python2 parts because they fail bytecompilation

  rm -rf pipenv/patched/yaml2/
@@ -227,7 +208,7 @@ 

  

  # Remove windows executable binaries

  # This goes together with patch6

- rm -v pipenv/patched/notpip/_vendor/distlib/*.exe

+ rm -v pipenv/patched/pip/_vendor/distlib/*.exe

  rm -v pipenv/vendor/distlib/*.exe

  

  %build
@@ -276,77 +257,79 @@ 

  

  %files

  %license LICENSE

+ 

  # To regenerate list of licenses, use:

  #  $ ./license-helper.py --bundled-modules bundled-licenses \

  #                        --sources <directory created by fedpkg prep> \

  #                        --list-license-files

+ #

+ # Ignore RPM warnings about these license files being listed twice.

+ 

  # Keep this list alphabetically sorted

- %license %{python3_sitelib}/%{name}/patched/crayons.LICENSE

- %license %{python3_sitelib}/%{name}/patched/notpip/COPYING

- %license %{python3_sitelib}/%{name}/patched/notpip/LICENSE

- %license %{python3_sitelib}/%{name}/patched/notpip/LICENSE.APACHE

- %license %{python3_sitelib}/%{name}/patched/notpip/LICENSE.BSD

- %license %{python3_sitelib}/%{name}/patched/notpip/LICENSE.md

- %license %{python3_sitelib}/%{name}/patched/notpip/LICENSE.txt

- %license %{python3_sitelib}/%{name}/patched/notpip/appdirs.LICENSE.txt

- %license %{python3_sitelib}/%{name}/patched/notpip/distro.LICENSE

- %license %{python3_sitelib}/%{name}/patched/notpip/pyparsing.LICENSE

- %license %{python3_sitelib}/%{name}/patched/notpip/six.LICENSE

- %license %{python3_sitelib}/%{name}/patched/notpip/typing_extensions.LICENSE

- %license %{python3_sitelib}/%{name}/patched/pipfile/LICENSE

- %license %{python3_sitelib}/%{name}/patched/pipfile/LICENSE.APACHE

- %license %{python3_sitelib}/%{name}/patched/pipfile/LICENSE.BSD

+ %license %{python3_sitelib}/%{name}/patched/pip/COPYING

+ %license %{python3_sitelib}/%{name}/patched/pip/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/LICENSE.APACHE

+ %license %{python3_sitelib}/%{name}/patched/pip/LICENSE.BSD

+ %license %{python3_sitelib}/%{name}/patched/pip/LICENSE.md

+ %license %{python3_sitelib}/%{name}/patched/pip/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/cachecontrol/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/certifi/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/chardet/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/colorama/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/distlib/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/distro/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/idna/LICENSE.md

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/msgpack/COPYING

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/packaging/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/packaging/LICENSE.APACHE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/packaging/LICENSE.BSD

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/pep517/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/pkg_resources/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/platformdirs/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/pygments/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/pyparsing/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/requests/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/resolvelib/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/rich/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/six.LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/tenacity/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/tomli/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/typing_extensions.LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/urllib3/LICENSE.txt

+ %license %{python3_sitelib}/%{name}/patched/pip/_vendor/webencodings/LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/six.LICENSE

+ %license %{python3_sitelib}/%{name}/patched/pip/typing_extensions.LICENSE

  %license %{python3_sitelib}/%{name}/patched/safety/LICENSE

- %license %{python3_sitelib}/%{name}/patched/yaml3/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/appdirs.LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/attr/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/cached-property.LICENSE

- %license %{python3_sitelib}/%{name}/vendor/cached_property.LICENSE

  %license %{python3_sitelib}/%{name}/vendor/cerberus/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/certifi/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/charset_normalizer/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/click/LICENSE.rst

  %license %{python3_sitelib}/%{name}/vendor/click_didyoumean/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/colorama/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/distlib/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/dotenv/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/dparse/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/funcsigs/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/idna/LICENSE.md

- %license %{python3_sitelib}/%{name}/vendor/importlib_metadata/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/importlib_resources/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/iso8601/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/markupsafe/LICENSE.rst

- %license %{python3_sitelib}/%{name}/vendor/orderedmultidict/LICENSE.md

- %license %{python3_sitelib}/%{name}/vendor/packaging/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/packaging/LICENSE.APACHE

- %license %{python3_sitelib}/%{name}/vendor/packaging/LICENSE.BSD

  %license %{python3_sitelib}/%{name}/vendor/parse.LICENSE

- %license %{python3_sitelib}/%{name}/vendor/pep517/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/pexpect/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/pip_shims/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/pipdeptree.LICENSE

+ %license %{python3_sitelib}/%{name}/vendor/pipdeptree/LICENSE

+ %license %{python3_sitelib}/%{name}/vendor/platformdirs/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/plette/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/ptyprocess/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/pyparsing.LICENSE

  %license %{python3_sitelib}/%{name}/vendor/pyparsing/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/pythonfinder/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/pythonfinder/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/pythonfinder/_vendor/pep514tools/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/requests/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/requirementslib/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/shellingham/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/six.LICENSE

  %license %{python3_sitelib}/%{name}/vendor/termcolor.COPYING.txt

  %license %{python3_sitelib}/%{name}/vendor/toml/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/tomli/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/tomlkit/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/urllib3/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/vistir/LICENSE

  %license %{python3_sitelib}/%{name}/vendor/wheel/LICENSE.txt

  %license %{python3_sitelib}/%{name}/vendor/yaspin/LICENSE

- %license %{python3_sitelib}/%{name}/vendor/zipp.LICENSE

  

  %doc README.md NOTICES CHANGELOG.rst HISTORY.txt

  %{_bindir}/pipenv
@@ -359,6 +342,10 @@ 

  %license LICENSE

  

  %changelog

+ * Wed Aug 03 2022 Tomas Orsava <torsava@redhat.com> - 2022.10.25-1

+ - Rebase to version 2022.10.25

+ Resolves: rhbz#2115908

+ 

  * Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2022.5.2-3

  - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

  

@@ -1,4 +1,4 @@ 

- From f209a63ead9109c48ae529dc73101e48c19dcaf8 Mon Sep 17 00:00:00 2001

+ From 3ea1f1a3424c165b7bc60b10a51900a442d218cb Mon Sep 17 00:00:00 2001

  From: Tomas Orsava <torsava@redhat.com>

  Date: Mon, 31 Jan 2022 16:54:59 +0100

  Subject: [PATCH] Remove the bundled windows executables from the bundled pip
@@ -9,14 +9,14 @@ 

   1 file changed, 6 deletions(-)

  

  diff --git a/setup.py b/setup.py

- index a980d8b..47be82c 100644

+ index 5b46df1..1c60574 100644

  --- a/setup.py

  +++ b/setup.py

- @@ -131,12 +131,6 @@ setup(

-          "pipenv.patched.notpip._vendor.certifi": ["*.pem"],

-          "pipenv.patched.notpip._vendor.requests": ["*.pem"],

-          "pipenv.patched.notpip._vendor.distlib._backport": ["sysconfig.cfg"],

- -        "pipenv.patched.notpip._vendor.distlib": [

+ @@ -61,12 +61,6 @@ setup(

+          "pipenv.patched.pip._vendor.certifi": ["*.pem"],

+          "pipenv.patched.pip._vendor.requests": ["*.pem"],

+          "pipenv.patched.pip._vendor.distlib._backport": ["sysconfig.cfg"],

+ -        "pipenv.patched.pip._vendor.distlib": [

  -            "t32.exe",

  -            "t64.exe",

  -            "w32.exe",
@@ -26,5 +26,5 @@ 

       python_requires=">=3.7",

       zip_safe=True,

  -- 

- 2.33.1

+ 2.35.3

  

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

- SHA512 (pipenv-2022.5.2.tar.gz) = 0c0fcaf14046cb0d75cb9c260408683b53d6a5e5f2c20c4f73cc20c21af054ac2f18d3c616bfebf18dd6ad02731dadcc0efa85f861643c5ce7dc16d61e9d1983

  SHA512 (pipenv-test-artifacts-f5530013426d6392d67cd1703f379d20a768c1cf.tar.gz) = 87787fe73f8fcaf3e18933fa55fba0fbef5eb9c5d72752fbb20219ae332ab0a0d0a508572f891339284c6c0f3f898feecb11026289eedeac7f2661a3b909ec57

+ SHA512 (pipenv-2022.10.25.tar.gz) = 0868c1928ae88086730e8af0866d6253805bc729acd764ea317bc341da0841c257d258513b37401d8a05d208b9268dbaa8c1e0a732acc6cebbcb02ba9041363e

file modified
+6 -2
@@ -16,7 +16,6 @@ 

          set -eux

          mkdir three

          cd three

-         pipenv --three

          pipenv install six

          pipenv install --dev pytest

          pipenv uninstall six
@@ -29,6 +28,11 @@ 

          mkdir dotenvtest

          cd dotenvtest

          echo "HELLO=WORLD" > .env

-         pipenv --three

          pipenv run python -c "import os; assert os.environ['HELLO'] == 'WORLD'"

          cd ..

+ 

+ # Check that there are no warnings in the output

+ /warning:

+     test: |

+         set -eux

+         ! pipenv --version 2>&1 | grep Warning

5 new commits added

  • Rebase to version 2022.10.25
  • Rebase to version 2022.8.5
  • Add info about faulty RPM warnings for license files.
  • Rebase to version 2022.7.24 - Sort bundled-licenses
  • Rebase to version 2022.7.24
2 years ago

Build succeeded.

rpmlint fails because files are duplicated (meh), however, I've also noticed it warns that "LGPL 2.1" is invalid-license. That is correct, the valid identifier (legacy) is LGPLv2 or LGPLv2+ depending on what you've meant.

rpminpect has the same problem. it also reports Patch number 2 (0002-import-pytest-pypi.patch) is missing a corresponding %patch2 macro, usually in %prep etc. which is bogus with %autosetup and I am going to report that as rpminspect bug 😮‍💨

6 new commits added

  • fixup!
  • Rebase to version 2022.10.25
  • Rebase to version 2022.8.5
  • Add info about faulty RPM warnings for license files.
  • Rebase to version 2022.7.24 - Sort bundled-licenses
  • Rebase to version 2022.7.24
2 years ago

rpmlint fails because files are duplicated (meh), however, I've also noticed it warns that "LGPL 2.1" is invalid-license. That is correct, the valid identifier (legacy) is LGPLv2 or LGPLv2+ depending on what you've meant.

They actually spceify 2.1 explicitly:

either version 2.1 of the License, or (at your option) any later version.

But I've modified it to LGPLv2+.

And I forgot to update the License field, so I added the task to the update todo list at the top too.

Build succeeded.

rpminpect ... reports Patch number 2 (0002-import-pytest-pypi.patch) is missing a corresponding %patch2 macro, usually in %prep etc. which is bogus with %autosetup and I am going to report that as rpminspect bug 😮‍💨

https://github.com/rpminspect/rpminspect/issues/921
https://github.com/rpminspect/rpminspect/issues/937

Forgot to take the WIP label off, done now.

@churchyard Do you plan to review this, or should I put it on the etherpad?

In either case, I'd like to request the review template be used.

In the meantime I've done some testing by hand and I found a runtime warning:

/usr/lib/python3.11/site-packages/pipenv/vendor/attr/_make.py:876: RuntimeWarning: Running interpreter doesn't sufficiently support code object introspection.  Some features like bare super() or accessing __class__ will not work with slotted classes.
  set_closure_cell(cell, cls)

I've managed to reproduce the issue with Python 3.11 and pip-installed pipenv of the same version (2022.10.25):

$ python --version
Python 3.11.0
$ pipenv --version
/__venv__/lib64/python3.11/site-packages/pipenv/vendor/attr/_make.py:876: RuntimeWarning: Running interpreter doesn't sufficiently support code object introspection.  Some features like bare super() or accessing __class__ will not work with slotted classes.
  set_closure_cell(cell, cls)
pipenv, version 2022.10.25

But the issue does not reproduce with Python 3.10 and pip-installed pipenv:

$python --version
Python 3.10.8
$ pipenv --version
pipenv, version 2022.10.25

Therefore this is not a problem with packaging, this is an upstream pipenv issue.
It's already fixed in attrs version 22.1.0: https://github.com/python-attrs/attrs/issues/907
But the pipenv version is still on 21.2.

Issue for pipenv opened upstream: https://github.com/pypa/pipenv/issues/5449

Build succeeded.

Forgot to take the WIP label off, done now.

@churchyard Do you plan to review this, or should I put it on the etherpad?

In either case, I'd like to request the review template be used.

@churchyard I light of the RuntimeWarning above, it seems we should not release a new version of pipenv yet. WDYT?

Alternatively, I could backport the attrs patch [0], however, the commit is changing the code in a non-obvious way to me. Therefore we would also need to backport the tests and somehow run the test suite on the vendored package, and that seems a bit overcomplicated.

[0] https://github.com/python-attrs/attrs/pull/969/commits/0f28af64f28ac1f1d0184f58ee67881a37dd2fca#diff-b6a52a6612dea3a47df868bda6dd9a3475e2d45b28d197ad19f66f0c05be4480

I believe we already backported the patch in https://src.fedoraproject.org/rpms/python-attrs/c/93fc91df13b3155fd6926690a73d205b97d23503?branch=rawhide -- feel free to open an upstream issue in pipenv. I think backporting that here is safe enough, no need to run tests of the vendored package.

feel free to open an upstream issue in pipenv

Oh, I see you commented about https://github.com/pypa/pipenv/issues/5449 already.

1 new commit added

  • !fixup Patch attrs
2 years ago

I believe we already backported the patch in https://src.fedoraproject.org/rpms/python-attrs/c/93fc91df13b3155fd6926690a73d205b97d23503?branch=rawhide -- feel free to open an upstream issue in pipenv. I think backporting that here is safe enough, no need to run tests of the vendored package.

Ah, I see we backported it into version 21.4.0, not too far from 21.2.0 bundled in pipenv. I agree that looks good enough to me.

I've added a fixup commit with the patch, let's see what Zuul thinks of it. In my local testing the patch has sucesfully fixed the warning.

META question: How about implementing a test to check for Warnings in the output? Something like:

! pipenv --version 2>&1 | grep Warning

Or was there some reason we can't use inverted tests (using !)?

Build succeeded.

6 new commits added

  • Add a test to check Warnings in the pipenv output
  • Rebase to version 2022.10.25
  • Rebase to version 2022.8.5
  • Add info about faulty RPM warnings for license files.
  • Rebase to version 2022.7.24 - Sort bundled-licenses
  • Rebase to version 2022.7.24
2 years ago

Or was there some reason we can't use inverted tests (using !)?

https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject.org/thread/TFQGD7CSTD5WVKVT3WDIGF5D6DID5NK6/

Ah, I remembered something like that but forgot where it was. Thanks.

Ok, I've added a new test for Warnings. And I've also squashed the fixup commits.

Build succeeded.

1 new commit added

  • Remove `pipenv --three` from tests
2 years ago

I've added one more commit to remove pipenv --three commands from the tests, as the command is no longer needed and throws a warning:

WARNING: --three is deprecated! pipenv uses python3 by default

Build succeeded.

linter fails because of the duplicated license files, we can safely ignore that. All else is looking good. My local testing is also successful.

PR is ready for review.

Pull-Request has been merged by churchyard

a year ago