Merge branch 'master' into remove_nose_test_syntax

This commit is contained in:
Erik Wrede 2024-06-13 16:37:52 +02:00 committed by GitHub
commit d61ebab513
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 23 additions and 1253 deletions

View File

@ -10,9 +10,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Build wheel and source tarball

View File

@ -7,9 +7,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies

View File

@ -25,14 +25,14 @@ jobs:
fail-fast: false
matrix:
include:
- {name: '3.12', python: '3.12', os: ubuntu-latest, tox: py312}
- {name: '3.11', python: '3.11', os: ubuntu-latest, tox: py311}
- {name: '3.10', python: '3.10', os: ubuntu-latest, tox: py310}
- {name: '3.9', python: '3.9', os: ubuntu-latest, tox: py39}
- {name: '3.8', python: '3.8', os: ubuntu-latest, tox: py38}
- {name: '3.7', python: '3.7', os: ubuntu-latest, tox: py37}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
@ -43,14 +43,12 @@ jobs:
- name: get pip cache dir
id: pip-cache
run: echo "::set-output name=dir::$(pip cache dir)"
run: echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
- name: cache pip dependencies
uses: actions/cache@v3
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: pip|${{ runner.os }}|${{ matrix.python }}|${{ hashFiles('setup.py') }}
- run: pip install tox
- run: tox -e ${{ matrix.tox }}
- name: Upload coverage.xml

View File

@ -1,2 +1,2 @@
[settings]
known_third_party = aniso8601,graphql,graphql_relay,promise,pytest,pyutils,setuptools,snapshottest,sphinx_graphene_theme
known_third_party = graphql,graphql_relay,promise,pytest,pyutils,setuptools,snapshottest,sphinx_graphene_theme

View File

@ -141,7 +141,7 @@ file:
.. code:: sh
tox -e py36
tox -e py10
Tox can only use whatever versions of Python are installed on your
system. When you create a pull request, Travis will also be running the

View File

@ -59,7 +59,7 @@ When we send a **Query** requesting only one **Field**, ``hello``, and specify a
Requirements
~~~~~~~~~~~~
- Python (3.6, 3.7, 3.8, 3.9, 3.10, pypy)
- Python (3.8, 3.9, 3.10, 3.11, 3.12, pypy)
- Graphene (3.0)
Project setup

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,6 @@ from __future__ import absolute_import
import datetime
from aniso8601 import parse_date, parse_datetime, parse_time
from graphql.error import GraphQLError
from graphql.language import StringValueNode, print_ast
@ -39,7 +38,7 @@ class Date(Scalar):
if not isinstance(value, str):
raise GraphQLError(f"Date cannot represent non-string value: {repr(value)}")
try:
return parse_date(value)
return datetime.date.fromisoformat(value)
except ValueError:
raise GraphQLError(f"Date cannot represent value: {repr(value)}")
@ -74,7 +73,7 @@ class DateTime(Scalar):
f"DateTime cannot represent non-string value: {repr(value)}"
)
try:
return parse_datetime(value)
return datetime.datetime.fromisoformat(value)
except ValueError:
raise GraphQLError(f"DateTime cannot represent value: {repr(value)}")
@ -107,6 +106,6 @@ class Time(Scalar):
if not isinstance(value, str):
raise GraphQLError(f"Time cannot represent non-string value: {repr(value)}")
try:
return parse_time(value)
return datetime.time.fromisoformat(value)
except ValueError:
raise GraphQLError(f"Time cannot represent value: {repr(value)}")

View File

@ -5,10 +5,8 @@ from .field import Field
from .interface import Interface
from .utils import yank_fields_from_attrs
try:
from dataclasses import make_dataclass, field
except ImportError:
from ..pyutils.dataclasses import make_dataclass, field # type: ignore
from dataclasses import make_dataclass, field
# For static type checking with type checker
if TYPE_CHECKING:
from typing import Dict, Iterable, Type # NOQA

View File

@ -45,15 +45,13 @@ class PyTest(TestCommand):
tests_require = [
"pytest>=6,<7",
"pytest-benchmark>=3.4,<4",
"pytest-cov>=3,<4",
"pytest>=7,<8",
"pytest-benchmark>=4,<5",
"pytest-cov>=4,<5",
"pytest-mock>=3,<4",
"pytest-asyncio>=0.16,<2",
"snapshottest>=0.6,<1",
"coveralls>=3.3,<4",
"mock>=4,<5",
"iso8601>=1,<2",
]
dev_requires = ["black==22.3.0", "flake8>=4,<5"] + tests_require
@ -73,18 +71,17 @@ setup(
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
],
keywords="api graphql protocol rest relay graphene",
packages=find_packages(exclude=["examples*"]),
install_requires=[
"graphql-core>=3.1,<3.3",
"graphql-relay>=3.1,<3.3",
"aniso8601>=8,<10",
],
tests_require=tests_require,
extras_require={"test": tests_require, "dev": dev_requires},

View File

@ -1,5 +1,5 @@
[tox]
envlist = py3{7,8,9,10,11}, mypy, pre-commit
envlist = py3{8,9,10,11,12}, mypy, pre-commit
skipsdist = true
[testenv]
@ -8,7 +8,7 @@ deps =
setenv =
PYTHONPATH = .:{envdir}
commands =
py{37,38,39,310,311}: pytest --cov=graphene graphene --cov-report=term --cov-report=xml examples {posargs}
py{38,39,310,311,12}: pytest --cov=graphene graphene --cov-report=term --cov-report=xml examples {posargs}
[testenv:pre-commit]
basepython = python3.10