NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3289 most downloaded on PyPI
Ariadne is a Python library for implementing GraphQL servers.
Last release 3 months ago
15 Jun 2026
Ships unpredictably
gaps range from 8 days to 9 months
Most releases are documented
notes for 41 of 49 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
73 releases · first in 2018
Updated graphql-core-next to 1.1.1 which has feature parity with GraphQL.js 14.4.0.
graphql-core-next to 1.1.1 which has feature parity with GraphQL.js 14.4.0.ariadne.graphql.graphql. Currently only available in the ariadne.asgi.GraphQL app.convert_kwargs_to_snake_case utility decorator that recursively converts the case of arguments passed to resolver from camelCase to snake_case.default_resolver and replaced its uses in library with graphql.default_field_resolver.resolve_to util follows graphql.default_field_resolver behaviour and supports resolving to callables.is_default_resolver utility for checking if resolver function is graphql.default_field_resolver, resolver created with resolve_to or alias.ariadne.contrib.tracing package with ApolloTracingExtension and OpenTracingExtension GraphQL extensions for adding Apollo tracing and OpenTracing monitoring to the API (ASGI only).context_value option support for async callables.middleware option implementation in ASGI and WSGI apps to accept list of middleware functions or callable returning those.get_formatted_error_context, get_formatted_error_traceback, unwrap_graphql_error) to public API.One column per quarter.
Added support for file uploads.
Nothing published for this version
Updated graphql-core-next to 1.0.4 which has feature parity with GraphQL.js 14.3.1 and better type annotations.
graphql-core-next to 1.0.4 which has feature parity with GraphQL.js 14.3.1 and better type annotations.ariadne.asgi.GraphQL is now an ASGI3 application. ASGI3 is now handled by all ASGI servers.ObjectType.field and SubscriptionType.source decorators now raise ValueError when used without name argument (eg. @foo.field).ScalarType will now use default literal parser that unpacks ast.value and calls value parser if scalar has value parser set.ariadne.asgi.GraphQL and ariadne.wsgi.GraphQL to support callables for context_value and root_value options.logger option to ariadne.asgi.GraphQL, ariadne.wsgi.GraphQL and ariadne.graphql.* utils.ariadne.extend type in schema definitions.format_errors utility function and renamed ariadne.format_errors module to ariadne.format_error.typing dependency.ariadne.contrib.django package that provides Django class-based view together with Date and Datetime scalars.Ariadne 0.3.0 release is focused on further improving the support for GraphQL specification and developer experience. It adds support for subscription
Ariadne 0.3.0 release is focused on further improving the support for GraphQL specification and developer experience. It adds support for subscriptions, enums, interfaces and union GraphQL types, and unifies the API across those types. It also greatly improves developer experience by the inclusion of debug mode, error reporting, and includes graphql, graphql_sync and subscribe wrappers that ease integrations with existing sites greatly. Lastly, it also provides ASGI application that works with asynchronous servers and frameworks like Uvicorn and Starlette
EnumType type for mapping enum variables to internal representation used in application.GraphQLMiddleware into two classes and moved it to ariadne.wsgi.ariadne.asgi.make_executable_schema.UnionType and InterfaceType types.QueryType and MutationType convenience utils. Suffixed all types names with Type so they are less likely to clash with other libraries built-ins.debug and error_formatter options to enable developer customization.graphql, graphql_sync, and subscribe to ease integration into custom servers.Redefining type in type_defs will now result in TypeError being raised. This is a breaking change from previous behavior where the old type was simply…
Ariadne 0.2.0 replaces GraphQL-Core with GraphQL-core-next that offers much better compliance with GraphQL specification, supports async query execution and resolvers, and improves library's API and developer experience.
GraphQL-core-next that supports async resolvers, query execution and implements a more recent version of GraphQL spec. If you are updating an existing project, you will need to uninstall graphql-core before installing graphql-core-next, as both libraries use graphql namespace.gql() utility that provides GraphQL string validation on declaration time, and enables use of Apollo-GraphQL plugin in Python code.load_schema_from_path() utility function that loads GraphQL types from a file or directory containing .graphql files, also performing syntax validation.start_simple_server() shortcut function for quick dev server creation, abstracting away the GraphQLMiddleware.make_server() from first time users.Boolean built-in scalar now checks the type of each serialized value. Returning values of type other than bool, int or float from a field resolver will result in a Boolean cannot represent a non boolean value error.type_defs will now result in TypeError being raised. This is a breaking change from previous behavior where the old type was simply replaced with a new one.None from scalar parse_literal and parse_value function no longer results in GraphQL API producing default error message. Instead, None will be passed further down to resolver or produce a "value is required" error if its marked as such with ! For old behavior raise either ValueError or TypeError. See documentation for more details.resolvers argument defined by GraphQLMiddleware.__init__(), GraphQLMiddleware.make_server() and start_simple_server() is now optional, allowing for quick experiments with schema definitions.dict has been removed as primitive for mapping python function to fields. Instead, make_executable_schema() expects object or list of objects with a bind_to_schema method, that is called with a GraphQLSchema instance and are expected to add resolvers to schema.make_executable_schema(). Instead you are expected to include either ariadne.fallback_resolvers or ariadne.snake_case_fallback_resolvers in the list of resolvers for your schema.snake_case_fallback_resolvers that populates schema with default resolvers that map CamelCase and PascalCase field names from schema to snake_case names in Python.ResolverMap object that enables assignment of resolver functions to schema types.Scalar object that enables assignment of serialize, parse_value and parse_literal functions to custom scalars.ResolverMap and Scalar are validating if schema defines specified types and/or fields at the moment of creation of executable schema, providing better feedback to the developer.Nothing published for this version
Ariadne 0.1.0 is first release of Ariadne that out of the box implements following features:
Ariadne 0.1.0 is first release of Ariadne that out of the box implements following features:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →