forked from pool/python-importlib-metadata
- Update to v4.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 - Release v4.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. - Release v4.7.1 * #344: Fixed regression in packages_distributions when neither top-level.txt nor a files manifest is present. - Release v4.7.0 * #330: In packages_distributions, now infer top-level names from .files() when a top-level.txt (Setuptools-specific metadata) is not present. - Release v4.6.4 * #334: Correct SimplePath protocol to match pathlib protocol for __truediv__. - Release v4.6.3 * Moved workaround for #327 to _compat module. - Release v4.6.2 * bpo-44784: Avoid errors in test suite when DeprecationWarnings are treated as errors. - Release v4.6.1 * #327: Deprecation warnings now honor call stack variance on PyPy. - Release v4.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. - Release v4.5.0 * #319: Remove SelectableGroups deprecation exception for flake8. - Release v4.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]). - Release v4.3.1 * #320: Fix issue where normalized name for eggs was incorrectly solicited, leading to metadata being unavailable for eggs. - Release v4.3.0 * #317: De-duplication of distributions no longer requires loading the full metadata for PathDistribution objects, entry point loading performance by ~10x. - Release v4.2.0 * Prefer f-strings to .format calls. - Release v4.1.0 * #312: Add support for metadata 2.2 (Dynamic field). * #315: Add SimplePath protocol for interface clarity in PathDistribution. - Release v4.0.1 * #306: Clearer guidance about compatibility in readme. - Release v4.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. - Release v3.10.1 * Minor tweaks from CPython. - Release v3.10.0 * #295: Internal refactoring to unify section parsing logic. - Release v3.9.1 * #296: Exclude 'prepare' package. * #297: Fix ValueError when entry points contains comments. - Release v3.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. - Release v3.8.2 * #293: Re-enabled lazy evaluation of path lookup through a FreezableDefaultDict. - Release v3.8.1 * #293: Workaround for error in distribution search. - Release v3.8.0 * #290: Add mtime-based caching for FastPath and its lookups, dramatically increasing performance for repeated distribution lookups. - Release v3.7.3 * Docs enhancements and cleanup following review in GH-24782. OBS-URL: https://build.opensuse.org/request/show/920301 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-importlib-metadata?expand=0&rev=16
95 lines
2.9 KiB
RPMSpec
95 lines
2.9 KiB
RPMSpec
#
|
|
# spec file
|
|
#
|
|
# Copyright (c) 2021 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/
|
|
#
|
|
|
|
|
|
%global flavor @BUILD_FLAVOR@%{nil}
|
|
%if "%{flavor}" == "test"
|
|
%define psuffix -test
|
|
%bcond_without test
|
|
%else
|
|
%define psuffix %{nil}
|
|
%bcond_with test
|
|
%endif
|
|
%{?!python_module:%define python_module() python3-%{**}}
|
|
%define skip_python2 1
|
|
Name: python-importlib-metadata%{psuffix}
|
|
Version: 4.8.1
|
|
Release: 0
|
|
Summary: Read metadata from Python packages
|
|
License: Apache-2.0
|
|
URL: http://importlib-metadata.readthedocs.io/
|
|
Source: https://files.pythonhosted.org/packages/source/i/importlib_metadata/importlib_metadata-%{version}.tar.gz
|
|
BuildRequires: %{python_module base >= 3.6}
|
|
BuildRequires: %{python_module setuptools_scm}
|
|
BuildRequires: %{python_module setuptools}
|
|
BuildRequires: %{python_module toml}
|
|
BuildRequires: %{python_module zipp >= 0.5}
|
|
BuildRequires: fdupes
|
|
BuildRequires: python-rpm-macros
|
|
Requires: python-zipp >= 0.5
|
|
%if %{python_version_nodots} < 38
|
|
Requires: python-typing_extensions >= 3.6.4
|
|
%endif
|
|
Provides: python-importlib_metadata = %{version}
|
|
BuildArch: noarch
|
|
%if %{with test}
|
|
BuildRequires: %{python_module importlib_resources >= 1.3 if %python-base < 3.9}
|
|
BuildRequires: %{python_module packaging}
|
|
BuildRequires: %{python_module pep517}
|
|
BuildRequires: %{python_module pip}
|
|
BuildRequires: %{python_module pyfakefs}
|
|
BuildRequires: %{python_module pytest}
|
|
BuildRequires: %{python_module testsuite}
|
|
BuildRequires: %{python_module typing_extensions >= 3.6.4 if %python-base < 3.8}
|
|
BuildRequires: %{python_module wheel}
|
|
%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}
|
|
# don't import from sourcedir during testing
|
|
sed -i -e 's/norecursedirs.*/& importlib_metadata/' pytest.ini
|
|
|
|
%build
|
|
%python_build
|
|
|
|
%install
|
|
%if !%{with test}
|
|
%python_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
|