Compare commits

...

No commits in common. "c8-stream-3.8" and "c9s" have entirely different histories.

8 changed files with 178 additions and 56 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

13
.gitignore vendored
View File

@ -1 +1,12 @@
SOURCES/packaging-19.2.tar.gz
/packaging-16.7.tar.gz
/packaging-16.8.tar.gz
/packaging-17.1.tar.gz
/packaging-19.0.tar.gz
/packaging-19.2.tar.gz
/packaging-20.0.tar.gz
/packaging-20.1.tar.gz
/packaging-20.3.tar.gz
/packaging-20.4.tar.gz
/packaging-20.7.tar.gz
/packaging-20.8.tar.gz
/packaging-20.9.tar.gz

View File

@ -1 +1 @@
ae4aeb07c330d623c3d8fa8414c6080d2c9a4192 SOURCES/packaging-19.2.tar.gz
8243804fa28da44825ee89ea4c78298d34adf00e packaging-20.9.tar.gz

6
gating.yaml Normal file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

7
plans/basic.fmf Normal file
View File

@ -0,0 +1,7 @@
summary: python-packaging tests
description:
Basic python-packaging tests
discover:
how: fmf
execute:
how: tmt

View File

@ -1,35 +1,40 @@
%global pypi_name packaging
# Specify --without wheel to prevent building the wheel
%bcond_with wheel
# Specify --without docs to prevent the dependency loop on python-sphinx
%bcond_with docs
# Specify --without tests to prevent the dependency loop on python-pytest
# Tests are disabled to remove the test dependencies
# Specify --with tests to run the tests on e.g. EPEL
%bcond_with tests
%global python_wheelname %{pypi_name}-%{version}-py2.py3-none-any.whl
%global pypi_name packaging
# Specify --with bootstrap to build in bootstrap mode
# This mode is needed, because python3-rpm-generators need packaging
# When bootstrapping, disable tests and docs as well.
%bcond_with bootstrap
%if %{without bootstrap}
# Specify --without docs to prevent the dependency loop on python-sphinx
%bcond_without docs
%else
%bcond_with docs
%endif
Name: python-%{pypi_name}
Version: 19.2
Release: 3%{?dist}
Version: 20.9
Release: 5%{?dist}
Summary: Core utilities for Python packages
License: BSD or ASL 2.0
URL: https://github.com/pypa/packaging
Source0: https://files.pythonhosted.org/packages/source/p/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
Source0: %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz
BuildArch: noarch
# Exclude i686 arch. Due to a modularity issue it's being added to the
# x86_64 compose of CRB, but we don't want to ship it at all.
# See: https://projects.engineering.redhat.com/browse/RCM-72605
ExcludeArch: i686
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-pyparsing
BuildRequires: python%{python3_pkgversion}-six
BuildRequires: python%{python3_pkgversion}-rpm-macros
BuildRequires: pyproject-rpm-macros
%if %{with bootstrap}
BuildRequires: python%{python3_pkgversion}-setuptools
%endif
# Upstream uses nox for testing, we specify the test deps manually as well.
%if %{with tests}
BuildRequires: python%{python3_pkgversion}-pytest
BuildRequires: python%{python3_pkgversion}-pretend
@ -38,44 +43,56 @@ BuildRequires: python%{python3_pkgversion}-pretend
BuildRequires: python%{python3_pkgversion}-sphinx
%endif
%if %{with wheel}
BuildRequires: python%{python3_pkgversion}-pip
BuildRequires: python%{python3_pkgversion}-wheel
%endif
%description
%global _description %{expand:
python-packaging provides core utilities for Python packages like utilities for
dealing with versions, specifiers, markers etc.
dealing with versions, specifiers, markers etc.}
%description %_description
%package -n python%{python3_pkgversion}-%{pypi_name}
Summary: %{summary}
%{?python_provide:%python_provide python%{python3_pkgversion}-%{pypi_name}}
Requires: python%{python3_pkgversion}-pyparsing
Requires: python%{python3_pkgversion}-six
# This is kept for compatibility with Fedora < 33 only:
%py_provides python%{python3_pkgversion}-%{pypi_name}
%if %{with bootstrap}
Provides: python%{python3_pkgversion}dist(packaging) = %{version}
Provides: python%{python3_version}dist(packaging) = %{version}
Requires: python%{python3_version}dist(pyparsing)
%endif
%description -n python%{python3_pkgversion}-%{pypi_name} %_description
%description -n python%{python3_pkgversion}-%{pypi_name}
python3-packaging provides core utilities for Python packages like utilities for
dealing with versions, specifiers, markers etc.
%if %{with docs}
%package -n python%{python3_pkgversion}-%{pypi_name}-doc
%package -n python-%{pypi_name}-doc
Summary: python-packaging documentation
%description -n python%{python3_pkgversion}-%{pypi_name}-doc
%description -n python-%{pypi_name}-doc
Documentation for python-packaging
%endif
%prep
%autosetup -n %{pypi_name}-%{version}
# Remove bundled egg-info
rm -rf %{pypi_name}.egg-info
%autosetup -p1 -n %{pypi_name}-%{version}
# Do not use furo as HTML theme in docs
# furo is not available in Fedora
sed -i '/html_theme = "furo"/d' docs/conf.py
%if %{without bootstrap}
%generate_buildrequires
%pyproject_buildrequires -r
%endif
%build
%if %{with wheel}
%py3_build_wheel
%else
%if %{with bootstrap}
%py3_build
%else
%pyproject_wheel
%endif
%if %{with docs}
@ -87,36 +104,93 @@ rm -rf html/.{doctrees,buildinfo}
rm -rf html/_static/fonts/
%endif
%install
%if %{with wheel}
%py3_install_wheel %{python_wheelname}
%else
%if %{with bootstrap}
%py3_install
echo '%{python3_sitelib}/packaging*' > %{pyproject_files}
%else
%pyproject_install
%pyproject_save_files %{pypi_name}
%endif
%if %{with tests}
%check
%{__python3} -m pytest tests/
%pytest
%endif
%files -n python%{python3_pkgversion}-%{pypi_name}
%files -n python%{python3_pkgversion}-%{pypi_name} -f %{pyproject_files}
%license LICENSE LICENSE.APACHE LICENSE.BSD
%doc README.rst CHANGELOG.rst CONTRIBUTING.rst
%{python3_sitelib}/%{pypi_name}/
%{python3_sitelib}/%{pypi_name}-*-info/
%if %{with docs}
%files -n python%{python3_pkgversion}-%{pypi_name}-doc
%files -n python-%{pypi_name}-doc
%doc html
%license LICENSE LICENSE.APACHE LICENSE.BSD
%endif
%changelog
* Fri Dec 13 2019 Tomas Orsava <torsava@redhat.com> - 19.2-3
- Exclude unsupported i686 arch
* Tue Nov 19 2019 Lumír Balhar <lbalhar@redhat.com> - 19.2-2
- Adjusted for Python 3.8 module in RHEL 8
%changelog
* Tue Feb 08 2022 Tomas Orsava <torsava@redhat.com> - 20.9-5
- Add automatically generated Obsoletes tag with the python39- prefix
for smoother upgrade from RHEL8
- Related: rhbz#1990421
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com>
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com>
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Mon Mar 08 2021 Charalampos Stratakis <cstratak@redhat.com> - 20.9-2
- Disable tests on RHEL9 to remove the test dependencies
* Mon Feb 01 2021 Lumír Balhar <lbalhar@redhat.com> - 20.9-1
- Update to 20.9
Resolves: rhbz#1922545
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 20.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Dec 14 2020 Lumír Balhar <lbalhar@redhat.com> - 20.8-1
- Update to 20.8 (#1906985)
* Mon Nov 30 2020 Lumír Balhar <lbalhar@redhat.com> - 20.7-1
- Update to 20.7 (#1902369)
* Fri Oct 02 2020 Miro Hrončok <mhroncok@redhat.com> - 20.4-3
- Drop the dependency on six to make the package lighter
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jun 01 2020 Lumír Balhar <lbalhar@redhat.com> - 20.4-1
- Update to 20.4 (#1838285)
* Sat May 23 2020 Miro Hrončok <mhroncok@redhat.com> - 20.3-3
- Rebuilt for Python 3.9
* Fri May 22 2020 Miro Hrončok <mhroncok@redhat.com> - 20.3-2
- Bootstrap for Python 3.9
* Fri Mar 06 2020 Lumír Balhar <lbalhar@redhat.com> - 20.3-1
- Update to 20.3 (#1810738)
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 20.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 27 2020 Lumír Balhar <lbalhar@redhat.com> - 20.1-1
- Update to 20.1 (#1794865)
* Mon Jan 06 2020 Lumír Balhar <lbalhar@redhat.com> - 20.0-2
- Ignore broken tests
* Mon Jan 06 2020 Lumír Balhar <lbalhar@redhat.com> - 20.0-1
- Update to 20.0 (#1788012)
* Thu Sep 26 2019 Lumír Balhar <lbalhar@redhat.com> - 19.2-1
- New upstream version 19.2 (bz#1742388)

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (packaging-20.9.tar.gz) = fb71f1036cfaacbe94fdee663af31d6ad1960f73ecc95cba87b461c2d7d2ea90085853bb4682b146492d8c48f784b60ef082e3b1259269857166b143cd9a920b

22
tests/main.fmf Normal file
View File

@ -0,0 +1,22 @@
summary: Tests for python-packaging
require:
- python3
- python3-packaging
# Currently there is no easy way to see the versions of installed packages.
# Let's list them to make sure we're testing against the correct package set.
/display-installed-packages:
test: |
rpm -qa | sort
/smoke:
test: |
set -eux
python3 -c 'import packaging'
python3 -c 'from packaging import version; version.Version("2.5.1rc2")'
python3 -c 'from packaging import specifiers; specifiers.SpecifierSet("~=1.0")'
python3 -c 'from packaging import markers; markers.Marker("python_version>'"'"'2'"'"'")'
python3 -c 'from packaging import requirements; requirements.Requirement('"'"'name[foo]>=2,<3; python_version>"2.0"'"'"')'
python3 -c 'from packaging import tags; tags.Tag("py39", "none", "any")'
python3 -c 'from packaging.utils import canonicalize_name; canonicalize_name("Django_foobar")'