From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id EA07015817D for ; Wed, 19 Jun 2024 05:07:16 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9D1ADE2A62; Wed, 19 Jun 2024 05:07:15 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7CAE0E2A62 for ; Wed, 19 Jun 2024 05:07:15 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 8854B335DC5 for ; Wed, 19 Jun 2024 05:07:14 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id BC81F1D0E for ; Wed, 19 Jun 2024 05:07:12 +0000 (UTC) From: "Kyle Elbert" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Kyle Elbert" Message-ID: <1718773507.7d8005c03542f78833c48741d7220c2fbf6733c8.kcelbert@gentoo> Subject: [gentoo-commits] repo/proj/guru:dev commit in: dev-python/cloudflare/ X-VCS-Repository: repo/proj/guru X-VCS-Files: dev-python/cloudflare/Manifest dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild X-VCS-Directories: dev-python/cloudflare/ X-VCS-Committer: kcelbert X-VCS-Committer-Name: Kyle Elbert X-VCS-Revision: 7d8005c03542f78833c48741d7220c2fbf6733c8 X-VCS-Branch: dev Date: Wed, 19 Jun 2024 05:07:12 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 25f0ebce-5023-4510-b5e4-8ee3867b3e29 X-Archives-Hash: 5e7d66754b4cb1b39df07c385bed6065 commit: 7d8005c03542f78833c48741d7220c2fbf6733c8 Author: Kyle Elbert gmail com> AuthorDate: Wed Jun 19 05:03:24 2024 +0000 Commit: Kyle Elbert gmail com> CommitDate: Wed Jun 19 05:05:07 2024 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=7d8005c0 dev-python/cloudflare: add 3.0.0_beta10 Cloudflare 3 changed the case on the module so it can coexist with 2 Signed-off-by: Kyle Elbert gmail.com> dev-python/cloudflare/Manifest | 2 + .../cloudflare/cloudflare-3.0.0_beta10.ebuild | 90 ++++++++++++++++++++++ 2 files changed, 92 insertions(+) diff --git a/dev-python/cloudflare/Manifest b/dev-python/cloudflare/Manifest index 84a9ae7ab..d8d975fef 100644 --- a/dev-python/cloudflare/Manifest +++ b/dev-python/cloudflare/Manifest @@ -1,2 +1,4 @@ DIST cloudflare-2.19.2.gh.tar.gz 145051 BLAKE2B cd7c9d9352b055b115af443341dcc4d0a446aaf1ac7b7f8030dce0ff19da185b1effc9a679b8018920ade98cafaaf599af8aea8c57a924e59eb40670a3854b70 SHA512 eac9601f9cb9ea5dc140e48fb0f0e042396f6a7ec354f18b815d6c51094799dc3f25e1e69e78f87ec5c612f4304d15f779090962a8f96282d9b2fe8a9abfb690 DIST cloudflare-2.19.4.gh.tar.gz 151397 BLAKE2B c91c95f52314c5177d823ef8f827ea2f76f6cc703260449aea12d54c1b77d061feca15d4bb845f84cfb4fd80789e5064e54d7530daf546d54d17054b9e0b4fda SHA512 8ae11e73760c57b610abfe5e2c8fdc83c2e0b9e07340884925ec9ac3bf5b40b4edf39b2b8ce7330538369d7573146a2ddac195efb0efb4ff657f75fdacb31aed +DIST cloudflare-3.0.0_beta10.gh.tar.gz 1445435 BLAKE2B 1717f36194ce5e8a292f4026463d9b05b12808ee2c8fbbae7d4817523a4c37d13d2935eef58fe83cebe64c6e7684018154482ee3e51538e7a5724179a2b280c0 SHA512 c7150c0cc056869a600cb440f6cd68801d4032d401192e156101cdf82484ba9b3a03649a2c0569c42c396b653517ad19ec841c3baab067709b4736bcc15e9be6 +DIST cloudflare-python-v3.0.0_beta10-prism.tar.gz 10658021 BLAKE2B 930259e5e1b967ca056804ede3f40d40b57602640d8ae308cc466f38c10eacb95dfb639309ea0b3d2a79fb6c0da6f4cc9dedae08f9a356a4c52ff4bf458d193d SHA512 60c8cb768cb18099c2f9384fd80ff34e2e2511b56433ca0aae02f4be949c2ac9ab72ea879c53aa1e7aaae284afe5547abb909dc733274d50154179a174429b53 diff --git a/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild b/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild new file mode 100644 index 000000000..e9b2842da --- /dev/null +++ b/dev-python/cloudflare/cloudflare-3.0.0_beta10.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..12} ) +DISTUTILS_USE_PEP517="hatchling" +inherit distutils-r1 +DESCRIPTION="Python wrapper for the Cloudflare v4 API" +HOMEPAGE="https://pypi.org/project/cloudflare/" +if [ "${PV}" == 9999 ]; then + EGIT_REPO_URI="https://github.com/cloudflare/cloudflare-python" + inherit git-r3 +else + MYPV=$(ver_rs 3 -) + MYPV=${MYPV/beta/beta.} + MYPN="cloudflare-python" + SRC_URI="https://github.com/cloudflare/cloudflare-python/archive/refs/tags/v${MYPV}.tar.gz -> ${P}.gh.tar.gz + test? ( https://github.com/Phoenix591/${MYPN}/releases/download/v${PV}/${MYPN}-v${PV}-prism.tar.gz )" + #Prism archive generated by workflow + # https://github.com/Phoenix591/cloudflare-python/blob/v3.0.0_beta10/.github/workflows/test-tar.yml + S="${WORKDIR}/${MYPN}-${MYPV}" + KEYWORDS="~amd64 ~arm64" +fi +LICENSE="MIT test? ( ISC Apache-2.0 MIT BSD CC0-1.0 0BSD )" +# nodejs package and deps used to test +SLOT="3" +RDEPEND=" ${DEPEND} + >=dev-python/httpx-0.23.0[${PYTHON_USEDEP}] + >=dev-python/pydantic-1.9.0[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.7.0[${PYTHON_USEDEP}] + >=dev-python/anyio-4.3.0[${PYTHON_USEDEP}] + >=dev-python/distro-1.7.0[${PYTHON_USEDEP}] + >=dev-python/sniffio-1.3.1[${PYTHON_USEDEP}] + " + +BDEPEND="test? ( + >=net-libs/nodejs-18.20.1 + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/time-machine[${PYTHON_USEDEP}] + dev-python/dirty-equals[${PYTHON_USEDEP}] + dev-python/respx[${PYTHON_USEDEP}] + ${RDEPEND} +)" + +distutils_enable_tests pytest +RESTRICT="mirror" #mirror restricted only because overlay +RESTRICT+=" !test? ( test )" + +src_unpack() { + unpack "${P}.gh.tar.gz" + use test && cd "${S}" && unpack "cloudflare-python-v${PV}-prism.tar.gz" +} + +#python_prepare_all() { +# # don't install tests or examples +# sed -i -e "s/'cli4', 'examples'/'cli4'/" \ +# -e "s#'CloudFlare/tests',##" \ +# setup.py || die +# sed -i -e "/def test_ips7_should_fail():/i@pytest.mark.xfail(reason='Now fails upstream')" \ +# -e "2s/^/import pytest/" \ +# CloudFlare/tests/test_cloudflare_calls.py || die +# distutils-r1_python_prepare_all +#} + +python_test() { + # these 2 tests fail in an ebuild environment for some reason + # help appreciated + local EPYTEST_DESELECT=( + tests/test_client.py::TestCloudflare::test_validate_headers + tests/test_client.py::TestAsyncCloudflare::test_validate_headers ) + + epytest +} + +src_test() { + # Run prism mock api server, this is what needs nodejs + node --no-warnings node_modules/@stoplight/prism-cli/dist/index.js mock \ + "cloudflare-spec.yml" >prism.log & + # Wait for server to come online + echo -n "Waiting for mockserver" + while ! grep -q "✖ fatal\|Prism is listening" "prism.log" ; do + echo -n "." + sleep 0.5 + done + if grep -q "✖ fatal" prism.log; then + die "Prism mock server failed" + fi + distutils-r1_src_test +}