Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-pip-shims for openSUSE:Factory checked in at 2022-10-06 07:42:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-pip-shims (Old) and /work/SRC/openSUSE:Factory/.python-pip-shims.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pip-shims" Thu Oct 6 07:42:12 2022 rev:8 rq:1008167 version:0.7.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-pip-shims/python-pip-shims.changes 2022-04-22 21:55:49.962913913 +0200 +++ /work/SRC/openSUSE:Factory/.python-pip-shims.new.2275/python-pip-shims.changes 2022-10-06 07:42:23.276711863 +0200 @@ -1,0 +2,15 @@ +Tue Oct 4 23:04:41 UTC 2022 - Yogalakshmi Arunachalam <yarunacha...@suse.com> + +- Update to Pip_Shims 0.7.3 (2022-07-07) + Trivial + Make the packaging imports easier to patch out to vendor'd packaging lib. #82 + +- Update to Pip_Shims 0.7.2 (2022-06-29) + Features + Resolve issue of build_tracker being None at runtime with pip>=22.1 when using pip_shims. #81 + +- Update to Pip_Shims 0.7.1 (2022-06-29) + Bug Fixes + Added support for new pip==22.1.x required make_preparer arg check_build_deps which defaults to False. #80 + +------------------------------------------------------------------- Old: ---- pip-shims-0.7.0.tar.gz New: ---- pip-shims-0.7.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-pip-shims.spec ++++++ --- /var/tmp/diff_new_pack.X4nmnK/_old 2022-10-06 07:42:23.856713154 +0200 +++ /var/tmp/diff_new_pack.X4nmnK/_new 2022-10-06 07:42:23.860713163 +0200 @@ -19,7 +19,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %global skip_python2 1 Name: python-pip-shims -Version: 0.7.0 +Version: 0.7.3 Release: 0 Summary: Compatibility shims for pip versions 8 thru current License: ISC ++++++ pip-shims-0.7.0.tar.gz -> pip-shims-0.7.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/CHANGELOG.rst new/pip-shims-0.7.3/CHANGELOG.rst --- old/pip-shims-0.7.0/CHANGELOG.rst 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/CHANGELOG.rst 2022-07-07 14:11:02.000000000 +0200 @@ -1,3 +1,37 @@ +Pip_Shims 0.7.3 (2022-07-07) +============================ + + +Pip_Shims 0.7.2 (2022-06-29) +============================ + + +Features +-------- + +- Resolve issue of ``build_tracker`` being ``None`` at runtime with ``pip>=22.1`` when using ``pip_shims``. `#81 <https://github.com/sarugaku/pip-shims/issues/81>`_ + + +Pip_Shims 0.7.2 (2022-06-29) +============================ + + +Features +-------- + +- Resolve issue of ``build_tracker`` being ``None`` at runtime with ``pip>=22.1`` when using ``pip_shims``. `#81 <https://github.com/sarugaku/pip-shims/issues/81>`_ + + +Pip_Shims 0.7.1 (2022-06-29) +============================ + + +Bug Fixes +--------- + +- Added support for new ``pip==22.1.x`` required ``make_preparer`` arg ``check_build_deps`` which defaults to ``False``. `#80 <https://github.com/sarugaku/pip-shims/issues/80>`_ + + Pip_Shims 0.7.0 (2022-03-28) ============================ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/news/82.trivial.rst new/pip-shims-0.7.3/news/82.trivial.rst --- old/pip-shims-0.7.0/news/82.trivial.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/pip-shims-0.7.3/news/82.trivial.rst 2022-07-07 14:11:02.000000000 +0200 @@ -0,0 +1 @@ +Change style of ``packaging`` imports for downstream ``pipenv`` to be able to patch this more easily. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/noxfile.py new/pip-shims-0.7.3/noxfile.py --- old/pip-shims-0.7.0/noxfile.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/noxfile.py 2022-07-07 14:11:02.000000000 +0200 @@ -17,6 +17,8 @@ "pip~=21.2.0", "pip~=21.3.0", "pip~=22.0.0", + "pip~=22.1.0", + "pip~=22.1.2", "git+https://github.com/pypa/pip.git", ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/src/pip_shims/__init__.py new/pip-shims-0.7.3/src/pip_shims/__init__.py --- old/pip-shims-0.7.0/src/pip_shims/__init__.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/src/pip_shims/__init__.py 2022-07-07 14:11:02.000000000 +0200 @@ -25,7 +25,7 @@ from . import shims -__version__ = "0.7.0" +__version__ = "0.7.3" if "pip_shims" in sys.modules: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/src/pip_shims/compat.py new/pip-shims-0.7.3/src/pip_shims/compat.py --- old/pip-shims-0.7.0/src/pip_shims/compat.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/src/pip_shims/compat.py 2022-07-07 14:11:02.000000000 +0200 @@ -303,24 +303,29 @@ @contextlib.contextmanager -def get_requirement_tracker(req_tracker_creator=None): - # type: (Optional[Callable]) -> Generator[Optional[TReqTracker], None, None] - root = os.environ.get("PIP_REQ_TRACKER") - if not req_tracker_creator: +def get_tracker(tracker_creator=None, tracker_type="REQ"): + # type: (Optional[Callable]) -> Generator[Optional[TReqTracker, TBuildTracker], None, None] + env_var = "PIP_REQ_TRACKER" + prefix = "req-tracker" + if tracker_type == "BUILD": # Replaced the req tracker in pip>=22.1 + env_var = "PIP_BUILD_TRACKER" + prefix = "build-tracker" + root = os.environ.get(env_var) + if not tracker_creator: yield None else: req_tracker_args = [] - _, required_args = get_method_args(req_tracker_creator.__init__) # type: ignore + _, required_args = get_method_args(tracker_creator.__init__) # type: ignore with ExitStack() as ctx: if root is None: - root = ctx.enter_context(TemporaryDirectory(prefix="req-tracker")) + root = ctx.enter_context(TemporaryDirectory(prefix=prefix)) if root: root = str(root) ctx.enter_context(temp_environ()) - os.environ["PIP_REQ_TRACKER"] = root + os.environ[env_var] = root if required_args is not None and "root" in required_args: req_tracker_args.append(root) - with req_tracker_creator(*req_tracker_args) as tracker: + with tracker_creator(*req_tracker_args) as tracker: yield tracker @@ -804,6 +809,7 @@ @contextlib.contextmanager def make_preparer( preparer_fn, # type: TShimmedFunc + build_tracker_fn=None, # type: Optional[TShimmedFunc] req_tracker_fn=None, # type: Optional[TShimmedFunc] build_dir=None, # type: Optional[str] src_dir=None, # type: Optional[str] @@ -823,6 +829,7 @@ install_cmd=None, # type: Optional[TCommandInstance] finder_provider=None, # type: Optional[TShimmedFunc] verbosity=0, # type: Optional[int] + check_build_deps=False, # type: Optional[bool] ): # (...) -> ContextManager """ @@ -890,6 +897,8 @@ required_args, required_kwargs = get_allowed_args(preparer_fn) # type: ignore if not req_tracker and not req_tracker_fn and "req_tracker" in required_args: raise TypeError("No requirement tracker and no req tracker generator found!") + if not build_tracker and not build_tracker_fn and "build_tracker" in required_args: + raise TypeError("No build tracker and no build tracker generator found!") if "downloader" in required_args and not downloader_provider: raise TypeError("no downloader provided, but one is required to continue!") pip_options_created = options is None @@ -934,19 +943,27 @@ preparer_args["in_tree_build"] = True if "verbosity" in required_args: preparer_args["verbosity"] = verbosity - req_tracker_fn = resolve_possible_shim(req_tracker_fn) - req_tracker_fn = nullcontext if not req_tracker_fn else req_tracker_fn - with req_tracker_fn() as tracker_ctx: - if "req_tracker" in required_args: + if "check_build_deps" in required_args: + preparer_args["check_build_deps"] = check_build_deps + + if "build_tracker" in required_args: + build_tracker_fn = resolve_possible_shim(build_tracker_fn) + build_tracker_fn = nullcontext if not build_tracker_fn else build_tracker_fn + with build_tracker_fn() as tracker_ctx: + build_tracker = tracker_ctx if build_tracker is None else build_tracker + preparer_args["build_tracker"] = build_tracker + preparer_args["lazy_wheel"] = True + result = call_function_with_correct_args(preparer_fn, **preparer_args) + yield result + if "req_tracker" in required_args: + req_tracker_fn = resolve_possible_shim(req_tracker_fn) + req_tracker_fn = nullcontext if not req_tracker_fn else req_tracker_fn + with req_tracker_fn() as tracker_ctx: req_tracker = tracker_ctx if req_tracker is None else req_tracker preparer_args["req_tracker"] = req_tracker - if "build_tracker" in required_args: - req_tracker = tracker_ctx if req_tracker is None else req_tracker - build_tracker = req_tracker if build_tracker is None else build_tracker - preparer_args["build_tracker"] = build_tracker - preparer_args["lazy_wheel"] = True - result = call_function_with_correct_args(preparer_fn, **preparer_args) - yield result + preparer_args["lazy_wheel"] = True + result = call_function_with_correct_args(preparer_fn, **preparer_args) + yield result @contextlib.contextmanager @@ -1351,14 +1368,6 @@ wheel_download_dir=wheel_download_dir, **kwargs, ) # type: ignore - if getattr(reqset, "prepare_files", None): - reqset.add_requirement(ireq) - results = reqset.prepare_files(finder) - result = reqset.requirements - reqset.cleanup_files() - return result - if make_preparer_provider is None: - raise TypeError("Cannot create requirement preparer, cannot resolve!") preparer_args = { "build_dir": kwargs["build_dir"], @@ -1401,12 +1410,26 @@ _, required_resolver_args = get_method_args(resolver.resolve) resolver_args = [] if "requirement_set" in required_resolver_args.args: - reqset.add_requirement(ireq) + if hasattr(reqset, "add_requirement"): + reqset.add_requirement(ireq) + else: # Pip >= 22.1.0 + resolver._add_requirement_to_set(reqset, ireq) resolver_args.append(reqset) elif "root_reqs" in required_resolver_args.args: resolver_args.append([ireq]) if "check_supported_wheels" in required_resolver_args.args: resolver_args.append(check_supported_wheels) + if getattr(reqset, "prepare_files", None): + if hasattr(reqset, "add_requirement"): + reqset.add_requirement(ireq) + else: # Pip >= 22.1.0 + resolver._add_requirement_to_set(reqset, ireq) + results = reqset.prepare_files(finder) + result = reqset.requirements + reqset.cleanup_files() + return result + if make_preparer_provider is None: + raise TypeError("Cannot create requirement preparer, cannot resolve!") result_reqset = resolver.resolve(*resolver_args) # type: ignore if result_reqset is None: result_reqset = reqset diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/src/pip_shims/models.py new/pip-shims-0.7.3/src/pip_shims/models.py --- old/pip-shims-0.7.0/src/pip_shims/models.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/src/pip_shims/models.py 2022-07-07 14:11:02.000000000 +0200 @@ -36,7 +36,7 @@ ) if MYPY_RUNNING: - import packaging.version + from packaging.version import _BaseVersion Module = types.ModuleType from typing import ( # noqa:F811 @@ -56,47 +56,6 @@ ) -PIP_VERSION_SET = { - "7.0.0", - "7.0.1", - "7.0.2", - "7.0.3", - "7.1.0", - "7.1.1", - "7.1.2", - "8.0.0", - "8.0.1", - "8.0.2", - "8.0.3", - "8.1.0", - "8.1.1", - "8.1.2", - "9.0.0", - "9.0.1", - "9.0.2", - "9.0.3", - "10.0.0", - "10.0.1", - "18.0", - "18.1", - "19.0", - "19.0.1", - "19.0.2", - "19.0.3", - "19.1", - "19.1.1", - "19.2", - "19.2.1", - "19.2.2", - "19.2.3", - "19.3", - "19.3.1", - "20.0", - "20.0.1", - "20.0.2", -} - - ImportTypesBase = collections.namedtuple( "ImportTypes", ["FUNCTION", "CLASS", "MODULE", "CONTEXTMANAGER"] ) @@ -156,7 +115,7 @@ return self.version_tuple[item] def _parse(self): - # type: () -> packaging.version._BaseVersion + # type: () -> _BaseVersion return parse_version(self.version) def __hash__(self): @@ -992,6 +951,9 @@ RequirementSet = ShimmedPathCollection("RequirementSet", ImportTypes.CLASS) RequirementSet.create_path("req.req_set.RequirementSet", "7.0.0", "9999") +BuildTracker = ShimmedPathCollection("BuildTracker", ImportTypes.CONTEXTMANAGER) +BuildTracker.create_path("operations.build.build_tracker.BuildTracker", "22.1", "9999") + RequirementTracker = ShimmedPathCollection( "RequirementTracker", ImportTypes.CONTEXTMANAGER ) @@ -1021,11 +983,18 @@ "get_requirement_tracker", ImportTypes.CONTEXTMANAGER ) get_requirement_tracker.set_default( - functools.partial(compat.get_requirement_tracker, RequirementTracker.shim()) + functools.partial(compat.get_tracker, RequirementTracker.shim()) ) get_requirement_tracker.create_path( "req.req_tracker.get_requirement_tracker", "7.0.0", "9999" ) +get_build_tracker = ShimmedPathCollection("get_build_tracker", ImportTypes.CONTEXTMANAGER) +get_build_tracker.set_default( + functools.partial(compat.get_tracker, BuildTracker.shim(), tracker_type="BUILD") +) +get_build_tracker.create_path( + "operations.build.build_tracker.get_build_tracker", "7.0.0", "9999" +) Resolver = ShimmedPathCollection("Resolver", ImportTypes.CLASS) Resolver.create_path("resolve.Resolver", "7.0.0", "19.1.1") @@ -1137,6 +1106,7 @@ install_cmd_provider=InstallCommand, preparer_fn=RequirementPreparer, downloader_provider=Downloader, + build_tracker_fn=get_build_tracker, req_tracker_fn=get_requirement_tracker, finder_provider=get_package_finder, ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/src/pip_shims/utils.py new/pip-shims-0.7.3/src/pip_shims/utils.py --- old/pip-shims-0.7.0/src/pip_shims/utils.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/src/pip_shims/utils.py 2022-07-07 14:11:02.000000000 +0200 @@ -11,7 +11,7 @@ from collections.abc import Callable from functools import wraps -import packaging.version +from packaging.version import _BaseVersion, parse from .environment import MYPY_RUNNING @@ -107,10 +107,10 @@ @memoize def parse_version(version): - # type: (str) -> packaging.version._BaseVersion + # type: (str) -> _BaseVersion if not isinstance(version, STRING_TYPES): raise TypeError("Can only derive versions from string, got {!r}".format(version)) - return packaging.version.parse(version) + return parse(version) @memoize diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/tasks/__init__.py new/pip-shims-0.7.3/tasks/__init__.py --- old/pip-shims-0.7.0/tasks/__init__.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/tasks/__init__.py 2022-07-07 14:11:02.000000000 +0200 @@ -84,6 +84,10 @@ None, definitions, ) + versiondata = { + "version": "0.7.2", + "date": "2022-06-29", + } rendered = render_fragments( pathlib.Path(config["template"]).read_text(encoding="utf-8"), config["issue_format"], @@ -91,6 +95,7 @@ definitions, config["underlines"][1:], False, # Don't add newlines to wrapped text. + versiondata=versiondata, ) return rendered diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pip-shims-0.7.0/tests/test_instances.py new/pip-shims-0.7.3/tests/test_instances.py --- old/pip-shims-0.7.0/tests/test_instances.py 2022-03-29 00:15:35.000000000 +0200 +++ new/pip-shims-0.7.3/tests/test_instances.py 2022-07-07 14:11:02.000000000 +0200 @@ -331,9 +331,12 @@ resolver_kwargs["preparer"] = preparer reqset = RequirementSet() ireq.is_direct = True - reqset.add_requirement(ireq) resolver = get_resolver(**resolver_kwargs) resolver.require_hashes = False + if hasattr(reqset, "add_requirement"): + reqset.add_requirement(ireq) + else: # Pip >= 22.1.0 + resolver._add_requirement_to_set(reqset, ireq) if parse_version(pip_version) > parse_version("20.0.9999999"): resolver._populate_link(ireq) results = resolver._resolve_one(reqset, ireq)