- This package no longer imports
react-dom/serverunconditionally at the top level, makingreact-apollosafer to use in environments like React Native that are neither browser-like nor Node-like, and thus struggle to importreact-dom/serverand its dependencies. Additionally, the React Native bundler has been instructed to ignore allreact-dom/serverdependencies withinreact-apollo, soreact-domwill not be bundled in React Native apps simply because they importreact-apollo. PR #2627
- Restore original
getDataFromTree(tree, context)API, and introduce a new alternative calledgetMarkupFromTreeto enable custom rendering functions:PR #2586export default function getDataFromTree( tree: React.ReactNode, context: { [key: string]: any } = {}, ) { return getMarkupFromTree({ tree, context, renderFunction: renderToStaticMarkup, }); } export type GetMarkupFromTreeOptions = { tree: React.ReactNode; context?: { [key: string]: any }; renderFunction?: typeof renderToStaticMarkup; }; export function getMarkupFromTree({ tree, context = {}, renderFunction = renderToStaticMarkup, }: GetMarkupFromTreeOptions): Promise<string> {...}
- Version 2.3.0 was published incorrectly, breaking nested
react-apollo/...imports. This problem was fixed in version 2.3.1 by runningnpm publishfrom thelib/directory, as intended. Issue #2591
- Fix
networkStatusto reflect the loading state correctly for partial refetching.
@steelbrain in #2493
- Reimplement
getDataFromTreeusingReactDOM.renderToStaticMarkupto make asynchronous server-side rendering compatible with React hooks. Although the rendering function used bygetDataFromTreedefaults torenderToStaticMarkup, any suitable rendering function can be passed as the optional second argument togetDataFromTree, which now returns aPromise<string>that resolves to The HTML rendered in the final pass, which means callingrenderToStringaftergetDataFromTreemay not be necessary anymore. PR #2533
lodash.isequalwas improperly set as a dev dependency forMockLink/MockedProvider. It is now a dependency.
@danilobuerger in #2449
- The
Subscriptioncomponent now accepts afetchPolicyprop.
@MatthieuLemoine in #2298
- Make sure the
TVariablesgeneric is passed toObservableQuery.
@tgriesser in #2311
- Mutation errors are now properly returned as a render prop, when using
a default
errorPolicyofall.
@amacleay in #2374 <Mutation />refetchQueriestriggered by name (string) will now use the correct variables.
@fracmal in #2422
- Replace the
lodashdependency withlodash.flowright(since that's the only non-devlodashfunction we're dependent on). Devlodashdependencies have also been updated to use their individual module equivalent.
@hwillson in #2435 - Removed
rollup-plugin-babel-minifyas it's no longer being used.
@hwillson in #2436 - Small
getDataFromTree.tslogic adjustment to avoid unnecessary calls when a falsyelementis encountered.
@HOUCe in #2429 graphql14 updates.
@hwillson in #2437- All example apps (included in the repo) have been updated to work with the
latest version of React Apollo.
@hwillson in #2439
- Fix
lodashtypings.
@williamboman in #2430 - Typings: added
contexttoMutationOptions.
@danilobuerger in #2354 - Typings: more
MutationOptionschanges/fixes.
@danilobuerger in #2340 - Remove
allowSyntheticDefaultImportsuse. Typescript'sallowSyntheticDefaultImportscompiler option is something we'd like to start using, but we jumped the gun a bit by introducing it in https://github.com/apollographql/react-apollo/commit/9a96519d390783dfd9a431dc2dbaa476a24f7b80. Including it means that anyone who wants to use Typescript with React Apollo would have to also include it in their own localtsconfig.json, to be able to handle default imports properly. This is because we're also using Typescript'ses2015moduleoption, which meansallowSyntheticDefaultImportshas to be enabled explicitly. We've switched back to using a combination ofimport * as Xandrequiresyntax, to work with default imports. We'll re-introduceallowSyntheticDefaultImportsuse in React Apollo 3.
@hwillson in #2438
- When using
React.createContextand SSR, we now make sure the context provider value is reset to the previous value it had after its children are walked.
@mitchellhamilton in #2304 - Revert:
When a query failed on the first result, the query resultdatawas being returned asundefined. This behavior has been changed so thatdatais returned as an empty object. This makes checking for data (e.g. instead ofdata && data.useryou can just checkdata.user) and destructring (e.g.{ data: { user } }) easier. Note: this could potentially hurt applications that are relying on a falsey check ofdatato see if any query errors have occurred. A better (and supported) way to check for errors is to use the resulterrorsproperty.
#1983
- Revert: "Typescript: use
Partial<TData>instead ofTData | {}, for theQueryResultdataproperty."
- Improved TypeScript Typings:
Deprecated
MutationFuncin favor ofMutationFn. Added missingonCompletedandonErrorcallbacks toMutationOpts.
@danilobuerger in #2322 - Added an example app that shows how to test mutations.
@excitement-engineer in #1998 - The
<Subscription />component now allows the registration of a callback function, that will be triggered each time the component receives data. The callbackoptionsobject param consists of the current Apollo Client instance inclient, and the received subscription data insubscriptionData.
@jedwards1211 in #1966 - The
graphqloptionsobject is no longer mutated, when calculating variables from props. This now prevents an issue where components created withgraphqlwere not having their query variables updated properly, when props changed.
@ksmth in #1968 - When a query failed on the first result, the query result
datawas being returned asundefined. This behavior has been changed so thatdatais returned as an empty object. This makes checking for data (e.g. instead ofdata && data.useryou can just checkdata.user) and destructring (e.g.{ data: { user } }) easier. Note: this could potentially hurt applications that are relying on a falsey check ofdatato see if any query errors have occurred. A better (and supported) way to check for errors is to use the resulterrorsproperty.
@TLadd in #1983 - Allow a custom
cacheobject to be passed into the test-utilsMockedProvider.
@palmfjord in #2254 - Make the
MockedProvidermocksprop read only.
@amacleay in #2284 - Remove duplicate
FetchMoreOptionsandFetchMoreQueryOptionstypes, and instead import them from Apollo Client.
@skovy in #2281 - Type changes for the
graphqlHOCoptions.skipproperty.
@jameslaneconkling in #2208 - Avoid importing
lodashdirectly.
@shahyar in #2045 - When the
Queryskipprop is set totrue, make sure the render proploadingparam is set tofalse, since we're not actually loading anything.
@edorivai in #1916 - No longer building against Node 9
@hwillson in #2404 - Make sure
<Subscription />,<Query />&<Mutation />all support using an Apollo Client instance configured in thecontextor via props.
@quentin- in #1956 - Typescript: use
Partial<TData>instead ofTData | {}, for theQueryResultdataproperty.
@tgriesser in #2313 - Adjust
<Query />onCompletedandonErrorcallbacks to be triggered via thecomponentDidUpdatelifecycle method. This ensures these callbacks can be used when data is fetched over the network, and when data is fetched from the local store (previsouly these callbacks were only being triggered when data was fetched over the network). @olistic in #2190 - Import
lodash/flowRightusing ES import to allow for treeshaking.
@Pajn in #2332 - Fixed a regression where
variablespassed ingraphqlHOCoptionswere not merged with mutationvariables.
@samginn in #2216 - Added a new
partialRefetchprop (falseby default). When aQuerycomponent is mounted, and a mutation is executed that returns the same ID as the mountedQuery, but has less fields in its result, Apollo Client'sQueryManagerreturns the data as an empty Object since a hit can't be found in the cache. This can lead to application errors when the UI elements rendered by the originalQuerycomponent are expecting certain data values to exist, and they're all of a sudden stripped away. The recommended way to handle this is to use the mutationsupdateprop to reconcile the mutation result with the data in the cache, getting everything into the expected state. This can definitely be a cumbersome process however, so to help address this thepartialRefetchprop can be used to automaticallyrefetchthe original query and update the cache.
@steelbrain in #2003
- Fixed an issue in
getDataFromTreewhere queries that threw more than one error had error messages swallowed, and returned an invalid error object with circular references. Multiple errors are now preserved.
@anand-sundaram-zocdoc in #2133 - Update both the
<Mutation />component andgraphqlHOC to accept a newawaitRefetchQueriesprop (boolean). When set totrue, queries specified inrefetchQuerieswill be completed before the mutation itself is completed.awaitRefetchQueriesisfalseby default, which meansrefetchQueriesare usually completed after the mutation has resolved. Relates to Apollo Client.
PR #3169.
@hwillson in #2214 - Typings adjustment: pass
TDataalong intoMutationUpdaterFnwhen usingMutationOpts, to ensure that the updater function is properly typed.
@danilobuerger in #2227 - Check if queryManager is set before accessing it.
@danilobuerger in #2165
- Added
onCompletedandonErrorprops to theQuerycomponent, than can be used to register callback functions that are to be executed after a query successfully completes, or an error occurs. @jeshep in #1922 - Add
UNSAFE_componentWillMountSSR support. @leops in #2152 - Clear out scheduler on MockedProvider unmount. @danilobuerger in #2151
- Addressed deployment issue.
- The
ApolloProviderchildrenprop type has been changed fromelementtonode, to allow multiple children. @quentin- in #1955 - Properly support the new
getDerivedStateFromPropslifecycle method. @amannn in #2076 lodashis no longer pinned to version 4.17.10. @cherewaty in #1951- README updates to replace
apollo-client-presetwithapollo-boost. @JamesTheHacker in #1925 - README updates to fix broken links. @DennisKo in #1935
- Project README has been updated to show a
<Query />example. @petetnt in #2102
- Adjust
getDataFromTreeto properly traverse React 16.3's context API provider/consumer approach. @marnusw in #1978 - An
ApolloClientinstance can now be passed into aMutationcomponent via a prop namedclient. This prop will override anApolloClientinstance set viacontext, by theApolloProvidercomponent. @amneacsu in #1890 - The
ApolloClientinstance used by a Mutation is now available in that Mutation's result. PR #1945 @cooperka in #1945
- Dependency updates to align with typescript changes made in
apollo-client2.3.3 PR #2105
- Adds
__typenamefor queries made with MockProvider and MockLink
- Fixed issue where refetch was not possible after SSR
- Fixed overly resubscribing from Subscription and allow passing function to determine shouldResubscribe
- Simplified the MockedProvider API #1882
- Fixed test-utils export
- Fix uneccesary rerender on cache hit
- Officially release new components!
- Turn back on TypeScript definitions
- Fix regression on refetchQueries #1794
- Added a new
calledprop for mutations #1775 - Fix inconsistency in naming of subscription document prop #1774
- remove .mjs support
- attempt to fix .mjs support for create react app
- Fix default values being set as falsy in options merging
- Remove console.error call for unhandled errors for query-hoc (but keep in place for graphql hoc for backwards compat)
- Ensure context can be passed as props
- bad build
- Refactored and removed old
graphqlimplementation in favor of new components - Removed QueryRecycler!! :yay:
- Added
query,mutation, andsubscriptionhigher order components - Aded
<Subscription />to the public API - Added
prop-typesvalidation to the<Query />,<Subscription />and<ApolloConsumer />component #1587 - Added
<Mutation />component #1520 - HoC
propsresult-mapping function now receives prior return value as second argument. - Fix errorPolicy when 'all' not passing data and errors
- Fix bundles and run test suite on all shippable code
- Rollback importing non esm packages. Fixes the previous broken version #1621
- Stricter type checking in the codebase. #1617
- Improved TS types (even more) in both
Querycomponent andgraphqlHoC. #1617 - Fix React Component detection bug in
getDataFromTree#1604
- Beta release of all 2.1 features!
- Change package to produce ES2015 as
moduleand commonjs formain#1576 - Make
Querycomponent work withgetDataFromTreeby definingfetchData[#1579] - Added back in support for browser / main bundles #1578
-
NEW FEATURES
-
BREAKING CHANGES [Removal of deprecated code]
- Remove deprecated
operationOptions.options.skip, useoperationOptions.skipinstead - Remove deprecated
options.updateQueries, useoptions.updateinstead #1485
- Remove deprecated
-
BREAKING CHANGES [TypeScript and Flow only]
- typescript -
graphqlparameterized types streamlined for a) full typing; and b) ease of use; and c) consistency. New parameterized is:graphql<TProps,TData, TGraphQLVariables, TChildProps>where none are required and full typing only requires the first three params (TChildPropscan be derived). #1402 - Rename type
ProviderPropstoApolloProviderProps#1467 - Rename
getDataFromTreetypeQueryResulttoQueryTreeResult#1467 - Rename type
QueryPropstoGraphqlQueryControls#1467 #1478
- typescript -
-
Fixes and Improvements
- Fixed bug where link error prevents future requests
- Fixed stack traces on non chrome browsers #1568
- Fixed bug #1412 where the
MockedProviderignored variables when doing matching. This is potentially breaking because tests could break for which the variables don't match #1501 - Update all dependencies, scripts' usage, prettier and typescript setup #1402
- Tests are now linted and verified valid typescript #1402
- Typescript - updated
typesfor consistency and potential to pass through all types e.g.TProps, TData, TGraphQLVariables#1402 - Typescript - added
ChildDataPropsandChildMutatePropsfor optional stronger typed usage version ofChildProps#1402 - Typescript - fix
graphqlHOC inference #1402 - Made prettier solely responsible for formatting, removed all formatting linting rules from tslint #1452
- Convert
Query.testtotsxand parameterize types forQuery#1462 - Remove copied
shallowEqualcode and delegate tofbjs#1465 - Update rollup configurations, refine package exports #1467
- Removed unused gzip script #1468
- Minify umd and ensure umd name consistency #1469
- Converted
test/test-utils/test-utils.test.jstotest/test-utils.test.tsx#1475 - Updates to
examples/typescript#1471 - Mutation test cleanup #1480
- Removed react-native from the test suite #1451
- Add
clienttoQuery'sQueryResult#1488 - Disregard falsy elements when walking tree in SSR #1495
- Removed the key
variablesfrom the render prop result in the<Query />#1497 - Added
<Subscription />component #1483 - Render callback should be typed with TData #1519
- Use lodash-es to allow lodash functions to be used in ES modules #1344
- turn back on flow checking
- upgraded required apollo-client for bugfix for subscriptions
- add component name in unhandled error message #1362
- upgraded flow support to 0.59.0 🎉 #1354
- skip null / undefined items on SSR if present #1355
- fix skip on component update #1330
- Correctly provide the generic cache type to ApolloProvider #1319
- Correctly initializes component state as null (not undefined) #1300
- BREAKING: removed cleanupApolloState as it is no longer needed!
- Exported getDataFromTree on the client
- Removed
reduxfrom peer dependencies. Issue #1223 PR #1224 - Support arrays being returned from render in SSR #1158
- Support passing an updater function to
setStatein SSR mode #1263
- upgrade to Apollo Client 2.0
- remove direct dependencies on Apollo Client, graphql-tag
- fix skip on component update.
- Fix: ensure
clientoption can be used with mutation query #1145 - Made
OptionProps.data'sTResultpartial #1231
- upgrade to react-16
- fix shallowEqual bug.
- Added notifyOnNetworkStatusChange to QueryOpts and MutationOpts Typesccript definitions #1034
- Added variables types with Typescript #997
- Made
ChildProps.datanon-optional #1143
- Fix: handle calling refetch in child componentDidMount
- Fix: ensure options gets up to date props #1025
- Fix: ensure queryRecycler exists before using it
- MockNetworkInterface match mock requests regardless of variable order #973
- Allow to pass removeTypenames to MockedProvider #1001
- Fix: Scope query recyclers by client #876
- Support apollo-client 2.0
- Fix: fix issue with bad deploy
- Replace string refs with callback refs #908
- Fix: fix UMD bundle pointing to apolloClient for some reason
- Fix: fix matching types with exports for flow and ts
- Fix: Ensure typescript and flow type definitions match in name
- Feature: Add support for flow typecheck to work out of the box (without any configuration)
- Fix: Fix issue where
withRef-option ofgraphqldid not work when the query was skipped #865
- Fix: export all types from main type file
- Fix: Fix issue around hoisting non react statics for RN #859
- Fix: Fix issue where options was called even though skip was present #859
- Improvement: Allow for better typescript usage with improved types #862
- Feature: You can now supply a client in options object passed to the
graphqlhigh oder component. PR #729 - Fix: Fix issue when using flow definitions PR# 787
- Improvement: Reduce re-renders by using forceUpdate instead of setState({ }) PR #775
- Improvement: Refactor dataForChild to use bound function to reduce rerenders PR #772
- Fix: Add in missing types for MutationOpts PR #770
- Fix: Fix component reference and variable statement for flow types
- Fix: Fix compilation of test-utils from move to ES bundles
- Feature: Enhanced typescript definitions to allow for more valid type checking of graphql HOC PR #695
- Feature: Flow types: PR #695
- Fix: Fix bug with sync re-renders and recyled queries PR #740
- Feature: Support tree shaking and smaller (marginally) bundles via rollup PR #691
- Fix: Render full markup on the server when using the
cache-and-networkfetchPolicy PR #688
- Fix: Use
standbyfetchPolicy for recycled queries PR #671
- Perf: Removed unneeded usage of shouldComponentUpdate PR #661 inspired by PR #653
- Perf: Removed unneeded usage of shouldComponentUpdate in Provider PR #669
- Chore: remove unused immutable prop PR #539
- Fix: Re-export all Apollo Client exports from react-apollo PR #650
- Chore: Include React 16 alpha in dependency version range PR #647
- Fix: move prop-types from devDependencies to dependencies PR #656
- Pass cached data to the child component along with the error. PR #548
- Fix version lock down for peer dependency version of React. PR #626
- Switch
graphql-tagdependency to2.0.0. This isn't really a breaking change because we only exportgqlfromreact-apollo. - Fix: convert deprecated
React.PropTypestoPropTypesprovided by theprop-typespackage. PR #628
- Exposed
createBatchingNetworkInterfacefrom apollo-client so that it can be imported from react-apollo just likecreateNetworkInterface. PR #618
- Fix: Make sure recycled queries are in cache only mode so they do not trigger network requests. PR #531
- ApolloProvider now won't put its
storeoncontextunless it was given. PR #550 - MockedProvider now accepts a
storeprop to be passed to ApolloProvider so that react-redux store is not overwritten
- Fix bug where
optionswas mutated causing variables to not update appropriately. PR #537 - Make sure that all queries resolve or reject if an error was thrown when server side rendering. PR #488
- ApolloProvider now changes its client and store when those props change. PR #479
- Update dependency to Apollo Client 1.0.0-rc.1 PR #520
- Make sure that the cached rendered element has the correct type before returning it. PR #505
- Move constructor initializing of props to componentWillMount. PR #506 (Issue #509).
- Address deprecation warnings coming from
graphql-taggraphql-tag#54 - Make sure ApolloClient and gql are exported from browser bundle PR #501
- Add apollo-client ^0.10.0 to dependency range
- Make apollo-client and graphql-tag dependencies and re-export them from this package PR #490
- Print errors to console if they are not handled by component PR #476
- Update Apollo Client to 0.9.0 and bump a lot of other dependencies PR #484
- Remove
@types/chaidev dependency which called a reference to thechaitypes in the production build. PR #471
- Fix
updateQueriesnot running for queries attached to unmounted components. PR #462
- Fix wrong invariant sanity checks for GraphQL document PR #457
- Feature: [typescript] Add better typings to graphql HOC Issue #379
- Update apollo-client peerDependency to 0.8.0 PR #438
- Bug: Issue #404 fix issue with network errors thrown when changing variables.
- Feature: Allow access to
withApollo's wrapped instance thanks to{withRef: true}option Issue #331. - Feature: Add an
aliasoption to thegraphqlfunction to allow customizing the display name of the wrapped component (Issue #354).
- Chore: PR #403 move react-dom to be an optional dependency for better react-native builds.
- Same as 0.8.0, but properly built
-
Update typings dependency from typed-grapqhl to @types/graphql PR #393
-
Chore: PR #390 gets rid of warning during queries test.
-
Chore: PR #391 gets rid of warnings during redux test.
-
Feature: PR #389 added a shouldResubscribe option to allow subscriptions to automatically resubscribe when props change.
- Identical to 0.7.2 because 0.7.3 contained breaking change (updated typings)
-
Chore: PR #390 gets rid of warning during queries test.
-
Chore: PR #391 gets rid of warnings during redux test.
-
Feature: PR #389 added a shouldResubscribe option to allow subscriptions to automatically resubscribe when props change.
-
Bug: fix issue where changing variables while unskipping didn't result in the variables actually changing - Issue #374
-
Bug: fix issue with no longer passing errors to components w/
apollo-client@0.5.23- Issue #378 -
Add
react-domtopeerDependenciesbecause since React 15.4 it is no longer "secretly" included. (ref: https://github.com/facebook/react/releases/tag/v15.4.0)
// old
import { getDataFromTree, renderToStringWithData } from 'react-apollo/server';
// new
import { getDataFromTree, renderToStringWithData } from 'react-apollo';- Feature: Better packaging PR #306
- Feature: Add networkStatus prop to connected componentsIssue #322
- Feature: Pass component display name as watchQuery metadata for experimental devtools PR #363
- Feature: Removed use of
createFragmentand bumped AC version PR #357 - Bug: fix issue with Redux's
connectand SSR - Issue #350
// old -- we attempted to get the state out of your apollo provider for your
renderToStringWithData(component).then({ markup, initialState });
// new -- you must get it yourself
renderToStringWithData(component).then(markup => {
const initialState = client.store.getState()[client.reduxRootKey];
// ...
});This release refactors the server side rendering and data access code, hopefully making it easier to contribute to in the future and fixing a few bugs along the way:
- Bug: Fix bug in SSR in React Production mode Issue #237
- Bug: Fix issue fetching multiple levels of queries Issue #250
- Bug: Fix issue with Stateless components in SSR Issue #297
- Feature: Refactored to collect data in one place Issue 264
- Feature: Added test utilities and examples to library.
- Bug: Fix issue with usage in TypeScript projects caused by 'compose' re-export. PR #291
- Bug: Fix issue with forceFetch during SSR PR #293
- Full support for both Apollo Client 0.4.21 and 0.5.0. PR #277
- Bug: Fix issue with SSR queries running twice when a mutation wraps a query #274
- Bug: Fix issue with changing outer props and not changing variables, ultimately caused by apollographql/apollo-client#694
- Bug: Fix and test some subtle bugs around skipping and subscriptions. #260
- Feature: Remove nested imports for apollo-client. Making local development eaiser. #234
- Feature: Move types to dev deps #251
- Feature: New method for skipping queries which bypasses HOC internals #253
- Feature: Integrated subscriptions! #256
- Feature: Refactor loading state managment to use apollo-client fully. Reduces library size by ~50% #211
- Bug: Passing immutable to ApolloProvider breaks ssr.
renderToStringWithDatafails to reference the right store. #222 - Bug: Fixed issue with context in SSR #218
- Bug: Fixed lifecycle events for componentWillMount() on the server #205
- Bug: Created better reference to updateQuery when bound early. It will also throw if called before it should be.
- Bug: Fixed issue with updateQuery not being present during componentWillMount #203
- Feature: Allow optional variables by passing null value on behalf of the variable #200
- Feature: Added link to recompose to use the
composefunction. This makes it easy to combine multiple queries on a single component. #194
// old
renderToStringWithData(component).then(markup); // markup had a script tag
// new
renderToStringWithData(component).then({ markup, initialState }); // markup has not tag, and state is passed-
Feature: Removed client as a prop and fixed warnings when not using ApolloProvider #189
-
Feature: Added updateQuery to data props
-
Bug: Fixed renderToStringWithData causing react warning #169
-
Bug: Fixed ssr fragment issue #178
-
Bug: Fixed loading state for skipped queries #190
-
Bug: Fixed loading state on remounted component with different variables
- Bug: Fixed SSR issue with context #165
- Bug: Fixed issue when context changes in parent container not going through to child; #162
- Bug: Fixed loading state on remount of forceFetch operations; #161
- Bug: Fixed issue with variable merging after fetchMore #150
- Feature: Allow options value to be an object instead of a method. #144
- Bug: Fixed issue with missing methods on initial props #142
- Bug: Fixed oddity with multi nested enhancers on SSR #141
- Bug: Fixed issue with variable merging #139
- Feature: Support a different store in the tree that is immutable (support immutable redux) #137
- Bug: Fixed refetch methods when no result is returned
- BREAKING Feature: Brand new API! See the docs for more information;
- Bug: Fixed loading state on refetch more when data doesn't change
- Feature: added fetchMore #123
- Bug: Retain compatibility with version 0.3.0 of Apollo Client via a backcompat shim. #109
- Bug: Fixed but where SSR wouldn't get calculated props from redux actions #103
- Feature: integrated SSR #83
- Feature: added ability to hoist statics on components #99
- Bug: Don't strip data away from the component when the query errors #98
- Bug: Fixed issue where react native would error on aggressive cloneing of client
- Feature: pass through all methods on apollo client
- Bug: fixed issue causing errors to be passed to apollo-client #89
- Bug: fixed overrendering of components on redux state changes
- Bug: fixed bug where SSR would fail due to later updates. This should also prevent unmounted components from throwing errors.
- Feature: provide add
watchQueryto components viaconnect
- Bug: Don't use old props on store change change
- Bug: Reset loading state when a refetched query has returned
- Bug: Loading state is no longer true on uncalled mutations.
- Improvement: don't set the loading state to false if forceFetch is true
Return promise from the refetch method
- Bug: Fix bug where state / props weren't accurate when executing mutations.
-
- Improvement: Increase performance by limiting re-renders and re-execution of queries. Chore: Split tests to make them easier to maintain.
- Feature: add
startPollingandstopPollingto the prop object for queries - Bug: Fix bug where full options were not being passed to watchQuery
- Feature: Support 0.3.0 of apollo-client
- Feature: Change Provider export to be ApolloProvider and use Provider from react-redux
- Feature: Support 0.1.0 and 0.2.0 of apollo-client
Breaking change:
- Feature: Remove
resultkey in favor of dynamic key matching root fields of the query or mutation. (apollographql#31)
{
loading: false,
result: {
posts: []
}
}becomes
{
loading: false,
posts: []
}- Bug: Get state directly from redux store internally
- Bug: Fix bug with willReceiveProps
Bug: - Adjust loading lifecycle marker to better match the behavior of apollo-client #11
Feature: - Update to support new observable API from apollo-client #9
Initial release. Brings in support for binding GraphQL data to components easily as well as perform mutations.
We didn't track changes before this version.