Skip to content

Releases: strawberry-graphql/strawberry

🍓 0.250.0

18 Nov 17:41
Compare
Choose a tag to compare

In this release, we migrated the graphql-transport-ws types from data classes to typed dicts.
Using typed dicts enabled us to precisely model null versus undefined values, which are common in that protocol.
As a result, we could remove custom conversion methods handling these cases and simplify the codebase.

Releases contributed by @DoctorJohn via #3701

🍓 0.249.0

18 Nov 13:43
Compare
Choose a tag to compare

After a year-long deprecation period, the SentryTracingExtension has been
removed in favor of the official Sentry SDK integration.

To migrate, remove the SentryTracingExtension from your Strawberry schema and
then follow the
official Sentry SDK integration guide.

Releases contributed by @DoctorJohn via #3672

🍓 0.248.1

08 Nov 15:41
Compare
Choose a tag to compare

This release fixes the following deprecation warning:

Failing to pass a value to the 'type_params' parameter of 'typing._eval_type' is deprecated,
as it leads to incorrect behaviour when calling typing._eval_type on a stringified annotation
that references a PEP 695 type parameter. It will be disallowed in Python 3.15.

This was only trigger in Python 3.13 and above.

Releases contributed by @patrick91 via #3692

🍓 0.248.0

07 Nov 13:56
Compare
Choose a tag to compare

In this release, all types of the legacy graphql-ws protocol were refactored.
The types are now much stricter and precisely model the difference between null and undefined fields.
As a result, our protocol implementation and related tests are now more robust and easier to maintain.

Releases contributed by @DoctorJohn via #3689

🍓 0.247.2

05 Nov 15:31
Compare
Choose a tag to compare

This release fixes the issue that some coroutines in the WebSocket protocol handlers were never awaited if clients disconnected shortly after starting an operation.

Releases contributed by @DoctorJohn via #3687

🍓 0.247.1

01 Nov 16:37
Compare
Choose a tag to compare

Starting with this release, both websocket-based protocols will handle unexpected socket disconnections more gracefully.

Releases contributed by @DoctorJohn via #3685

🍓 0.247.0

21 Oct 15:39
Compare
Choose a tag to compare

This release fixes a regression in the legacy GraphQL over WebSocket protocol.
Legacy protocol implementations should ignore client message parsing errors.
During a recent refactor, Strawberry changed this behavior to match the new protocol, where parsing errors must close the WebSocket connection.
The expected behavior is restored and adequately tested in this release.

Releases contributed by @DoctorJohn via #3670

🍓 0.246.3

21 Oct 14:11
Compare
Choose a tag to compare

This release addresses a bug where directives were being added multiple times when defined in an interface which multiple objects inherits from.

The fix involves deduplicating directives when applying extensions/permissions to a field, ensuring that each directive is only added once.

Releases contributed by @Speedy1991 via #3674

🍓 0.246.2

12 Oct 17:20
Compare
Choose a tag to compare

This release tweaks the Flask integration's render_graphql_ide method to be stricter typed internally, making type checkers ever so slightly happier.

Releases contributed by @DoctorJohn via #3666

🍓 0.246.1

09 Oct 10:36
Compare
Choose a tag to compare

This release adds support for using raw Python enum types in your schema
(enums that are not decorated with @strawberry.enum)

This is useful if you have enum types from other places in your code
that you want to use in strawberry.
i.e

# somewhere.py
from enum import Enum


class AnimalKind(Enum):
    AXOLOTL, CAPYBARA = range(2)


# gql/animals
from somewhere import AnimalKind


@strawberry.type
class AnimalType:
    kind: AnimalKind

Releases contributed by @nrbnlulu via #3639