All Versions
Latest Version
Avg Release Cycle
24 days
Latest Release
36 days ago

Changelog History
Page 6

  • v2.4.3

  • v2.4.2

    • Apollo Client no longer deep freezes query results. @hwillson in #3883
    • 🚚 A new clearStore method has been added, that will remove all data from the store. Unlike resetStore, it will not refetch active queries after removing store data. @hwillson in #3885
  • v2.4.1

    August 26, 2018
    • mutate's refetchQueries option now allows queries to include a custom context option. This context will be used when refetching the query. For example:
      context = {
        headers: {
          token: 'some auth token',
        variables: {
        refetchQueries: [{
          variables: { userId: },

    The CUSTOMER_MESSAGES_QUERY above will be refetched using context. Normally queries are refetched using the original context they were first started with, but this provides a way to override the context, if needed. @hwillson in #3852

  • v2.4.0

    August 17, 2018
    • ➕ Add proper error handling for subscriptions. If you have defined an error handler on your subscription observer, it will now be called when an error comes back in a result, and the next handler will be skipped (similar to how we're handling errors with mutations). Previously, the error was just passed in the result to the next handler. If you don't have an error handler defined, the previous functionality is maintained, meaning the error is passed in the result, giving the next handler a chance to deal with it. This should help address backwards compatibility (and is the reason for the minor version bumo in this release). @clayne11 in #3800
    • 👍 Allow an optimistic param to be passed into ApolloClient.readQuery and ApolloClient.readFragment, that when set to true, will allow optimistic results to be returned. Is false by default. @jay1337 in #2429
    • ✅ Optimistic tests cleanup. @joshribakoff in #3713
    • 📦 Make sure each package has its own .npmignore, so they're taken into consideration when publishing via lerna. @hwillson in #3828
    • 📚 Documentation updates. @toolness in #3804 @pungggi in #3798 @lorensr in #3748 @joshribakoff in #3730 @yalamber in #3819 @pschreibs85 in #3812 @msreekm in #3808 @kamaltmo in #3806 @lorensr in #3739 @brainkim in #3680
  • v2.3.8

    August 09, 2018
  • v2.3.7

    July 24, 2018
    • 🚀 Release 2.3.6 broke Typescript compilation. QueryManager's getQueryWithPreviousResult method included an invalid variables return type in the auto-generated core/QueryManager.d.ts declaration file. The type definition had a locally referenced path, that appears to have been caused by the typescript compiler getting confused at compile/publish time. getQueryWithPreviousResult return types are now excplicity identified, which helps Typescript avoid the local type reference. For more details, see @hwillson in #3731
  • v2.3.6

    July 24, 2018
  • v2.3.5

    June 19, 2018
  • v2.3.4

    June 13, 2018
    • Export the QueryOptions interface, to make sure it can be used by other projects (like apollo-angular).
    • 🛠 Fixed an issue caused by typescript changes to the constructor defaultOptions param, that prevented query defaults from passing type checks. (@hwillson in #3585)
  • v2.3.3

    June 13, 2018
    • Typescript improvements. Made observable query parameterized on data and variables: ObservableQuery<TData, TVariables> (@excitement-engineer in #3140)
    • ➕ Added optional generics to cache manipulation methods (typescript). (@mvestergaard in #3541)
    • Typescript improvements. Created a new QueryOptions interface that is now used by ApolloClient.query options, instead of the previous WatchQueryOptions interface. This helps reduce confusion (especially in the docs) that made it look like ApolloClient.query accepted ApolloClient.watchQuery only options, like pollingInterval. (@hwillson in #3569)