mirror of
https://abf.rosa.ru/djam/python38-urllib3.git
synced 2025-02-23 14:12:59 +00:00
100 lines
3.1 KiB
RPMSpec
100 lines
3.1 KiB
RPMSpec
%global __provides_exclude ^(python3egg|python3dist)
|
|
%global __requires_exclude ^(python3egg|python3dist)
|
|
%global srcname urllib3
|
|
|
|
# When bootstrapping Python, we cannot test this yet
|
|
%bcond_with tests
|
|
|
|
Name: python-%{srcname}
|
|
Version: 1.25.7
|
|
Release: 3
|
|
Summary: Python HTTP library with thread-safe connection pooling and file post
|
|
Group: Development/Python
|
|
|
|
License: MIT
|
|
URL: https://github.com/urllib3/urllib3
|
|
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
|
|
# Unbundle ssl_match_hostname since we depend on it
|
|
Source1: ssl_match_hostname_py3.py
|
|
BuildArch: noarch
|
|
|
|
%description
|
|
Python HTTP module with connection pooling and file POST abilities.
|
|
|
|
%package -n python38-%{srcname}
|
|
Summary: Python3 HTTP library with thread-safe connection pooling and file post
|
|
Group: Development/Python
|
|
|
|
BuildRequires: python38-devel
|
|
BuildRequires: python38-setuptools
|
|
%if %{with tests}
|
|
BuildRequires: python3-nose
|
|
BuildRequires: python3-mock
|
|
BuildRequires: python3-six
|
|
BuildRequires: python3-pysocks
|
|
BuildRequires: python3-pytest
|
|
BuildRequires: python3-tornado
|
|
BuildRequires: python3-trustme
|
|
BuildRequires: python3-idna
|
|
%endif
|
|
|
|
Requires: ca-certificates
|
|
Requires: python38-idna
|
|
Requires: python38-six
|
|
Requires: python38-pysocks
|
|
|
|
%description -n python38-%{srcname}
|
|
Python3 HTTP module with connection pooling and file POST abilities.
|
|
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{srcname}-%{version}
|
|
# Drop the dummyserver tests in koji. They fail there in real builds, but not
|
|
# in scratch builds (weird).
|
|
rm -rf test/with_dummyserver/
|
|
# Don't run the Google App Engine tests
|
|
rm -rf test/appengine/
|
|
# Lots of these tests started failing, even for old versions, so it has something
|
|
# to do with Fedora in particular. They don't fail in upstream build infrastructure
|
|
rm -rf test/contrib/
|
|
|
|
# Tests for Python built without SSL, but Fedora builds with SSL. These tests
|
|
# fail when combined with the unbundling of backports-ssl_match_hostname
|
|
rm -f test/test_no_ssl.py
|
|
|
|
%build
|
|
%py38_build
|
|
|
|
|
|
%install
|
|
%py38_install
|
|
|
|
# Unbundle the Python 3 build
|
|
rm -rf %{buildroot}/%{python38_sitelib}/urllib3/packages/six.py*
|
|
rm -rf %{buildroot}/%{python38_sitelib}/urllib3/packages/__pycache__/six*
|
|
rm -rf %{buildroot}/%{python38_sitelib}/urllib3/packages/ssl_match_hostname/
|
|
|
|
mkdir -p %{buildroot}/%{python38_sitelib}/urllib3/packages/
|
|
cp -a %{SOURCE1} %{buildroot}/%{python38_sitelib}/urllib3/packages/ssl_match_hostname.py
|
|
ln -s %{python38_sitelib}/six.py %{buildroot}/%{python38_sitelib}/urllib3/packages/six.py
|
|
ln -s %{python38_sitelib}/__pycache__/six.cpython-%{python38_version_nodots}.opt-1.pyc \
|
|
%{buildroot}/%{python38_sitelib}/urllib3/packages/__pycache__/
|
|
ln -s %{python38_sitelib}/__pycache__/six.cpython-%{python38_version_nodots}.pyc \
|
|
%{buildroot}/%{python38_sitelib}/urllib3/packages/__pycache__/
|
|
|
|
|
|
%if %{with tests}
|
|
%check
|
|
pushd test
|
|
PYTHONPATH=%{buildroot}%{python38_sitelib}:%{python38_sitelib} %{__python38} -m pytest -v
|
|
popd
|
|
%endif
|
|
|
|
|
|
%files -n python38-%{srcname}
|
|
%license LICENSE.txt
|
|
%doc CHANGES.rst README.rst CONTRIBUTORS.txt
|
|
%{python38_sitelib}/urllib3/
|
|
%{python38_sitelib}/urllib3-*.egg-info/
|
|
|
|
|