raven/base/python-pyrsistent/python-pyrsistent.spec
2024-02-21 13:47:54 +06:00

314 lines
10 KiB
RPMSpec
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## START: Set by rpmautospec
## (rpmautospec version 0.3.1)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
release_number = 2;
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec
# Sphinx-generated HTML documentation is not suitable for packaging; see
# https://bugzilla.redhat.com/show_bug.cgi?id=2006555 for discussion.
#
# We can generate PDF documentation as a substitute.
%bcond_without doc_pdf
%bcond_with tests
Name: python-pyrsistent
Summary: Persistent/Functional/Immutable data structures
Version: 0.19.3
Release: %autorelease
# The entire source is (SPDX) MIT, except pyrsistent/_toolz.py which is BSD-3-Clause.
License: MIT AND BSD-3-Clause
URL: https://github.com/tobgu/pyrsistent/
Source0: %{url}/archive/v%{version}/pyrsistent-%{version}.tar.gz
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: gcc
# For Sphinx documentation
%if %{with doc_pdf}
BuildRequires: make
BuildRequires: python3-sphinx-latex
BuildRequires: latexmk
%endif
%if 0%{?rhel}
BuildRequires: python%{python3_pkgversion}-pip
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-hypothesis
BuildRequires: python%{python3_pkgversion}-packaging
%endif
%if %{with tests}
# ============================================================================
# From setup_requires in setup.py, when tests are to be executed:
BuildRequires: python%{python3_pkgversion}dist(pytest-runner)
%endif
# Note that pyrsistent/_toolz.py contains a bit of code ported from toolz, but
# not enough to constitute a bundled dependency.
%global common_description %{expand:
Pyrsistent is a number of persistent collections (by some referred to as
functional data structures). Persistent in the sense that they are
immutable.
All methods on a data structure that would normally mutate it instead
return a new copy of the structure containing the requested updates. The
original structure is left untouched.}
%description %{common_description}
%package -n python%{python3_pkgversion}-pyrsistent
Summary: %{summary}
%description -n python%{python3_pkgversion}-pyrsistent %{common_description}
%package doc
Summary: Documentation for pyrsistent
# The Sphinx documentation does contain content based on pyrsistent/_toolz.py,
# so the full License carries over from the base package.
BuildArch: noarch
%description doc %{common_description}
%prep
%autosetup -n pyrsistent-%{version}
# Loosen exact-version pins in requirements.txt; we must tolerate newer
# versions and use what is packaged.
#
# We do not need:
# - memory-profiler or psutil, since we are not running the memorytest*
# environment from tox.ini
# - pyperform, since we are not running the benchmarks from
# performance_suites/
# - tox, since we are not using tox to run the tests
# - twine, since it is for maintainer PyPI uploads
sed -r \
-e 's/==/>=/' \
%if ("%{python3_pkgversion}" == "3")
-e '/\b(memory-profiler|psutil|pyperform|tox|twine)\b/d' \
%else
-e '/\b(memory-profiler|psutil|pyperform|tox|twine|sphinx-rtd-theme|Sphinx)\b/d' \
%endif
requirements.txt | tee requirements-filtered.txt
%if 0%{?fedora} || 0%{?rhel} >= 9
%generate_buildrequires
%pyproject_buildrequires requirements-filtered.txt
%endif
%build
%pyproject_wheel
# Default SPHINXOPTS are '-W -n', but -W turns warnings into errors and there
# are some warnings. We want to build the documentation as best we can anyway.
# Additionally, we parallelize sphinx-build.
%if %{with doc_pdf}
PYTHONPATH="${PWD}" %make_build -C docs latex SPHINXOPTS='-n %{?_smp_mflags}'
%make_build -C docs/build/latex LATEXMKOPTS='-quiet'
%endif
%install
%pyproject_install
%pyproject_save_files pyrsistent _pyrsistent_version
%check
%if %{with tests}
# # See tox.ini:
%pytest
%pytest --doctest-modules pyrsistent
%endif
%files -n python%{python3_pkgversion}-pyrsistent -f %{pyproject_files}
%files doc
%license LICENSE.mit
%doc CHANGES.txt
%doc README.rst
%if %{with doc_pdf}
%doc docs/build/latex/Pyrsistent.pdf
%endif
%changelog
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Dec 29 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.19.3-1
- Update to 0.19.3 (close RHBZ#2156882)
* Thu Dec 29 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.19.2-3
- Package from git tag instead of commit
* Wed Nov 30 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.19.2-2
- Drop default -r argument to pyproject_buildrequires
* Thu Nov 03 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.19.2-1
- Update to 0.19.2 (close RHBZ#2138666)
* Mon Oct 31 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.1-5
- Update License to SPDX
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 0.18.1-3
- Rebuilt for Python 3.11
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jan 14 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.1-1
- Update to 0.18.1
* Fri Jan 14 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-11
- Make pyrsistent._pmap doctests order-insensitive
* Thu Jan 13 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-10
- Skip doctest that fails on Python 3.11a3 (close RHBZ#2040164)
* Fri Nov 26 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-9
- Reduce LaTeX PDF build verbosity
* Wed Sep 29 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-8
- Generate PDF instead of HTML Sphinx documentation.
* Mon Sep 13 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-7
- Let pyproject-rpm-macros handle the license file
* Sun Sep 12 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-6
- Drop BR on pyproject-rpm-macros, now implied by python3-devel
* Sun Sep 12 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-5
- Reduce macro indirection in the spec file
* Tue Jul 27 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-4
- Move %%generate_buildrequires after %%prep to make the spec file easier
to follow
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jun 29 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.18.0-1
- Update to 0.18.0 (closes RHBZ#1977038)
* Mon Jun 14 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.3-8
- Port to pyproject-rpm-macros
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 0.17.3-7
- Rebuilt for Python 3.10
* Thu Mar 25 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.3-6
- Improved source URL (better tarball name)
* Fri Feb 19 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.3-5
- Parallelize Sphinx documentation build
* Fri Feb 19 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.3-4
- Use the GitHub tarball instead of the PyPI tarball
- Switch URL to HTTPS
* Thu Feb 18 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.3-3
- Replace pypi_name macro with srcname
- Update BRs
- Run the doctests
- Build documentation in a new -doc subpackage
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sun Sep 27 2020 José Lemos Neto <LemosJoseX@protonmail.com> - 0.17.3-1
- update to version 0.17.3
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sun May 24 2020 Miro Hrončok <mhroncok@redhat.com> - 0.16.0-2
- Rebuilt for Python 3.9
* Tue Apr 14 2020 Fabio Valentini <decathorpe@gmail.com> - 0.16.0-1
- Update to version 0.16.0.
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jan 10 2020 Fabio Valentini <decathorpe@gmail.com> - 0.15.7-1
- Update to version 0.15.7.
* Sun Nov 24 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.6-1
- Update to version 0.15.6.
* Thu Oct 31 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.5-1
- Update to version 0.15.5.
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.15.4-3
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Sat Aug 17 2019 Miro Hrončok <mhroncok@redhat.com> - 0.15.4-2
- Rebuilt for Python 3.8
* Fri Aug 02 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.4-1
- Update to version 0.15.4.
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Mon Jul 08 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.3-1
- Update to version 0.15.3.
* Fri May 17 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.2-1
- Update to version 0.15.2.
* Fri Apr 26 2019 Fabio Valentini <decathorpe@gmail.com> - 0.15.1-1
- Update to version 0.15.1.
* Fri Feb 22 2019 Fabio Valentini <decathorpe@gmail.com> - 0.14.11-1
- Update to version 0.14.11.
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 14 2019 Fabio Valentini <decathorpe@gmail.com> - 0.14.9-1
- Update to version 0.14.9.
- Enable the test suite.
* Thu Oct 11 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.14.2-6
- Python2 binary package has been removed
See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.14.2-4
- Rebuilt for Python 3.7
* Mon Apr 16 2018 Itamar Reis Peixoto <itamar@ispbrasil.com.br> - 0.14.2-3
- add missing dist-tag
* Fri Apr 13 2018 Itamar Reis Peixoto <itamar@ispbrasil.com.br> - 0.14.2-2
- disable tests for now
* Thu Mar 01 2018 Itamar Reis Peixoto <itamar@ispbrasil.com.br> - 0.14.2-1
- new version 0.14.2
* Wed Sep 14 2016 Devrim Gündüz <devrim@gunduz.org> 0.11.13-2
- Fix packaging errors, that would own /usr/lib64 or so.
* Tue Sep 13 2016 Devrim Gündüz <devrim@gunduz.org> 0.11.13-1
- Initial packaging for PostgreSQL YUM repository, to satisfy
pgadmin4 dependency.