forked from pool/python-packaging
Accepting request 1045815 from home:bnavigator:branches:devel:languages:python:numeric
- Update to v22.0 * Fix compatible version specifier incorrectly strip trailing '0' by @kasium in #493 * Remove support for Python 3.6 by @abravalheri in #500 * Use concurrency limit in ci by @blink1073 in #510 * Fix issue link in changelog. by @bdice in #509 * chore: test with PyPy 3.8 & 3.9 by @mayeut in #512 * Accept locally installed prereleases by @q0w in #515 * Always run GHA workflows when they change by @mayeut in #516 * Add __hash__/__eq__ to requirements by @abravalheri in #499 * Upgrade to setup-python v3 and use caching for GHA by @brettcannon in #521 * allow pre-release versions in marker evaluation by @graingert in #523 * Error out from workflow on missing interpreter by @mayeut in #525 * chore: update pre-commit config to the latest repos' versions by @mayeut in #534 * chore: remove Windows PyPy 3.9 workaround on GHA by @mayeut in #533 * Use pipx to run nox / build in GHA workflows by @mayeut in #517 * Run tests with all PyPy versions locally by @mayeut in #535 * Adhere to PEP 685 when evaluating markers with extras by @hroncok in #545 * chore: update mypy and move to toml by @henryiii in #547 * Normalize extra comparison in markers for output by @brettcannon in #549 * Evaluate markers under environment with empty "extra" by @MrMino in #550 * Do not set extra in default_environment() by @sbidoul in #554 OBS-URL: https://build.opensuse.org/request/show/1045815 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-packaging?expand=0&rev=64
This commit is contained in:
@@ -17,13 +17,11 @@
|
||||
|
||||
|
||||
%define modname packaging
|
||||
# fallback if primary_python is not available from the project configuration
|
||||
%{?!primary_python:%define primary_python python3%{?!sle_version:10}}
|
||||
# in order to avoid rewriting for subpackage generator
|
||||
%define mypython python
|
||||
%global flavor @BUILD_FLAVOR@%{nil}
|
||||
%if "%{flavor}" == "primary"
|
||||
# this one is goes into Ring0
|
||||
# this one is goes into Ring0: Bootstrap for primary python stack
|
||||
%define pprefix %{primary_python}
|
||||
%define pythons %{primary_python}
|
||||
# Avoid cycle with python-rpm-packaging requiring python3-packaging
|
||||
@@ -32,14 +30,8 @@
|
||||
%if "%{flavor}" == ""
|
||||
# The rest is in Ring1
|
||||
%define pprefix python
|
||||
%if 0%{suse_version} >= 1550 || 0%{?sle_version} == 150500
|
||||
%{expand:%%define skip_%{primary_python} 1}
|
||||
BuildRequires: python3-packaging
|
||||
%else
|
||||
# no non-primary python in <=15.4
|
||||
ExclusiveArch: do-not-build
|
||||
%define python_module() no-build-without-multibuild-flavor
|
||||
%endif
|
||||
%endif
|
||||
%if "%{flavor}" == "test"
|
||||
%define pprefix python
|
||||
@@ -48,29 +40,26 @@ ExclusiveArch: do-not-build
|
||||
%else
|
||||
%bcond_with test
|
||||
%endif
|
||||
%{?!python_module:%define python_module() python3-%{**}}
|
||||
%define skip_python2 1
|
||||
|
||||
Name: %{pprefix}-packaging%{?psuffix}
|
||||
Version: 21.3
|
||||
Version: 22.0
|
||||
Release: 0
|
||||
Summary: Core utilities for Python packages
|
||||
License: Apache-2.0 AND BSD-2-Clause
|
||||
URL: https://github.com/pypa/packaging
|
||||
URL: https://packaging.pypa.io/
|
||||
#SourceRepository: https://github.com/pypa/packaging
|
||||
Source: https://files.pythonhosted.org/packages/source/p/packaging/packaging-%{version}.tar.gz
|
||||
# Fix testsuite on big-endian systems
|
||||
# see: https://github.com/pypa/packaging/pull/538
|
||||
Patch2: fix-big-endian-build.patch
|
||||
BuildRequires: %{python_module base >= 3.6}
|
||||
BuildRequires: %{python_module base >= 3.7}
|
||||
# python-flit-core is bootstrapped in Ring0 as well
|
||||
BuildRequires: %{python_module flit-core >= 3.3}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
#!BuildIgnore: post-build-checks-malwarescan
|
||||
# ! Do not add setuptools build dependency here, so that the primary package can be in Ring0 !
|
||||
# ! Also make sure all runtime dependencies don't require setuptools. !
|
||||
BuildArch: noarch
|
||||
%if %{with test}
|
||||
BuildRequires: %{python_module packaging = %{version}}
|
||||
BuildRequires: %{python_module pretend}
|
||||
BuildRequires: %{python_module pytest}
|
||||
BuildRequires: %{python_module pytest >= 6.2}
|
||||
%endif
|
||||
%if "%{flavor}" == "primary"
|
||||
# See boo#1186870, we can't provide ourselves to pythondistdeps.py
|
||||
@@ -78,35 +67,38 @@ Provides: %{mypython}%{python_version}dist(%{modname}) = %{version}-%{rele
|
||||
Provides: %{mypython}3-%{modname} = %{version}-%{release}
|
||||
Provides: %{mypython}3dist(%{modname}) = %{version}-%{release}
|
||||
Obsoletes: %{mypython}3-%{modname} < %{version}-%{release}
|
||||
Requires: %{primary_python}-pyparsing >= 2.0.2
|
||||
Requires: %{mypython}(abi) = %{python_version}
|
||||
%else
|
||||
Requires: python-pyparsing >= 2.0.2
|
||||
%endif
|
||||
%python_subpackages
|
||||
|
||||
%description
|
||||
Core utilities for Python packages
|
||||
Reusable core utilities for various Python Packaging interoperability specifications.
|
||||
|
||||
This library provides utilities that implement the interoperability specifications
|
||||
which have clearly one correct behaviour (eg: PEP 440) or benefit greatly from having
|
||||
a single shared implementation (eg: PEP 425).
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n packaging-%{version}
|
||||
|
||||
%if !%{with test}
|
||||
%build
|
||||
%{python_expand # build using pythonXX-base bundled setuptools
|
||||
$python -m venv venv-%{$python_bin_suffix}
|
||||
venv-%{$python_bin_suffix}/bin/python setup.py build
|
||||
%{python_expand # build using pythonXX-base bundled pip with the installed flit-core backend
|
||||
$python -m venv venv-%{$python_bin_suffix} --system-site-packages
|
||||
venv-%{$python_bin_suffix}/bin/pip wheel %{pyproject_wheel_args} .
|
||||
}
|
||||
%endif
|
||||
|
||||
%if !%{with test}
|
||||
%install
|
||||
%{python_expand # install using pythonXX-base bundled setuptools.
|
||||
# This will work until deprecated support of setup.py install is removed from the bundled setuptools.
|
||||
# Hopefully upstream packaging comes up with a better bootstrapping process by then.
|
||||
# (https://github.com/pypa/packaging/pull/536, https://github.com/pypa/packaging/pull/546)
|
||||
venv-%{$python_bin_suffix}/bin/python setup.py install \
|
||||
-O1 --skip-build --force --root %{buildroot} --prefix %{_prefix}
|
||||
%{python_expand # install wheel (into venv sitelib) and move to buildroot system sitelib
|
||||
venv-%{$python_bin_suffix}/bin/pip install %{pyproject_install_args} packaging==%{version}
|
||||
venvsite=%{buildroot}${PWD}/venv-%{$python_bin_suffix}/lib/python%{$python_bin_suffix}/site-packages
|
||||
mkdir -p %{buildroot}%{$python_sitelib}
|
||||
mv ${venvsite}/packaging* %{buildroot}%{$python_sitelib}/
|
||||
pushd %{buildroot}
|
||||
rmdir -p $(realpath --relative-to ${PWD} ${venvsite})
|
||||
popd
|
||||
%fdupes %{buildroot}%{$python_sitelib}
|
||||
}
|
||||
%endif
|
||||
@@ -119,9 +111,9 @@ venv-%{$python_bin_suffix}/bin/python setup.py install \
|
||||
%if !%{with test}
|
||||
%files %{python_files}
|
||||
%license LICENSE LICENSE.APACHE LICENSE.BSD
|
||||
%doc CHANGELOG.rst README.rst
|
||||
%doc README.rst
|
||||
%{python_sitelib}/packaging
|
||||
%{python_sitelib}/packaging-%{version}*-info
|
||||
%{python_sitelib}/packaging-%{version}.dist-info
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
Reference in New Issue
Block a user