4b5be72cd0
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
113 lines
3.1 KiB
RPMSpec
113 lines
3.1 KiB
RPMSpec
%global package_name psycopg
|
|
%global src_name %{package_name}3
|
|
%global _description %{expand:
|
|
Psycopg 3 is a PostgreSQL database adapter for the Python programming language.
|
|
Psycopg 3 presents a familiar interface for everyone who has used Psycopg 2 or
|
|
any other DB-API 2.0 database adapter, but allows to use more modern PostgreSQL
|
|
and Python features.}
|
|
|
|
Name: python-%{src_name}
|
|
Version: 3.0.11
|
|
Release: 3%{?dist}
|
|
Summary: Psycopg 3 is a modern implementation of a PostgreSQL adapter for Python
|
|
|
|
License: LGPLv3
|
|
URL: https://www.psycopg.org/%{src_name}/
|
|
Source0: https://github.com/%{package_name}/%{package_name}/archive/refs/tags/%{version}.tar.gz
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
# Required for running tests
|
|
BuildRequires: libpq
|
|
|
|
BuildArch: noarch
|
|
|
|
%description %_description
|
|
|
|
%package -n python3-%{src_name}
|
|
Requires: libpq
|
|
Summary: %{SUMMARY}
|
|
|
|
%description -n python3-%{src_name} %_description
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{package_name}-%{version}/%{package_name}
|
|
|
|
# Remove unused packages for tests and versions not available
|
|
# in Fedora
|
|
sed -i '/pproxy/d' setup.py
|
|
|
|
# This package is removed as the code coverage does not have
|
|
# to be tested
|
|
sed -i '/pytest-cov/d' setup.py
|
|
|
|
# This line removes the version since it is not supported
|
|
# in Fedora, introduces breaking changes in package
|
|
sed -i -r 's/(pytest-asyncio).*",/\1",/' setup.py
|
|
|
|
# Remove versions to ensure build on Fedora 35
|
|
# These versions should not be needed as always in
|
|
# upstream, there are versions with no breaking changes
|
|
%if 0%{?fedora} < 36
|
|
sed -i -r 's/(wheel).*/\1"\]/' pyproject.toml
|
|
sed -i -r 's/(pytest) >=.*",/\1",/' setup.py
|
|
sed -i -r 's/(pytest-randomly).*",/\1",/' setup.py
|
|
%endif
|
|
|
|
# Tests fail when installed since DNS configuration is not
|
|
# available
|
|
sed -i '/dnspython/d' setup.py
|
|
|
|
%generate_buildrequires
|
|
%pyproject_buildrequires -x test
|
|
|
|
%build
|
|
%pyproject_wheel
|
|
|
|
%install
|
|
%pyproject_install
|
|
%pyproject_save_files %{package_name}
|
|
|
|
# Prepare the test folder for pytest
|
|
pushd ../tests/
|
|
|
|
# Remove failing tests
|
|
rm test_typing.py test_module.py
|
|
# Remove all files in pool/ folder except the fix_pool.py.
|
|
# The pool/fix_pool.py is in conftest.py as plugin
|
|
find pool/ ! -name 'fix_pool.py' -type f -exec rm -f {} +
|
|
|
|
popd
|
|
|
|
%check
|
|
|
|
%if 0%{?fedora} > 36
|
|
# Launchs tests with correctly set pytest-asyncio which
|
|
# corrects the breaking change caused by the version
|
|
%pytest ../tests/ --asyncio-mode=auto
|
|
%else
|
|
# Python 36 and lower do not have the version which breaks
|
|
# the process available yet
|
|
%pytest ../tests/
|
|
%endif
|
|
|
|
|
|
%files -n python3-%{src_name} -f %{pyproject_files}
|
|
%doc ../README.rst
|
|
%license LICENSE.txt
|
|
|
|
|
|
%changelog
|
|
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.11-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
|
|
* Tue Jun 14 2022 Python Maint <python-maint@redhat.com> - 3.0.11-2
|
|
- Rebuilt for Python 3.11
|
|
|
|
* Fri May 13 2022 Ondrej Sloup <osloup@redhat.com> - 3.0.11-2
|
|
- Add support for Fedora 35 and 36
|
|
- Remove spaces at the end of the file
|
|
- Pray that Friday 13 will not break anything
|
|
|
|
* Thu Apr 28 2022 Ondrej Sloup <osloup@redhat.com> - 3.0.11-1
|
|
- Create package from git source (#2079251) |