diff --git a/news/5750.removal.rst b/news/5750.removal.rst new file mode 100644 index 0000000000..e97db9390e --- /dev/null +++ b/news/5750.removal.rst @@ -0,0 +1 @@ +Bump dparse to 0.6.3 diff --git a/pipenv/vendor/dparse/__init__.py b/pipenv/vendor/dparse/__init__.py index c4d4ee7632..4ca42d0a35 100644 --- a/pipenv/vendor/dparse/__init__.py +++ b/pipenv/vendor/dparse/__init__.py @@ -4,6 +4,6 @@ __author__ = """Jannis Gebauer""" __email__ = 'support@pyup.io' -__version__ = '0.6.2' +__version__ = '0.6.3' from .parser import parse # noqa diff --git a/pipenv/vendor/dparse/parser.py b/pipenv/vendor/dparse/parser.py index aef3b9414c..9e1c07ffd6 100644 --- a/pipenv/vendor/dparse/parser.py +++ b/pipenv/vendor/dparse/parser.py @@ -4,17 +4,13 @@ import os from collections import OrderedDict import re +import sys from io import StringIO from configparser import ConfigParser, NoOptionError from pathlib import PurePath -try: - import tomllib as toml -except ImportError: - from pipenv.vendor import tomli as toml - from .errors import MalformedDependencyFileError from .regex import HASH_REGEX @@ -26,6 +22,11 @@ from pipenv.patched.pip._vendor.packaging.version import Version, InvalidVersion import json +if sys.version_info >= (3, 11): + import tomllib +else: + import pipenv.vendor.tomli as tomllib + # this is a backport from setuptools 26.1 def setuptools_parse_requirements_backport(strs): # pragma: no cover @@ -360,7 +361,7 @@ def parse(self): :return: """ try: - data = toml.loads(self.obj.content, _dict=OrderedDict) + data = tomllib.loads(self.obj.content) if data: for package_type in ['packages', 'dev-packages']: if package_type in data: @@ -378,7 +379,7 @@ def parse(self): section=package_type ) ) - except (toml.TomlDecodeError, IndexError): + except (tomllib.TOMLDecodeError, IndexError): pass @@ -447,7 +448,7 @@ def parse(self): Parse a poetry.lock """ try: - data = toml.loads(self.obj.content, _dict=OrderedDict) + data = tomllib.loads(self.obj.content) pkg_key = 'package' if data: try: @@ -475,7 +476,7 @@ def parse(self): section=section ) ) - except (toml.TomlDecodeError, IndexError) as e: + except (tomllib.TOMLDecodeError, IndexError) as e: raise MalformedDependencyFileError(info=str(e)) diff --git a/pipenv/vendor/dparse/updater.py b/pipenv/vendor/dparse/updater.py index 4a66166c8d..476b06cd87 100644 --- a/pipenv/vendor/dparse/updater.py +++ b/pipenv/vendor/dparse/updater.py @@ -4,11 +4,12 @@ import json import tempfile import os +import sys -try: - import tomllib as toml -except ImportError: - from pipenv.vendor import tomli as toml +if sys.version_info >= (3, 11): + import tomllib +else: + import pipenv.vendor.tomli as tomllib class RequirementsTXTUpdater(object): @@ -83,7 +84,7 @@ class SetupCFGUpdater(CondaYMLUpdater): class PipfileUpdater(object): @classmethod def update(cls, content, dependency, version, spec="==", hashes=()): - data = toml.loads(content) + data = tomllib.loads(content) if data: for package_type in ['packages', 'dev-packages']: if package_type in data: diff --git a/pipenv/vendor/vendor.txt b/pipenv/vendor/vendor.txt index ca93cc0d69..77ec405e69 100644 --- a/pipenv/vendor/vendor.txt +++ b/pipenv/vendor/vendor.txt @@ -1,7 +1,7 @@ click-didyoumean==0.3.0 click==8.1.3 colorama==0.4.6 -dparse==0.6.2 +dparse==0.6.3 markupsafe==2.1.2 pep517==0.13.0 pexpect==4.8.0