From 7c3a87682d1c201cf287e1f0903235adc33370a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 12 Jul 2024 12:19:42 +0200 Subject: [PATCH] Sync from SUSE:ALP:Source:Standard:1.0 saltbundlepy-importlib-metadata revision 2d382199f5c9df2f3f6f90885a53ab4b --- .gitattributes | 23 ++ importlib_metadata-6.8.0.tar.gz | 3 + saltbundlepy-importlib-metadata.changes | 459 ++++++++++++++++++++++++ saltbundlepy-importlib-metadata.spec | 91 +++++ 4 files changed, 576 insertions(+) create mode 100644 .gitattributes create mode 100644 importlib_metadata-6.8.0.tar.gz create mode 100644 saltbundlepy-importlib-metadata.changes create mode 100644 saltbundlepy-importlib-metadata.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/importlib_metadata-6.8.0.tar.gz b/importlib_metadata-6.8.0.tar.gz new file mode 100644 index 0000000..2534d7c --- /dev/null +++ b/importlib_metadata-6.8.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743 +size 53494 diff --git a/saltbundlepy-importlib-metadata.changes b/saltbundlepy-importlib-metadata.changes new file mode 100644 index 0000000..08e597f --- /dev/null +++ b/saltbundlepy-importlib-metadata.changes @@ -0,0 +1,459 @@ +------------------------------------------------------------------- +Fri Dec 15 12:00:08 UTC 2023 - Victor Zhestkov + +- Update to 6.8.0: + * Require Python 3.8 or later. + * #453: When inferring top-level names that are importable for + distributions in ``package_distributions``, now symlinks to + other directories are honored. + +- Update to 6.6.0: + * Expanded type annotations. + * python/cpython#103661: Removed excess error suppression in + ``_read_files_egginfo_installed`` and fixed path handling + on Windows. + * #422: Removed ABC metaclass from ``Distribution`` and instead + deprecated construction of ``Distribution`` objects without + concrete methods. + * Updated docs with tweaks from upstream CPython. + * Consolidated some behaviors in tests around ``_path``. + * Added type annotation for ``Distribution.read_text``. + +- Update to 6.3.0: + * #115: Support ``installed-files.txt`` for + ``Distribution.files`` when present. + * #442: Fixed issue introduced in v6.1.0 where non-importable + * names (metadata dirs) began appearing in ``packages_distributions``. + * #384: ``PackageMetadata`` now stipulates an additional + ``get`` method allowing for easy querying of metadata keys that may + not be present + +- Update to 6.1.0: + * ``packages_distributions`` now honors packages and + modules with Python modules that not ``.py`` sources (e.g. + ``.pyc``, * ``.so``). + * #434: Expand protocol for ``PackageMetadata.get_all`` to + match the upstream implementation of ``email.message.Message.get_all`` + in python/typeshed#9620. + +- Update to 6.0.0: + * #419: Declared ``Distribution`` as an abstract class, enforcing + definition of abstract methods in instantiated subclasses. It's no + longer possible to instantiate a ``Distribution`` or any subclasses + unless they define the abstract methods. + * #371: Deprecated expectation that ``PackageMetadata.__getitem__`` + will return ``None`` for missing keys. In the future, it will raise a + ``KeyError``. + +- Update to 5.1.0: + * #415: Instrument SimplePath with generic support. + +- Update to 5.0.0: + * #97, #284, #300: Removed compatibility shims for deprecated + entry point interfaces. +- Update to 4.13.0: + * #396: Added compatibility for PathDistributions originating + from Python 3.8 and 3.9. + +- Update to 4.12.0: + * py-93259: Now raise ``ValueError`` when ``None`` or an empty + string are passed to ``Distribution.from_name`` (and other + callers). + +- Update to 4.11.4: + * #379: In ``PathDistribution._name_from_stem``, avoid including + parts of the extension in the result. + * #381: In ``PathDistribution._normalized_name``, ensure names + loaded from the stem of the filename are also normalized, ensuring + duplicate entry points by packages varying only by non-normalized + name are hidden. + +- Update to 4.11.3: + * #372: Removed cast of path items in FastPath, not needed. + * #369: Fixed bug where ``EntryPoint.extras`` was returning + match objects and not the extras strings. + * #367: In ``Distribution.requires`` for egg-info, if ``requires.txt`` + is empty, return an empty list. + * bpo-46246: Added ``__slots__`` to ``EntryPoints``. + * #365 and bpo-46546: Avoid leaking ``method_name`` in + ``DeprecatedList``. + +- Update to 4.10.1: + - #361: Avoid potential REDoS in ``EntryPoint.pattern``. + +- Update to 4.10.0: + - #354: Removed Distribution._local factory. This + functionality was created as a demonstration of the possible + implementation. Now, the pep517 package provides this + functionality directly through pep517.meta.load. + - Require Python 3.7 or later. + - #357: Fixed requirement generation from egg-info when a URL + requirement is given. + +- Update to 4.8.2: + * #353: Fixed discovery of distributions when path is empty. + +- Update to 4.8.1: + * #348: Restored support for EntryPoint access by item, + deprecating support in the process. Users are advised to use + direct member access instead of item-based access: + ep[0] -> ep.name + ep[1] -> ep.value + ep[2] -> ep.group + ep[:] -> ep.name, ep.value, ep.group + +- Update to 4.8.0: + * #337: Rewrote EntryPoint as a simple class, still immutable + and still with the attributes, but without any expectation for + namedtuple functionality such as _asdict. + +- Update to 4.7.1: + * #344: Fixed regression in packages_distributions when neither + top-level.txt nor a files manifest is present. + +- Update to 4.7.0: + * #330: In packages_distributions, now infer top-level names + from .files() when a top-level.txt (Setuptools-specific + metadata) is not present. + +- Update to 4.6.4: + * #334: Correct SimplePath protocol to match pathlib protocol + for __truediv__. + +- Update to 4.6.3: + * Moved workaround for #327 to _compat module. + +- Update to 4.6.2: + * bpo-44784: Avoid errors in test suite when DeprecationWarnings + are treated as errors. + +- Update to 4.6.1: + * #327: Deprecation warnings now honor call stack variance on + PyPy. + +- Update to 4.6.0: + * #326: Performance tests now rely on pytest-perf. To disable + these tests, which require network access and a git checkout, + pass -p no:perf to pytest. + +- Update to 4.5.0: + * #319: Remove SelectableGroups deprecation exception for flake8. + +- Update to 4.4.0: + * #300: Restore compatibility in the result from Distribution. + entry_points (EntryPoints) to honor expectations in older + implementations and issuing deprecation warnings for these + cases: + * EntryPoints objects are once again mutable, allowing for sort + () and other list-based mutation operations. Avoid deprecation + warnings by casting to a mutable sequence (e.g. list(dist. + entry_points).sort()). + * EntryPoints results once again allow for access by index. To + avoid deprecation warnings, cast the result to a Sequence + first (e.g. tuple(dist.entry_points)[0]). + +- Update to 4.3.1: + * #320: Fix issue where normalized name for eggs was incorrectly + solicited, leading to metadata being unavailable for eggs. + +- Update to 4.3.0: + * #317: De-duplication of distributions no longer requires + loading the full metadata for PathDistribution objects, entry + point loading performance by ~10x. + +- Update to 4.2.0: + * Prefer f-strings to .format calls. + +- Update to 4.1.0: + * #312: Add support for metadata 2.2 (Dynamic field). + * #315: Add SimplePath protocol for interface clarity in + PathDistribution. + +- Update to 4.0.1: + * #306: Clearer guidance about compatibility in readme. + +- Update to 4.0.0: + * #304: PackageMetadata as returned by metadata() and + Distribution.metadata() now provides normalized metadata + honoring PEP 566: + * If a long description is provided in the payload of the RFC + 822 value, it can be retrieved as the Description field. + * Any multi-line values in the metadata will be returned as such. + * For any multi-line values, line continuation characters are + removed. This backward-incompatible change means that any + projects relying on the RFC 822 line continuation characters + being present must be tolerant to them having been removed. + * Add a json property that provides the metadata converted to a + JSON-compatible form per PEP 566. + +- Update to 3.10.1: + * Minor tweaks from CPython. + +- Update to 3.10.0: + * #295: Internal refactoring to unify section parsing logic. + +- Update to 3.9.1: + * #296: Exclude 'prepare' package. + * #297: Fix ValueError when entry points contains comments. + +- Update to 3.9.0: + * Use of Mapping (dict) interfaces on SelectableGroups is now + flagged as deprecated. Instead, users are advised to use the + select interface for future compatibility. + * Suppress the warning with this filter: ignore:SelectableGroups + dict interface. + * Or with this invocation in the Python environment: warnings. + filterwarnings('ignore', 'SelectableGroups dict interface'). + * Preferably, switch to the select interface introduced in + 3.7.0. See the entry points documentation and changelog for + the 3.6 release below for more detail. + * For some use-cases, especially those that rely on importlib. + metadata in Python 3.8 and 3.9 or those relying on older + importlib_metadata (especially on Python 3.5 and earlier), + backports.entry_points_selectable was created to ease the + transition. Please have a look at that project if simply + relying on importlib_metadata 3.6+ is not straightforward. + Background in #298. + * #283: Entry point parsing no longer relies on ConfigParser and + instead uses a custom, one-pass parser to load the config, + resulting in a ~20% performance improvement when loading entry + points. + +- Update to 3.8.2: + * #293: Re-enabled lazy evaluation of path lookup through a + FreezableDefaultDict. + +- Update to 3.8.1: + * #293: Workaround for error in distribution search. + +- Update to 3.8.0: + * #290: Add mtime-based caching for FastPath and its lookups, + dramatically increasing performance for repeated distribution + lookups. + +- Update to 3.7.3: + * Docs enhancements and cleanup following review in GH-24782. + +- Update to 3.7.2: + * Cleaned up cruft in entry_points docstring. + * Internal refactoring to facilitate ``entry_points() -> dict`` + deprecation. + +- Update to 3.7.0: + * #131: Added ``packages_distributions`` to conveniently + resolve a top-level package or module to its distribution(s). + * #284: Introduces new ``EntryPoints`` object, a tuple of + ``EntryPoint`` objects but with convenience properties for + selecting and inspecting the results: + + ``.select()`` accepts ``group`` or ``name`` keyword + parameters and returns a new ``EntryPoints`` tuple + with only those that match the selection. + ``.groups`` property presents all of the group names. + ``.names`` property presents the names of the entry points. + Item access (e.g. ``eps[name]``) retrieves a single + entry point by name. + + ``entry_points`` now accepts "selection parameters", + same as ``EntryPoint.select()``. + + ``entry_points()`` now provides a future-compatible + ``SelectableGroups`` object that supplies the above interface + but remains a dict for compatibility. + + In the future, ``entry_points()`` will return an + ``EntryPoints`` object, but provide for backward + compatibility with a deprecated ``__getitem__`` + accessor by group and a ``get()`` method. + + If passing selection parameters to ``entry_points``, the + future behavior is invoked and an ``EntryPoints`` is the + result. + + Construction of entry points using + ``dict([EntryPoint, ...])`` is now deprecated and raises + an appropriate DeprecationWarning and will be removed in + a future version. + * #280: ``entry_points`` now only returns entry points for + unique distributions (by name). + +- Update to 3.4.0: + * Project now declares itself as being typed. + * Additional performance enhancements to distribution + discovery. + * For PyPA projects, add test ensuring that + ``MetadataPathFinder._search_paths`` honors the needed + interface. Method is still private. + +- Update to 3.3.0: + * * #265: ``EntryPoint`` objects now expose a ``.dist`` object + referencing the ``Distribution`` when constructed from a + Distribution. + * The object returned by ``metadata()`` now has a + formally-defined protocol called ``PackageMetadata`` + with declared support for the ``.get_all()`` method. + Fixes #126. + +- Update to 3.1.1: + * no changelog, probably just the merge of 2.1.1 + +- Update to 2.1.1: + * #261: Restored compatibility for package discovery for metadata + without version in the name and for legacy eggs. + +- Update to 3.1.0: + * Merge with 2.1.0. + +- Update to 2.1.0: + * #253: When querying for package metadata, the lookup now honors + package normalization rules. + +- Update to 3.0.0: + * Require Python 3.6 or later. + +- Update to 2.0.0: + * importlib_metadata no longer presents a __version__ attribute. + Consumers wishing to resolve the version of the package should + query it directly with + importlib_metadata.version('importlib-metadata'). Closes #71. + +- Update to 1.7.0: + * PathNotFoundError now has a custom __str__ mentioning “package + metadata” being missing to help guide users to the cause when + the package is installed but no metadata is present. Closes + #124. + +- Update to 1.6.1: + * Added Distribution._local() as a provisional demonstration of + how to load metadata for a local package. Implicitly requires + that pep517 is installed. Ref #42. + * Ensure inputs to FastPath are Unicode. Closes #121. + * Tests now rely on importlib.resources.files (and backport) + instead of the older path function. + * Support any iterable from find_distributions. Closes #122. + +- Update to 1.6.0: + * Added module and attr attributes to EntryPoint + +- Update to 1.5.2: + * Fix redundant entries from FastPath.zip_children. Closes #117. + +- Update to 1.5.1: + * Improve reliability and consistency of compatibility imports + for contextlib and pathlib when running tests. Closes #116. + +------------------------------------------------------------------- +Mon Apr 4 12:38:44 UTC 2022 - Victor Zhestkov + +- Strictly require Python 3.10 with saltbundlepy requrement + +------------------------------------------------------------------- +Sun Mar 8 04:09:30 UTC 2020 - Tomáš Chvátal + +- Switch to multibuild in order to avoid buildcycles + +------------------------------------------------------------------- +Fri Feb 28 22:56:32 UTC 2020 - Dirk Mueller + +- update to 1.5.0: + * Additional performance optimizations in FastPath now + saves an additional 20% on a typical call. + * Correct for issue where PyOxidizer finder has no + ``__module__`` attribute. Closes #110. + +------------------------------------------------------------------- +Fri Jan 17 09:33:46 UTC 2020 - Marketa Calabkova + +- update to 1.4.0 + * Renamed package parameter to distribution_name. + * For better compatibility with the stdlib implementation and to + avoid the same distributions being discovered by the stdlib + and backport implementations, the backport now disables the + stdlib DistributionFinder during initialization (import time). + * Project adopts semver for versioning. + * EntryPoints are now pickleable. + * Dropped support for Python 3.4. + * Fixed repr(EntryPoint) on PyPy. + * Repaired project metadata to correctly declare the python_requires directive. + * Through careful optimization, distribution() is 3-4x faster. + * When searching through sys.path, if any error occurs attempting + to list a path entry, that entry is skipped, making the system + much more lenient to errors. + +------------------------------------------------------------------- +Wed Sep 11 14:57:50 UTC 2019 - Tomáš Chvátal + +- Update to 0.21: + * various minor fixes + +------------------------------------------------------------------- +Wed Aug 7 14:15:47 UTC 2019 - Ondřej Súkup + +- update to 0.19 + * restrain over-eager egg metadata resolution. + * Add support for entry points with colons in the name. + * Parse entry points case sensitively. + * Add a version constraint on the backport configparser package + +------------------------------------------------------------------- +Wed Jul 31 12:49:46 UTC 2019 - Tomáš Chvátal + +- This package is part of python 3.8 and we don't need to build + it there +- Do not require importlib_resources on python3.7 where it is + part of core python + +------------------------------------------------------------------- +Tue Jul 9 13:23:29 UTC 2019 - Tomáš Chvátal + +- Fixup the requires for the SLE-12 build + +------------------------------------------------------------------- +Tue Jul 9 11:19:45 UTC 2019 - John Paul Adrian Glaubitz + +- Enable python-pathlib2 build dependency for suse_version < 1500 to fix SLE-12 build + +------------------------------------------------------------------- +Mon Jun 3 08:17:22 UTC 2019 - Tomáš Chvátal + +- Remove do-not-test-pip.patch as it seems no longer needed + +------------------------------------------------------------------- +Mon Jun 3 08:11:44 UTC 2019 - Tomáš Chvátal + +- Update to 0.17: + * Don't crash if there exists an EGG-INFO directory on sys.path. + * Update docstrings to match PEP 8. Closes #63. + * Merged modules into one module. Closes #62. + * Add support for eggs. !65; Closes #19. + * Support generic zip files (not just wheels). Closes #59 + * Support zip files with multiple distributions in them. Closes #60 + * Fully expose the public API in importlib_metadata.__all__. + * The Distribution ABC is now officially part of the public API. + * Fixed support for older single file egg-info formats. Closes #43. + * Fixed a testing bug when $CWD has spaces in the path. Closes #50. + * Fixed issue where entry points without an attribute would raise an Exception. + * Removed unused name parameter from entry_points(). Closes #44. + * DistributionFinder classes must now be instantiated before being placed on sys.meta_path. + +------------------------------------------------------------------- +Tue Feb 26 12:07:08 UTC 2019 - Tomáš Chvátal + +- Add missing setuptools_scm dependency to fix generated egg.info + +------------------------------------------------------------------- +Tue Feb 26 09:38:10 UTC 2019 - Tomáš Chvátal + +- Some packages request importlib_metadata to ease living provide + this symbol too + +------------------------------------------------------------------- +Wed Feb 6 11:53:33 UTC 2019 - Antonio Larrosa + +- Add do-not-test-pip.patch so tests depending on pip are not used + (they fail when the tests are run without tox) + +------------------------------------------------------------------- +Thu Jan 31 13:09:01 UTC 2019 - Tomáš Chvátal + +- Initial commit, needed by pygments-pytest diff --git a/saltbundlepy-importlib-metadata.spec b/saltbundlepy-importlib-metadata.spec new file mode 100644 index 0000000..187cc8d --- /dev/null +++ b/saltbundlepy-importlib-metadata.spec @@ -0,0 +1,91 @@ +# +# spec file for package saltbundlepy-importlib-metadata +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?!saltbundlepy_module:%define saltbundlepy_module() saltbundlepy-%{**}} +%define pythons saltbundlepy + +# Disable python bytecompile for all distros +# It's called explicitly in the spec +%global __brp_python_bytecompile %{nil} + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +%else +%define psuffix %{nil} +%bcond_with test +%endif +Name: saltbundlepy-importlib-metadata%{psuffix} +Version: 6.8.0 +Release: 0 +Summary: Tool to read metadata from Python packages +License: Apache-2.0 +URL: https://gitlab.com/python-devs/importlib_metadata +Source: https://files.pythonhosted.org/packages/source/i/importlib_metadata/importlib_metadata-%{version}.tar.gz +BuildRequires: %{saltbundlepy_module base >= 3.10} +BuildRequires: %{saltbundlepy_module pip} +BuildRequires: %{saltbundlepy_module setuptools-scm} +BuildRequires: %{saltbundlepy_module setuptools} +BuildRequires: %{saltbundlepy_module tomli} +BuildRequires: %{saltbundlepy_module wheel} +BuildRequires: %{saltbundlepy_module zipp >= 0.5} +BuildRequires: fdupes +BuildRequires: saltbundlepy-rpm-macros +Requires: saltbundlepy-zipp >= 0.5 +BuildArch: noarch +%if %{with test} +BuildRequires: %{saltbundlepy_module packaging} +BuildRequires: %{saltbundlepy_module pip} +BuildRequires: %{saltbundlepy_module pyfakefs} +BuildRequires: %{saltbundlepy_module wheel} +BuildRequires: %{saltbundlepy_module zipp >= 0.5} +%endif +%python_subpackages + +%description +This package supplies third-party access to the functionality of +importlib.metadata including improvements added to subsequent Python versions. + +%prep +%setup -q -n importlib_metadata-%{version} + +%build +%pyproject_wheel + +%install +%if !%{with test} +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitelib} +%endif + +%check +%if %{with test} +# no pytest_perf available +%pytest --ignore exercises.py +%endif + +%if !%{with test} +%files %{python_files} +%doc README.rst +%license LICENSE +%{python_sitelib}/importlib_metadata +%{python_sitelib}/importlib_metadata-%{version}*-info +%endif + +%changelog