commit:     093f90e0703221788105209079a6d44a9f08c93c
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Thu Mar 12 15:01:09 2026 +0000
Commit:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
CommitDate: Thu Mar 12 15:01:09 2026 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=093f90e0

dev-python/strawberry-graphql: new package, add 0.311.0

Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>

 dev-python/strawberry-graphql/Manifest             |  1 +
 .../files/strawberry-0.288.3-no-emoji-test.patch   | 19 +++++
 dev-python/strawberry-graphql/metadata.xml         | 13 +++
 .../strawberry-graphql-0.311.0.ebuild              | 99 ++++++++++++++++++++++
 4 files changed, 132 insertions(+)

diff --git a/dev-python/strawberry-graphql/Manifest 
b/dev-python/strawberry-graphql/Manifest
new file mode 100644
index 0000000000..215c1dbf85
--- /dev/null
+++ b/dev-python/strawberry-graphql/Manifest
@@ -0,0 +1 @@
+DIST strawberry-graphql-0.311.0.gh.tar.gz 1266374 BLAKE2B 
efb47f68c3e4d60e689ed82e3adbf3a4455ae9ca6881389c0eabb2139ae774fe52251ad6000c431502389df92c66dc5cb59138916d75b95305cd1eab5bebf02f
 SHA512 
3fa8e6b607530ba5ae81631bdd4a8b4b47a1d725f9d897a77065b689ccd8c816357cf971d647bd6b2f43508f39509a632b0879bc5b9a1fa31fa0223281565d58

diff --git 
a/dev-python/strawberry-graphql/files/strawberry-0.288.3-no-emoji-test.patch 
b/dev-python/strawberry-graphql/files/strawberry-0.288.3-no-emoji-test.patch
new file mode 100644
index 0000000000..ebc9c98ebf
--- /dev/null
+++ b/dev-python/strawberry-graphql/files/strawberry-0.288.3-no-emoji-test.patch
@@ -0,0 +1,19 @@
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 954b5e32..7c30ad2f 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -6,14 +6,6 @@ import pytest
+ from strawberry.utils import IS_GQL_32
+ 
+ 
+-def pytest_emoji_xfailed(config: pytest.Config) -> tuple[str, str]:
+-    return "🤷‍♂️ ", "XFAIL 🤷‍♂️ "
+-
+-
+-def pytest_emoji_skipped(config: pytest.Config) -> tuple[str, str]:
+-    return "🦘 ", "SKIPPED 🦘"
+-
+-
+ pytest_plugins = ("tests.plugins.strawberry_exceptions",)
+ 
+ 

diff --git a/dev-python/strawberry-graphql/metadata.xml 
b/dev-python/strawberry-graphql/metadata.xml
new file mode 100644
index 0000000000..6de4fabacb
--- /dev/null
+++ b/dev-python/strawberry-graphql/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Paul Zander</name>
+       </maintainer>
+       <stabilize-allarches/>
+       <upstream>
+               <remote-id 
type="github">strawberry-graphql/strawberry</remote-id>
+               <remote-id type="pypi">strawberry-graphql</remote-id>
+       </upstream>
+</pkgmetadata>

diff --git a/dev-python/strawberry-graphql/strawberry-graphql-0.311.0.ebuild 
b/dev-python/strawberry-graphql/strawberry-graphql-0.311.0.ebuild
new file mode 100644
index 0000000000..b23ac3a565
--- /dev/null
+++ b/dev-python/strawberry-graphql/strawberry-graphql-0.311.0.ebuild
@@ -0,0 +1,99 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{12..13} )
+
+inherit distutils-r1 #pypi
+
+DESCRIPTION="A library for creating GraphQL APIs"
+HOMEPAGE="
+       https://strawberry.rocks/
+       https://github.com/strawberry-graphql/strawberry/
+       https://pypi.org/project/strawberry-graphql/
+"
+# no tests in sdist
+SRC_URI="
+       
https://github.com/strawberry-graphql/strawberry/archive/refs/tags/${PV}.tar.gz
+               -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/strawberry-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+       >=dev-python/cross-web-0.4.0[${PYTHON_USEDEP}]
+       <dev-python/graphql-core-3.4.0[${PYTHON_USEDEP}]
+       >=dev-python/graphql-core-3.2.0[${PYTHON_USEDEP}]
+       >=dev-python/packaging-23[${PYTHON_USEDEP}]
+       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
+       >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
+"
+
+# dev
+# integrations
+BDEPEND="
+       test? (
+               dev-python/asgiref[${PYTHON_USEDEP}]
+               dev-python/email-validator[${PYTHON_USEDEP}]
+               dev-python/freezegun[${PYTHON_USEDEP}]
+               dev-python/libcst[${PYTHON_USEDEP}]
+               dev-python/markupsafe[${PYTHON_USEDEP}]
+               dev-python/opentelemetry-api[${PYTHON_USEDEP}]
+               dev-python/pygments[${PYTHON_USEDEP}]
+               dev-python/pyinstrument[${PYTHON_USEDEP}]
+               dev-python/python-multipart[${PYTHON_USEDEP}]
+               dev-python/rich[${PYTHON_USEDEP}]
+               dev-python/typer[${PYTHON_USEDEP}]
+               dev-python/urllib3[${PYTHON_USEDEP}]
+               dev-python/inline-snapshot[${PYTHON_USEDEP}]
+
+               dev-python/aiohttp[${PYTHON_USEDEP}]
+               dev-python/chalice[${PYTHON_USEDEP}]
+               dev-python/channels[${PYTHON_USEDEP}]
+               dev-python/django[${PYTHON_USEDEP}]
+               dev-python/fastapi[${PYTHON_USEDEP}]
+               dev-python/flask[${PYTHON_USEDEP}]
+               dev-python/quart[${PYTHON_USEDEP}]
+               dev-python/pydantic[${PYTHON_USEDEP}]
+               dev-python/starlette[${PYTHON_USEDEP}]
+               dev-python/litestar[${PYTHON_USEDEP}]
+               dev-python/uvicorn[${PYTHON_USEDEP}]
+       )
+"
+
+EPYTEST_IGNORE=(
+       "tests/benchmarks/"
+       # avoid daphne which requires autobahn
+       "tests/channels/test_layers.py"
+       "tests/channels/test_testing.py"
+       "tests/http/clients/channels.py"
+       # FIXME:
+       "tests/http/test_graphql_ide.py"
+)
+EPYTEST_DESELECT=(
+       # TODO: sanic
+       "tests/sanic/test_file_upload.py::test_file_cast"
+       "tests/sanic/test_file_upload.py::test_endpoint"
+       # test stdlib?
+       
"tests/schema/test_lazy/test_lazy_generic.py::test_lazy_types_loaded_from_same_module[script]"
+       # FIXME
+       "tests/django/test_dataloaders.py::test_fetch_data_from_db"
+)
+EPYTEST_PLUGINS=( pytest-aiohttp pytest-asyncio pytest-django pytest-mock 
pytest-snapshot )
+distutils_enable_tests pytest
+
+PATCHES=(
+       "${FILESDIR}"/strawberry-0.288.3-no-emoji-test.patch
+)
+
+python_test() {
+       local -x DJANGO_SETTINGS_MODULE="tests.django.django_settings"
+
+       # avoid superfluous pytest-emoji dependency
+       epytest -o addopts=
+}

Reply via email to