repo/gentoo:master commit in: dev-python/elasticsearch/

Michał Górny <[email protected]> Wed, 05 Aug 2026 02:13:35 +0000 (UTC)
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1785894939.f0cb1d53796f2504e6ddf2b69da7b464ad4ef1d9.mgorny@gentoo>
commit:     f0cb1d53796f2504e6ddf2b69da7b464ad4ef1d9
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  5 01:36:16 2026 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Aug  5 01:55:39 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0cb1d53

dev-python/elasticsearch: Bump to 9.5.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/elasticsearch/Manifest                  |  1 +
 .../elasticsearch/elasticsearch-9.5.0.ebuild       | 89 ++++++++++++++++++++++
 2 files changed, 90 insertions(+)

diff --git a/dev-python/elasticsearch/Manifest b/dev-python/elasticsearch/Manifest
index b71d53fdd622..e0b176abb802 100644
--- a/dev-python/elasticsearch/Manifest
+++ b/dev-python/elasticsearch/Manifest
@@ -1 +1,2 @@
 DIST elasticsearch-py-9.4.1.gh.tar.gz 2556895 BLAKE2B 56563f06057450c071cd2c3a70d96d457d7b03ee5a6e421721cbd2b684a1667b5d4d41e079cfc54105da338f6985c5526a30599817fdb8da9b3e7d83dc8d2d89 SHA512 a8513c2340bb596b1f648509fccbc9855644e8bee3b9aa3f655a85e0ce1a037a07c47ce5e24fe07ed8bd33069806953535c46c52d0e0c05224ab2126c424cbed
+DIST elasticsearch-py-9.5.0.gh.tar.gz 2572641 BLAKE2B 0b5e532c108853b8f8e8065e68c7af33d4b9041db28e3c32eb11b30bca4168757fe75f1bdfa954c253f931fa7dfe444bb9d33301371e571da35bba4b2d9e5a88 SHA512 c3a4b36e0e97d4b2793f37b2032912cd3e6b1b64cd0240c204bc4d9a0b5a0f46ca59dd626de29ba89812ae547ea84192ac90fb2eff02c31dc5e0a2bc51ca5d5c

diff --git a/dev-python/elasticsearch/elasticsearch-9.5.0.ebuild b/dev-python/elasticsearch/elasticsearch-9.5.0.ebuild
new file mode 100644
index 000000000000..68368ef701d4
--- /dev/null
+++ b/dev-python/elasticsearch/elasticsearch-9.5.0.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{12..14} )
+
+inherit distutils-r1
+
+MY_P="elasticsearch-py-${PV}"
+DESCRIPTION="Official Elasticsearch client library for Python"
+HOMEPAGE="
+	https://ela.st/es-python
+	https://github.com/elastic/elasticsearch-py/
+	https://pypi.org/project/elasticsearch/
+"
+SRC_URI="
+	https://github.com/elastic/elasticsearch-py/archive/v${PV}.tar.gz
+		-> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+	<dev-python/aiohttp-4[${PYTHON_USEDEP}]
+	>=dev-python/aiohttp-3[${PYTHON_USEDEP}]
+	dev-python/anyio[${PYTHON_USEDEP}]
+	<dev-python/elastic-transport-10[${PYTHON_USEDEP}]
+	>=dev-python/elastic-transport-9.4.1[${PYTHON_USEDEP}]
+	>=dev-python/orjson-3[${PYTHON_USEDEP}]
+	dev-python/python-dateutil[${PYTHON_USEDEP}]
+	<dev-python/requests-3[${PYTHON_USEDEP}]
+	>=dev-python/requests-2.4[${PYTHON_USEDEP}]
+	dev-python/sniffio[${PYTHON_USEDEP}]
+	dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="
+	test? (
+		${RDEPEND}
+		dev-python/httpx[${PYTHON_USEDEP}]
+		dev-python/mapbox-vector-tile[${PYTHON_USEDEP}]
+		dev-python/numpy[${PYTHON_USEDEP}]
+		dev-python/opentelemetry-api[${PYTHON_USEDEP}]
+		dev-python/opentelemetry-sdk[${PYTHON_USEDEP}]
+		dev-python/pandas[${PYTHON_USEDEP}]
+		dev-python/pyarrow[${PYTHON_USEDEP}]
+		dev-python/pydantic[${PYTHON_USEDEP}]
+		dev-python/python-dateutil[${PYTHON_USEDEP}]
+		>=dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+		dev-python/trio[${PYTHON_USEDEP}]
+		dev-python/unasync[${PYTHON_USEDEP}]
+	)
+"
+
+distutils_enable_sphinx docs/sphinx \
+	dev-python/sphinx-autodoc-typehints \
+	dev-python/sphinx-rtd-theme
+
+EPYTEST_PLUGINS=( anyio pytest-asyncio )
+distutils_enable_tests pytest
+
+python_test() {
+	local EPYTEST_IGNORE=(
+		# REST api tests are a black hole for effort. It downloads the tests
+		# so its an ever moving target. It also requires effort to blacklist
+		# tests for apis which are license restricted.
+		"test_elasticsearch/test_server/test_rest_api_spec.py"
+		# Counting deprecation warnings from python is bound to fail even
+		# if all are fixed in this package. Not worth it.
+		"test_elasticsearch/test_client/test_deprecated_options.py"
+		# Running daemon for tests is finicky and upstream CI fails at it
+		# as well.
+		"test_elasticsearch/test_server/"
+		"test_elasticsearch/test_async/test_server/"
+		"test_elasticsearch/test_dsl/test_integration/"
+		"test_elasticsearch/test_dsl/_async/test_esql.py"
+		"test_elasticsearch/test_dsl/_sync/test_esql.py"
+		# require nltk
+		"test_elasticsearch/test_dsl/test_integration/test_examples/_async/test_vectors.py"
+		"test_elasticsearch/test_dsl/test_integration/test_examples/_sync/test_vectors.py"
+	)
+
+	local -x TEST_WITH_OTEL=1
+	epytest -o addopts=
+}