NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #368 most downloaded on PyPI
GraphQL-core is a Python port of GraphQL.js, the JavaScript reference implementation for GraphQL.
Last release 7 days ago
27 Sep 2026
Ships fairly regularly
a new release about every 2 months
Some releases are documented
notes for 31 of 55 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
112 releases · first in 2015
Since the minor version of GraphQL-core corresponds to the major version of GraphQL.js, this release contains breaking changes compared to GraphQL-cor…
Stable release GraphQL-core v3.3.0, based on GraphQL.js v17.0.2.
This release supports Python 3.10 to 3.15.
This is the first stable release of GraphQL-core 3.3, which follows GraphQL.js 17. Since the minor version of GraphQL-core corresponds to the major version of GraphQL.js, this release contains breaking changes compared to GraphQL-core 3.2. Most of them come from GraphQL.js 17 and are described in the GraphQL.js v16 to v17 upgrade guide. If you need to stay compatible with GraphQL.js 16 or need support for Python 3.7 to 3.9, you can continue to use GraphQL-core 3.2.13.
Breaking changes compared to GraphQL-core 3.2.13:
ExecutionContext has been renamed to Executor, and the parameter execution_context_class to executor_class.subscribe() stays synchronous when possible, like execute(), and raises a GraphQLError for non-subscription operations. create_source_event_stream() now takes a built Executor (see Executor.build()) instead of the request arguments.int that cannot be represented exactly as a float now raises a GraphQLError when coerced to Float.Undefined variable value is treated as omitted, so the variable's default applies.experimental_directives_on_directive_definitions has been removed.TypeInfo.get_input_type() and ValidationContext.get_input_type() return None inside list literals in custom scalar positions; use the new get_parent_input_type() for the enclosing scalar.New features compared to GraphQL-core 3.2.13:
@defer and @stream via experimental_execute_incrementally(), following the current spec proposal.experimental_fragment_arguments).AbortSignal, raising an AbortedGraphQLExecutionError with the partial result, and executors support hooks.find_schema_changes() also reports safe changes, in addition to breaking and dangerous changes.Thanks to @jkimbo for sponsoring this project, to @Hama1cco for reporting a bug in the lexer, and to everybody who tested the pre-releases and reported issues.
One column per quarter.
This is a security release. It fixes two denial-of-service vulnerabilities in the validator and the parser. Upgrading is recommended for all users of…
Release candidate GraphQL-core v3.3.0rc1, based on GraphQL.js v17.0.0rc0.
This release candidate supports Python 3.10 to 3.14.
This is a security release. It fixes two denial-of-service vulnerabilities in the validator and the parser. Upgrading is recommended for all users of the 3.3 line.
Unlike the other releases in this series, v3.3.0rc1 does not correspond to a GraphQL.js release tag. It is a security release cut while the port of GraphQL.js v17 is still in progress, so the tracked version_js deliberately remains v17.0.0rc0.
Security fixes:
OverlappingFieldsCanBeMerged validation rule could be driven into quadratic and worse running time by a small, highly compressible query using repeated inline fragments, occupying a worker for minutes of CPU during validation, before any resolver runs. Validation now enforces a per-document comparison budget and aborts with a GraphQLError once it is exhausted.max_tokens limit, so a comment-padded document could bypass the limit while allocating one token object per comment. max_tokens now counts every token the parser consumes, including skipped comments.Please note the two behaviour changes this implies:
graphql.validation.rules.overlapping_fields_can_be_merged.MAX_FIELD_COMPARISONS.max_tokens, so a comment-heavy document that was previously accepted may now be rejected. If you parse documents with substantial comments and set max_tokens, you may need to raise the limit. The token_count of a parsed document now includes comments as well.Both limits complement, but do not replace, a request body-size limit applied to the decompressed request body in your web framework.
Apart from these, there are no breaking changes after the last release candidate 3.3.0rc0.
Other notable changes:
@defer and @stream) has been re-implemented on a new work-queue execution architecture, replacing the previous scheduling approach. This makes the delivery order of incremental payloads well defined and fixes a class of ordering and lifetime bugs at its root rather than case by case.@defer and @stream, where a request could stop producing payloads and never complete.@deferred fragment failed.The security issues have been reported by @BZHunt, who also reviewed the fixes before release. In memory of ZaX, who was the driving force behind this discovery. The first one was also independently found and diagnosed by @bcmyguest.
Thanks to @jkimbo for sponsoring this project.
There are no breaking changes after the last beta version 3.3.0b2.
Release candidate GraphQL-core v3.3.0rc0, based on GraphQL.js v17.0.0rc0.
This release candidate supports Python 3.10 to 3.14.
There are no breaking changes after the last beta version 3.3.0b2.
Notable changes:
@defer and @stream directives. The DeferStreamDirectiveOnRootField rule now also forbids these directives on fragments that are spread on abstract types at a mutation or subscription root, and the DeferStreamDirectiveOnValidOperations rule now tracks fragments more thoroughly when detecting @defer/@stream on subscription root selections. As a result, some documents that were previously accepted may now be correctly reported as invalid.Thanks to @jkimbo for sponsoring this project.
There are no breaking changes after the last beta version 3.3.0b1.
Beta release GraphQL-core v3.3.0b2, based on GraphQL.js v17.0.0b2.
This patch-release supports Python 3.10 to 3.14.
There are no breaking changes after the last beta version 3.3.0b1.
Notable changes:
GraphQLError now accepts a cause argument and exposes a corresponding cause attribute, adopting the convention of the standard exception cause. When the cause is an exception, it is also exposed via the standard __cause__ attribute. The original_error attribute is now deprecated in favor of cause.graphql package: VariableValues, SchemaChange, and the defer/stream validation rules DeferStreamDirectiveLabel, DeferStreamDirectiveOnRootField, DeferStreamDirectiveOnValidOperationsRule, and StreamDirectiveOnListField.Thanks to @jkimbo for sponsoring this project.
Breaking changes after the last beta version 3.3.0b0:
Beta release GraphQL-core v3.3.0b1, based on GraphQL.js v17.0.0b1.
This patch-release supports Python 3.10 to 3.14.
Breaking changes after the last beta version 3.3.0b0:
subscribe() and Executor no longer accept a per_event_executor argument. The per-event response mapping is now the public module-level function map_source_to_response_event(executor, source_event_stream, root_selection_set_executor=execute_subscription_event) (with a new RootSelectionSetExecutor type alias). To customize per-event subscription execution, compose the pipeline directly: Executor.build() → create_source_event_stream() → map_source_to_response_event(..., root_selection_set_executor=...).Other notable changes:
experimental_directives_on_directive_definitions parse option, a DirectiveExtensionNode, @deprecated is now allowed on directive definitions, and a new experimental_directive_deprecation introspection option.get_introspection_query() gained a configurable type_depth parameter (default 9) controlling the nesting depth of the ofType introspection chain.Thanks to @jkimbo for sponsoring this project.
Breaking changes after the last alpha version 3.3.0a14:
Beta release GraphQL-core v3.3.0b0, based on GraphQL.js v17.0.0b0.
This patch-release supports Python 3.10 to 3.14.
Breaking changes after the last alpha version 3.3.0a14:
AbortedGraphQLExecutionError (with the partial result available as aborted_result) instead of the raw abort reason. Aborting during the incremental (defer/stream) phase now also rejects the pending __anext__ with the abort reason instead of yielding a final error payload.create_source_event_stream() no longer accepts request args; it now takes the built Executor (call Executor.build() first), or use subscribe() instead.subscribe() now raises GraphQLError("Expected subscription operation.") for non-subscription operations.execute_query_or_mutation_or_subscription_event() has been renamed to execute_root_selection_set() (and gained a serially argument).Undefined variable value is now treated as omitted, so the variable's default applies (previously coerced to a provided null for nullable variables).TypeInfo.get_input_type() and ValidationContext.get_input_type() now return None inside list literals in custom scalar positions; use the new get_parent_input_type() for the enclosing scalar. Variables are now allowed in those positions.Other notable changes:
value_from_ast() now rejects unknown input object fields.Undefined-valued unknown input object fields are ignored, and an explicit null variable now overrides an input object field's default.async_work_finished execution hook on the Executor.label: null on @defer/@stream means "no label"; fixes for promise rejections, cancellation, and cleanup ordering in async execution.Thanks to @jkimbo for sponsoring this project.
This alpha release comes with the following breaking changes:
Alpha release GraphQL-core v3.3.0a14, based on GraphQL.js v17.0.0a14.
This patch-release supports Python 3.10 to 3.14.
This alpha release comes with the following breaking changes:
ExecutionContext renamed to Executor. The execution context class is now Executor. The old name is not kept as an alias, i.e. from graphql import ExecutionContext no longer works; use from graphql import Executor.execution_context_class to executor_class. Applies to graphql, graphql_sync, execute, execute_sync, experimental_execute_incrementally, subscribe, and create_source_event_stream. The method build_per_event_execution_context is likewise renamed to build_per_event_executor.int that is too large to represent as a float, or that would lose precision when converted (beyond 2^53), now raises a GraphQLError when coerced to Float (input or output) instead of silently producing an inexact value. Int, ID, String, and Boolean continue to accept Python int as before (and now handle arbitrarily large ints without error).Thanks to @jkimbo for sponsoring this project.
Alpha release GraphQL-core v3.3.0a13, based on GraphQL.js v17.0.0a9.
Alpha release GraphQL-core v3.3.0a13, based on GraphQL.js v17.0.0a9.
This patch-release supports Python 3.10 to 3.14.
Thanks to @jkimbo for sponsoring this project, and to @arichberg, @ckristhoff, @kathychurch and @leszekhanusz for valuable feedback.
Alpha release GraphQL-core v3.3.0a12, based on GraphQL.js v17.0.0a7.
Alpha release GraphQL-core v3.3.0a12, based on GraphQL.js v17.0.0a7.
This patch-release supports Python 3.10 to 3.14.
Notable improvements since the last alpha release, in addition to the upstream improvements in v17.0.0.a7:
Thanks to @jkimbo for sponsoring this project, and to @bellini666, @bigfootjon and @corydolphin for contributing to this release.
Alpha release GraphQL-core v3.3.0a11, based on GraphQL.js v17.0.0a5.
Alpha release GraphQL-core v3.3.0a11, based on GraphQL.js v17.0.0a5.
Notable improvements since the last alpha release:
@defer and @streamThanks to @jkimbo for sponsoring this project, and to @erikwrede for contributing to this release.
Alpha release GraphQL-core v3.3.0a10, still based on GraphQL.js v17.0.0a3.
Alpha release GraphQL-core v3.3.0a10, still based on GraphQL.js v17.0.0a3.
Notable improvements since the last alpha release:
source (#240)@oneOf support to introspection query (#241)GraphQLWrappedResult to avoid filtering in incremental deliveryThanks to @jkimbo for sponsoring this project, and to @agronholm, @erikwrede and @kimjh12 for contributing to this release.
Alpha release GraphQL-core v3.3.0a9, based on GraphQL.js v17.0.0a3.
Alpha release GraphQL-core v3.3.0a9, based on GraphQL.js v17.0.0a3.
Notable improvements since the last alpha release:
Thanks to @patrick91 and @jkimbo for sponsoring this project.
Alpha release GraphQL-core v3.3.0a8, based on GraphQL.js v17.0.0a3.
Alpha release GraphQL-core v3.3.0a8, based on GraphQL.js v17.0.0a3.
Notable improvements since the last alpha release:
Thanks again to the sponsors of this project, @patrick91, @jkimbo, and to @erikwrede, @magikmark, @mgorven, @sobolevn and @willemt for contributing to this release.
Sorry for lagging behind upstream a bit and not always responding as quickly as I want to.
Alpha release GraphQL-core v3.3.0a7, based on GraphQL.js v17.0.0a3.
Alpha release GraphQL-core v3.3.0a7, based on GraphQL.js v17.0.0a3.
Notable improvements since the last alpha release:
id and subPath and pending notifications@oneOf directiveThanks again to the sponsors of this project, @patrick91, @jkimbo, @getsentry, and to @erikwrede, @menma1234, @patrick91, @rafalp and @trim21 for contributing to this release.
Sorry for lagging behind upstream a bit and not always responding as quickly as I want to.
Alpha release GraphQL-core v3.3.0a6, based on GraphQL.js v17.0.0a2.
Alpha release GraphQL-core v3.3.0a6, based on GraphQL.js v17.0.0a2.
Changes:
Thanks again to the sponsors of this project, @patrick91, @jkimbo, @codecov and @getsentry, and to @nrbnlulu for contributing to this release.
Alpha release GraphQL-core v3.3.0a5, based on GraphQL.js v17.0.0a2.
Alpha release GraphQL-core v3.3.0a5, based on GraphQL.js v17.0.0a2.
This alpha release already includes a lot of the changes and fixes in GraphQL.js v17.0.0a3.
Thanks again to the sponsors of this project, @patrick91, @jkimbo, @sentry and @codecov, and to the contributors for this release, @fedirz and @yilinjuang.
Alpha release GraphQL-core v3.3.0a4, based on GraphQL.js v17.0.0a2.
Alpha release GraphQL-core v3.3.0a4, based on GraphQL.js v17.0.0a2.
This alpha release officially supports Python 3.12, and comes with some fixes. It also includes some changes and fixes in GraphQL.js v17.0.0a3.
A big thank you goes to the sponsors of this project, @patrick91, @jkimbo, @sentry and @codecov, and to the contributors for this release, @evanmays and @mrtc0.
There is also one breaking change:
Alpha release GraphQL-core v3.3.0a3, based on GraphQL.js v17.0.0a2.
This alpha release ports the remaining changes in GraphQL.js v17.0.0a2.
Particularly noteworthy are these new features:
There is also one breaking change:
subscribe function now stays synchronous when possible.
This change aligns the return types of execute and subscribe
(as well as the create_source_event_stream function)
with respect to returning values or awaitables (graphql/graphql-js#3620).This alpha release also contains the following changes and features:
Undefined is not an exception any more (#187)GraphQLInputFieldOutType is now importable (#195)Big shoutout to all who are sponsoring me (@Cito), such as @indeedeng, @patrick91 and @jkimbo, and to all who contributed by reporting issues or sending PRs, such as @erikwrede, @ipeterov, @kevinvalk, @kristjanvalur, @LinuxIsCool, @QSHolzner and @rafalp.
Alpha release GraphQL-core v3.3.0a2, still based on GraphQL.js v17.0.0a1.
Alpha release GraphQL-core v3.3.0a2, still based on GraphQL.js v17.0.0a1.
This alpha release already ports some of the changes in GraphQL.js v17.0.0a2. There will be another alpha release with the remaining changes soon. This alpha release also adds the following new features:
Thanks to all who are sponsoring me (@Cito), particularly to Vendia for sponsoring the work on #173, and to others who contributed, particularly to @helderco for the suggestion to use type guards.
Note that his means the removal of several functions that had been marked as deprecated before.
Alpha release GraphQL-core v3.3.0a1, based on GraphQL.js v17.0.0a1.
This alpha release ports all of the changes in GraphQL.js v17.0.0a1.
Note that his means the removal of several functions that had been marked as deprecated before.
Other noteable changes:
Thanks again to all who are sponsoring me (@Cito) and thereby motivated me to continue maintaining this project.
Patch-release GraphQL-core v3.2.13, based on GraphQL.js v16.14.2.
Patch-release GraphQL-core v3.2.13, based on GraphQL.js v16.14.2.
This patch-release supports Python 3.7 to 3.15.
Bug fixes:
"abc\, "\u, "\u00, or a truncated trailing surrogate) made the lexer raise an unhandled IndexError, which propagated out of parse() and graphql_sync(). It is now reported as a GraphQLSyntaxError with the same message as in GraphQL.js. Thanks to @Hama1cco for reporting this issue.graphql_sync() and execute_sync() with check_sync=True raised a RuntimeError about a missing event loop instead of reporting that the execution failed to complete synchronously, when called outside of a running event loop.assert_abstract_type() now properly reports "abstract type" instead of "composite type" in its error message.Documentation:
Other changes:
Thanks to @jkimbo for sponsoring this project.
This is a security release. It fixes two denial-of-service vulnerabilities in the validator and the parser. Upgrading is recommended for all users.
Patch-release GraphQL-core v3.2.12, based on GraphQL.js v16.14.2.
This patch-release supports Python 3.7 to 3.14.
This is a security release. It fixes two denial-of-service vulnerabilities in the validator and the parser. Upgrading is recommended for all users.
Security fixes:
OverlappingFieldsCanBeMerged validation rule could be driven into quadratic and worse running time by a small, highly compressible query using repeated inline fragments, occupying a worker for minutes of CPU during validation, before any resolver runs. Validation now enforces a per-document comparison budget and aborts with a GraphQLError once it is exhausted.max_tokens limit, so a comment-padded document could bypass the limit while allocating one token object per comment. max_tokens now counts every token the parser consumes, including skipped comments.Please note the two behaviour changes this implies:
graphql.validation.rules.overlapping_fields_can_be_merged.MAX_FIELD_COMPARISONS.max_tokens, so a comment-heavy document that was previously accepted may now be rejected. If you parse documents with substantial comments and set max_tokens, you may need to raise the limit. The token_count of a parsed document now includes comments as well.Both limits complement, but do not replace, a request body-size limit applied to the decompressed request body in your web framework.
Other changes:
The security issues were reported by @BZHunt, who also reviewed the fixes before release. In memory of ZaX, who was the driving force behind this discovery. The first one was also independently found and diagnosed by @bcmyguest.
Thanks to @jkimbo for sponsoring this project.
Patch-release GraphQL-core v3.2.11, based on GraphQL.js v16.14.1.
Patch-release GraphQL-core v3.2.11, based on GraphQL.js v16.14.1.
This patch-release supports Python 3.7 to 3.14.
Notable changes:
ofType introspection depthvalue_from_astValuesOfCorrectTypeRuleThanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.10, based on GraphQL.js v16.13.0.
Patch-release GraphQL-core v3.2.10, based on GraphQL.js v16.13.0.
This patch-release supports Python 3.7 to 3.14.
New features:
max_coercion_errors optionBug fixes:
oneOf validation from the "values of correct type" ruleoneOf input object fields (per spec)Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.9, based on GraphQL.js v16.10.0.
Patch-release GraphQL-core v3.2.9, based on GraphQL.js v16.10.0.
This patch-release supports Python 3.7 to 3.14.
Notable changes:
OverlappingFieldsCanBeMergedRule to catch field-merge conflicts hidden behind nested fragmentsGraphQLFormattedErrorkind to the introspection query/mutation/subscription root typestoken_count on DocumentNodeThanks to @kathychurch and @arichberg for reporting the sorting issue.
Also thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.8, based on GraphQL.js v16.9.0.
Patch-release GraphQL-core v3.2.8, based on GraphQL.js v16.9.0.
This patch-release supports Python 3.7 to 3.14.
One change has been backported from the v3.3 branch:
Also, for backward compatibility, introspection.TypeResolvers is available again, as alias for TypeFields.
Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.7, based on GraphQL.js v16.9.0.
Patch-release GraphQL-core v3.2.7, based on GraphQL.js v16.9.0.
This patch-release supports Python 3.7 to 3.14.
The following changes have been backported from the v3.3 branch:
Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.6, based on GraphQL.js v16.8.2.
Patch-release GraphQL-core v3.2.6, based on GraphQL.js v16.8.2.
This patch-release supports Python 3.6 to 3.13. Notable fixes:
Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.5, based on GraphQL.js v16.8.2.
Patch-release GraphQL-core v3.2.5, based on GraphQL.js v16.8.2.
This patch-release supports Python 3.6 to 3.13.
Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Avoid various deprecation warnings with newer Python versions
Patch-release GraphQL-core v3.2.4, based on GraphQL.js v16.8.2.
This patch-release supports Python 3.6 to 3.12 and includes these changes:
original_error propagation in custom scalarsOverlappingFieldsCanBeMergedRuleThanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.3, based on GraphQL.js v16.6.0.
Patch-release GraphQL-core v3.2.3, based on GraphQL.js v16.6.0.
This patch-release includes only one change in GraphQL.js v16.6.0:
Thanks to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.2, based on GraphQL.js v16.4.0.
Patch-release GraphQL-core v3.2.2, based on GraphQL.js v16.4.0.
This patch-releases includes the changes in GraphQL.js v16.4.0, and the following fixes:
Thanks to @chenrui333, @conao3, @jkimbo, @singingwolfboy for contributing and to all who are sponsoring me (@Cito) for maintaining this project.
Patch-release GraphQL-core v3.2.1, based on GraphQL.js v16.3.0.
Patch-release GraphQL-core v3.2.1, based on GraphQL.js v16.3.0.
This patch-releases includes the changes in GraphQL.js v16.3.0, and the following fix:
Thanks to @bennyweise for contributing and all who are sponsoring me (@Cito) for maintaining this project.
Final release of GraphQL-core v3.2.0, based on GraphQL.js v16.2.0.
Pre-release GraphQL-core v3.2.0rc5, based on GraphQL.js v16.1.0.
Pre-release GraphQL-core v3.2.0rc5, based on GraphQL.js v16.1.0.
In addition to porting the recent changes in GraphQL.js, this pre-release also contains the following improvements:
ast_to_dict utility function (#136)print_block_string work with string proxy objects (#153)OverlappingFieldsCanBeMergedRule (fetched ahead)Please test this pre-release and report any issues, the final release is imminent.
Deprecate FrozenDict/List, use tuples as node lists
Pre-release GraphQL-core v3.2.0rc4, based on GraphQL.js v16.0.1.
In addition to porting the recent changes in GraphQL.js, this pre-release also contains the following improvements:
Note that the use of tuples may break code that tries to modify the AST.
Please test this pre-release and report any issues, the final release is imminent.
Pre-release GraphQL-core v3.2.0rc3, based on GraphQL.js v16.0.0rc3.
Pre-release GraphQL-core v3.2.0rc3, based on GraphQL.js v16.0.0rc3.
In addition to porting the recent changes in GraphQL.js, this pre-release also contains the following improvements:
Pre-release GraphQL-core v3.2.0rc2, based on GraphQL.js v16.0.0rc2.
Pre-release GraphQL-core v3.2.0rc2, based on GraphQL.js v16.0.0rc2.
Pre-release GraphQL-core v3.2.0rc1, based on GraphQL.js v16.0.0rc2.
Pre-release GraphQL-core v3.2.0rc1, based on GraphQL.js v16.0.0rc2.
In addition to porting the recent changes in GraphQL.js, this pre-release also contains the following improvements:
Preserve deprecation_reason on GraphQLInputFields
Patch release GraphQL-core v3.1.7, based on GraphQL.js v15.8.0.
This release includes minor changes and improvements, in particular:
deprecation_reason on GraphQLInputFields (d1ffaef2ec3e5e475cb8ae52397489fd05ea6a12)__Directive.args(includeDeprecated) (0df0a32fe9cae2edafdd985f099490b55dca13e2)original_error.extensions overriding extensions argument (810d712ca53e5356027e6930b9585cf56152d3f5)Patch release GraphQL-core v3.1.6, based on GraphQL.js v15.5.1.
Patch release GraphQL-core v3.1.6, based on GraphQL.js v15.5.1.
This release includes only some minor changes and improvements.
The is_deprecated property is now deprecated itself
Patch release GraphQL-core v3.1.5, based on GraphQL.js v15.4.0.
This release includes the following changes and imrovements:
parse_literal of GraphQLScalarType now handles variablesbuild_ast_schema now matches order of default types and directivesis_deprecated property is now deprecated itselfEventEmitter helper class has been replaces by SimplePubSubprint_ast now breaks arguments over multiple linesSpecial thanks to @cancan101, @mlorenzana, @wuyuanyi135 for contributing.
Patch release GraphQL-core v3.1.4, based on GraphQL.js v15.3.0.
Patch release GraphQL-core v3.1.4, based on GraphQL.js v15.3.0.
This release fixes issues #125 and #126 regarding enum values.
Thanks to @dkbarn for reporting the problem.
Custom validation rules for "no schema introspection" and "no deprecated"
Patch release GraphQL-core v3.1.3, based on GraphQL.js v15.2.0.
This release includes the following improvements:
build_schema: allow to reference introspection typesexecute_sync() as synchronous version of execute()build_ast_schema now sets internal enum values (#111)Thanks to everyone who helped with their feedback, particularly
@berekuk, @charmasaur, @Checho3388, @jstlaurent and @pmantica1.
Patch release GraphQL-core v3.1.2, based on GraphQL.js v15.1.0.
Patch release GraphQL-core v3.1.2, based on GraphQL.js v15.1.0.
This release includes the following improvements:
Thanks to everyone who helped with their feedback.
Bugfix release GraphQL-core v3.1.1, based on GraphQL.js v15.0.0.
Bugfix release GraphQL-core v3.1.1, based on GraphQL.js v15.0.0.
The following issues are fixed in this release:
Contributors to this release were:
@Cito, @hoefling, @nawatts, @rafalp
Thanks to everyone who helped by sending bug reports or pull requests.
Final release of GraphQL-core v3.1.0, based on GraphQL.js v15.0.0.
Third beta release of GraphQL-core 3.1, based on GraphQL.js v15.0.0rc2.
Third beta release of GraphQL-core 3.1, based on GraphQL.js v15.0.0rc2.
In addition to incorporating the latest changes from the master branch of GraphQL.js, this release also contains the following improvements:
isawaitable() function (#54).We also renamed the repository on GitHub from graphql-python/graphql-core-next to graphql-python/graphql-core.
Contributors to this release were:
@Cito, @astronouth7303, @Hellzed and @qeternity
Thanks to everybody who contributed by sending bug reports or pull requests. Please continue to report any problems you find in this beta release, so that these can be fixed in the final v3.1 release.
Second beta release of GraphQL-core 3.1, based on GraphQL.js v15.0.0rc2.
Second beta release of GraphQL-core 3.1, based on GraphQL.js v15.0.0rc2.
In addition to incorporating the latest changes in GraphQL.js v15.0.0rc2, this release also contains the following improvements and changes:
__typename attribute (#25).Contributors to this release were:
@Cito, @Hellzed
Thanks to everybody who contributed by sending bug reports or pull requests. Please continue to report any problems you find in this beta release, so that these can be fixed in the final v3.1 release.
Change: Use Undefined instead of INVALID which is now deprecated
First beta release of GraphQL-core 3.1, based on GraphQL.js v15.0.0rc1.
In addition to incorporating the latest changes from GraphQL.js (see the list of changes in GraphQL.js v15.0.0a1, v15.0.0a2 and v15.0.0rc1), this release also contains the following improvements and changes:
Undefined instead of INVALID which is now deprecated (#77)Optional type on arguments (#76)__init__ methods (python/mypy#5677)ast_from_valuelexicographic_sort_schema (#75)ast_from_value()MapAsyncIterator.athrow()Contributors to this release were:
@Cito, @hoefling
Thanks to everybody who contributed by sending bug reports or pull requests. Please continue to report any problems you find in this beta release, so that these can be fixed in the final v3.1 release.
Patch release GraphQL-core v3.0.6, based on GraphQL.js v14.7.0.
Patch release GraphQL-core v3.0.6, based on GraphQL.js v14.7.0.
This release backports Python 3.9 and 3.10 support to the 3.0 branch.
Bugfix release GraphQL-core v3.0.5, based on GraphQL.js v14.6.0.
Bugfix release GraphQL-core v3.0.5, based on GraphQL.js v14.6.0.
The following issues are fixed in this release:
Contributors to this release were:
@Cito, @hoefling, @nawatts, @rafalp
Thanks to everyone who helped by sending bug reports or pull requests.
Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
The primary fix is the new repository address github.com/graphql-python/graphql-core in the meta data.
Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
This is essentially the same as version 3.0.2 except for one minor change:
Undefined as a forward compatible alias for INVALID, which should be imported from the top level.Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
Patch release of GraphQL-core 3, based on GraphQL.js v14.6.0.
This is essentially the same as version 3.0.1 except for one minor change:
graphql and graphql.validation packages.Some requirements have also been updated, and we officially support Python 3.8 now.
Note that the introspection_query *constant* was already deprecated in v14 and had not been ported to graphql-core, like some other deprecated feature…
Patch release of GraphQL-core 3, based on GraphQL.js v14.5.8.
This is essentially the same as version 3.0.0 except for one minor change:
utilities.get_introspection_query module has been renamed back to utilities.introspection_query, since that was the name used in GraphQL.js v14.5.8 - renaming the module will be postponed to a version that replicates GraphQL.js v15.0.0.Note that the introspection_query constant was already deprecated in v14 and had not been ported to graphql-core, like some other deprecated features.
Final release of GraphQL-core 3, based on GraphQL.js v14.5.8.
Final release of GraphQL-core 3, based on GraphQL.js v14.5.8.
GraphQL-core 3 is the successor to both GraphQL-core 2 and GraphQL-core-next.
In addition to porting the minor changes in GraphQL.js since v14.5.6, this release also contains the following improvements:
build_response() (#68)See also the changes in v3.0.0b0 and v3.0.0b1.
Contributors to this release were:
@Cito, @tebanep
Thanks to everyone who sent bug reports or pull requests.
Second beta release of GraphQL-core 3, based on GraphQL.js v14.5.6.
Second beta release of GraphQL-core 3, based on GraphQL.js v14.5.6.
GraphQL-core 3 is the successor to both GraphQL-core 2 and GraphQL-core-next.
In addition to incorporating the latest changes from GraphQL.js (see particularly the list of changes in GraphQL.js v14.5.5), this release also contains the following improvements and changes:
format_error now returns locations as a list of dicts (#62)Contributors to this release were:
@Cito, @Dodobibi, @ktosiek
Thanks to everybody who contributed by sending bug reports or pull requests. Please continue to report any problems you find in this beta release, so that these can be fixed in the final v3 release.
First beta release of GraphQL-core 3, based on GraphQL.js v14.5.0.
First beta release of GraphQL-core 3, based on GraphQL.js v14.5.0.
GraphQL-core 3 is the successor to both GraphQL-core 2 and GraphQL-core-next.
In addition to incorporating the latest changes from GraphQL.js (see particularly the list of changes in GraphQL.js v14.5.0), this release also contains the following improvements and changes:
is_nullish() to make it play nice with numpy arrays (#60)parse_literal via to_kwargs()Contributors to this release were:
@Cito, @CorrosiveKid, @delyanr, @ktosiek, @mvanlonden, @qqi0O0, @thomascobb
Thanks to everybody who contributed by sending bug reports or pull requests. Please continue to report any problems you find in this beta release, so that these can be fixed in the final v3 release.
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →