Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: graphql-python/graphql-core
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v3.0.6
Choose a base ref
...
head repository: graphql-python/graphql-core
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing 382 changed files with 46,067 additions and 20,271 deletions.
6 changes: 3 additions & 3 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 3.0.0
current_version = 3.3.0a7
commit = False
tag = False

@@ -8,8 +8,8 @@ search = version = "{current_version}"
replace = version = "{new_version}"

[bumpversion:file:docs/conf.py]
search = version = release = u'{current_version}'
replace = version = release = u'{new_version}'
search = version = release = '{current_version}'
replace = version = release = '{new_version}'

[bumpversion:file:README.md]
search = The current version {current_version}
12 changes: 0 additions & 12 deletions .coveragerc

This file was deleted.

4 changes: 0 additions & 4 deletions .flake8

This file was deleted.

3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These are supported funding model platforms

github: cito
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/open-a-graphql-core-issue.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Open a GraphQL-core issue
about: General template for all GraphQL-core issues
title: ''
labels: ''
assignees: ''

---

# Questions regarding how to use GraphQL

If you have a question on how to use GraphQL, please [post it to Stack Overflow](https://stackoverflow.com/questions/ask?tags=graphql) with the tag [#graphql](https://stackoverflow.com/questions/tagged/graphql).

# Reporting issues with GraphQL-core 3

Before filing a new issue, make sure an issue for your problem doesn't already exist and that this is not an issue that should be filed against a different repository (see below).

The best way to get a bug fixed is to provide a _pull request_ with a simplified failing test case (or better yet, include a fix).

# Reporting issues with GraphQL-core 2

Please use the issue tracker of the [legacy repository](https://github.com/graphql-python/graphql-core-legacy) for issues with legacy versions of GraphQL-core.

# Feature requests

GraphQL-core is a Python port of the [GraphQL.js](https://github.com/graphql/graphql-js) reference implementation of the [GraphQL specification](https://github.com/graphql/graphql-spec). To discuss new features which are not Python specific, please open an issue against the GraphQL.js project. To discuss features that fundamentally change the way GraphQL works, open an issue against the specification.
9 changes: 9 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Thank you for contributing to GraphQL-core!

If your pull-request is non-trivial, adds a feature or contains a non-breaking change, then please, first open an issue to discuss the proposed changes and add a link to that issue.

GraphQL-core tries very hard to stay within the scope of being just a Python port of [GraphQL.js](https://github.com/graphql/graphql-js).

Any additional feature or incompatible change will be only accepted in rare cases and requires a compelling reason, because they aggravate maintenance and synchronization with the developments in the upstream project. So please discuss such changes upfront in an issue before sending a PR. Maybe there are other ways to solve the problem.

If possible, also add unit tests, or provide runnable example code as part of the accompanying issue, from which unit tests can be derived.
35 changes: 35 additions & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Performance

on:
push:
branches:
- "main"
pull_request:
workflow_dispatch:

jobs:
benchmarks:
name: 📈 Benchmarks
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
id: setup-python
with:
python-version: "3.12"
architecture: x64

- name: Install with poetry
run: |
pipx install poetry
poetry env use 3.12
poetry install --with test
- name: Run benchmarks with CodSpeed
uses: CodSpeedHQ/action@v3
with:
token: ${{ secrets.CODSPEED_TOKEN }}
run: poetry run pytest tests --benchmark-enable --codspeed
26 changes: 26 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Code quality

on: [push, pull_request]

jobs:
lint:
name: 🧹 Lint
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install tox
- name: Run code quality tests with tox
run: tox
env:
TOXENV: ruff,mypy,docs
29 changes: 29 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Publish

on:
push:
tags:
- 'v*'

jobs:
build:
name: 🏗️ Build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'

- name: Build wheel and source tarball
run: |
pip install poetry
poetry build
- name: Publish a Python distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_TOKEN }}
52 changes: 52 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Tests

on: [push, pull_request]

jobs:
tests:
name: 🧪 Tests
runs-on: ubuntu-latest

strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', 'pypy3.9', 'pypy3.10']

steps:
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install "tox>=4.24,<5" "tox-gh-actions>=3.2,<4"
- name: Run unit tests with tox
run: tox

tests-old:
name: 🧪 Tests (older Python versions)
runs-on: ubuntu-22.04

strategy:
matrix:
python-version: ['3.7', '3.8']

steps:
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install "tox>=3.28,<5" "tox-gh-actions>=3.2,<4"
- name: Run unit tests with tox
run: tox
34 changes: 17 additions & 17 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@

.cache
.cache/
.coverage
.env
.env.bak
.idea
.mypy_cache
.pytest_cache
.tox
.venv
.venv.bak
.vs
.env*/
.idea/
.mypy_cache/
.pytest_cache/
.tox/
.venv*/
.vs/
.vscode/

build
dist
docs/_build
pip-wheel-metadata
wheels
build/
dist/
docs/_build/
htmlcov/
pip-wheel-metadata/
wheels/

play
play/

__pycache__
__pycache__/

*.cover
*.egg
23 changes: 23 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html

version: 2

build:
os: ubuntu-22.04
tools:
python: "3.10"

sphinx:
configuration: docs/conf.py

formats:
- epub
- pdf

python:
install:
- requirements: docs/requirements.txt
- method: pip
path: .
43 changes: 0 additions & 43 deletions .travis.yml

This file was deleted.

24 changes: 0 additions & 24 deletions MANIFEST.in

This file was deleted.

Loading