File python-psycopg2_2.9.10-1.spec of Package psycopg-psycopg2-2.9.10
# Copyright 2025 Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
%global debug_package %{nil}
%global source_date_epoch_from_changelog 0
Name: python-psycopg2
Epoch: 100
Version: 2.9.10
Release: 1%{?dist}
Summary: PostgreSQL database adapter for the Python programming language
License: LGPL-3.0-or-later
URL: https://github.com/psycopg/psycopg2/tags
Source0: %{name}_%{version}.orig.tar.gz
BuildRequires: fdupes
BuildRequires: libpq-devel
BuildRequires: python-rpm-macros
BuildRequires: python3-devel
BuildRequires: python3-pip
%description
Psycopg is the most popular PostgreSQL database adapter for the Python
programming language. Its main features are the complete implementation
of the Python DB API 2.0 specification and the thread safety (several
threads can share the same connection). It was designed for heavily
multi-threaded applications that create and destroy lots of cursors and
make a large number of concurrent "INSERT"s or "UPDATE"s.
%prep
%autosetup -T -c -n %{name}_%{version}-%{release}
tar -zx -f %{S:0} --strip-components=1 -C .
%build
pip wheel \
--no-deps \
--no-build-isolation \
--wheel-dir=dist \
.
%install
pip install \
--no-deps \
--ignore-installed \
--root=%{buildroot} \
--prefix=%{_prefix} \
dist/*.whl
find %{buildroot}%{python3_sitearch} -type f -name '*.pyc' -exec rm -rf {} \;
fdupes -qnrps %{buildroot}%{python3_sitearch}
%check
%if 0%{?suse_version} > 1500
%package -n python%{python3_version_nodots}-psycopg2
Summary: PostgreSQL database adapter for the Python programming language
Requires: python3
Provides: python3-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python3dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}dist(psycopg2) = %{epoch}:%{version}-%{release}
%description -n python%{python3_version_nodots}-psycopg2
Psycopg is the most popular PostgreSQL database adapter for the Python
programming language. Its main features are the complete implementation
of the Python DB API 2.0 specification and the thread safety (several
threads can share the same connection). It was designed for heavily
multi-threaded applications that create and destroy lots of cursors and
make a large number of concurrent "INSERT"s or "UPDATE"s.
%files -n python%{python3_version_nodots}-psycopg2
%license LICENSE
%{python3_sitearch}/*
%endif
%if 0%{?sle_version} > 150000
%package -n python3-psycopg2
Summary: PostgreSQL database adapter for the Python programming language
Requires: python3
Provides: python3-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python3dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}dist(psycopg2) = %{epoch}:%{version}-%{release}
%description -n python3-psycopg2
Psycopg is the most popular PostgreSQL database adapter for the Python
programming language. Its main features are the complete implementation
of the Python DB API 2.0 specification and the thread safety (several
threads can share the same connection). It was designed for heavily
multi-threaded applications that create and destroy lots of cursors and
make a large number of concurrent "INSERT"s or "UPDATE"s.
%files -n python3-psycopg2
%license LICENSE
%{python3_sitearch}/*
%endif
%if !(0%{?suse_version} > 1500) && !(0%{?sle_version} > 150000)
%package -n python3-psycopg2
Summary: PostgreSQL database adapter for the Python programming language
Requires: python3
Provides: python3-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python3dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version}dist(psycopg2) = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}-psycopg2 = %{epoch}:%{version}-%{release}
Provides: python%{python3_version_nodots}dist(psycopg2) = %{epoch}:%{version}-%{release}
%description -n python3-psycopg2
Psycopg is the most popular PostgreSQL database adapter for the Python
programming language. Its main features are the complete implementation
of the Python DB API 2.0 specification and the thread safety (several
threads can share the same connection). It was designed for heavily
multi-threaded applications that create and destroy lots of cursors and
make a large number of concurrent "INSERT"s or "UPDATE"s.
%files -n python3-psycopg2
%license LICENSE
%{python3_sitearch}/*
%endif
%changelog