diff --git a/.gitignore b/.gitignore index 1b6541e..236e4d3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /3.0.11.tar.gz /3.0.16.tar.gz +/3.1.7.tar.gz diff --git a/python-psycopg3-3.0.16-setup.patch b/python-psycopg3-3.0.16-setup.patch deleted file mode 100644 index 8d714d5..0000000 --- a/python-psycopg3-3.0.16-setup.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -ur 3.0.16_original/psycopg-3.0.16/psycopg/setup.py 3.0.16/psycopg-3.0.16/psycopg/setup.py ---- 3.0.16_original/psycopg-3.0.16/psycopg/setup.py 2022-08-04 09:58:06.504188489 +0200 -+++ 3.0.16/psycopg-3.0.16/psycopg/setup.py 2022-08-04 09:58:18.283216078 +0200 -@@ -38,20 +38,17 @@ - # Requirements to run the test suite - "test": [ - "mypy >= 0.920, != 0.930, != 0.931", -- "pproxy >= 2.7", -- "pytest >= 6.2.5", -+ "pytest", - # 0.16 is still needed to support Python 3.6. - # Only pinned in Psycopg 3.0.x as Psycopg 3.1.x is Py >= 3.7 only. - # - 0.17 requires asyncio_mode in config or it fails with a warning. - # - 0.16 fails if asyncio_mode is in the config. -- "pytest-asyncio >= 0.16, < 0.17", -- "pytest-cov >= 3.0", -- "pytest-randomly >= 3.10", -+ "pytest-asyncio", -+ "pytest-randomly", - ], - # Requirements needed for development - "dev": [ - "black >= 22.3.0", -- "dnspython >= 2.1", - "flake8 >= 4.0", - "mypy >= 0.920, != 0.930, != 0.931", - "types-setuptools >= 57.4", diff --git a/python-psycopg3-3.0.16-toml.patch b/python-psycopg3-3.0.16-toml.patch deleted file mode 100644 index 084d7f0..0000000 --- a/python-psycopg3-3.0.16-toml.patch +++ /dev/null @@ -1,8 +0,0 @@ -diff -ur 3.0.16_original/psycopg-3.0.16/psycopg/pyproject.toml 3.0.16/psycopg-3.0.16/psycopg/pyproject.toml ---- 3.0.16_original/psycopg-3.0.16/psycopg/pyproject.toml 2022-07-28 13:20:04.000000000 +0200 -+++ 3.0.16/psycopg-3.0.16/psycopg/pyproject.toml 2022-08-04 09:56:33.390970426 +0200 -@@ -1,3 +1,3 @@ - [build-system] --requires = ["setuptools>=49.2.0", "wheel>=0.37"] -+requires = ["setuptools>=49.2.0", "wheel"] - build-backend = "setuptools.build_meta" diff --git a/python-psycopg3.spec b/python-psycopg3.spec index 26034c2..e1c943f 100644 --- a/python-psycopg3.spec +++ b/python-psycopg3.spec @@ -7,25 +7,19 @@ 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.16 -Release: 2%{?dist} +Version: 3.1.7 +Release: 1%{?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 -# Patch remove packages not availible in Fedora (pproxy) -# and removes specific version and code coverage -# Remove specific version to ensure build on -# Fedora 35 (pytest, pytest-randomly) + toml -Patch0: python-psycopg3-3.0.16-setup.patch -Patch1: python-psycopg3-3.0.16-toml.patch - BuildRequires: python3-devel # Required for running tests BuildRequires: libpq +BuildRequires: postgresql-test-rpm-macros BuildArch: noarch @@ -40,6 +34,11 @@ Summary: %{SUMMARY} %prep %autosetup -p3 -n %{package_name}-%{version}/%{package_name} +# disable remove deps for typechecking and linting +sed -r -i 's/("(black|flake8|pytest-cov)\b.*",)/# \1/' setup.py +# remove pproxy dep, only used for tests +sed -r -i 's/("(pproxy)\b.*",)/# \1/' setup.py + %generate_buildrequires %pyproject_buildrequires -x test @@ -53,10 +52,6 @@ Summary: %{SUMMARY} # Prepare the test folder for pytest pushd ../tests/ -# Remove failing tests -# The DNS package is not installed and therefore the test -# will not run. This is intented as there is no network in mock -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 {} + @@ -64,17 +59,11 @@ find pool/ ! -name 'fix_pool.py' -type f -exec rm -f {} + popd %check +export PGTESTS_LOCALE=C.UTF-8 +%postgresql_tests_run +export PSYCOPG_TEST_DSN="host=$PGHOST port=$PGPORT dbname=${PGTESTS_DATABASES##*:}" -%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 - +%pytest ../tests/ -k "not test_typing and not test_module" %files -n python3-%{src_name} -f %{pyproject_files} %doc ../README.rst @@ -82,6 +71,10 @@ popd %changelog +* Wed Dec 21 2022 Mikel Olasagasti Uranga - 3.1.7-1 +- Release bump rhbz#2155285 +- Enable postgresql server for tests + * Fri Oct 14 2022 Ondrej Sloup - 3.0.16-2 - Release bump @@ -102,4 +95,4 @@ popd - Pray that Friday 13 will not break anything * Thu Apr 28 2022 Ondrej Sloup - 3.0.11-1 -- Create package from git source (#2079251) \ No newline at end of file +- Create package from git source (#2079251) diff --git a/sources b/sources index a2e5aac..42f4092 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (3.0.16.tar.gz) = 655e01bb00972dacae590f2e8ce5948226acb827b55099e7f362fdee9210f07b755f4da10d2fadd468aa95eaa3f72e7658a1ab26870d4ac159ee266ce1f8140c +SHA512 (3.1.7.tar.gz) = a3be0074e38953bf2b08ac6892d3a7a98bb9ef3e5ab1183d65e7d2aa14c5b148b625dc1da1d830bb6b9cd17d6726b9348fa32415413ed48bba6dd6bd31521432