Compare commits
No commits in common. "rawhide" and "f44" have entirely different histories.
9 changed files with 268 additions and 305 deletions
242
changelog
242
changelog
|
|
@ -1,242 +0,0 @@
|
||||||
* Wed Mar 04 2026 Lumír Balhar <lbala@redhat.com> - 14-15
|
|
||||||
- pythondistdeps: Use deprecated LegacyVersion (_version) only if necessary
|
|
||||||
|
|
||||||
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 14-14
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 14-13
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 14-12
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-11
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-10
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-9
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Oct 03 2023 Miro Hrončok <mhroncok@redhat.com> - 14-8
|
|
||||||
- Avoid DeprecationWarning: Implicit None on return values is deprecated and will raise KeyErrors
|
|
||||||
|
|
||||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 14-7
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed May 24 2023 Todd Zullinger <tmz@pobox.com> - 14-6
|
|
||||||
- Fix URL tag
|
|
||||||
|
|
||||||
* Fri May 05 2023 Miro Hrončok <mhroncok@redhat.com> - 14-5
|
|
||||||
- Declare the license via a complex SPDX expression rather than "effective license"
|
|
||||||
|
|
||||||
* Mon Apr 17 2023 Kalev Lember <klember@redhat.com> - 14-4
|
|
||||||
- Generate provides for /app-installed flatpak builds
|
|
||||||
|
|
||||||
* Tue Mar 07 2023 Miro Hrončok <mhroncok@redhat.com> - 14-3
|
|
||||||
- Avoid needless pkg_resources import in pythonbundles.py
|
|
||||||
- Ignore environment markers in pythonbundles.py
|
|
||||||
|
|
||||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 14-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Dec 22 2022 Karolina Surma <ksurma@redhat.com> - 14-1
|
|
||||||
- https://fedoraproject.org/wiki/Changes/Prevent-Providing-python3dist(pkg)=0
|
|
||||||
|
|
||||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 13-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Jun 02 2022 Miro Hrončok <mhroncok@redhat.com> - 13-1
|
|
||||||
- https://fedoraproject.org/wiki/Changes/PythonDistPEP503ProvidesOnly
|
|
||||||
|
|
||||||
* Fri May 27 2022 Miro Hrončok <mhroncok@redhat.com> - 12-15
|
|
||||||
- Don't include all requirements with True-evaluating markers in extras subpackages
|
|
||||||
- Fixes: rhbz#2090186
|
|
||||||
|
|
||||||
* Thu Feb 10 2022 Sandro Mani <manisandro@gmail.com> - 12-14
|
|
||||||
- Add namespace option to pythodistdeps.py to allow mingw-python generatros
|
|
||||||
|
|
||||||
* Wed Jan 26 2022 Tomas Orsava <torsava@redhat.com> - 12-13
|
|
||||||
- From `python3-foo` packages automatically generate `python3.X-foo` Obsoletes
|
|
||||||
tags on CentOS/RHEL
|
|
||||||
|
|
||||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 12-12
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Dec 19 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-11
|
|
||||||
- Handle legacy version specifiers that would previously raise exceptions.
|
|
||||||
|
|
||||||
* Fri Oct 29 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-10
|
|
||||||
- Additional fix for dev releases.
|
|
||||||
|
|
||||||
* Thu Oct 28 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-9
|
|
||||||
- Sync dependency conversion with upstream pyreq2rpm.
|
|
||||||
- Improve handling of > and < operators, and != operator with prefix matching
|
|
||||||
|
|
||||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 12-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue May 25 2021 Tomas Orsava <torsava@redhat.com> - 12-7
|
|
||||||
- pythondistdeps.py: Detect missing or corrupted metadata
|
|
||||||
- pythondistdeps.py: Catch all exceptions and terminate the build if one is raised
|
|
||||||
|
|
||||||
* Mon Apr 19 2021 Miro Hrončok <mhroncok@redhat.com> - 12-6
|
|
||||||
- Get rid of distutils deprecation warning (by not using it)
|
|
||||||
- The distutils module is deprecated in Python 3.10+
|
|
||||||
- https://www.python.org/dev/peps/pep-0632/
|
|
||||||
|
|
||||||
* Wed Mar 31 2021 Miro Hrončok <mhroncok@redhat.com> - 12-5
|
|
||||||
- Do not generate setuptools requirement for console_scripts on Python 3.10+
|
|
||||||
- See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools
|
|
||||||
|
|
||||||
* Thu Mar 11 2021 Tomas Orsava <torsava@redhat.com> - 12-4
|
|
||||||
- scripts/pythondistdeps: Treat extras names case-insensitively and always
|
|
||||||
output them in lower case (#1936875)
|
|
||||||
|
|
||||||
* Mon Feb 22 2021 Tomas Orsava <torsava@redhat.com> - 12-3
|
|
||||||
- scripts/pythondistdeps: Fix for Python 3.10
|
|
||||||
|
|
||||||
* Wed Feb 17 2021 Tomas Orsava <torsava@redhat.com> - 12-2
|
|
||||||
- scripts/pythondistdeps: Switch from using pkg_resources to importlib.metadata
|
|
||||||
for reading the egg/dist-info metadata
|
|
||||||
- The script no longer requires setuptools but instead requires packaging
|
|
||||||
|
|
||||||
* Wed Feb 03 2021 Miro Hrončok <mhroncok@redhat.com> - 12-1
|
|
||||||
- Disable the dist generators for Python 2
|
|
||||||
- https://fedoraproject.org/wiki/Changes/Disable_Python_2_Dist_RPM_Generators_and_Freeze_Python_2_Macros
|
|
||||||
|
|
||||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11-13
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Oct 19 2020 Tomas Orsava <torsava@redhat.com> - 11-12
|
|
||||||
- Run scripts in an isolated Python environment (#1889080)
|
|
||||||
|
|
||||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 11-11
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jul 21 2020 Miro Hrončok <mhroncok@redhat.com> - 11-10
|
|
||||||
- pythondistdeps: Split Python Extras names after the rightmost plus sign
|
|
||||||
- pythondistdeps: Handle edge cases of version comparisons more closely to
|
|
||||||
upstream, despite irrationality
|
|
||||||
See: https://github.com/pypa/packaging/issues/320
|
|
||||||
|
|
||||||
* Fri Jul 10 2020 Tomas Orsava <torsava@redhat.com> - 11-9
|
|
||||||
- pythondistdeps: Implement provides/requires for extras packages
|
|
||||||
- Enable --require-extras-subpackages
|
|
||||||
- Adapt Python version marker workaround for setuptools 42+
|
|
||||||
|
|
||||||
* Fri Jun 26 2020 Miro Hrončok <mhroncok@redhat.com> - 11-8
|
|
||||||
- Fix python(abi) requires generator, it picked files from almost good directories
|
|
||||||
- Add a script to generate Python bundled provides
|
|
||||||
|
|
||||||
* Thu May 21 2020 Miro Hrončok <mhroncok@redhat.com> - 11-7
|
|
||||||
- Use PEP 503 names for requires
|
|
||||||
|
|
||||||
* Tue May 05 2020 Miro Hrončok <mhroncok@redhat.com> - 11-6
|
|
||||||
- Deduplicate automatically provided names trough Python RPM Lua macros
|
|
||||||
|
|
||||||
* Wed Apr 29 2020 Tomas Orsava <torsava@redhat.com> - 11-5
|
|
||||||
- Backporting proposed upstream changes
|
|
||||||
https://github.com/rpm-software-management/rpm/pull/1195
|
|
||||||
- Only provide python3dist(..) for the main Python versions (BZ#1812083)
|
|
||||||
- Preparation for the proper handling of normalized names (BZ#1791530)
|
|
||||||
- Add a test suite (and enable it in Fedora CI)
|
|
||||||
- Better error messages for unsupported package versions
|
|
||||||
- Fix sorting of dev versions
|
|
||||||
|
|
||||||
* Tue Apr 28 2020 Miro Hrončok <mhroncok@redhat.com> - 11-4
|
|
||||||
- Don't define global Lua variables from Python generator
|
|
||||||
|
|
||||||
* Mon Apr 20 2020 Gordon Messmer <gordon.messmer@gmail.com> - 11-3
|
|
||||||
- Handle all-zero versions without crashing
|
|
||||||
|
|
||||||
* Tue Apr 07 2020 Miro Hrončok <mhroncok@redhat.com> - 11-2
|
|
||||||
- Use dynamic %%_prefix value when matching files for python(abi) provides
|
|
||||||
- Sync with upstream RPM dist generator
|
|
||||||
|
|
||||||
* Wed Apr 01 2020 Miro Hrončok <mhroncok@redhat.com> - 11-1
|
|
||||||
- Rewrite python(abi) generators to Lua to make them faster
|
|
||||||
- RPM 4.16+ is needed
|
|
||||||
- Automatically call %%python_provide
|
|
||||||
|
|
||||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 17 2020 Miro Hrončok <mhroncok@redhat.com> - 10-3
|
|
||||||
- Also provide pythonXdist() with PEP 503 normalized names (#1791530)
|
|
||||||
|
|
||||||
* Fri Jan 03 2020 Miro Hrončok <mhroncok@redhat.com> - 10-2
|
|
||||||
- Fix more complicated requirement expressions by adding parenthesis
|
|
||||||
|
|
||||||
* Wed Jan 01 2020 Miro Hrončok <mhroncok@redhat.com> - 10-1
|
|
||||||
- Handle version ending with ".*" (#1758141)
|
|
||||||
- Handle compatible-release operator "~=" (#1758141)
|
|
||||||
- Use rich deps for semantically versioned dependencies
|
|
||||||
- Match Python version if minor has multiple digits (e.g. 3.10, #1777382)
|
|
||||||
- Only add setuptools requirement for egg-info packages
|
|
||||||
|
|
||||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jun 24 2019 Tomas Orsava <torsava@redhat.com> - 9-1
|
|
||||||
- Canonicalize Python versions and properly handle != spec
|
|
||||||
|
|
||||||
* Wed Apr 17 2019 Miro Hrončok <mhroncok@redhat.com> - 8-1
|
|
||||||
- console_scripts entry points to require setuptools
|
|
||||||
https://github.com/rpm-software-management/rpm/pull/666
|
|
||||||
|
|
||||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Dec 20 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 7-1
|
|
||||||
- Enable requires generator
|
|
||||||
|
|
||||||
* Wed Oct 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 6-1
|
|
||||||
- Tighten regex for depgen
|
|
||||||
|
|
||||||
* Sat Jul 28 2018 Miro Hrončok <mhroncok@redhat.com> - 5-4
|
|
||||||
- Use nonstandardlib for purelib definition (#1609492)
|
|
||||||
|
|
||||||
* Sat Jul 28 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5-3
|
|
||||||
- Add pythondist generator
|
|
||||||
|
|
||||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Feb 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5-1
|
|
||||||
- Fork upstream generators
|
|
||||||
- "Fix" support of environment markers
|
|
||||||
|
|
||||||
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.14.0-2.1
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Nov 28 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-2
|
|
||||||
- Switch bootsrapping macro to a bcond for modularity
|
|
||||||
|
|
||||||
* Fri Oct 20 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-1
|
|
||||||
- Rebase to rpm 4.14.0 final (http://rpm.org/wiki/Releases/4.14.0)
|
|
||||||
- Re-synchronize version/release macros with the rpm Fedora package
|
|
||||||
|
|
||||||
* Mon Sep 18 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-0.rc1.1
|
|
||||||
- Update to a new upstream version of RPM
|
|
||||||
- Drop upstreamed patches
|
|
||||||
- Renumber remaining patches
|
|
||||||
|
|
||||||
* Thu Aug 24 2017 Miro Hrončok <mhroncok@redhat.com> - 4.13.0.1-4
|
|
||||||
- Add patch 10: Do not provide pythonXdist for platform-python packages (rhbz#1484607)
|
|
||||||
|
|
||||||
* Tue Aug 08 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-3
|
|
||||||
- Add patch 9: Generate requires and provides for platform-python(abi)
|
|
||||||
(https://fedoraproject.org/wiki/Changes/Platform_Python_Stack)
|
|
||||||
|
|
||||||
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.13.0.1-2.1
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu May 18 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-2
|
|
||||||
- Added a license file
|
|
||||||
- Added a dependency on rpm for the proper directory structure
|
|
||||||
- Properly owning the __pycache__ directory
|
|
||||||
|
|
||||||
* Tue May 02 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-1
|
|
||||||
- Splitting Python RPM generators from the `rpm` package to standalone one
|
|
||||||
2
plan.fmf
2
plan.fmf
|
|
@ -30,11 +30,11 @@ prepare:
|
||||||
- rpmdevtools
|
- rpmdevtools
|
||||||
- fedpkg-minimal
|
- fedpkg-minimal
|
||||||
- python3-devel
|
- python3-devel
|
||||||
- python3-packaging
|
|
||||||
- python3-pip
|
- python3-pip
|
||||||
- python3-pytest
|
- python3-pytest
|
||||||
- python3-pyyaml
|
- python3-pyyaml
|
||||||
- python3-setuptools
|
- python3-setuptools
|
||||||
|
- python3-wheel
|
||||||
- dnf
|
- dnf
|
||||||
- name: Update packages
|
- name: Update packages
|
||||||
how: shell
|
how: shell
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
Name: python-rpm-generators
|
Name: python-rpm-generators
|
||||||
Summary: Dependency generators for Python RPMs
|
Summary: Dependency generators for Python RPMs
|
||||||
Version: 14
|
Version: 14
|
||||||
Release: %autorelease
|
Release: 14%{?dist}
|
||||||
|
|
||||||
Url: https://src.fedoraproject.org/rpms/python-rpm-generators
|
Url: https://src.fedoraproject.org/rpms/python-rpm-generators
|
||||||
|
|
||||||
|
|
@ -56,4 +56,242 @@ install -Dpm0755 -t %{buildroot}%{_rpmconfigdir} *.py
|
||||||
%{_rpmconfigdir}/pythonbundles.py
|
%{_rpmconfigdir}/pythonbundles.py
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
%autochangelog
|
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 14-14
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 14-13
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 14-12
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-11
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-10
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 14-9
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Oct 03 2023 Miro Hrončok <mhroncok@redhat.com> - 14-8
|
||||||
|
- Avoid DeprecationWarning: Implicit None on return values is deprecated and will raise KeyErrors
|
||||||
|
|
||||||
|
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 14-7
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed May 24 2023 Todd Zullinger <tmz@pobox.com> - 14-6
|
||||||
|
- Fix URL tag
|
||||||
|
|
||||||
|
* Fri May 05 2023 Miro Hrončok <mhroncok@redhat.com> - 14-5
|
||||||
|
- Declare the license via a complex SPDX expression rather than "effective license"
|
||||||
|
|
||||||
|
* Mon Apr 17 2023 Kalev Lember <klember@redhat.com> - 14-4
|
||||||
|
- Generate provides for /app-installed flatpak builds
|
||||||
|
|
||||||
|
* Tue Mar 07 2023 Miro Hrončok <mhroncok@redhat.com> - 14-3
|
||||||
|
- Avoid needless pkg_resources import in pythonbundles.py
|
||||||
|
- Ignore environment markers in pythonbundles.py
|
||||||
|
|
||||||
|
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 14-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Dec 22 2022 Karolina Surma <ksurma@redhat.com> - 14-1
|
||||||
|
- https://fedoraproject.org/wiki/Changes/Prevent-Providing-python3dist(pkg)=0
|
||||||
|
|
||||||
|
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 13-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jun 02 2022 Miro Hrončok <mhroncok@redhat.com> - 13-1
|
||||||
|
- https://fedoraproject.org/wiki/Changes/PythonDistPEP503ProvidesOnly
|
||||||
|
|
||||||
|
* Fri May 27 2022 Miro Hrončok <mhroncok@redhat.com> - 12-15
|
||||||
|
- Don't include all requirements with True-evaluating markers in extras subpackages
|
||||||
|
- Fixes: rhbz#2090186
|
||||||
|
|
||||||
|
* Thu Feb 10 2022 Sandro Mani <manisandro@gmail.com> - 12-14
|
||||||
|
- Add namespace option to pythodistdeps.py to allow mingw-python generatros
|
||||||
|
|
||||||
|
* Wed Jan 26 2022 Tomas Orsava <torsava@redhat.com> - 12-13
|
||||||
|
- From `python3-foo` packages automatically generate `python3.X-foo` Obsoletes
|
||||||
|
tags on CentOS/RHEL
|
||||||
|
|
||||||
|
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 12-12
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sun Dec 19 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-11
|
||||||
|
- Handle legacy version specifiers that would previously raise exceptions.
|
||||||
|
|
||||||
|
* Fri Oct 29 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-10
|
||||||
|
- Additional fix for dev releases.
|
||||||
|
|
||||||
|
* Thu Oct 28 2021 Gordon Messmer <gordon.messmer@gmail.com> - 12-9
|
||||||
|
- Sync dependency conversion with upstream pyreq2rpm.
|
||||||
|
- Improve handling of > and < operators, and != operator with prefix matching
|
||||||
|
|
||||||
|
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 12-8
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue May 25 2021 Tomas Orsava <torsava@redhat.com> - 12-7
|
||||||
|
- pythondistdeps.py: Detect missing or corrupted metadata
|
||||||
|
- pythondistdeps.py: Catch all exceptions and terminate the build if one is raised
|
||||||
|
|
||||||
|
* Mon Apr 19 2021 Miro Hrončok <mhroncok@redhat.com> - 12-6
|
||||||
|
- Get rid of distutils deprecation warning (by not using it)
|
||||||
|
- The distutils module is deprecated in Python 3.10+
|
||||||
|
- https://www.python.org/dev/peps/pep-0632/
|
||||||
|
|
||||||
|
* Wed Mar 31 2021 Miro Hrončok <mhroncok@redhat.com> - 12-5
|
||||||
|
- Do not generate setuptools requirement for console_scripts on Python 3.10+
|
||||||
|
- See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools
|
||||||
|
|
||||||
|
* Thu Mar 11 2021 Tomas Orsava <torsava@redhat.com> - 12-4
|
||||||
|
- scripts/pythondistdeps: Treat extras names case-insensitively and always
|
||||||
|
output them in lower case (#1936875)
|
||||||
|
|
||||||
|
* Mon Feb 22 2021 Tomas Orsava <torsava@redhat.com> - 12-3
|
||||||
|
- scripts/pythondistdeps: Fix for Python 3.10
|
||||||
|
|
||||||
|
* Wed Feb 17 2021 Tomas Orsava <torsava@redhat.com> - 12-2
|
||||||
|
- scripts/pythondistdeps: Switch from using pkg_resources to importlib.metadata
|
||||||
|
for reading the egg/dist-info metadata
|
||||||
|
- The script no longer requires setuptools but instead requires packaging
|
||||||
|
|
||||||
|
* Wed Feb 03 2021 Miro Hrončok <mhroncok@redhat.com> - 12-1
|
||||||
|
- Disable the dist generators for Python 2
|
||||||
|
- https://fedoraproject.org/wiki/Changes/Disable_Python_2_Dist_RPM_Generators_and_Freeze_Python_2_Macros
|
||||||
|
|
||||||
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11-13
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Oct 19 2020 Tomas Orsava <torsava@redhat.com> - 11-12
|
||||||
|
- Run scripts in an isolated Python environment (#1889080)
|
||||||
|
|
||||||
|
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 11-11
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Jul 21 2020 Miro Hrončok <mhroncok@redhat.com> - 11-10
|
||||||
|
- pythondistdeps: Split Python Extras names after the rightmost plus sign
|
||||||
|
- pythondistdeps: Handle edge cases of version comparisons more closely to
|
||||||
|
upstream, despite irrationality
|
||||||
|
See: https://github.com/pypa/packaging/issues/320
|
||||||
|
|
||||||
|
* Fri Jul 10 2020 Tomas Orsava <torsava@redhat.com> - 11-9
|
||||||
|
- pythondistdeps: Implement provides/requires for extras packages
|
||||||
|
- Enable --require-extras-subpackages
|
||||||
|
- Adapt Python version marker workaround for setuptools 42+
|
||||||
|
|
||||||
|
* Fri Jun 26 2020 Miro Hrončok <mhroncok@redhat.com> - 11-8
|
||||||
|
- Fix python(abi) requires generator, it picked files from almost good directories
|
||||||
|
- Add a script to generate Python bundled provides
|
||||||
|
|
||||||
|
* Thu May 21 2020 Miro Hrončok <mhroncok@redhat.com> - 11-7
|
||||||
|
- Use PEP 503 names for requires
|
||||||
|
|
||||||
|
* Tue May 05 2020 Miro Hrončok <mhroncok@redhat.com> - 11-6
|
||||||
|
- Deduplicate automatically provided names trough Python RPM Lua macros
|
||||||
|
|
||||||
|
* Wed Apr 29 2020 Tomas Orsava <torsava@redhat.com> - 11-5
|
||||||
|
- Backporting proposed upstream changes
|
||||||
|
https://github.com/rpm-software-management/rpm/pull/1195
|
||||||
|
- Only provide python3dist(..) for the main Python versions (BZ#1812083)
|
||||||
|
- Preparation for the proper handling of normalized names (BZ#1791530)
|
||||||
|
- Add a test suite (and enable it in Fedora CI)
|
||||||
|
- Better error messages for unsupported package versions
|
||||||
|
- Fix sorting of dev versions
|
||||||
|
|
||||||
|
* Tue Apr 28 2020 Miro Hrončok <mhroncok@redhat.com> - 11-4
|
||||||
|
- Don't define global Lua variables from Python generator
|
||||||
|
|
||||||
|
* Mon Apr 20 2020 Gordon Messmer <gordon.messmer@gmail.com> - 11-3
|
||||||
|
- Handle all-zero versions without crashing
|
||||||
|
|
||||||
|
* Tue Apr 07 2020 Miro Hrončok <mhroncok@redhat.com> - 11-2
|
||||||
|
- Use dynamic %%_prefix value when matching files for python(abi) provides
|
||||||
|
- Sync with upstream RPM dist generator
|
||||||
|
|
||||||
|
* Wed Apr 01 2020 Miro Hrončok <mhroncok@redhat.com> - 11-1
|
||||||
|
- Rewrite python(abi) generators to Lua to make them faster
|
||||||
|
- RPM 4.16+ is needed
|
||||||
|
- Automatically call %%python_provide
|
||||||
|
|
||||||
|
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10-4
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jan 17 2020 Miro Hrončok <mhroncok@redhat.com> - 10-3
|
||||||
|
- Also provide pythonXdist() with PEP 503 normalized names (#1791530)
|
||||||
|
|
||||||
|
* Fri Jan 03 2020 Miro Hrončok <mhroncok@redhat.com> - 10-2
|
||||||
|
- Fix more complicated requirement expressions by adding parenthesis
|
||||||
|
|
||||||
|
* Wed Jan 01 2020 Miro Hrončok <mhroncok@redhat.com> - 10-1
|
||||||
|
- Handle version ending with ".*" (#1758141)
|
||||||
|
- Handle compatible-release operator "~=" (#1758141)
|
||||||
|
- Use rich deps for semantically versioned dependencies
|
||||||
|
- Match Python version if minor has multiple digits (e.g. 3.10, #1777382)
|
||||||
|
- Only add setuptools requirement for egg-info packages
|
||||||
|
|
||||||
|
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jun 24 2019 Tomas Orsava <torsava@redhat.com> - 9-1
|
||||||
|
- Canonicalize Python versions and properly handle != spec
|
||||||
|
|
||||||
|
* Wed Apr 17 2019 Miro Hrončok <mhroncok@redhat.com> - 8-1
|
||||||
|
- console_scripts entry points to require setuptools
|
||||||
|
https://github.com/rpm-software-management/rpm/pull/666
|
||||||
|
|
||||||
|
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Dec 20 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 7-1
|
||||||
|
- Enable requires generator
|
||||||
|
|
||||||
|
* Wed Oct 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 6-1
|
||||||
|
- Tighten regex for depgen
|
||||||
|
|
||||||
|
* Sat Jul 28 2018 Miro Hrončok <mhroncok@redhat.com> - 5-4
|
||||||
|
- Use nonstandardlib for purelib definition (#1609492)
|
||||||
|
|
||||||
|
* Sat Jul 28 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5-3
|
||||||
|
- Add pythondist generator
|
||||||
|
|
||||||
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sun Feb 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5-1
|
||||||
|
- Fork upstream generators
|
||||||
|
- "Fix" support of environment markers
|
||||||
|
|
||||||
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.14.0-2.1
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Nov 28 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-2
|
||||||
|
- Switch bootsrapping macro to a bcond for modularity
|
||||||
|
|
||||||
|
* Fri Oct 20 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-1
|
||||||
|
- Rebase to rpm 4.14.0 final (http://rpm.org/wiki/Releases/4.14.0)
|
||||||
|
- Re-synchronize version/release macros with the rpm Fedora package
|
||||||
|
|
||||||
|
* Mon Sep 18 2017 Tomas Orsava <torsava@redhat.com> - 4.14.0-0.rc1.1
|
||||||
|
- Update to a new upstream version of RPM
|
||||||
|
- Drop upstreamed patches
|
||||||
|
- Renumber remaining patches
|
||||||
|
|
||||||
|
* Thu Aug 24 2017 Miro Hrončok <mhroncok@redhat.com> - 4.13.0.1-4
|
||||||
|
- Add patch 10: Do not provide pythonXdist for platform-python packages (rhbz#1484607)
|
||||||
|
|
||||||
|
* Tue Aug 08 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-3
|
||||||
|
- Add patch 9: Generate requires and provides for platform-python(abi)
|
||||||
|
(https://fedoraproject.org/wiki/Changes/Platform_Python_Stack)
|
||||||
|
|
||||||
|
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.13.0.1-2.1
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu May 18 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-2
|
||||||
|
- Added a license file
|
||||||
|
- Added a dependency on rpm for the proper directory structure
|
||||||
|
- Properly owning the __pycache__ directory
|
||||||
|
|
||||||
|
* Tue May 02 2017 Tomas Orsava <torsava@redhat.com> - 4.13.0.1-1
|
||||||
|
- Splitting Python RPM generators from the `rpm` package to standalone one
|
||||||
|
|
|
||||||
|
|
@ -28,4 +28,4 @@
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
%__python_path ^((%{?!flatpak:/usr}%{?flatpak:/app}/lib(64)?/python[[:digit:]]+\\.[[:digit:]]+/.+)|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$
|
%__python_path ^((%{?!flatpak:/usr}%{?flatpak:/app}/lib(64)?/python[[:digit:]]+\\.[[:digit:]]+/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]+\\.[[:digit:]]+))$
|
||||||
|
|
|
||||||
|
|
@ -76,12 +76,7 @@ class Distribution(PathDistribution):
|
||||||
|
|
||||||
# Check that the initialization went well and metadata are not missing or corrupted
|
# Check that the initialization went well and metadata are not missing or corrupted
|
||||||
# name is the most important attribute, if it doesn't exist, import failed
|
# name is the most important attribute, if it doesn't exist, import failed
|
||||||
# Python 3.15+ raises MetadataNotFound (FileNotFoundError) instead of returning None
|
if not self.name or not isinstance(self.name, str):
|
||||||
try:
|
|
||||||
name = self.name
|
|
||||||
except FileNotFoundError:
|
|
||||||
name = None
|
|
||||||
if not name or not isinstance(name, str):
|
|
||||||
print("*** PYTHON_METADATA_FAILED_TO_PARSE_ERROR___SEE_STDERR ***")
|
print("*** PYTHON_METADATA_FAILED_TO_PARSE_ERROR___SEE_STDERR ***")
|
||||||
print('Error: Python metadata at `{}` are missing or corrupted.'.format(path), file=stderr)
|
print('Error: Python metadata at `{}` are missing or corrupted.'.format(path), file=stderr)
|
||||||
exit(65) # os.EX_DATAERR
|
exit(65) # os.EX_DATAERR
|
||||||
|
|
@ -138,14 +133,14 @@ class Distribution(PathDistribution):
|
||||||
class RpmVersion():
|
class RpmVersion():
|
||||||
def __init__(self, version_id):
|
def __init__(self, version_id):
|
||||||
version = parse(version_id)
|
version = parse(version_id)
|
||||||
if version.__class__.__name__ == 'LegacyVersion':
|
if isinstance(version._version, str):
|
||||||
self.version = version._version
|
self.version = version._version
|
||||||
else:
|
else:
|
||||||
self.epoch = version.epoch
|
self.epoch = version._version.epoch
|
||||||
self.version = list(version.release)
|
self.version = list(version._version.release)
|
||||||
self.pre = version.pre
|
self.pre = version._version.pre
|
||||||
self.dev = version.dev
|
self.dev = version._version.dev
|
||||||
self.post = version.post
|
self.post = version._version.post
|
||||||
# version.local is ignored as it is not expected to appear
|
# version.local is ignored as it is not expected to appear
|
||||||
# in public releases
|
# in public releases
|
||||||
# https://www.python.org/dev/peps/pep-0440/#local-version-identifiers
|
# https://www.python.org/dev/peps/pep-0440/#local-version-identifiers
|
||||||
|
|
@ -173,12 +168,12 @@ class RpmVersion():
|
||||||
while len(self.version) > 1 and self.version[-1] == 0:
|
while len(self.version) > 1 and self.version[-1] == 0:
|
||||||
self.version.pop()
|
self.version.pop()
|
||||||
rpm_version = '.'.join(str(x) for x in self.version)
|
rpm_version = '.'.join(str(x) for x in self.version)
|
||||||
if self.pre is not None:
|
if self.pre:
|
||||||
rpm_suffix = '~{}'.format(''.join(str(x) for x in self.pre))
|
rpm_suffix = '~{}'.format(''.join(str(x) for x in self.pre))
|
||||||
elif self.dev is not None:
|
elif self.dev:
|
||||||
rpm_suffix = '~~dev{}'.format(self.dev)
|
rpm_suffix = '~~{}'.format(''.join(str(x) for x in self.dev))
|
||||||
elif self.post is not None:
|
elif self.post:
|
||||||
rpm_suffix = '^post{}'.format(self.post)
|
rpm_suffix = '^post{}'.format(self.post[1])
|
||||||
else:
|
else:
|
||||||
rpm_suffix = ''
|
rpm_suffix = ''
|
||||||
return '{}{}{}'.format(rpm_epoch, rpm_version, rpm_suffix)
|
return '{}{}{}'.format(rpm_epoch, rpm_version, rpm_suffix)
|
||||||
|
|
@ -266,10 +261,10 @@ def convert_ordered(name, operator, version_id):
|
||||||
# For backwards compatibility, fallback to previous behavior with LegacyVersions
|
# For backwards compatibility, fallback to previous behavior with LegacyVersions
|
||||||
if not version.is_legacy():
|
if not version.is_legacy():
|
||||||
# Prevent dev and pre-releases from satisfying a < requirement
|
# Prevent dev and pre-releases from satisfying a < requirement
|
||||||
if operator == '<' and version.pre is None and version.dev is None and version.post is None:
|
if operator == '<' and not version.pre and not version.dev and not version.post:
|
||||||
version = '{}~~'.format(version)
|
version = '{}~~'.format(version)
|
||||||
# Prevent post-releases from satisfying a > requirement
|
# Prevent post-releases from satisfying a > requirement
|
||||||
if operator == '>' and version.pre is None and version.dev is None and version.post is None:
|
if operator == '>' and not version.pre and not version.dev and not version.post:
|
||||||
version = '{}.0'.format(version)
|
version = '{}.0'.format(version)
|
||||||
return '{} {} {}'.format(name, operator, version)
|
return '{} {} {}'.format(name, operator, version)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,5 @@ rpm -qp --provides ${RPMDIR}/${ARCH}/python-arched-0-0.${ARCH}.rpm | grep "${ABI
|
||||||
rpm -qp --requires ${RPMDIR}/noarch/python-noarch-0-0.noarch.rpm | grep "${ABI}"
|
rpm -qp --requires ${RPMDIR}/noarch/python-noarch-0-0.noarch.rpm | grep "${ABI}"
|
||||||
rpm -qp --provides ${RPMDIR}/noarch/python-noarch-0-0.noarch.rpm | grep "${ABI}" && exit 1 || true
|
rpm -qp --provides ${RPMDIR}/noarch/python-noarch-0-0.noarch.rpm | grep "${ABI}" && exit 1 || true
|
||||||
|
|
||||||
rpm -qp --requires ${RPMDIR}/noarch/python-data-0-0.noarch.rpm | grep "${ABI}"
|
|
||||||
rpm -qp --provides ${RPMDIR}/noarch/python-data-0-0.noarch.rpm | grep "${ABI}" && exit 1 || true
|
|
||||||
|
|
||||||
rpm -qp --provides ${RPMDIR}/${ARCH}/python-misplaced-interpreter-0-0.${ARCH}.rpm | grep "${ABI}" && exit 1 || true
|
rpm -qp --provides ${RPMDIR}/${ARCH}/python-misplaced-interpreter-0-0.${ARCH}.rpm | grep "${ABI}" && exit 1 || true
|
||||||
rpm -qp --requires ${RPMDIR}/noarch/python-misplaced-library-0-0.noarch.rpm | grep "${ABI}" && exit 1 || true
|
rpm -qp --requires ${RPMDIR}/noarch/python-misplaced-library-0-0.noarch.rpm | grep "${ABI}" && exit 1 || true
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,6 @@ mkdir -p %{buildroot}/opt%{_bindir}
|
||||||
|
|
||||||
echo "print()" > %{buildroot}%{python3_sitelib}/file.py
|
echo "print()" > %{buildroot}%{python3_sitelib}/file.py
|
||||||
echo "print()" > %{buildroot}/opt%{python3_sitelib}/file.py
|
echo "print()" > %{buildroot}/opt%{python3_sitelib}/file.py
|
||||||
echo "data" > %{buildroot}%{python3_sitelib}/file.txt
|
|
||||||
|
|
||||||
cp %{python3_sitearch}/../lib-dynload/cmath.*.so %{buildroot}%{python3_sitearch}/file.so
|
cp %{python3_sitearch}/../lib-dynload/cmath.*.so %{buildroot}%{python3_sitearch}/file.so
|
||||||
|
|
||||||
|
|
@ -50,15 +49,6 @@ Summary: ...
|
||||||
%{_bindir}/python%{python3_version}
|
%{_bindir}/python%{python3_version}
|
||||||
|
|
||||||
|
|
||||||
%package -n python-data
|
|
||||||
Summary: ...
|
|
||||||
BuildArch: noarch
|
|
||||||
%description -n python-data
|
|
||||||
...
|
|
||||||
%files -n python-data
|
|
||||||
%{python3_sitelib}/file.txt
|
|
||||||
|
|
||||||
|
|
||||||
%package -n python-misplaced-library
|
%package -n python-misplaced-library
|
||||||
Summary: ...
|
Summary: ...
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ rpmbuild -ba pythonname.spec
|
||||||
|
|
||||||
X_Y=$(rpm --eval '%python3_version')
|
X_Y=$(rpm --eval '%python3_version')
|
||||||
RPMDIR=$(rpm --eval '%_topdir')/RPMS/noarch
|
RPMDIR=$(rpm --eval '%_topdir')/RPMS/noarch
|
||||||
DISTRO=$(rpm --eval '%{?rhel:rhel}%{?fedora:fedora}')
|
|
||||||
|
|
||||||
echo "Provides for python${X_Y}-foo"
|
echo "Provides for python${X_Y}-foo"
|
||||||
rpm -qp --provides ${RPMDIR}/python${X_Y}-foo-0-0.noarch.rpm
|
rpm -qp --provides ${RPMDIR}/python${X_Y}-foo-0-0.noarch.rpm
|
||||||
|
|
@ -44,13 +43,8 @@ test $(rpm -qp --obsoletes ${RPMDIR}/python${X_Y}-foo-0-0.noarch.rpm | wc -l) -e
|
||||||
echo "Obsoletes for python3-foo"
|
echo "Obsoletes for python3-foo"
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm
|
rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm
|
||||||
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
||||||
if [[ "$DISTRO" = "rhel" ]]; then
|
rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | grep -q '^python'${X_Y}'-foo < 0-0$' && exit 1 || true
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | grep -q '^python'${X_Y}'-foo < 0-0$'
|
test $(rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | wc -l) -eq 0
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | wc -l) -eq 1
|
|
||||||
else
|
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | grep -q '^python'${X_Y}'-foo < 0-0$' && exit 1 || true
|
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-foo-0-0.noarch.rpm | wc -l) -eq 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Obsoletes for python2-foo"
|
echo "Obsoletes for python2-foo"
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python2-foo-0-0.noarch.rpm
|
rpm -qp --obsoletes ${RPMDIR}/python2-foo-0-0.noarch.rpm
|
||||||
|
|
@ -69,24 +63,14 @@ rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm
|
||||||
# The deprecated %python_provide macro always obsoletes python-foo
|
# The deprecated %python_provide macro always obsoletes python-foo
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep -q '^python-python_provide < 0-0$'
|
rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep -q '^python-python_provide < 0-0$'
|
||||||
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
||||||
if [[ "$DISTRO" = "rhel" ]]; then
|
rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep -q '^python'${X_Y}'-python_provide < 0-0$' && exit 1 || true
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep -q '^python'${X_Y}'-python_provide < 0-0$'
|
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep python-python_provide | wc -l) -eq 1
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep python-python_provide | wc -l) -eq 1
|
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | wc -l) -eq 1
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | wc -l) -eq 2
|
|
||||||
else
|
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep -q '^python'${X_Y}'-python_provide < 0-0$' && exit 1 || true
|
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | grep python-python_provide | wc -l) -eq 1
|
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-python_provide-0-0.noarch.rpm | wc -l) -eq 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Obsoletes for python3-py_provides"
|
echo "Obsoletes for python3-py_provides"
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm
|
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | grep -q '^python-py_provides < 0-0$' && exit 1 || true
|
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | grep -q '^python-py_provides < 0-0$' && exit 1 || true
|
||||||
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
# In ELN/RHEL the pythonX.Y-* Obsoletes is generated, but not in Fedora, so we check for it explicitly.
|
||||||
if [[ "$DISTRO" = "rhel" ]]; then
|
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | grep -q '^python'${X_Y}'-py_provides < 0-0$' && exit 1 || true
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | grep -q '^python'${X_Y}'-py_provides < 0-0$'
|
test $(rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | wc -l) -eq 0
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | wc -l) -eq 1
|
|
||||||
else
|
|
||||||
rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | grep -q '^python'${X_Y}'-py_provides < 0-0$' && exit 1 || true
|
|
||||||
test $(rpm -qp --obsoletes ${RPMDIR}/python3-py_provides-0-0.noarch.rpm | wc -l) -eq 0
|
|
||||||
fi
|
|
||||||
|
|
|
||||||
|
|
@ -22,9 +22,10 @@
|
||||||
# Requirements for this script:
|
# Requirements for this script:
|
||||||
# - Python >= 3.6
|
# - Python >= 3.6
|
||||||
# - pip >= 20.0.1
|
# - pip >= 20.0.1
|
||||||
# - packaging
|
# - setuptools
|
||||||
# - pytest
|
# - pytest
|
||||||
# - pyyaml
|
# - pyyaml
|
||||||
|
# - wheel
|
||||||
|
|
||||||
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
@ -136,10 +137,10 @@ def check_and_install_test_data():
|
||||||
backup_argv = sys.argv[:]
|
backup_argv = sys.argv[:]
|
||||||
|
|
||||||
if type == "wheel":
|
if type == "wheel":
|
||||||
from packaging.version import Version
|
from pkg_resources import parse_version
|
||||||
abi = f"cp{py_version_nodots}"
|
abi = f"cp{py_version_nodots}"
|
||||||
# The "m" was removed from the abi flag in Python version 3.8
|
# The "m" was removed from the abi flag in Python version 3.8
|
||||||
if Version(py_version) < Version('3.8'):
|
if parse_version(py_version) < parse_version('3.8'):
|
||||||
abi += "m"
|
abi += "m"
|
||||||
|
|
||||||
# Install = download and unpack wheel into our
|
# Install = download and unpack wheel into our
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue