Skip to content

Conversation

totzk9
Copy link
Contributor

@totzk9 totzk9 commented Oct 30, 2024

graphql version 5.1.3 is almost 2 years old, since then numerous updates were made up until 5.2.0-beta.9 version which has more features and more control over the package

old:
Screenshot 2024-10-30 at 8 16 15 PM

new:

Screenshot 2024-10-30 at 8 15 49 PM

I created this PR for PGs who want to use the latest version of graphql package.

@dbarrosop
Copy link
Member

Hello, thanks a lot for the PR. Just a bit concerned about the upgrade to a beta package but otherwise this LGTM.

@totzk9 totzk9 marked this pull request as draft November 1, 2024 13:46
@totzk9
Copy link
Contributor Author

totzk9 commented Nov 1, 2024

We can leave this PR as draft for now. I'll add a workaround in the issue while waiting for official release.
#143 (comment)

@dbarrosop
Copy link
Member

dbarrosop commented Nov 2, 2024

Sorry, didn't mean to shutdown or delay this PR. If there is a good reason like "there is no further development in the 5.1 branch and this branch is missing much needed features" that might be a good reason to make an exception here. I was mostly trying to understand the rationale behind the use of a beta version so if you could explain a bit the situation that would help moving this PR forward. Thanks again for the work!

@totzk9
Copy link
Contributor Author

totzk9 commented Nov 2, 2024

@dbarrosop Hello
Yes, 5.1 is missing much needed features and it's been far from the lastest version but ultimately I do agree with you on why we should use a stable release. The beta version works for me but for the majority, it's better be safe than sorry on having such risk for everyone.

The latest beta release includes the timeouts, defaultPolicies and other configs I'm not familiar of but can be useful for others. It also allows better support for the latest Flutter versions and other dependencies

@dbarrosop
Copy link
Member

Based on what you are saying and what I could see online I am leaning towards approving the use of this beta version. Looks like 5.1 is 22 months old which isn't too great. I will ask a colleague to review soon.

@onehassan onehassan marked this pull request as ready for review November 25, 2024 15:39
@dbarrosop dbarrosop assigned dbarrosop and unassigned onehassan Jan 7, 2025
@dbarrosop
Copy link
Member

Just a quick update, if by the end of Jan there isn't a stable release I think we should move forward with this PR

@dbarrosop
Copy link
Member

dbarrosop commented Jan 31, 2025

I just checked and no release yet, I'd suggest updating the dep to v5.2.0-beta.10 and then me can merge.

Thanks a lot for the work here.

@totzk9
Copy link
Contributor Author

totzk9 commented Jan 31, 2025 via email

alwaysRebroadcast: alwaysRebroadcast ?? false,
deepEquals: deepEquals,
deduplicatePollers: deduplicatePollers ?? false,
queryRequestTimeout: queryRequestTimeout ?? const Duration(seconds: 5),
Copy link
Contributor Author

@totzk9 totzk9 Jan 31, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dbarrosop would it be much better to increase the request timeout for it let's say 1 or 3 mins to avoid unexpected timeouts when devs updates to the new version?
They might have sudden timeouts when they haven't read the new changes

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: the 5 seconds was taken from the default value of the dep itself

Copy link
Contributor Author

@totzk9 totzk9 Jan 31, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

another side note: we should probably wait for this PR to be merged then update the gql_websocket_link dep before we update to v5.2.0-beta.10

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for it let's say 1

yes, I think 1 minute is a much saner default

we should probably wait for this gql-dart/gql#475 to be merged then update the

sounds good to me

totzk9 and others added 3 commits February 3, 2025 23:09
the abstract class FileMetadataBase is found in `hasura_storage_client.dart` file
@dbarrosop
Copy link
Member

@totzk9 thanks for the work. I approved running the CI and looks like there is some issues with dependencies (sorry that it took so long, I missed the github notifications, feel free to @dbarrosop when ready)

@totzk9
Copy link
Contributor Author

totzk9 commented Mar 4, 2025

@totzk9 thanks for the work. I approved running the CI and looks like there is some issues with dependencies (sorry that it took so long, I missed the github notifications, feel free to @dbarrosop when ready)

Yes I was aware of these CI failures, I was waiting for #144 (comment) to fix it.

@dbarrosop
Copy link
Member

Ah, right, sorry, forgot about that one. Too many things to keep track of :P

@dbarrosop
Copy link
Member

@totzk9 you probably saw but this was merged: gql-dart/gql#475 (comment)

@totzk9
Copy link
Contributor Author

totzk9 commented May 19, 2025

I haven't and thank you for pinging me. Will update do some tests on the PR

@totzk9
Copy link
Contributor Author

totzk9 commented Jun 19, 2025

I’m currently experiencing a kind of “dependency hell” due to how tightly coupled these packages are to each other. At the moment, running flutter pub get doesn’t work as expected because the required dependencies(nhost_gql_links, etc.) need to be published first. This makes it challenging to test or integrate the packages locally while waiting for all dependencies to be updated and published.

Is there a recommended approach for handling local development or testing in this scenario, especially when PRs span across multiple packages that haven’t been published yet?

@dbarrosop
Copy link
Member

dbarrosop commented Jun 23, 2025

Mmm, I am not sure but I think the issue isn't related to the packages in this repo. I was checking and I think the issue is the following:

  1. the new graphql version requires web_socket_channel ^3.0.1
  2. the current gql_websocket_link requires web_socket_channel ^2.0.0

I saw this PR but I am unsure how far from merging is...

@totzk9
Copy link
Contributor Author

totzk9 commented Jul 3, 2025

I tried updating the gql_websocket_link to ^2.0.1 because it uses the web_socket_channel ^3.0.3

ref: https://github.com/gql-dart/gql/blob/7283180138e10d7ac2f9c0df96f0adb4951e1467/links/gql_websocket_link/pubspec.yaml#L14C4-L14C29

but I'm still getting some errors when doing flutter pub get

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants