diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest index 4882b971a7751..3727774d7d8a1 100644 --- a/dev-python/stripe/Manifest +++ b/dev-python/stripe/Manifest @@ -2,3 +2,4 @@ DIST stripe-13.0.1.tar.gz 1263853 BLAKE2B f210b2c69afbf5d25b78857f125e5cf28ec618 DIST stripe-13.1.2.tar.gz 1357500 BLAKE2B cc3b56b85f4852813e882e06b18cb0fe522ed252421c58bd2433661d58abb621b8b43ccdb441eac44587f67c5b5e18be773e42e503d58beae8d3a391e04e5b01 SHA512 57eadf645cdbddc91777fae1a97d0e6f612c3d8533201cb2c6110a549a672ac2f27c5346930e4f14345ab07644f6254c367192c1d3d933fe32fc6c8831a50c4a DIST stripe-13.2.0.tar.gz 1357785 BLAKE2B 5462cd451f111878c4a12019a1e8efd515c25a93d0c10dd0a59ae9fb1d5a94ebfb66dbc3e76f1bf822ff8713fa05027f08974545c08a559486a9cbaec7e4ec97 SHA512 3cb687d6a1f45c0cbdc5ed301f5751d3c2499f8524e03e429aca54d11c4ab8735a9fd81e18b56829c479a3c68dce43dd5c4bd86c82c9d4ed4144dbc4ac2b5bd1 DIST stripe-14.0.0.tar.gz 1362403 BLAKE2B 483df8183dc4c601ff01464a769aa3d1a1fde6868aaa515984fb8357581a2ade3bf31cd385ec362c3a735bd6efadb60d15ce6d191ca8851c4b8b0901a22d76fd SHA512 1a523d1760a60569b13c2345ffdad75d28d64b8d04ace652cb4977498a5837938887825003a6b3311c263bbafb0e6d4396fc241043934e08384280995bc10044 +DIST stripe-14.0.1.tar.gz 1362960 BLAKE2B aaa99435384a99f54cd8d33c73989040e8d20f17e2df9dd11a4d8ba8d0b429d04f8a29887583853c6c7e9b51fea59585ca3fd4ecee9ce5c32d3120d6871fff3f SHA512 0459973952e28fa1706dcca2a14e9b7f844bbd6b37cc4445b603ead34b8b711b3311ec3c0f404beb39041430a5c121f371525d3496998b27cf0328e8b335e355 diff --git a/dev-python/stripe/stripe-14.0.1.ebuild b/dev-python/stripe/stripe-14.0.1.ebuild new file mode 100644 index 0000000000000..a4cd78cac51de --- /dev/null +++ b/dev-python/stripe/stripe-14.0.1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Stripe Python bindings" +HOMEPAGE=" + https://github.com/stripe/stripe-python/ + https://pypi.org/project/stripe/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="telemetry" + +RDEPEND=" + >=dev-python/requests-2.20[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}] +" +# please bump dev-util/stripe-mock dep to the latest version on every bump +BDEPEND=" + test? ( + >=dev-util/stripe-mock-0.197.0 + dev-python/aiohttp[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/trio[${PYTHON_USEDEP}] + net-misc/curl + ) +" + +EPYTEST_PLUGINS=( anyio pytest-mock ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + if ! use telemetry; then + sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # Internet + tests/test_http_client.py::TestLiveHTTPClients::test_httpx_request_async_https + 'tests/test_integration.py::TestIntegration::test_async_raw_request_timeout[asyncio-aiohttp]' + # timing + tests/test_integration.py::TestIntegration::test_passes_client_telemetry_when_enabled + ) + + epytest tests +} + +src_test() { + local stripe_mock_port=12111 + local stripe_mock_max_port=12121 + local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log" + # Try to start stripe-mock until we find a free port + while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do + ebegin "Trying to start stripe-mock on port ${stripe_mock_port}" + stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" & + local stripe_mock_pid=${!} + sleep 2 + # Did stripe-mock start? + curl --fail -u "sk_test_123:" \ + "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null + eend ${?} "Port ${stripe_mock_port} unavailable" + if [[ ${?} -eq 0 ]]; then + einfo "stripe-mock running on port ${stripe_mock_port}" + break + fi + (( stripe_mock_port++ )) + done + if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then + eerror "Unable to start stripe-mock for tests" + die "Please see the logfile located at: ${stripe_mock_logfile}" + fi + + local -x STRIPE_MOCK_PORT=${stripe_mock_port} + distutils-r1_src_test + + # Tear down stripe-mock + kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock" +}