NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3431 most downloaded on PyPI
Strawberry GraphQL Django extension
Last release 5 days ago
13 Sep 2026
Ships fairly regularly
a new release about every 3 weeks
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
6 years old
198 releases · first in 2020
One column per quarter.
fix(optimizer): Pass accurate "info" parameter to PrefetchCallable and AnnotateCallable by @diesieben07 in https://github.com/strawberry-graphql/straw
django_resolver(...) to ensure appropriate async/sync context by @axieum in https://github.com/strawberry-graphql/strawberry-django/pull/746Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.59.1...v0.60.0
django_resolver(...) to ensure appropriate async/sync context by @axieum in #746fix: Fix "ordering" for connections and offset_paginated by @diesieben07 in https://github.com/strawberry-graphql/strawberry-django/pull/741
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.59.0...v0.59.1
The old names are still available for import and use, making this a non-breaking change, but they are marked as deprecated and will eventually be remo…
This release brings some very interesting features, thanks to @diesieben07 🍓
@strawberry_django.order_type. This type uses a list for specifying ordering criteria instead of an object, making it easier and more flexible to apply multiple orderings, ensuring they will keep their order. Check the ordering docs for more info on how to use itDjangoCursorConnection type. Check the relay docs for more info on how to use itAlso, to maintain consistency across the codebase, we have renamed several classes and functions. The old names are still available for import and use, making this a non-breaking change, but they are marked as deprecated and will eventually be removed in the future. The renames are as follows:
ListConnectionWithTotalCount got renamed to DjangoListConnectionstrawberry_django.filter got renamed to strawberry_django.filter_typeFull Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.58.0...v0.59.0
feat: Official Django 5.2 support by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/728
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.57.1...v0.58.0
Improve fallback primary key ordering unit tests by @SupImDos in https://github.com/strawberry-graphql/strawberry-django/pull/716
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.57.0...v0.57.1
Order unordered querysets by primary key by @SupImDos in https://github.com/strawberry-graphql/strawberry-django/pull/715
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.56.0...v0.57.0
Add support for the the general Geometry type by @shmoon-kr in https://github.com/strawberry-graphql/strawberry-django/pull/709
Geometry type by @shmoon-kr in https://github.com/strawberry-graphql/strawberry-django/pull/709Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.55.2...v0.56.0
Move django-tree-queries dependency to dev (it was wrongly added to main dependencies)
django-tree-queries dependency to dev (it was wrongly added to main dependencies) (https://github.com/strawberry-graphql/strawberry-django/commit/fec457e589646dc4790f80c67286da714871a81c)Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.55.1...v0.55.2
docs: fix inverted link tags by @pbratkowski in https://github.com/strawberry-graphql/strawberry-django/pull/692
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.55.0...v0.55.1
feat: Allow setting max_results for connection fields by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/689
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.54.0...v0.55.0
feat: Bump strawberry minumum version to 0.257.0, which contains a fix for https://github.com/strawberry-graphql/strawberry/security/advisories/GHSA-5
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.53.3...v0.54.0
fix(mutations): Make sure we skip refetch when the optimizer is disabled
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.53.2...v0.53.3
fix: skip empty choice value when generating enums from choices by @fabien-michel in https://github.com/strawberry-graphql/strawberry-django/pull/687
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.53.1...v0.53.2
fix(optimizer): Fix nested pagination optimization for m2m relations by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/68
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.53.0...v0.53.1
Support multi-level nested create/update with model full_clean() by @philipstarkey in https://github.com/strawberry-graphql/strawberry-django/pull/659
full_clean() by @philipstarkey in https://github.com/strawberry-graphql/strawberry-django/pull/659Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.52.1...v0.53.0
fix(optimizer): Prevent issuing duplicated queries for certain uses of first() and get() by @diesieben07 in https://github.com/strawberry-graphql/stra
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.52.0...v0.52.1
fix(pagination)!: Use PAGINATION_DEFAULT_LIMIT when limit is not provided by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pu
PAGINATION_DEFAULT_LIMIT when limit is not provided by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/673Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.51.0...v0.52.0
PAGINATION_DEFAULT_LIMIT when limit is not provided by @bellini666 in #673Fix Django permissions diagram syntax by @sersorrel in https://github.com/strawberry-graphql/strawberry-django/pull/663
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.50.0...v0.51.0
feat: New Paginated generic to be used as a wrapped for paginated results by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pu
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.49.1...v0.50.0
docs: Remove mention about having to enable subscriptions in the docs by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/6
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.49.0...v0.49.1
feat: Official support for Python 3.13 and drop support for Python 3.8 which has reached EOL by @bellini666 in https://github.com/strawberry-graphql/s
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.48.0...v0.49.0
Change default Relay input m2m types from ListInput[NodeInputPartial] to ListInput[NodeInput] by @SupImDos in https://github.com/strawberry-graphql/st
ListInput[NodeInputPartial] to ListInput[NodeInput] by @SupImDos in https://github.com/strawberry-graphql/strawberry-django/pull/630Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.47.2...v0.48.0
ListInput[NodeInputPartial] to ListInput[NodeInput] by @SupImDos in #630Fix calculation of has_next_page in resolve_connection_from_cache by @SupImDos in https://github.com/strawberry-graphql/strawberry-django/pull/622
has_next_page in resolve_connection_from_cache by @SupImDos in https://github.com/strawberry-graphql/strawberry-django/pull/622Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.47.1...v0.47.2
has_next_page in resolve_connection_from_cache by @SupImDos in #622fix: Fix debug toolbar upgrade issue by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/600
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.47.0...v0.47.1
feat: Bump strawberry to 0.236.0 and refactor changed imports by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/591
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.46.2...v0.47.0
refactor(optimizer): Split optimizer code to make it cleaner and easier to understand/maintain by @bellini666 in https://github.com/strawberry-graphql
order method if it is not a decorated method by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/584Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.46.1...v0.46.2
order method if it is not a decorated method by @bellini666 in #584fix: Fix and test optimizer with polymorphic relay node by @stygmate in https://github.com/strawberry-graphql/strawberry-django/pull/570
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.46.0...v0.46.1
feat: Add support for auto mapping of ArrayFields by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/567
get_queryset for nested lists/connections by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/568Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.45.0...v0.46.0
get_queryset for nested lists/connections by @bellini666 in #568Generated fields type resolution by @Mapiarz in https://github.com/strawberry-graphql/strawberry-django/pull/565
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.44.2...v0.45.0
docs: wrong typo on filter on fruitfilter by @OdysseyJ in https://github.com/strawberry-graphql/strawberry-django/pull/555
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.44.1...v0.44.2
fix: fix optimized nested connections failing to access totalCount by @bellini666 and @Eraldo in https://github.com/strawberry-graphql/strawberry-djan
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.44.0...v0.44.1
feat: Nested optimization for lists and connections by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/540
This releases finally enables the highly anticipated nested optimization for lists and connections 🚀
What does that mean? Remember that when trying to retrieve a relation list inside another type and also trying to filter/order/paginate, that would cause n+1 issues because it would force the prefetched list to be thrown away? Well, not anymore after this release! 😊
In case you find any issues with this, please let us know by registering an issue with as much information as possible on how to reproduce the issue.
Note that even though this is enabled by default, nested optimizations can be disabled by passing enabled_nested_relations_prefetch=False when initializing the optimizer extensions.
The nested optimization feature required features only available on Django 4.2+.
To be able to implement it, and also considering that django itself recommended dropping support for those versions, from now on this lib requires Django 4.2+
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.43.0...v0.44.0
Added export-schema command to Docs by @Ckk3 in https://github.com/strawberry-graphql/strawberry-django/pull/546
export-schema command to Docs by @Ckk3 in https://github.com/strawberry-graphql/strawberry-django/pull/546NOTE: Even though this only contains a bug fix, I decided to do a minor release because the fix is bumping the minimum required version of strawberry-graphql itself to 0.234.2.
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.42.0...v0.43.0
export-schema command to Docs by @Ckk3 in #546NOTE: Even though this only contains a bug fix, I decided to do a minor release because the fix is bumping the minimum required version of strawberry-graphql itself to 0.234.2.
refactor: Use graphql-core's collect_sub_fields instead of our own implementation by @bellini666 in https://github.com/strawberry-graphql/strawberry-d
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.41.1...v0.42.0
fix: Move Info out of the TYPE_CHECKING block to prevent a warning
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.41.0...v0.41.1
docs: Fix typo by @Eraldo in https://github.com/strawberry-graphql/strawberry-django/pull/531
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.40.0...v0.41.0
feat: Avoid calling Type.get_queryset method more than once by @bellini666 in
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.39.2...v0.40.0
fix: Delete mutation should not throw error if no objects in filterset by @keithhackbarth in https://github.com/strawberry-graphql/strawberry-django/p
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.39.1...v0.39.2
fix: fix annotations inheritance override for python 3.8/3.9
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.39.0...v0.39.1
feat: support for strawberry 0.227.1+
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.38.0...v0.39.0
feat: Ability to use custom field_cls for connections and nodes
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.37.1...v0.38.0
Fixing Docs Typo by @drewbeno1 in https://github.com/strawberry-graphql/strawberry-django/pull/513
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.37.0...v0.37.1
feat: filter_field optional value resolution by @Kitefiko in https://github.com/strawberry-graphql/strawberry-django/pull/510
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.36.0...v0.37.0
feat: properly resolve _id fields to ID
_id fields to ID (https://github.com/strawberry-graphql/strawberry-django/issues/506)Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.35.1...v0.36.0
fix: async with new filter API (assert queryset is wrong) by @devkral in https://github.com/strawberry-graphql/strawberry-django/pull/504
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.35.0...v0.35.1
There are no breaking changes in the new ordering API, but please report any issues you find when using it.
This release contains a major refactor of how filters and ordering works with this library (https://github.com/strawberry-graphql/strawberry-django/pull/478).
Thank you very much for this excellent work @Kitefiko 😊
Some distinctions between the new API and the old API:
NOT filters with a leading n were removing, NOT is the only negation option from now onDISTINCT: Boolean option to call .distinct() in the resulting QuerySet: https://strawberry-graphql.github.io/strawberry-django/guide/filters/#and-or-not-distinct@strawberry_django.filter_field decorator: https://strawberry-graphql.github.io/strawberry-django/guide/filters/#custom-filter-methods@strawberry_django.filter_field decorator: https://strawberry-graphql.github.io/strawberry-django/guide/filters/#overriding-the-default-filter-methodBooleanField by __range): https://strawberry-graphql.github.io/strawberry-django/guide/filters/#generic-lookup-referenceIMPORTANT NOTE: If you find any issues and/or can't migrate your codebase yet, the old behaviour can still be achieved by setting USE_DEPRECATED_FILTERS=True in your django settings: https://strawberry-graphql.github.io/strawberry-django/guide/filters/#legacy-filtering
Also, make sure to report any issues you find with the new API.
Ordering enum have 4 more options: ASC_NULLS_FIRST, ASC_NULLS_LAST, DESC_NULLS_FIRST and DESC_NULLS_LAST: https://strawberry-graphql.github.io/strawberry-django/guide/ordering/#orderingThere are no breaking changes in the new ordering API, but please report any issues you find when using it.
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.34.0...v0.35.0
Fix _perm_cache processing by @vecchp in https://github.com/strawberry-graphql/strawberry-django/pull/498
_perm_cache processing by @vecchp in https://github.com/strawberry-graphql/strawberry-django/pull/498Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.33.0...v0.34.0
chore: update and improve github workflows by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/492
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.32.2...v0.33.0
Add py.typed marker for mypy by @pm-incyan in https://github.com/strawberry-graphql/strawberry-django/pull/486
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.32.0...v0.32.2
Nothing published for this version
Expose pagination api publicly by @fireteam99 in https://github.com/strawberry-graphql/strawberry-django/pull/476
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.31.0...v0.32.0
chore: Rename all links to the new repository name by @bellini666 in https://github.com/strawberry-graphql/strawberry-django/pull/477
Full Changelog: https://github.com/strawberry-graphql/strawberry-django/compare/v0.30.1...v0.31.0
validate files at dummy-instance level by @sdobbelaere in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/469
Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.30.0...v0.30.1
fix: fix files not being saved on create mutation by @bellini666 in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/464
null on empty files/images by @bellini666 in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/466Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.29.0...v0.30.0
null on empty files/images by @bellini666 in #466Documentation improvements by @thclark in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/456
Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.28.3...v0.29.0
Nothing published for this version
fix(docs): Standardising the use of strawberry_django throughout the documentation. by @ArcD7 in https://github.com/strawberry-graphql/strawberry-grap
field_type_map. by @alimony in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/441Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.28.2...v0.28.3
fix: HasPerm on async fields, fix missing query in another test by @devkral in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/43
Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.28.1...v0.28.2
fix: really push OR, AND and NOT to the end by @devkral in https://github.com/strawberry-graphql/strawberry-graphql-django/pull/435
Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.28.0...v0.28.1
Official support for Django 5.0
Full Changelog: https://github.com/strawberry-graphql/strawberry-graphql-django/compare/v0.27.0...v0.28.0
Your coding agent can read these notes before it upgrades. Set up the MCP server →