From f48f0d64dcff560c0881d6d1f3f732f1bf6f5569 Mon Sep 17 00:00:00 2001 From: Matt Davis Date: Fri, 22 Jul 2022 20:12:17 -0400 Subject: [PATCH] Issue 5179 requirementslib==1.6.8 (#5183) * Vendor in requirementslib==1.6.8 --- news/5179.bugfix.rst | 1 + pipenv/vendor/requirementslib/__init__.py | 2 +- pipenv/vendor/requirementslib/models/utils.py | 5 ++++- pipenv/vendor/vendor.txt | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 news/5179.bugfix.rst diff --git a/news/5179.bugfix.rst b/news/5179.bugfix.rst new file mode 100644 index 00000000..a921ce1c --- /dev/null +++ b/news/5179.bugfix.rst @@ -0,0 +1 @@ +Vendor in latest ``requirementslib`` for fix to lock when using editable VCS module with specific ``@`` git reference. diff --git a/pipenv/vendor/requirementslib/__init__.py b/pipenv/vendor/requirementslib/__init__.py index aad93c18..a6523d01 100644 --- a/pipenv/vendor/requirementslib/__init__.py +++ b/pipenv/vendor/requirementslib/__init__.py @@ -10,7 +10,7 @@ from .models.lockfile import Lockfile from .models.pipfile import Pipfile from .models.requirements import Requirement -__version__ = "1.6.7" +__version__ = "1.6.8" logger = logging.getLogger(__name__) diff --git a/pipenv/vendor/requirementslib/models/utils.py b/pipenv/vendor/requirementslib/models/utils.py index 0f2f40d0..0c419013 100644 --- a/pipenv/vendor/requirementslib/models/utils.py +++ b/pipenv/vendor/requirementslib/models/utils.py @@ -567,7 +567,10 @@ def split_ref_from_uri(uri): path = parsed.path if parsed.path else "" scheme = parsed.scheme if parsed.scheme else "" ref = None - if scheme != "file" and (re.match("^.*@[^/@]*$", path) or path.count("@") >= 2): + schema_is_filelike = scheme in ("", "file") + if (not schema_is_filelike and "@" in path) or ( + schema_is_filelike and (re.match("^.*@[^/@]*$", path) or path.count("@") >= 2) + ): path, _, ref = path.rpartition("@") parsed = parsed._replace(path=path) return (parsed.url, ref) diff --git a/pipenv/vendor/vendor.txt b/pipenv/vendor/vendor.txt index 81d170c1..2830b14c 100644 --- a/pipenv/vendor/vendor.txt +++ b/pipenv/vendor/vendor.txt @@ -24,7 +24,7 @@ pyparsing==3.0.9 python-dateutil==2.8.2 python-dotenv==0.19.0 pythonfinder==1.2.10 -requirementslib==1.6.7 +requirementslib==1.6.8 shellingham==1.4.0 six==1.16.0 termcolor==1.1.0