From a8cb63ebca610691c1b04fdc8b6871cb0d881dd2d256c6593348fc662cdc1ef5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 13 Sep 2024 16:19:19 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main python-elastic-transport revision a176809f6268678a514f4d565fc89e13 --- elastic-transport-python-8.13.1.tar.gz | 3 ++ elastic-transport-python-8.4.0.tar.gz | 3 -- python-elastic-transport.changes | 58 ++++++++++++++++++++++++- python-elastic-transport.spec | 34 ++++++++------- remove-mock.patch | 59 ++++++++++++++++++++++++++ 5 files changed, 137 insertions(+), 20 deletions(-) create mode 100644 elastic-transport-python-8.13.1.tar.gz delete mode 100644 elastic-transport-python-8.4.0.tar.gz create mode 100644 remove-mock.patch diff --git a/elastic-transport-python-8.13.1.tar.gz b/elastic-transport-python-8.13.1.tar.gz new file mode 100644 index 0000000..a9316db --- /dev/null +++ b/elastic-transport-python-8.13.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b634a4c760076b142567696675ec153fa85b9e8a7e66f838e6505bde827940f +size 76370 diff --git a/elastic-transport-python-8.4.0.tar.gz b/elastic-transport-python-8.4.0.tar.gz deleted file mode 100644 index 559f840..0000000 --- a/elastic-transport-python-8.4.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6a146686ae8f0647231bdaa66ce54537f0159d573d1aba107b312931184a7708 -size 70975 diff --git a/python-elastic-transport.changes b/python-elastic-transport.changes index 693e106..3cbe111 100644 --- a/python-elastic-transport.changes +++ b/python-elastic-transport.changes @@ -1,3 +1,57 @@ +------------------------------------------------------------------- +Thu Jun 6 09:45:48 UTC 2024 - Markéta Machová + +- 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 + +- 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á + +- Add requests232.patch to fix compatibility with new requests + +------------------------------------------------------------------- +Fri May 17 13:29:03 UTC 2024 - Markéta Machová + +- 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 + +- update to 8.12.0: + * Fix basic auth built from percent-encoded URLs + +------------------------------------------------------------------- +Thu Dec 14 10:21:02 UTC 2023 - Dirk Müller + +- 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 + +- 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 @@ -18,13 +72,13 @@ Thu Apr 13 22:41:03 UTC 2023 - Matej Cepl Mon Dec 5 12:09:29 UTC 2022 - Daniel Garcia - Disable broken test with latest urllib3 release - gh#elastic/elastic-transport-python#96 + gh#elastic/elastic-transport-python#96 ------------------------------------------------------------------- Tue Sep 27 19:15:33 UTC 2022 - Yogalakshmi Arunachalam - Update to 8.4.0 - * Added method for clients to use default ports for URL scheme. + * Added method for clients to use default ports for URL scheme. ------------------------------------------------------------------- Thu Aug 18 16:43:36 UTC 2022 - Ben Greiner diff --git a/python-elastic-transport.spec b/python-elastic-transport.spec index 4265b20..9761ca5 100644 --- a/python-elastic-transport.spec +++ b/python-elastic-transport.spec @@ -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 diff --git a/remove-mock.patch b/remove-mock.patch new file mode 100644 index 0000000..213fcc9 --- /dev/null +++ b/remove-mock.patch @@ -0,0 +1,59 @@ +From 20d207e59f17f9539af12626e2f832f9ad094025 Mon Sep 17 00:00:00 2001 +From: Steve Kowalik +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