strawberry-graphql / strawberry-sqlalchemy

A SQLAlchemy Integration for strawberry-graphql
MIT License
93 stars 27 forks source link

Bump strawberry-graphql from 0.243.1 to 0.247.2 #210

Closed dependabot[bot] closed 1 week ago

dependabot[bot] commented 2 weeks ago

Bumps strawberry-graphql from 0.243.1 to 0.247.2.

Release notes

Sourced from strawberry-graphql's releases.

🍓 0.247.2

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

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

Releases contributed by @​DoctorJohn via #3685

🍓 0.247.0

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

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

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

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

</tr></table>

... (truncated)

Changelog

Sourced from strawberry-graphql's changelog.

0.247.2 - 2024-11-05

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

Contributed by Jonathan Ehwald via [PR #3687](strawberry-graphql/strawberry#3687)

0.247.1 - 2024-11-01

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

Contributed by Jonathan Ehwald via [PR #3685](strawberry-graphql/strawberry#3685)

0.247.0 - 2024-10-21

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.

Contributed by Jonathan Ehwald via [PR #3670](strawberry-graphql/strawberry#3670)

0.246.3 - 2024-10-21

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.

Contributed by Arthur via [PR #3674](strawberry-graphql/strawberry#3674)

0.246.2 - 2024-10-12

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

Contributed by Jonathan Ehwald via [PR #3666](strawberry-graphql/strawberry#3666)

0.246.1 - 2024-10-09

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

... (truncated)

Commits


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Summary by Sourcery

Build:

sourcery-ai[bot] commented 2 weeks ago

Reviewer's Guide by Sourcery

This PR updates the strawberry-graphql dependency from version 0.243.1 to 0.247.2. The update includes several bug fixes and improvements, particularly focusing on WebSocket protocol handling, directive management, and enum support.

Sequence diagram for WebSocket protocol handling improvements

sequenceDiagram
    participant Client
    participant Server
    Client->>Server: Start operation
    alt Client disconnects quickly
        Server->>Server: Await coroutine
    else Client remains connected
        Server->>Client: Continue operation
    end

Class diagram for enum support changes

classDiagram
    class Enum {
        <<interface>>
    }
    class AnimalKind {
        +AXOLOTL
        +CAPYBARA
    }
    Enum <|-- AnimalKind
    note for AnimalKind "Raw Python enum types can now be used in the schema without @strawberry.enum"

File-Level Changes

Change Details Files
Improved WebSocket protocol handling
  • Fixed unhandled coroutines in WebSocket protocol handlers during client disconnections
  • Enhanced handling of unexpected socket disconnections
  • Fixed regression in legacy GraphQL WebSocket protocol for client message parsing errors
poetry.lock
Bug fixes and improvements in schema handling
  • Fixed duplicate directives issue in interfaces with multiple object inheritance
  • Added support for raw Python enum types in schema definition
  • Improved type checking for Flask integration's render_graphql_ide method
poetry.lock

Tips and commands #### Interacting with Sourcery - **Trigger a new review:** Comment `@sourcery-ai review` on the pull request. - **Continue discussions:** Reply directly to Sourcery's review comments. - **Generate a GitHub issue from a review comment:** Ask Sourcery to create an issue from a review comment by replying to it. - **Generate a pull request title:** Write `@sourcery-ai` anywhere in the pull request title to generate a title at any time. - **Generate a pull request summary:** Write `@sourcery-ai summary` anywhere in the pull request body to generate a PR summary at any time. You can also use this command to specify where the summary should be inserted. #### Customizing Your Experience Access your [dashboard](https://app.sourcery.ai) to: - Enable or disable review features such as the Sourcery-generated pull request summary, the reviewer's guide, and others. - Change the review language. - Add, remove or edit custom review instructions. - Adjust other review settings. #### Getting Help - [Contact our support team](mailto:support@sourcery.ai) for questions or feedback. - Visit our [documentation](https://docs.sourcery.ai) for detailed guides and information. - Keep in touch with the Sourcery team by following us on [X/Twitter](https://x.com/SourceryAI), [LinkedIn](https://www.linkedin.com/company/sourcery-ai/) or [GitHub](https://github.com/sourcery-ai).
codspeed-hq[bot] commented 2 weeks ago

CodSpeed Performance Report

Merging #210 will not alter performance

Comparing dependabot/pip/strawberry-graphql-0.247.2 (ab675c3) with main (d1fc069)

Summary

âś… 1 untouched benchmarks

dependabot[bot] commented 1 week ago

Superseded by #211.