Changelog

Changelog

1.2.0 (2026-05-27)

Features

  • add connection_init_payload for GraphQL subscriptions (8334cff), closes #217

  • add GraphQL codec layer (988f6ab), closes #236

  • add GraphQLSession type alias for native session types (3dc58ba)

  • add HttpxTransport (e994d50)

  • add optional pydantic support for encoding and decoding (be20413)

  • add retry mechanism for transport errors (31198e3)

  • add transport abstraction (e572ae1)

  • allow disabling validation (50870b7), closes #238

  • auto-detect transport (7bee013)

  • client: add TTL logic for expiring schemas (578ab3f)

  • custom JSON serialization support (273a8fc), closes #232

  • extend test server with authentication, add population to city model (35b6d95)

  • session and client ownership model with lazy initialization (c246e54)

  • support for custom subscription transport (ccf578b)

  • support optional transport dependencies and lazy loading (99ef56f)

  • support websockets as an alternative subscription transport (376fb4c)

Bug Fixes

  • correct Python version check in aiohttp transport (c0348b5)

  • correctly pass aiohttp session to subscription transport when using non-aiohttp transport (534ba2d)

  • ensure ws_connect uses correct websocket protocol (c969226)

  • resolve deadlock in subscriptions by increasing aiohttp connection limit (3aef468)

  • resolve transport-specific issues and improve environment compatibility (c53e340)

  • tests: import async generator for strawberry server (f347bc0)

  • update transport installation instructions to reference httpx instead of websockets (0c726ad)

Performance Improvements

  • codec: cache get_type_hints during decoding (284db4c)

  • codec: unbound type hints cache to avoid eviction thrash (d565b87)

  • error: optimize GraphQLError.load performance (a6f04e1)

Documentation

  • add “Data Models” section, update transport abd setup instructions (f50dd06)

  • add authentication recipes (51e22c8)

  • add changelog and update release notes (7d65b89)

  • add comprehensive local development and testing guide (f1bb30c)

  • add errors and exceptions guide (d5bf31a)

  • add production guide (35b2756)

  • add scenario-based example scripts for common use cases (b7b46a6)

  • clarify transport options and installation instructions (abe567b)

  • correct WebsocketSubscriptionTransport name (5963faf)

  • fix usage example in transport documentation (01f671c)

  • improve documentation and update examples (1b85f02)

  • rebuild documentation site with Shibuya theme and modern Sphinx stack (7870abf)

  • refresh contributing guide and document release process (398ec33)

  • remove duplicate retry mechanism entry from changelog (434295c)

  • suppress SyntaxWarning from css_html_js_minify and update docs build environment (c48a229)

  • update Sphinx theme options with custom labels for TOC and search (f911e77)

  • use release-please generated CHANGELOG.md in Sphinx docs (ee80ea8)

1.1.0 (2023-06-15)

Features

  • added support for Python 3.11 and 3.12

  • schema caching for introspection is now enabled by default

Miscellaneous Chores

  • dropped support for Python 3.7

1.0.3 (2022-09-01)

Features

  • added support for Python 3.10

  • added support for GraphQL subscription sub-protocol configuration

  • added documentation for custom themes (Furo, Sphinx-material)

Bug Fixes

  • fixed issue where implicit aiohttp client sessions were not properly closed

  • updated dependencies for compatibility and security

1.0.2 (2021-08-15)

Features

  • added support for Python 3.9

  • switched to src-layout for project structure

Bug Fixes

  • resolved aiohttp and connector deprecation warnings

  • ensured request headers and variables are initialized correctly (never None)

  • updated dependencies for compatibility and security

1.0.1 (2021-03-10)

Bug Fixes

  • fixed support for non-standard error fields in GraphQL responses

1.0.0 (2020-11-20)

Features

  • support for GraphQL subscriptions with on_data and on_error callbacks

  • added unsubscribe_and_wait() method for subscriptions

  • support for locations and path properties in error payloads

  • added client-scoped externally managed sessions

  • added support for waiting during subscription initialization

  • added documentation for custom session usage and async expansions

Miscellaneous Chores

  • schema caching is now at the client level

  • GraphQLRequest objects are now frozen for consistency

  • standardized operation property name in GraphQLRequest

  • refactored core logic to simplify usage and improve interface

  • removed the notion of transactions to streamline client behavior

0.4.0 (2020-06-01)

Features

  • GitHub Actions CI/CD workflows for testing, code quality, and release

  • support for world server configuration via environment variables in tests

Miscellaneous Chores

  • migrated from graphql-core-next (v1) to graphql-core (v3)

  • restructured test source for better organization

0.3.0 (2020-01-15)

Features

  • schema introspection and validation support

  • support for dictionary items as query parameters for GET requests

  • headers parameter added to the validate method

Bug Fixes

  • improved error handling when introspection query fails

  • fix FrozenError in GraphQLSchema by setting it to None when necessary

0.2.0 (2019-10-01)

Features

  • support for specifying additional headers at various levels: client, request, and method

  • improved type hinting and documentation for the client class

0.1.0 (2019-07-01)

Features

  • initial release with basic GraphQL query and mutation support

  • support for aiohttp as the default transport