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 was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Shorter release notes can be found here: #3114
Releases
@urql/[email protected]
Major Changes
graphql
package and replace it with@0no-co/graphql.web
, which reduces the default bundlesize impact ofurql
packages to a minimum. All types should remain compatible, even if you usegraphql
elsewhere in your app, and if other dependencies are usinggraphql
you may alias it tographql-web-lite
Submitted by @kitten (See #3097)
OperationResult.hasNext
andOperationResult.stale
to be required fields. If you have a custom exchange creating results, you'll have to add these fields or use themakeResult
,mergeResultPatch
, ormakeErrorResult
helpersSubmitted by @kitten (See #3061)
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @JoviDeCroock (See #3046)
stringifyDocument
inofflineExchange
rather thanprint
and serializeoperation.extensions
as neededSubmitted by @kitten (See #3094)
hasNext
andstale
passthroughs on caching exchangesSubmitted by @kitten (See #3059)
Submitted by @kitten (See #3072)
@urql/[email protected]
Major Changes
persistedFetchExchange
and instead implementpersistedExchange
. This exchange must be placed in front of a terminating exchange (such as the defaultfetchExchange
or asubscriptionExchange
that supports persisted queries), and only modifies incoming operations to containextensions.persistedQuery
, which is sent on via the API. If the API expects Automatic Persisted Queries, requests are retried by this exchange internallySubmitted by @kitten (See #3057)
@urql/exchange-persisted-fetch
to@urql/exchange-persisted
Submitted by @kitten (See #3057)
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
Submitted by @kitten (See #3052)
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Major Changes
Remove
defaultExchanges
from@urql/core
and makeexchanges
a required property onClient
construction.In doing so we make the
urql
package more tree-shakeable as the three default exchanges are in no code pathsmeaning they can be removed if not used.
A migration would look as follows if you are currently creating a client without exchanges
Submitted by @JoviDeCroock (See #3033)
Update
subscriptionExchange
to receiveFetchBody
instead. In the usual usage ofsubscriptionExchange
(for instance withgraphql-ws
) you can expect no breaking changes. However, thekey
andextensions
field has been removed and instead theforwardSubscription
function receives the fullOperation
as a second argumentSubmitted by @kitten (See #3054)
Remove dependence on
graphql
package and replace it with@0no-co/graphql.web
, which reduces the default bundlesize impact ofurql
packages to a minimum. All types should remain compatible, even if you usegraphql
elsewhere in your app, and if other dependencies are usinggraphql
you may alias it tographql-web-lite
Submitted by @kitten (See #3097)
Update
OperationResult.hasNext
andOperationResult.stale
to be required fields. If you have a custom exchange creating results, you'll have to add these fields or use themakeResult
,mergeResultPatch
, ormakeErrorResult
helpersSubmitted by @kitten (See #3061)
Remove
getOperationName
export from@urql/core
Submitted by @kitten (See #3062)
Minor Changes
OperationResultSource
from allClient
methods (which replacesPromisifiedSource
on shortcut methods). This allows not onlytoPromise()
to be called, but it can also be used as an awaitablePromiseLike
and has a.subscribe(onResult)
method aliasing the subscribe utility fromwonka
Submitted by @kitten (See #3060)
subscriptionExchange
to support incremental results out of the box. If a subscription proactively completes, results are also now updated withhasNext: false
Submitted by @kitten (See #3055)
text/event-stream
response support. This generally adheres to the GraphQL SSE protocol and GraphQL Yoga push responses, and is an alternative tomultipart/mixed
Submitted by @kitten (See #3050)
@urql/core
. This adds the File/Blob upload support to@urql/core
, which effectively deprecates@urql/exchange-multipart-fetch
Submitted by @kitten (See #3051)
GraphQLRequest.extensions
as spec-extensions input to GraphQL requestsSubmitted by @kitten (See #3054)
fetchExchange
whenfetchSubscriptions
is turned onSubmitted by @kitten (See #3106)
dedupExchange
. The functionality of deduplicating queries and subscriptions has now been moved into and absorbed by theClient
.Previously, the
Client
already started doing some work to share results betweenqueries, and to avoid dispatching operations as needed. It now only dispatches operations
strictly when the
dedupExchange
would allow so as well, moving its logic into theClient
Submitted by @kitten (See #3058)
Patch Changes
dedupExchange
did; by filtering out duplicate operations until either the original operation has been cancelled (teardown) or a first result (withouthasNext: true
) has come inSubmitted by @kitten (See #3101)
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
makeOperation
to be called with a partialOperationContext
when it’s called to copy an operation. When it receives anOperation
as a second argument now, the third argument, the context, will be spread into the prioroperation.context
Submitted by @kitten (See #3081)
multipart/mixed
to end ofAccept
header to avoid cauing Yoga to unnecessarily use itSubmitted by @JoviDeCroock (See #3039)
wonka@^6.3.0
Submitted by @kitten (See #3104)
Exchange
contract andcomposeExchanges
utility to remove the need to manually callshare
on either incomingSource<Operation>
orforward()
’sSource<OperationResult>
. This is now taken care of internally incomposeExchanges
and should make it easier for you to create custom exchanges and for us to explain themSubmitted by @kitten (See #3082)
graphql
’s built-inTypedQueryDocumentNode
typings for type inferenceSubmitted by @kitten (See #3085)
SerializedResult
,SSRExchangeParams
,SSRExchange
, andSSRData
) to@urql/core
's type exportsSubmitted by @kitten (See #3079)
GraphQLError
shape to rehydrate without passing through aGraphQLError
constructor inCombinedError
Submitted by @kitten (See #3087)
hasNext
andstale
passthroughs on caching exchangesSubmitted by @kitten (See #3059)
errors
from subsequent non-incremental resultsSubmitted by @kitten (See #3055)
request.extensions.persistedQuery
to@urql/core
to omit sendingquery
as neededSubmitted by @kitten (See #3057)
Submitted by @kitten (See #3062)
fromAsyncIterable
.This also further hardens our support for the "Incremental Delivery" specification and
refactors its implementation and covers more edge cases
Submitted by @kitten (See #3043)
CombinedError
s, while downstream errors are re-thrownSubmitted by @kitten (See #3063)
Client
result source construction code and allow multiple mutationresults, if
result.hasNext
on a mutation result is set totrue
, indicatingdeferred or streamed results
Submitted by @kitten (See #3102)
import { visit } from 'graphql';
with smaller but functionally equivalent alternativeSubmitted by @kitten (See #3097)
@urql/[email protected]
Major Changes
Client
fromContext
. Previously,urql
kept a legacy default client in its context, with default exchanges and calling an API at/graphql
. This has now been removed and you will have to create your ownClient
if you were relying on this behaviourSubmitted by @JoviDeCroock (See #3033)
Minor Changes
hasNext: true
is set, which indicates deferred or streamed resultsSubmitted by @kitten (See #3103)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
urql
bindings packagesSubmitted by @kitten (See #3079)
[email protected]
Major Changes
Client
fromContext
. Previously,urql
kept a legacy default client in its context, with default exchanges and calling an API at/graphql
. This has now been removed and you will have to create your ownClient
if you were relying on this behaviourSubmitted by @JoviDeCroock (See #3033)
Minor Changes
hasNext: true
is set, which indicates deferred or streamed resultsSubmitted by @kitten (See #3103)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3095)
urql
bindings packagesSubmitted by @kitten (See #3079)
@urql/[email protected]
Major Changes
OperationResult.hasNext
andOperationResult.stale
to be required fields. If you have a custom exchange creating results, you'll have to add these fields or use themakeResult
,mergeResultPatch
, ormakeErrorResult
helpersSubmitted by @kitten (See #3061)
handler
, which combines subscription events, frommutationStore
tosubscriptionStore
. It’s accidentally been defined and implemented on the wrong store and was meant to be onsubscriptionStore
Submitted by @kitten (See #3078)
Minor Changes
hasNext: true
is set, which indicates deferred or streamed resultsSubmitted by @kitten (See #3103)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
urql
bindings packagesSubmitted by @kitten (See #3079)
@urql/[email protected]
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
didAuthError
keeps returning trueSubmitted by @JoviDeCroock (See #3112)
@urql/[email protected]
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
getOperationName
export from@urql/core
Submitted by @kitten (See #3062)
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
@urql/exchange-multipart-fetch
as behaviour has been absorbed into@urql/core
. If you're using themultipartFetchExchange
, you should now be able to simply remove itSubmitted by @kitten (See #3051)
@urql/[email protected]
Minor Changes
share
calls, since@urql/core
’scomposeExchanges
utility now automatically does so for usSubmitted by @kitten (See #3082)
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Minor Changes
hasNext: true
is set, which indicates deferred or streamed resultsSubmitted by @kitten (See #3103)
Patch Changes
sourcesContent
, including additional source files, and had incorrect paths in some of themSubmitted by @kitten (See #3053)
wonka@^6.3.0
Submitted by @kitten (See #3104)
urql
bindings packagesSubmitted by @kitten (See #3079)
@urql/[email protected]
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Patch Changes
wonka@^6.3.0
Submitted by @kitten (See #3104)
Submitted by @kitten (See #3072)
@urql/[email protected]
Patch Changes
@urql/*
packagesSubmitted by @kitten (See #3079)
[email protected]
Patch Changes
@urql/*
packagesSubmitted by @kitten (See #3079)
@urql/[email protected]
Patch Changes
@urql/*
packagesSubmitted by @kitten (See #3079)