PackageTrack

npm · #3808

@urql/core

6.0.3urql-graphql/urql

The shared core for the highly customizable and versatile GraphQL client

Release timeline

283 releases since 2020
2020202120222023202420252026

Releases

  1. 2.6.09 Jul 2022
    Release notes

    Minor Changes

    • Allow providing a custom isSubscriptionOperation implementation, by @n1ru4l (See #2534)
    Open source →
  2. 2.5.024 May 2022
    Release notes

    Minor Changes

    • Add Accept header to GraphQL HTTP requests. This complies to the specification but doesn't go as far as sending Content-Type which would throw a lot of APIs off. Instead, we'll now be sending an accept header for application/graphql+json, application/json to indicate that we comply with the GraphQL over HTTP protocol. This also fixes headers merging to allow overriding Accept and Content-Type regardless of the user options' casing, by @kitten (See #2457)

    Patch Changes

    • Support aborting in withPromise cases, by @JoviDeCroock (See #2446)
    • Passthrough responses with content type of text/* as error messages, by @kitten (See #2456)
    Open source →
  3. 2.4.47 Apr 2022
    Release notes

    Patch Changes

    • cut off url when using the GET method at 2048 characters (lowest url-size coming from chromium), by @JoviDeCroock (See #2384)
    • ⚠️ Fix issue where a synchronous toPromise() return would not result in the stream tearing down, by @JoviDeCroock (See #2386)
    Open source →
  4. 2.4.325 Feb 2022
    Release notes

    Patch Changes

    • Prevent ignored characters in GraphQL queries from being replaced inside strings and block strings. Previously we accepted sanitizing strings via regular expressions causing duplicate hashes as acceptable, since it'd only be caused when a string wasn't extracted into variables. This is fixed now however, by @kitten (See #2295)
    Open source →
  5. 2.4.218 Feb 2022
    Release notes

    Patch Changes

    • Undo logic to catch errors from incremental fetching and forking the response stream, introduce logic to detect results, by @JoviDeCroock (See #2287)
    Open source →
  6. 2.4.131 Jan 2022
    Release notes

    Patch Changes

    • ⚠️ Fix mutation operation being used as compared identity and instead add a stand-in comparison, by @kitten (See #2228)
    Open source →
  7. 2.4.030 Jan 2022

    Nothing published for this version

  8. 2.3.69 Dec 2021

    Nothing published for this version

  9. 2.3.510 Nov 2021

    Nothing published for this version

  10. 2.3.427 Oct 2021

    Nothing published for this version

  11. 2.3.323 Sept 2021

    Nothing published for this version

  12. 2.3.222 Sept 2021

    Nothing published for this version

  13. 2.3.124 Aug 2021
    Release notes

    Patch Changes

    Open source →
  14. 2.3.017 Aug 2021
    Release notes

    Minor Changes

    • Mark @urql/core as a peer dependency as well as a regular dependency Submitted by @kitten (See #3579)
    Open source →
  15. 2.3.0-defer.012 Aug 2021pre-release

    Nothing published for this version

  16. 2.2.012 Aug 2021
    Release notes

    Minor Changes

    • Mark @urql/core as a peer dependency as well as a regular dependency Submitted by @kitten (See #3579)
    Open source →
    Additional notes

    Minor Changes

    • Update exchanges to drop redundant share calls, since @urql/core’s composeExchanges utility now automatically does so for us Submitted by @kitten (See #3082)
    • Remove getOperationName export from @urql/core Submitted by @kitten (See #3062)

    Patch Changes

    Open source →
  17. 2.1.64 Aug 2021
    Release notes

    Patch Changes

    • authExchange() will now block and pass on errors if the initialization function passed to it fails, and will retry indefinitely. It’ll also output a warning for these cases, as the initialization function (i.e. authExchange(async (utils) => { /*...*/ })) is not expected to reject/throw Submitted by @kitten (See #3343)
    Open source →
  18. 2.1.56 Jul 2021
    Release notes

    Patch Changes

    • Handle refreshAuth rejections and pass the resulting error on to OperationResults on the authentication queue Submitted by @kitten (See #3307)
    Open source →
  19. 2.1.423 Jun 2021
    Release notes

    Patch Changes

    • ⚠️ Fix regression that caused teardowns to be ignored by an authExchange’s retry queue Submitted by @kitten (See #3235)
    Open source →
  20. 2.1.33 Jun 2021
    Release notes

    Patch Changes

    • Update build process to generate correct source maps Submitted by @kitten (See #3201)
    Open source →
  21. 2.1.213 May 2021
    Release notes

    Patch Changes

    • Publish with npm provenance Submitted by @kitten (See #3180)
    Open source →
  22. 2.1.19 May 2021
    Release notes

    Patch Changes

    • ⚠️ Fix operations created by utilities.mutate() erroneously being retried and sent again like a regular operation Submitted by @JoviDeCroock (See #3164)
    Open source →
    Additional notes

    Patch Changes

    • Stop useQuery from re-executing (and hitting the network) during SSR hydration when it's awaited for Suspense. Awaiting the query subscribed to the operation a second time, which re-dispatched it after the ssrExchange result had already been consumed, triggering a redundant network request even with staleWhileRevalidate: false. The awaited promise now resolves with the already-settled result instead of re-subscribing Submitted by @JoviDeCroock (See #3884)
    • ⚠️ Fix await useQuery() in Vue to wait on the composable's existing reactive state instead of creating an additional query source subscription Submitted by @JoviDeCroock (See #3890)
    • Updated dependencies (See #3879, #3881, #3885, and #3886)
    Open source →
    Additional notes

    Patch Changes

    Open source →
    Additional notes

    @urql/[email protected]

    Compare

    Choose a tag to compare

    Open source →
  23. 2.1.07 May 2021
    Release notes

    Minor Changes

    • Add minimumTime to refocusExchange to throttle query reexecution Submitted by @ThaUnknown (See #3825)
    Open source →
    Additional notes

    Minor Changes

    • Update exchanges to drop redundant share calls, since @urql/core’s composeExchanges utility now automatically does so for us Submitted by @kitten (See #3082)

    Patch Changes

    Open source →
    Additional notes

    Minor Changes

    • The context option, which may be set to a context value or a function returning a context, can now return a Promise and will be correctly resolved and awaited, by @YutaUra (See #2806)

    Patch Changes

    Open source →
    Additional notes

    Minor Changes

    • Adds enableForMutation option for exchange-persisted-fetch to enable persisted operations for mutations, by @geekuillaume (See #2951)
    Open source →
    Additional notes

    Minor Changes

    • Optional custom injection key support for provideClient, install, useClient, and useClientHandle. Multiple clients can be provided and consumed under different keys; default key remains '$urql' for backward compatibility Submitted by @albertcito (See #3858)
    Open source →
    Additional notes

    @urql/[email protected]

    Compare

    Choose a tag to compare

    Open source →
  24. 2.0.010 Feb 2021
    Release notes

    Major Changes

    • Implement new authExchange API, which removes the need for an authState (i.e. an internal authentication state) and removes getAuth, replacing it with a separate refreshAuth flow. The new API requires you to now pass an initializer function. This function receives a utils object with utils.mutate and utils.appendHeaders utility methods. It must return the configuration object, wrapped in a promise, and this configuration is similar to what we had before, if you're migrating to this. Its refreshAuth method is now only called after authentication errors occur and not on initialization. Instead, it's now recommended that you write your initialization logic in-line.
      authExchange(async utils => {
        let token = localStorage.getItem('token');
        let refreshToken = localStorage.getItem('refreshToken');
        return {
          addAuthToOperation(operation) {
            return utils.appendHeaders(operation, {
              Authorization: `Bearer ${token}`,
            });
          },
          didAuthError(error) {
            return error.graphQLErrors.some(
              e => e.extensions?.code === 'FORBIDDEN'
            );
          },
          async refreshAuth() {
            const result = await utils.mutate(REFRESH, { token });
            if (result.data?.refreshLogin) {
              token = result.data.refreshLogin.token;
              refreshToken = result.data.refreshLogin.refreshToken;
              localStorage.setItem('token', token);
              localStorage.setItem('refreshToken', refreshToken);
            }
          },
        };
      });
      
      Submitted by @kitten (See #3012)

    Patch Changes

    • ⚠️ Fix willAuthError not being called for operations that are waiting on the authentication state to update. This can actually lead to a common issue where operations that came in during the authentication initialization (on startup) will never have willAuthError called on them. This can cause an easy mistake where the initial authentication state is never checked to be valid Submitted by @kitten (See #3017)
    • Updated dependencies (See #3007, #2962, #3007, #3015, and #3022)
    Open source →
    Additional notes

    Major Changes

    • Goodbye IE11! 👋 This major release removes support for IE11. All code that is shipped will be transpiled much less and will not be ES5-compatible anymore, by @kitten (See #2504)
    • Upgrade to Wonka v6 (wonka@^6.0.0), which has no breaking changes but is built to target ES2015 and comes with other minor improvements. The library has fully been migrated to TypeScript which will hopefully help with making contributions easier!, by @kitten (See #2504)
    Open source →
    Additional notes

    Major Changes

    • Goodbye IE11! 👋 This major release removes support for IE11. All code that is shipped will be transpiled much less and will not be ES5-compatible anymore, by @kitten (See #2504)
    • Upgrade to Wonka v6 (wonka@^6.0.0), which has no breaking changes but is built to target ES2015 and comes with other minor improvements. The library has fully been migrated to TypeScript which will hopefully help with making contributions easier!, by @kitten (See #2504)

    Minor Changes

    • Remove the babel-plugin-modular-graphql helper, this because the graphql package hasn't converted to ESM yet which gives issues in node environments, by @JoviDeCroock (See #2551)

    Patch Changes

    Open source →
    Additional notes

    Major Changes

    • Goodbye IE11! 👋 This major release removes support for IE11. All code that is shipped will be transpiled much less and will not be ES5-compatible anymore, by @kitten (See #2504)
    • Upgrade to Wonka v6 (wonka@^6.0.0), which has no breaking changes but is built to target ES2015 and comes with other minor improvements. The library has fully been migrated to TypeScript which will hopefully help with making contributions easier!, by @kitten (See #2504)

    Minor Changes

    • Remove the babel-plugin-modular-graphql helper, this because the graphql package hasn't converted to ESM yet which gives issues in node environments, by @JoviDeCroock (See #2551)

    Patch Changes

    Open source →
    Additional notes

    Major Changes

    • Reimplement Svelte with functional-only API. We've gotten plenty of feedback and issues from the Svelte community about our prior Svelte bindings. These bindings favoured a Store singleton to read and write to, and a separate signal to start an operation. Svelte usually however calls for a lot more flexibility, so we're returning the API to a functional-only API again that serves to only create stores, which is more similar to the original implementation, by @jonathanstanley (See #2370)

    Patch Changes

    Open source →
  25. 1.16.224 Jan 2021

    Nothing published for this version

  26. 1.16.111 Dec 2020

    Nothing published for this version

  27. 1.16.03 Dec 2020

    Nothing published for this version

  28. 1.15.224 Nov 2020

    Nothing published for this version

  29. 1.15.18 Nov 2020

    Nothing published for this version

  30. 1.15.06 Nov 2020

    Nothing published for this version

  31. 1.14.129 Oct 2020

    Nothing published for this version

  32. 1.14.029 Oct 2020

    Nothing published for this version

  33. 1.13.129 Sept 2020

    Nothing published for this version

  34. 1.13.08 Sept 2020

    Nothing published for this version

  35. 1.12.329 Jul 2020

    Nothing published for this version

  36. 1.12.230 Jun 2020

    Nothing published for this version

  37. 1.12.117 Jun 2020

    Nothing published for this version

  38. 1.12.010 Jun 2020

    Nothing published for this version

  39. 1.11.812 May 2020

    Nothing published for this version

  40. 1.11.729 Apr 2020

    Nothing published for this version

  41. 1.11.629 Apr 2020

    Nothing published for this version

  42. 1.11.522 Apr 2020

    Nothing published for this version

  43. 1.11.421 Apr 2020

    Nothing published for this version

  44. 1.11.321 Apr 2020withdrawn: Broken Build for @urql/core/internal

    Nothing published for this version

  45. 1.11.221 Apr 2020withdrawn: Broken Build for @urql/core/internal

    Nothing published for this version

  46. 1.11.121 Apr 2020withdrawn: Broken build related to @urql/core/internal imports

    Nothing published for this version

  47. 1.11.020 Apr 2020withdrawn: Broken build related to @urql/core/internal imports

    Nothing published for this version

  48. 1.11.0-debug.026 Mar 2020pre-release

    Nothing published for this version

  49. 1.10.916 Apr 2020

    Nothing published for this version

  50. 1.10.89 Apr 2020

    Nothing published for this version

  51. 1.10.725 Mar 2020

    Nothing published for this version

  52. 1.10.624 Mar 2020

    Nothing published for this version

  53. 1.10.522 Mar 2020

    Nothing published for this version

  54. 1.10.419 Mar 2020

    Nothing published for this version

  55. 1.10.318 Mar 2020

    Nothing published for this version

  56. 1.10.217 Mar 2020

    Nothing published for this version

  57. 1.10.112 Mar 2020

    Nothing published for this version

  58. 1.10.012 Mar 2020

    Nothing published for this version

  59. 1.9.27 Mar 2020

    Nothing published for this version

  60. 1.9.16 Mar 2020

    Nothing published for this version