Closed renovate[bot] closed 1 month ago
Latest commit: dea8b189630bf65b1fb7323ffb3092771ba7b5b1
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
Click here to learn what changesets are, and how to add one.
Click here if you're a maintainer who wants to add a changeset to this PR
This PR contains the following updates:
14.1.24
->17.0.0
16.2.0
->17.0.0
16.2.0
->17.0.0
16.2.0
->17.0.0
16.2.0
->17.0.0
Release Notes
facebook/relay (babel-plugin-relay)
### [`v17.0.0`](https://togithub.com/facebook/relay/releases/tag/v17.0.0): Version 17.0.0 Release Notes [Compare Source](https://togithub.com/facebook/relay/compare/v16.2.0...v17.0.0) Since our [last release](https://togithub.com/facebook/relay/releases/tag/v16.2.0) in January of this year, we've made many improvements to Relay. Themes include: - Improved correctness checking and validation - Additional editor features - Experimental features exploring error handling and nullability ##### Breaking Changes ##### Schema Validation Relay compiler now runs spec-compliant schema validation against your schema including client schema extensions and Relay Resolvers. You can opt out of this feature by disabling validation in your Relay compiler config. ```json5 // relay.config.json { //... "featureFlags": { "disable_schema_validation": true } } ``` \[[`ccc4465`](https://togithub.com/facebook/relay/commit/ccc4465e6a47)] by Jordan Eldredge ##### Edge Type Validation We now validate that the names passed to directives like [`@prependNode` and `@appendNode`](https://relay.dev/docs/guided-tour/list-data/updating-connections/#appendnode--prependnode) are valid typenames. You can opt out of this validation with the following feature flag in your compiler config: ```json5 // relay.config.json { //... "featureFlags": { "disable_edge_type_name_validation_on_declerative_connection_directives": { "kind": "enabled" } } } ``` \[[`53b2436`](https://togithub.com/facebook/relay/commit/53b24361bb4d)] by tobias-tengler ##### Bug fixes - \[[`f87e77d`](https://togithub.com/facebook/relay/commit/f87e77daecc4)]: Fix MockPayloadGenerator for deferred fragments in lists by Fernando Gorodscy - \[[`24b557a`](https://togithub.com/facebook/relay/commit/24b557adeb88)]: Use default values from mock resolver for Relay 3D payload by Andrey Lunyov - \[[`59ff9c1`](https://togithub.com/facebook/relay/commit/59ff9c18a84b)]: Mark resolves as clean again if we reread their fragment and find data unchanged by Jordan Eldredge - \[[`0d7a3d0`](https://togithub.com/facebook/relay/commit/0d7a3d04d7a9)]: Input fields with defaults shouldn't be required ([#4647](https://togithub.com/facebook/relay/issues/4647)) by Graeme Coupar - \[[`7cc4f2b`](https://togithub.com/facebook/relay/commit/7cc4f2b3d36d)]: Check if condition on defer/stream fragments by Fernando Gorodscy - \[[`05d64cc`](https://togithub.com/facebook/relay/commit/05d64ccfd279)]: Update GraphQL parser to consume escaped characters by Monica Tang - \[[`448aa67`](https://togithub.com/facebook/relay/commit/448aa67d2a11)]: Fix Flow Types in RelayObservable by Jerry Francois ##### Improvements ##### Runtime Improvements This release includes a new implementation of our hooks which are significantly more efficient in terms of memory use. Thanks to [Dave McCabe](https://togithub.com/davidmccabe) for his work on this huge project. - \[[`9f03ea5`](https://togithub.com/facebook/relay/commit/9f03ea52fd86)]: Make new useFragment implementation the default by Andrey Lunyov ##### Editor Integration Improvements **Huge shout out to community contributor [Tobias Tengler](https://togithub.com/tobias-tengler)** for many improvements to our [Editor Support](https://relay.dev/docs/editor-support/) via our [VSCode extension](https://marketplace.visualstudio.com/items?itemName=meta.relay). Our VSCode extension is powered by the `relay-compiler` so upgrading to version `17.0.0` of the compiler should unlock a number of great IDE features. - \[[`dc2cb85`](https://togithub.com/facebook/relay/commit/dc2cb85aa820)]: Add code action to rename fragment ([#4697](https://togithub.com/facebook/relay/issues/4697)) by tobias-tengler - \[[`68c7cca`](https://togithub.com/facebook/relay/commit/68c7ccafb3ef)]: Add SchemaDocument go to definition LSP support ([#4669](https://togithub.com/facebook/relay/issues/4669)) by tobias-tengler - \[[`8fd21e7`](https://togithub.com/facebook/relay/commit/8fd21e75648a)]: Attach previous location to duplicate type diagnostic by Jordan Eldredge - \[[`dd9d3a0`](https://togithub.com/facebook/relay/commit/dd9d3a03e969)]: Support inlay hints by Jordan Eldredge (Requires upgrading to v2.3.0 of our [VSCode extension](https://marketplace.visualstudio.com/items?itemName=meta.relay)) - \[[`964e078`](https://togithub.com/facebook/relay/commit/964e078395a8)]: Activate LSP for schema and schema extension files ([#4652](https://togithub.com/facebook/relay/issues/4652)) by tobias-tengler - \[[`bb41169`](https://togithub.com/facebook/relay/commit/bb411693d638)]: Support go to definition for arguments ([#4605](https://togithub.com/facebook/relay/issues/4605)) by tobias-tengler - \[[`bbddbf3`](https://togithub.com/facebook/relay/commit/bbddbf3b97f3)]: Report errors if location provider fails ([#4588](https://togithub.com/facebook/relay/issues/4588)) by Jordan Eldredge - \[[`964e078`](https://togithub.com/facebook/relay/commit/964e078395a8)]: Activate LSP for schema and schema extension files ([#4652](https://togithub.com/facebook/relay/issues/4652)) by tobias-tengler ##### Compiler Performance Improvements - \[[`232985f`](https://togithub.com/facebook/relay/commit/232985faceaa)]: Parallel watchman queries for saved state and changed files by Gordy French - \[[`ef22ae6`](https://togithub.com/facebook/relay/commit/ef22ae64b431)]: Run schema validation in parallel by Jordan Eldredge - \[[`a7984bc`](https://togithub.com/facebook/relay/commit/a7984bcaa7aa)]: Speed up `watchman_query_time_before_subscribe` by Tianyu Yao - \[[`acd17ec`](https://togithub.com/facebook/relay/commit/acd17ec66ac0)]: Use multithreaded zstd compression by Gordy French - \[[`a7984bc`](https://togithub.com/facebook/relay/commit/a7984bcaa7aa)]: Speed up `watchman_query_time_before_subscribe` by Tianyu Yao - \[[`f7b030e`](https://togithub.com/facebook/relay/commit/f7b030ec69f8)]: Split a project into multiple chunks and parallelize by Tianyu Yao - \[[`bafd56b`](https://togithub.com/facebook/relay/commit/bafd56b13719)]: Parallelize GraphQLAsts::from_graphql_sources by Tianyu Yao - \[[`69dbfee`](https://togithub.com/facebook/relay/commit/69dbfee34449)]: Parallelize from_graphql_sources_map by Tianyu Yao - \[[`ce12ecf`](https://togithub.com/facebook/relay/commit/ce12ecfdfae8)]: Parallelize building schemas by Tianyu Yao - \[[`586483e`](https://togithub.com/facebook/relay/commit/586483e8ef03)]: Parallelize from_file_source_changes by Tianyu Yao - \[[`ee8523f`](https://togithub.com/facebook/relay/commit/ee8523f67d66)]: Implement SchemaDocument path resolution ([#4639](https://togithub.com/facebook/relay/issues/4639)) by Tobias Tengler - \[[`5f1eb8a`](https://togithub.com/facebook/relay/commit/5f1eb8a67d65)]: Add path resolution for fragment arguments ([#4651](https://togithub.com/facebook/relay/issues/4651)) by tobias-tengler - \[[`6601a35`](https://togithub.com/facebook/relay/commit/6601a3566fdb)]: Speed up LSP requests outside of GraphQL by Evan Yeung - \[[`a5a7947`](https://togithub.com/facebook/relay/commit/a5a794743d6f)]: Incrementally build Enum schema changes by Evan Yeung - \[[`ce6ea74`](https://togithub.com/facebook/relay/commit/ce6ea74fe225)]: Add go to definition support for type defined in variable definition ([#4629](https://togithub.com/facebook/relay/issues/4629)) by tobias-tengler - \[[`2ba726b`](https://togithub.com/facebook/relay/commit/2ba726b7ec69)]: Add go to definition support for directives ([#4625](https://togithub.com/facebook/relay/issues/4625)) by tobias-tengler ##### Misc. Improvements - \[[`29d9e55`](https://togithub.com/facebook/relay/commit/29d9e55d4183)]: Add `preferFetchable` argument to the [@refetchable](https://togithub.com/refetchable) directive by Andrey Lunyov - \[[`f45b35f`](https://togithub.com/facebook/relay/commit/f45b35fdd579)]: New feature flag that will allow to opt-out [@fetchable](https://togithub.com/fetchable) types from the `node` query generation in [@refetchable](https://togithub.com/refetchable) by Andrey Lunyov - \[[`9958e56`](https://togithub.com/facebook/relay/commit/9958e5616271)]: Print raw response on persisting parsing error by Tianyu Yao - \[[`9cf21af`](https://togithub.com/facebook/relay/commit/9cf21af244b9)]: Integrate with Sapling or Git if they exist ([#4691](https://togithub.com/facebook/relay/issues/4691)) by Jon Janzen - \[[`badd538`](https://togithub.com/facebook/relay/commit/badd5382d241)]: Migrate relay hooks to hook-syntax by Alex Taylor (alta) - \[[`349b5a8`](https://togithub.com/facebook/relay/commit/349b5a89503c)]: Use client schema extension enum values as source of truth for Flow types by Jordan Eldredge - \[[`d3c8d1c`](https://togithub.com/facebook/relay/commit/d3c8d1c23300)]: Add feature flag for fragment arguments ([#4648](https://togithub.com/facebook/relay/issues/4648)) by tobias-tengler - \[[`9e9428e`](https://togithub.com/facebook/relay/commit/9e9428ed8dca)]: Add support for ENABLE_RELAY_OPERATION_TRACKER_SUSPENSE flag in the the new hooks implementation by Andrey Lunyov ##### Documentation Improvements - \[[`acb227a`](https://togithub.com/facebook/relay/commit/acb227af0492)]: **Fix search on relay.dev** ([#4715](https://togithub.com/facebook/relay/issues/4715)) by Paul O’Shannessy - \[[`6b91a2e`](https://togithub.com/facebook/relay/commit/6b91a2edaa8a)]: Improve [compiler explorer](https://relay.dev/compiler-explorer/) ([#4698](https://togithub.com/facebook/relay/issues/4698)) by Jordan Eldredge - \[[`4c5cd41`](https://togithub.com/facebook/relay/commit/4c5cd416e041)]: Add docs for `preferFetchable` argument by Andrey Lunyov - \[[`95010c8`](https://togithub.com/facebook/relay/commit/95010c852a2d)]: Relay: Update Obsolete Docs Reference to `ReactTestUtils` by Tim Yung - \[[`51a82f6`](https://togithub.com/facebook/relay/commit/51a82f698aab)]: Document Relay Resolvers ([#4547](https://togithub.com/facebook/relay/issues/4547)) by Jordan Eldredge - \[[`ff8e80d`](https://togithub.com/facebook/relay/commit/ff8e80d9c9a9)]: Update docs to clarify behavior of refetchable variables with nullable fragment reference by Jordan Eldredge - \[[`76d6d77`](https://togithub.com/facebook/relay/commit/76d6d77532fa)]: Demonstrate using custom scalar to replace RelayResolverValue by Jordan Eldredge - \[[`05cf065`](https://togithub.com/facebook/relay/commit/05cf0658487f)]: Fixing minor typo in website ([#4673](https://togithub.com/facebook/relay/issues/4673)) by Jeshuran Paul - \[[`906f5ed`](https://togithub.com/facebook/relay/commit/906f5ed90b06)]: Relay docs: Fix shell script getting Prism'd as a JS comment by Robin Giese - \[[`0109168`](https://togithub.com/facebook/relay/commit/01091686ab73)]: Relay docs: Tutorial page should have proper title by Robin Giese - \[[`ea2cbbc`](https://togithub.com/facebook/relay/commit/ea2cbbc1d95b)]: Fix typos in the Relay Resolvers docs by Evan Yeung - \[[`dc36b48`](https://togithub.com/facebook/relay/commit/dc36b48b8ec4)]: Fix typos in tutorial by Monica Tang - \[[`14314f9`](https://togithub.com/facebook/relay/commit/14314f9b66d7)]: Escape asterisks in README.md ([#4635](https://togithub.com/facebook/relay/issues/4635)) by Chris Morin - \[[`ee03182`](https://togithub.com/facebook/relay/commit/ee03182fa054)]: Fix(docs): add instructions about installing watchman if necessary in the tutorial ([#4620](https://togithub.com/facebook/relay/issues/4620)) by Mark Feng - \[[`1256e73`](https://togithub.com/facebook/relay/commit/1256e7391dc4)]: Remove CodeSandbox Example by Jordan Eldredge - \[[`b7f59af`](https://togithub.com/facebook/relay/commit/b7f59afc4b74)]: Chore(doc): improve relay compiler doc for persist ([#4608](https://togithub.com/facebook/relay/issues/4608)) by eMerzh - \[[`8e557f9`](https://togithub.com/facebook/relay/commit/8e557f97105e)]: Fix typos ([#4597](https://togithub.com/facebook/relay/issues/4597)) by Kenneth Lum - \[[`615c2d2`](https://togithub.com/facebook/relay/commit/615c2d234ddd)]: Fix(doc): update config name following update ([#4596](https://togithub.com/facebook/relay/issues/4596)) by eMerzh ##### Experimental Changes We are also continuing to evolve many experimental features which are not yet stable enough to be enabled by default in Relay. ##### Relay Resolvers [Relay Resolvers](https://relay.dev/docs/next/guides/relay-resolvers/introduction/) have been extended to support defining types which implement interfaces, and define resolvers that return client-defined interfaces where all implementing types are defined using Relay Resolvers. Relay Resolvers are now stable enough to have [full documentation](https://relay.dev/docs/next/guides/relay-resolvers/introduction/) with instructions on how to enable them. - \[[`ba5e48f`](https://togithub.com/facebook/relay/commit/ba5e48ff6a70)]: Add model resolvers for interfaces by Monica Tang - \[[`55b8716`](https://togithub.com/facebook/relay/commit/55b8716e0282)]: Return an interface with multiple weak concrete types from a resolver field by Monica Tang - \[[`46879b4`](https://togithub.com/facebook/relay/commit/46879b4f97e4)]: Multiple weak models implement an interface by Monica Tang - \[[`98823ea`](https://togithub.com/facebook/relay/commit/98823ea3d853)]: Add model resolvers for unions by Monica Tang - \[[`245602f`](https://togithub.com/facebook/relay/commit/245602fb54eb)]: Remove allow_legacy_verbose_syntax ParseOption by Lynn Yu - \[[`cdab89f`](https://togithub.com/facebook/relay/commit/cdab89f4e04d)]: Remove ENABLE_CLIENT_EDGES runtime feature flag by Jordan Eldredge - \[[`b26f3be`](https://togithub.com/facebook/relay/commit/b26f3beff1a8)]: Remove [@outputType](https://togithub.com/outputType) feature flag by Monica Tang - \[[`7ce13bc`](https://togithub.com/facebook/relay/commit/7ce13bce108c)]: Remove LiveResolverStore from experimental export namespace by Jordan Eldredge - \[[`f193cda`](https://togithub.com/facebook/relay/commit/f193cda39782)]: Invert the default for emit_normalization_node_for_client_edges by Jordan Eldredge - \[[`0cac319`](https://togithub.com/facebook/relay/commit/0cac319f8546)]: Define resolver on interface with weak types by Monica Tang - \[[`6bda98c`](https://togithub.com/facebook/relay/commit/6bda98c76956)]: Make interface model resolver fields compatible with client schema extension-defined concrete types by Monica Tang Additionally, we are exploring the ability to extract Resolver type and field definitions directly from your typed JavaScript code, similar to how [Grats](https://jordaneldredge.com/blog/grats/) works. This work is still highly experimental, only supported for Flow, and not yet fully functional. *If you are interested in working with us to help bring this support to TypeScript, please get in touch.* - \[[`722b18f`](https://togithub.com/facebook/relay/commit/722b18f5bfa3)]: Better error message for using an optional flow type for strong objects by Tianyu Yao - \[[`4267075`](https://togithub.com/facebook/relay/commit/4267075e7c97)]: Implement schema generation for weak object fields by Evan Yeung - \[[`5d2fa70`](https://togithub.com/facebook/relay/commit/5d2fa70dc611)]: Prevent docblock parsing error for new resolver syntax in LSP by Tianyu Yao - \[[`36802d9`](https://togithub.com/facebook/relay/commit/36802d906946)]: Properly support nullable strong return type by Tianyu Yao - \[[`8e5c565`](https://togithub.com/facebook/relay/commit/8e5c5657b887)]: Add "description" to Flow schema generation by Evan Yeung - \[[`7e41583`](https://togithub.com/facebook/relay/commit/7e4158376a33)]: Fix passing empty documents to schema gen by Tianyu Yao - \[[`8cce449`](https://togithub.com/facebook/relay/commit/8cce449a11c8)]: A RelayResolverValue generic by Tianyu Yao - \[[`0d1b5c2`](https://togithub.com/facebook/relay/commit/0d1b5c2515e6)]: Add argument support for Flow schema generation by Evan Yeung - \[[`95aaa48`](https://togithub.com/facebook/relay/commit/95aaa48412e2)]: `IdOf<>` return type by Tianyu Yao - \[[`5052062`](https://togithub.com/facebook/relay/commit/505206292a32)]: Support boolean by Tianyu Yao - \[[`77a87be`](https://togithub.com/facebook/relay/commit/77a87be08419)]: Add root fragment support to relay resolvers by Evan Yeung - \[[`35f9763`](https://togithub.com/facebook/relay/commit/35f9763c565f)]: Pass fragment information to Flow schema generation code by Evan Yeung - \[[`a8a41e2`](https://togithub.com/facebook/relay/commit/a8a41e2634c7)]: Treat existing resolve syntax fields as fields by Tianyu Yao - \[[`16e28af`](https://togithub.com/facebook/relay/commit/16e28af78b47)]: Add [@live](https://togithub.com/live) to Flow schema generation by Evan Yeung - \[[`49563f1`](https://togithub.com/facebook/relay/commit/49563f144ff6)]: Fix incorrect error message for Relay Resolver missing function param by Evan Yeung - \[[`24510ae`](https://togithub.com/facebook/relay/commit/24510aeb2b29)]: Improve error messages for Relay Resolver schema generation imports by Evan Yeung - \[[`433c93e`](https://togithub.com/facebook/relay/commit/433c93e4d08e)]: Improve error messages for resolver schema generation by Evan Yeung - \[[`d1749df`](https://togithub.com/facebook/relay/commit/d1749dfef059)]: Add weak type definitions to Flow resolvers by Evan Yeung - \[[`8fa3d43`](https://togithub.com/facebook/relay/commit/8fa3d4355468)]: Crate for extracting type information from JS definitions by Tianyu Yao ##### [@alias](https://togithub.com/alias) We've added an [experimental new directive](https://relay.dev/docs/next/guides/alias-directive/) to allow fragments to appear as fields. This can enable you, or optionally *require* you, to check if a fragment was fetched before using it. - \[[`efab5ab`](https://togithub.com/facebook/relay/commit/efab5ab09deb)]: Complete [@alias](https://togithub.com/alias) ([#4699](https://togithub.com/facebook/relay/issues/4699)) by Jordan Eldredge - \[[`868183c`](https://togithub.com/facebook/relay/commit/868183c58f7b)]: Refine [@alias](https://togithub.com/alias) enforcement by Jordan Eldredge - \[[`6aaa9ce`](https://togithub.com/facebook/relay/commit/6aaa9ce0058f)]: Add directive to opt out of [@alias](https://togithub.com/alias) enforcement by Jordan Eldredge ##### Error Handling and Semantic Nullability As part of our involvement with the GraphQL [Nullability Working Group](https://togithub.com/graphql/nullability-wg) we are exploring features to enable [explicit error handling](https://togithub.com/facebook/relay/issues/4416) and [semantic nullability](https://togithub.com/graphql/graphql-wg/discussions/1394). Neither of these features are officially available yet, but we're excited about what will become possible here. - \[[`af1f9de`](https://togithub.com/facebook/relay/commit/af1f9deb5487)]: Disallow required on non-null and semanticNonNull fields by Gordy French - \[[`56c099a`](https://togithub.com/facebook/relay/commit/56c099abec6b)]: Fix non-null-required validator's field traversal by Gordy French - \[[`470c814`](https://togithub.com/facebook/relay/commit/470c8147acc1)]: Create CatchField for [@catch](https://togithub.com/catch) on Scalar by Itamar Kestenbaum - \[[`38655ec`](https://togithub.com/facebook/relay/commit/38655ecf3375)]: Create CatchField for [@catch](https://togithub.com/catch) and throw unimplemented by Itamar Kestenbaum - \[[`7bfd200`](https://togithub.com/facebook/relay/commit/7bfd2007c574)]: Emit proper Flow for semanticNonNull RelayResolverValue by Gordy French - \[[`88a6ff9`](https://togithub.com/facebook/relay/commit/88a6ff9418da)]: Fix semanticNonNull levels support in resolver docblock by Gordy French - \[[`c7d46c3`](https://togithub.com/facebook/relay/commit/c7d46c3621fc)]: Create CatchField feature flag by Itamar Kestenbaum - \[[`696a1b3`](https://togithub.com/facebook/relay/commit/696a1b357096)]: Support [@catch](https://togithub.com/catch) directive in RelayReader by Itamar Kestenbaum - \[[`d1cf472`](https://togithub.com/facebook/relay/commit/d1cf4722e33d)]: Emit semanticNonNull in generated schema by Gordy French - \[[`ddfa2b0`](https://togithub.com/facebook/relay/commit/ddfa2b0e131e)]: Parse semanticNonNull from docblock by Gordy French - \[[`145c788`](https://togithub.com/facebook/relay/commit/145c788063e9)]: Add allow_non_null_resolver_fields feature flag by Gordy French - \[[`cebc7f0`](https://togithub.com/facebook/relay/commit/cebc7f0650ee)]: Experimental support for [@semanticNonNull](https://togithub.com/semanticNonNull) ([#4601](https://togithub.com/facebook/relay/issues/4601)) by Jordan EldredgeConfiguration
📅 Schedule: Branch creation - "every weekend" in timezone America/Los_Angeles, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.