diff --git a/.gitignore b/.gitignore index e402717..78be7e2 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/argparse-manpage-*.tar.gz +/argparse_manpage-*.tar.gz diff --git a/argparse-manpage.spec b/argparse-manpage.spec index a5d82e0..7d88f6f 100644 --- a/argparse-manpage.spec +++ b/argparse-manpage.spec @@ -1,11 +1,11 @@ -%if 0%{?fedora} - %bcond_without python3 - %if 0%{?fedora} > 29 - %bcond_with python2 - %else - %bcond_without python2 - %endif +%global pip_module_name argparse_manpage + +%if 0%{?fedora} || 0%{?rhel} >= 9 + %bcond_without pyproject + %bcond_with python2 + %bcond_with python3 %else + %bcond_with pyproject %if 0%{?rhel} > 7 %bcond_with python2 %bcond_without python3 @@ -29,32 +29,47 @@ There is a limited support for (deprecated) optparse objects, too. Name: argparse-manpage -Version: 1.2.2 -Release: 1%{?dist} +Version: 4.7 +Release: 5%{?dist} Summary: %{sum Python} BuildArch: noarch -License: ASL 2.0 +License: Apache-2.0 URL: https://github.com/praiskup/%{name} -Source0: %pypi_source +Source0: %pypi_source %pip_module_name %if %{with python2} BuildRequires: python2-setuptools python2-devel +BuildRequires: python2-packaging +BuildRequires: python2-toml %if %{with check} %if 0%{?rhel} && 0%{?rhel} == 7 -BuildRequires: pytest python-six +BuildRequires: pytest %else -BuildRequires: python2-pytest python2-six +BuildRequires: python2-pytest %endif %endif %endif + %if %{with python3} BuildRequires: python3-setuptools python3-devel +BuildRequires: python3-packaging +BuildRequires: python3-tomli %if %{with check} -BuildRequires: python3-pytest python3-six +BuildRequires: python3-pytest %endif %endif -%if %{with python3} + +%if %{with pyproject} +BuildRequires: python3-devel +# EL9 needs this explicitly +BuildRequires: pyproject-rpm-macros +%if %{with check} +BuildRequires: python3-pytest +%endif +%endif + +%if %{with python3} || %{with pyproject} Requires: python3-%name = %version-%release %else Requires: python2-%name = %version-%release @@ -66,6 +81,8 @@ Requires: python2-%name = %version-%release %package -n python2-%name Summary: %{sum Python 2} +Requires: python2-setuptools +Requires: python2-toml %description -n python2-%name %{desc} @@ -73,13 +90,26 @@ Summary: %{sum Python 2} %package -n python3-%name Summary: %{sum Python 3} +%if %{without pyproject} +Requires: python3-setuptools +%endif %description -n python3-%name %{desc} +%if %{with pyproject} +%pyproject_extras_subpkg -n python3-%{name} setuptools +%endif + + %prep -%setup -q +%setup -q -n %{pip_module_name}-%{version} + +%if %{with pyproject} +%generate_buildrequires +%pyproject_buildrequires +%endif %build @@ -89,6 +119,9 @@ Summary: %{sum Python 3} %if %{with python3} %py3_build %endif +%if %{with pyproject} +%pyproject_wheel +%endif %install @@ -98,16 +131,26 @@ Summary: %{sum Python 3} %if %{with python3} %py3_install %endif +%if %{with pyproject} +%pyproject_install +%endif %if %{with check} %check +# Disable pip build isolation to make the tests work in offline environment +# Fixes https://bugzilla.redhat.com/2417959 +export PIP_NO_BUILD_ISOLATION=0 + %if %{with python2} -PYTHONPATH=%buildroot%python2_sitearch %__python2 -m pytest +PYTHONPATH=%buildroot%python2_sitearch %__python2 -m pytest -vv %endif %if %{with python3} -PYTHONPATH=%buildroot%python3_sitearch %__python3 -m pytest +PYTHONPATH=%buildroot%python3_sitearch %__python3 -m pytest -vv +%endif +%if %{with pyproject} +%pytest -vv %endif %endif @@ -116,10 +159,10 @@ PYTHONPATH=%buildroot%python3_sitearch %__python3 -m pytest %license LICENSE %{_bindir}/argparse-manpage %_mandir/man1/argparse-manpage.1.* -%if %{with python3} -%python3_sitelib/build_manpages/cli +%if %{with python3} || %{with pyproject} +%python3_sitelib/argparse_manpage/cli.py %else -%python2_sitelib/build_manpages/cli +%python2_sitelib/argparse_manpage/cli.py %endif @@ -127,21 +170,155 @@ PYTHONPATH=%buildroot%python3_sitearch %__python3 -m pytest %files -n python2-%name %license LICENSE %python2_sitelib/build_manpages +%python2_sitelib/argparse_manpage %python2_sitelib/argparse_manpage-%{version}*.egg-info -%exclude %python2_sitelib/build_manpages/cli +%exclude %python2_sitelib/argparse_manpages/cli.py %endif -%if %{with python3} +%if %{with python3} || %{with pyproject} %files -n python3-%name %license LICENSE %python3_sitelib/build_manpages +%python3_sitelib/argparse_manpage +%if %{with pyproject} +%python3_sitelib/argparse_manpage-*dist-info +%else %python3_sitelib/argparse_manpage-%{version}*.egg-info -%exclude %python3_sitelib/build_manpages/cli +%endif +%exclude %python3_sitelib/argparse_manpage/cli.py %endif %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 4.7-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Mon Dec 01 2025 Miro Hrončok - 4.7-4 +- Fix build with pip 25.3+ +- Fixes: rhbz#2417959 + +* Fri Sep 19 2025 Python Maint - 4.7-3 +- Rebuilt for Python 3.14.0rc3 bytecode + +* Fri Aug 15 2025 Python Maint - 4.7-2 +- Rebuilt for Python 3.14.0rc2 bytecode + +* Fri Aug 15 2025 Pavel Raiskup - 4.7-1 +- new upstream release: https://github.com/praiskup/argparse-manpage/releases/tag/v4.7 + +* Wed Jul 23 2025 Fedora Release Engineering - 4.6-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Mon Jun 02 2025 Python Maint - 4.6-6 +- Rebuilt for Python 3.14 + +* Thu Apr 03 2025 Lumír Balhar - 4.6-5 +- Fix build with newer setuptools + +* Thu Jan 16 2025 Fedora Release Engineering - 4.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Jul 17 2024 Fedora Release Engineering - 4.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jun 07 2024 Python Maint - 4.6-2 +- Rebuilt for Python 3.13 + +* Wed Jun 05 2024 Pavel Raiskup - 4.6-1 +- new upstream release (rhbz#2279987) + +* Mon Jan 22 2024 Fedora Release Engineering - 4.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 4.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Sep 22 2023 Pavel Raiskup - 4.5-1 +- new upstream release https://github.com/praiskup/argparse-manpage/releases/tag/v4.4 + +* Mon Sep 04 2023 Pavel Raiskup - 4.4-1 +- new upstream release: https://github.com/praiskup/argparse-manpage/releases/tag/v4.4 +- license tag in SPDX format + +* Wed Jul 19 2023 Fedora Release Engineering - 4.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 13 2023 Python Maint - 4.3-2 +- Rebuilt for Python 3.12 + +* Thu May 18 2023 Pavel Raiskup - 4.3-1 +- new upstream release, tomli dep instead of toml + https://github.com/praiskup/argparse-manpage/releases/tag/v4.3 + +* Sun May 14 2023 Pavel Raiskup - 4.2-1 +- new upstream release, upport for pyproject.toml specs, and --manfile option + +* Sat Apr 15 2023 Pavel Raiskup - 4.1-1 +- new `--include` feature, inspired by `help2man --include` +- allow overriding build date with SOURCE_DATE_EPOCH environment variable +- the AUTHORS section was changed to more standard AUTHOR + +* Wed Jan 18 2023 Fedora Release Engineering - 4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Mon Oct 31 2022 Pavel Raiskup - 4-1 +- new upstream release: + https://github.com/praiskup/argparse-manpage/releases/tag/v4 + +* Fri Jul 22 2022 Charalampos Stratakis - 3-4 +- Fix tests compatibility with pip >= 21.3 + +* Wed Jul 20 2022 Fedora Release Engineering - 3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 3-2 +- Rebuilt for Python 3.11 + +* Wed Apr 27 2022 Pavel Raiskup - 3-1 +- new upstream release: https://github.com/praiskup/argparse-manpage/releases/tag/v3 + +* Thu Mar 03 2022 Pavel Raiskup - 2.2-1 +- new release - fix build for the setuptools v60+ + +* Wed Jan 19 2022 Fedora Release Engineering - 2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Jan 12 2022 Pavel Raiskup - 2.1-1 +- new upstream release: + https://github.com/praiskup/argparse-manpage/releases/tag/v2.1 + +* Sun Nov 28 2021 Pavel Raiskup - 2-1 +- new upstream release: + https://github.com/praiskup/argparse-manpage/releases/tag/v2 + +* Wed Jul 21 2021 Fedora Release Engineering - 1.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 1.5-3 +- Rebuilt for Python 3.10 + +* Tue Jan 26 2021 Fedora Release Engineering - 1.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Dec 14 2020 Pavel Raiskup - 1.5-1 +- new release + +* Mon Jul 27 2020 Fedora Release Engineering - 1.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue May 26 2020 Miro Hrončok - 1.4-3 +- Rebuilt for Python 3.9 + +* Tue Jan 28 2020 Fedora Release Engineering - 1.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Jan 24 2020 Pavel Raiskup - 1.4-1 +- new release to fix testsuite against Python 3.9 + +* Tue Jan 07 2020 Pavel Raiskup - 1.3-1 +- new release + * Sat Sep 07 2019 Pavel Raiskup - 1.2.2-1 - new release diff --git a/build-and-update-all-branches b/build-and-update-all-branches index 6aa7ffb..dd74154 100755 --- a/build-and-update-all-branches +++ b/build-and-update-all-branches @@ -3,11 +3,12 @@ # Prepare master branch, review the list of branches below and then execute this # script. -branches='master epel7 f29 f30 f31' +main=main +branches="$main epel8 epel9 epel10 epel10.0 f41 f42 f43" exit_handler () { - git checkout master + git checkout "$main" } trap exit_handler EXIT @@ -19,18 +20,12 @@ koji hello tasks= for branch in $branches; do - if test $branch != master; then + if test $branch != "$main"; then git checkout "$branch" - git merge master + git merge "$main" fi git push tasks="${tasks}`fedpkg build --nowait | grep 'Created task' | cut -d: -f2`" done koji watch-task $tasks - -for branch in $branches; do - test $branch != master || continue - git checkout $branch - fedpkg update -done diff --git a/sources b/sources index dfd45aa..e28ee18 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (argparse-manpage-1.2.2.tar.gz) = 20e3018b3c2b63f90017ad089abf5caae958954322d9d6a90f0a78fa72b2f9a02f2a0e9460d3c61f33fa34a24c440b4fb3ca9ebc6bd8024d1e3272520495a102 +SHA512 (argparse_manpage-4.7.tar.gz) = 88c2e0e0747f5950b131d5456b1bc153e64d11ca41d87e3c995d91f7ffb662685a5c58f7ea99f011151aa72e45a5bcab98ac6729e20a19d086a7798d9c783452