Sync from SUSE:SLFO:Main python-elastic-transport revision a176809f6268678a514f4d565fc89e13

This commit is contained in:
Adrian Schröter 2024-09-13 16:19:19 +02:00
parent cf6893deba
commit a8cb63ebca
5 changed files with 137 additions and 20 deletions

BIN
elastic-transport-python-8.13.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
elastic-transport-python-8.4.0.tar.gz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,3 +1,57 @@
-------------------------------------------------------------------
Thu Jun 6 09:45:48 UTC 2024 - Markéta Machová <mmachova@suse.com>
- Update to 8.13.1
* Fixed requests 2.32 compatibility
* Fixed TypeError when two nodes are declared dead at the same time
* Added TransportApiResponse
- Drop merged requests232.patch
-------------------------------------------------------------------
Mon May 27 04:24:39 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Switch to pyproject macros.
- Require pytest 8 or greater.
- Add patch remove-mock.patch:
* Remove requirement on mock, now as a patch, rather than sed.
-------------------------------------------------------------------
Thu May 23 08:17:35 UTC 2024 - Markéta Machová <mmachova@suse.com>
- Add requests232.patch to fix compatibility with new requests
-------------------------------------------------------------------
Fri May 17 13:29:03 UTC 2024 - Markéta Machová <mmachova@suse.com>
- update to 8.13.0
* Support the HTTPX client with asyncio
* Added optional orjson serializer support
-------------------------------------------------------------------
Sat Jan 20 14:03:15 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 8.12.0:
* Fix basic auth built from percent-encoded URLs
-------------------------------------------------------------------
Thu Dec 14 10:21:02 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 8.11.0:
* Always set default HTTPS port to 443
* Drop support for Python 3.6
* Include tests in sdist
* Fix `__iter__` return type to Iterator
-------------------------------------------------------------------
Sat Dec 2 17:07:21 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 8.10.0:
* Support urllib3 2.x in addition to urllib3 1.26.x (#121)
* Add 409 to `NOT_DEAD_NODE_HTTP_STATUSES` (#120)
* Fixed an issue where a large number of consecutive failures
to connect to a node would raise an `OverflowError`.
* Fixed an issue to ensure that `ApiResponse` can be pickled.
-------------------------------------------------------------------
Tue May 9 12:00:12 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package python-elastic-transport
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -16,36 +16,40 @@
#
%define skip_python2 1
%{?sle15_python_module_pythons}
Name: python-elastic-transport
Version: 8.4.0
Version: 8.13.1
Release: 0
Summary: Transport classes and utilities shared among Python Elastic client libraries
License: Apache-2.0
URL: https://github.com/elastic/elastic-transport-python
Source: https://github.com/elastic/elastic-transport-python/archive/refs/tags/v%{version}.tar.gz#/elastic-transport-python-%{version}.tar.gz
# PATCH-FIX-UPSTREAM gh#elastic/elastic-transport-python#163
Patch1: remove-mock.patch
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-certifi
# Removed upper limit to work with urllib3 >= 2.0.0 -- gh#elastic/elastic-transport-python#102
Requires: (python-urllib3 >= 1.26.2)
Requires: python-urllib3
BuildArch: noarch
%if 0%{python_version_nodots} < 37
Requires: python-dataclasses
%endif
# SECTION test requirements
BuildRequires: %{python_module aiohttp}
BuildRequires: %{python_module certifi}
BuildRequires: %{python_module dataclasses if %python-base < 3.7}
BuildRequires: %{python_module httpx}
BuildRequires: %{python_module opentelemetry-api}
BuildRequires: %{python_module opentelemetry-sdk}
BuildRequires: %{python_module orjson}
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest-httpserver}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
BuildRequires: %{python_module respx}
BuildRequires: %{python_module trustme}
BuildRequires: %{python_module urllib3 >= 1.26.2}
BuildRequires: %{python_module urllib3}
# /SECTION
%python_subpackages
@ -53,15 +57,14 @@ BuildRequires: %{python_module urllib3 >= 1.26.2}
Transport classes and utilities shared among Python Elastic client libraries
%prep
%setup -q -n elastic-transport-python-%{version}
%autosetup -p1 -n elastic-transport-python-%{version}
sed -i '/addopts/d' setup.cfg
sed -i 's/from mock/from unittest.mock/' tests/node/test_http_*.py
%build
%python_build
%pyproject_wheel
%install
%python_install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@ -69,6 +72,7 @@ sed -i 's/from mock/from unittest.mock/' tests/node/test_http_*.py
donttest="(test_http_aiohttp and not TestAiohttpHttpNode)"
donttest="$donttest or test_tls_versions"
donttest="$donttest or test_assert_fingerprint_in_cert_chain"
donttest="$donttest or (test_ssl_assert_fingerprint and httpx)"
# gh#elastic/elastic-transport-python#96
donttest="$donttest or test_url_to_node_config[https://[::1]:0/-https://[::1]:0-]"
%pytest -k "not ($donttest)"
@ -77,6 +81,6 @@ donttest="$donttest or test_url_to_node_config[https://[::1]:0/-https://[::1]:0-
%doc CHANGELOG.md README.md
%license LICENSE
%{python_sitelib}/elastic_transport
%{python_sitelib}/elastic_transport-%{version}*-info
%{python_sitelib}/elastic_transport-%{version}.dist-info
%changelog

59
remove-mock.patch Normal file
View File

@ -0,0 +1,59 @@
From 20d207e59f17f9539af12626e2f832f9ad094025 Mon Sep 17 00:00:00 2001
From: Steve Kowalik <steven@wedontsleep.org>
Date: Mon, 20 May 2024 11:51:43 +1000
Subject: [PATCH] Remove last uses of mock
The node tests still relied on the external mock library for mocking,
whereas other tests have transitioned to unittest.mock. Since we support
Python 3.7 and greater, we can remove that requirement and pull them in
line too.
---
setup.py | 1 -
tests/node/test_http_requests.py | 2 +-
tests/node/test_http_urllib3.py | 2 +-
3 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/setup.py b/setup.py
index c145012..17370a7 100644
--- a/setup.py
+++ b/setup.py
@@ -63,7 +63,6 @@
"pytest-asyncio",
"pytest-httpserver",
"trustme",
- "mock",
"requests",
"aiohttp",
"httpx",
diff --git a/tests/node/test_http_requests.py b/tests/node/test_http_requests.py
index 2ff7bc0..3a99854 100644
--- a/tests/node/test_http_requests.py
+++ b/tests/node/test_http_requests.py
@@ -18,10 +18,10 @@
import gzip
import ssl
import warnings
+from unittest.mock import Mock, patch
import pytest
import requests
-from mock import Mock, patch
from requests.auth import HTTPBasicAuth
from elastic_transport import NodeConfig, RequestsHttpNode
diff --git a/tests/node/test_http_urllib3.py b/tests/node/test_http_urllib3.py
index fad11e7..25bd920 100644
--- a/tests/node/test_http_urllib3.py
+++ b/tests/node/test_http_urllib3.py
@@ -19,10 +19,10 @@
import re
import ssl
import warnings
+from unittest.mock import Mock, patch
import pytest
import urllib3
-from mock import Mock, patch
from urllib3.response import HTTPHeaderDict
from elastic_transport import NodeConfig, TransportError, Urllib3HttpNode