-
Couldn't load subscription status.
- Fork 1
chore(deps): update dependency relay-runtime to v20 #58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/major-relay-monorepo
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
12af33c to
e6b4d61
Compare
7b9cd45 to
52a40e8
Compare
52a40e8 to
cf85666
Compare
51d28d0 to
b1b71cb
Compare
d1e538b to
127823f
Compare
127823f to
2b38c16
Compare
2b38c16 to
ec4a983
Compare
ec4a983 to
4800b11
Compare
4800b11 to
73d4d33
Compare
73d4d33 to
2ab6849
Compare
2ab6849 to
de57053
Compare
de57053 to
9f5c927
Compare
9f5c927 to
4a35611
Compare
4a35611 to
7c28968
Compare
7c28968 to
ef1d3ef
Compare
ef1d3ef to
f3cc104
Compare
f3cc104 to
ffd2aaf
Compare
ffd2aaf to
cfd9fe7
Compare
cfd9fe7 to
fdebbae
Compare
fdebbae to
c1c6e93
Compare
c1c6e93 to
ef5c22e
Compare
ef5c22e to
3b2d1b2
Compare
3b2d1b2 to
50a17cc
Compare
50a17cc to
6814dcf
Compare
6814dcf to
24a69fd
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^10.1.3->^20.1.1Release Notes
facebook/relay (relay-runtime)
v20.1.1Compare Source
Version 20.1.1 Release Notes
This patch release reverts the change that disabled persisted queries in validate mode (added in #5013) as it was breaking the
--validatecommand. The release also contains a bug fix for GraphQL payloads without a prototype and a of couple docs improvements.Bug fixes
Documentation Improvements
v20.1.0Compare Source
Breaking Changes
68b3f9b))Bug fixes
4622d48))3c494fc))ff27db4))Improvements
292ae5a))e2aaaa8))19c2529))193d6c3))@aliasdocs. by Jordan Eldredge ([commit](f933d6c))variablesarg infetchQueryNoInferto improve errors by Sam Zhou ([commit](6314d78))c3b07ef))variablesprop inuseLazyLoadQueryNoInferto improve errors by Sam Zhou ([commit](11932da))94f107a))variablesprop in commitMutation paramNoInferto improve errors by Sam Zhou ([commit](3330731))a6ab8e5))94eaa54))40e7b46))@relay_test_operationoperations (#4999) by Jakob Hansen ([commit](3320532))Documentation Improvements
8839d34))4660b13))Miscellaneous
68afcf3))Experimental Changes
8caf938))ad4b15c))2a07922))v20.0.0Compare Source
Version 20.0.0 Release Notes
Announcement: ESLint Plugin v2.0.0 Released
Relay's ESLint plugin, eslint-plugin-relay, was recently updated to v2.0.0. This release includes a number of compatibility updates and removes a couple of deprecated rules. For more info, see the eslint-plugin-relay changelog.
Generated Documentation
This release includes a brand new page covering the Relay compiler config. This has largely been undocumented so far and now includes autogenerated documentation! We also added tooling to autogenerate API docs from source code. The documentation for
useRelayEnvironmentanduseLazyLoadQueryare examples of the new autogenerated tooling.Breaking Changes
@outputTypedirective, these must be migrated to be strong or weak objects. You can continue to use the@outputTypedirective by enabling theallow_output_type_resolversfeature flag in the compiler config. (#5004) by Jordan Eldredge (commit)Bug fixes
Improvements
Documentation Improvements
useRelayEnvironmentby Tianyu Yao (commit)Experimental Changes
v19.0.0Compare Source
Version 19.0.0 Release Notes
Relay 19.0.0 includes many documementation improvements, bug fixes, and improved capabilities.
@aliasrequired on conditional fragmentsTo improve type safety, the
@aliasdirective is now required on all fragments that are only conditionally fetched either due to@skip/@includeor fragment type conditions which only conditionally match. You can opt out of this validation on a per-fragment basis with the@dangerously_unaliased_fixmedirective.To enable incremental migration we include a codemod which will automatically add the
@dangerously_unaliased_fixmein all required places:You can also opt out of this validation entirely via compiler config feature flag:
{ // ... "featureFlags": { "enforce_fragment_alias_where_ambiguous": { "kind": "disabled" } } }Improved Docs
We've merged ~30 commits to clean up and improve our docs since the last release:
React 19 Compatible
React 19 is now a valid peer dependency of Relay (#4944) by Krzysztof Karol (commit)
Breaking Changes
"eagerEsModules": falsein yourrelay.config.jsonto opt back into the old behavior. (commit)Improvements
schemaExtensionsto Support Both Files and Directories (#4859) by Sverre Johansen (commit)observeFragment()(#4862) by Iha Shin (commit)Bug fixes
readFragmentexport in relay-runtime (#4931) by Jay Jaeho Lee (commit)observeFragmenttriggering unhandled rejections on network error (#4885) by Iha Shin (commit)Documentation Improvements
Updating Datasection of relay docs by Lynn Yu (commit)@modulewill only work if each fragment is on a different concrete type by Lynn Yu (commit)Experimental Changes
v18.2.0: Version 18.2.0 Release NotesCompare Source
Relay version 18.2.0 comes with several bug fixes and improvements!
New compiler capability: Relay Codemods
Codemods are tools which enable you to programmatically update your code. These are especially helpful if you want to upgrade an API across your whole codebase without needing to manually change each call site. The Relay compiler, with its understanding of your GraphQL snippets, is well positioned to help with these kinds of tasks. In Relay 18.2.0 we are introducing Relay Codemods.
We currently support two different codemods:
mark-dangerous-conditional-fragment-spreadsmarks places where@aliasis required to make a fragment spread safe. This can enable you to turn on theenforce_fragment_alias_where_ambiguousfeature flag. Learn more in the@aliasdocs.remove-unnecessary-required-directivesidentifies places where@requiredis unnecessary because it's used on a non-nullable field within a fragment or query that is@throwOnFieldError, and removes the@requireddirective.We are looking forward to helping Relay users with more codemods in the future!
New experimental hook for pagination with prefetching
It is often possible to speed up list pagination by pre-loading one or more pages of results ahead of what the user is currently viewing. Our previous APIs made this difficult to fetch the next page of data without also rendering it at the same time. We are currently exploring an experimental API to make it easy to manage paginated lists with prefetching.
Read more in the docs: usePrefetchableForwardPaginationFragment
Expand places where @catch can be used
The
@catchdirective can now be used on fragments, queries, mutations and aliased inline fragments. This enables more flexibility in controlling how field errors are handled.Bug fixes
682ac5a]: Include Relay resolver import type when field is selected on query as well (#4820) by Ernie Turnerd6cb5a2]: Update required-on-non-null validation to also work within @catch by Gordy French356327c]: Fix bug in Connections with errors by Evan Yeung9571d80]: Fix result type generic for Error to not double-nest by Itamar Kestenbaumaf35418]: Ignore @dangerously_unaliased_fixme when comparing structs by Jordan Eldredgef166d6b]: Fix dangling resolver artifact by Tianyu YaoImprovements
81eab03]: Remove unused fieldPath from resolver suspense objects by Jordan Eldredged982b5b]: Add feature flag to opt in/out of including the path field in @required reader nodes by Jordan Eldredge460508a]: Remove path from @catch codegen by Jordan Eldredgea88c013]: Derive @required fieldPath at runtime by Jordan Eldredge7c9aebb]: Add support for @catch on fragments/queries/mutations and aliased inline fragments (#4838) by Jordan Eldredge08fef89]: Cleanup resolver cache implementation only used in tests by Jordan Eldredge2c3b915]: Cleanup AVOID_CYCLES_IN_RESOLVER_NOTIFICATION by Jordan Eldredge2705e3d]: Add support for handling field errors on noncompliant lists by Ryan Holdren402aa97]: Update message in handlePotentialSnapshotErrors for payload errors by Itamar Kestenbaum8421851]: Improve error message when directive is used in wrong location by Jordan Eldredge3eb627d]: Add fieldPath to missing data field error logs (#4835) by Jordan Eldredgebac814f]: Use prefetchable metadata in the prefetchable pagination hook by Tianyu Yaod079b29]: Allow @required on connection fields by Jordan Eldredge733cc27]: Add schema name to project config by Monica Tangebf028b]: Use directive location where it makes sense by Gordy Frenchd3eb42f]: Don't require @alias on plural fragments spread into plural selections by Jordan Eldredgee21e162]: Allow codemod to specify rollout percentage by Gordy Frenche4facf3]: Allow granular FeatureFlag gating of@aliasenforcement by Jordan Eldredgedeb7b09]: Allow users to return ID built in scalar using DataID by Jordan Eldredge3c92504]: Fix slow typegen in adslab by Tianyu Yao6e4c120]: Update error message for clarity by Jordan Eldredge5c548bd]: Allow @dangerously_unaliased on @inline fragments by Jordan Eldredge2cf6c7f]: Codemod command runs and collects code actions by Gordy Frenchad26284]: Make required-on-non-null-within-throwOnFieldError an LSP warning by Gordy Frenchb41ae4c]: Support semantic non-nullable RelayResolverValue by Jordan Eldredgeeba1d97]: Allow strong resolvers to reference opaque types by Jordan EldredgeDocumentation Improvements
9401e69]: - add new client 3D page in 3D docs by Lynn Yu6a51b39]: - 3D docs starting point by Lynn Yucaa040a]: - document all top level functions in relay compiler by Lynn Yu1306086]: - document all top level structs in relay compiler by Lynn Yu86301c7]: - document all modules in relay compiler by Lynn Yubdbe7e0]: Add rust docs for all top level enums in relay compiler by Lynn Yu5600502]: - document semantic nullability support in resolvers by Lynn Yuc3b0dd5]: Docs: Fix fragments tutorial thumbnail typo (#4841) by Daniel Stocks5b7dc1f]: Add docs for usePrefetchableForwardPaginationFragment by Tianyu Yao5cccb7b]: - adding docs for abstract types in relay resolvers by Lynn Yuebc4936]: Minor updates to docs on enabling relay resolvers (#4824) by Arthur4776175]: Update docusaurus to 2.4.3 by Gordy French0b4920d]: - delete old relay doc versions older than 2 years by Lynn Yub8967d2]: Add documentation for codemods (#4826) by gordyf7c2b460]: Update description of dangerously_unaliased_fixme directive by Jordan EldredgeMiscellaneous
9eb9c94]: Update to latest react@experimental (#4847) by Lauren Tan7e258ca]: Add @relayRequiredVariables to metadata section of generated .graphql files by Jean Zhang4360f69]: Deprecate GK relay_enable_load_query_request_deduping by Nithik Balachandran15a19e9]: Update metadata generation for Live Query in Relay compiler by Xiangxin SunExperimental Changes
30af003]: Add a runtime feature flag for prefixing read-time resolver storageKeys by Evan Yeung195d9a2]: Fix usePrefetchablePagination bug by Tianyu Yao57756e6]: Allow reusing fetching options in usePrefetchableForwardPaginationFragment by Tianyu Yao023b875]: Support dynamic switching of read vs exec time resolvers in reader by Evan Yeung53cef9d]: Update hook to expose data in UNSTABLE_extraVariables by Lynn Yud036d49]: Update normalization artifacts for exec time resolver strong ids by Evan Yeung9035b32]: Generate prefetchable pagination ASTs by Tianyu Yaodececd1]: Generate metadata for prefetchable pagination by Tianyu Yao4a67ddd]: Create a separate edge fragment for prefetchable pagination by Tianyu Yaov18.1.0: Version 18.1.0 Release NotesCompare Source
Following up from our v18.0.0 release last month, v18.1.0 provides a number of fixes and improvements, adds some new experimental APIs, and ships some long-running experimental features as stable.
Relay Resolvers are now stable
For the past several years we've been iterating on Relay Resolvers which provided a structured and typesafe way to model client state and derived data in your GraphQL graph. As of this release, Relay Resolvers are enabled by default and no-longer experimental. As part of this stabilization we shipped fixes for Relay Resolvers when used with TypeScript and fixed a few edge cases related to how errors encountered by resolvers are handled.
Improvements to error @catch
We released
@catchin v18.0.0 and are very excited about the capabilities it enables. Check out Itamar Kestenbaum's GraphQL conf talk about it here: Build Confidently: How @Catch and Error Handling Pave Way in Field Nullability.Since that release we've made a few improvements:
@catchdirective that are marked as@semanticNonNullin the schema now generate non-nullable TypeScript/Flow types. See semantic nullability.@catchno-longer include the error message. This is because GraphQL error messages are generally not safe to show to users. These error messages can still be accessed by the field logger provided to your Relay Environment. In the future we plan to let users opt into allowing safe error messages through to product code.Compiler Error Reporting
We've improved how errors are reported by the Relay compiler to ensure we report as many errors as possible, and each error includes sufficient context.
New "Copy Operation" VSCode command
Our VSCode extension now includes a command to quickly copy the full text of a query directly from within your editor.
Experimental APIs for reading fragment data outside of React
In some cases it can be useful to read a fragment outside of a React hook. However, doing this requires handling a number of concerns.
@deferor Relay Resolver suspense).@throwOnFieldError,@required(action: THROW))To enable users to read fragment data while correctly handling these cases, we've added two experimental APIs:
observeFragment: Read a fragment as a stream of states where each state might be loading, error, or value.waitForFragmentData: Read a fragment as a promise which will resolve when data is available, or reject if an error is encountered.Docs
Thanks to members of our community for submitting pull requests to improve our docs:
Improvements
Experimental
We are always continuing to evolve and improve Relay. These changes are part of features or implementations which are either in progress or are being experimented with internally.
Configuration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.