🚀 An ember-cli addon for Apollo Client and GraphQL
@cloutierlp and @josemarluedke
For full changes, see the comparison between v3.0.1 and v3.0.2
@johanrd and @josemarluedke
For full changes, see the comparison between v3.0.0 and v3.0.1
This is a major version with breaking changes. If have you have your app with the latest v2.x without any deprecations, this upgrade will be straightforward.
This version upgrades to Apollo Client V3. There are several changes there, please refer to their migration guide. The most impacting change for Ember Apollo Client is the changes in imports.
@dbbk, and @josemarluedke
For full changes, see the comparison between v2.2.1 and v3.0.0
@mydea
For full changes, see the comparison between v2.2.0 and v2.2.1
@josemarluedke
For full changes, see the comparison between v3.0.0-beta.1 and v3.0.0-beta.2
This is a major version with breaking changes. If have you have your app with the latest v2.x without any deprecations, this upgrade will be straight forward.
This version upgrades to Apollo Client V3. There are several changes there, please refer to their migration guide. The most impacting change for Ember Apollo Client is the changes in imports.
@dbbk and @josemarluedke
For full changes, see the comparison between v2.2.0 and v3.0.0-beta.1
@bgentry, @dependabot, @dependabot[bot], @josemarluedke, @knownasilya and @mydea
For full changes, see the comparison between v2.1.0 and v2.2.0
@dependabot, @dependabot[bot] and @josemarluedke
For full changes, see the comparison between v2.0.0 and v2.1.0
After a long cycle of beta releases and a lot of changes, this is the first release out of beta of ember-apollo-client
v2.0.0. We believe the majority of people using this addon have been using the beta version in production apps for quite a long time; this release makes it official and recommended to use the latest version. New apps should use this version and avoid using deprecated features. For apps using v1.x, please take a look at all the breaking changes. Note that we have changed the minimum required Ember version.
Here are all the changes since the last v1 release.
Don't create EmberObject
for returned data (#310) @josemarluedke
Before this change, ember-apollo-client
would always wrap the returned data from the GraphQL (when not an array) with EmberObject
. In this PR we removed that and instead we return plain objects.
Remove usage of Evented
mixin (#313) @josemarluedke
subscribe
no longer returns an Ember Object and does not apply the Evented
Ember mixin. Instead, it just returns a native class and it triggers an event when new data comes in. You can use this event to add a listener like so:
//import { addListener, removeListener } from '@ember/object/events';
const result = await this.apollo.subscribe(
{
subscription: mySubscription,
}
);
const handleEvent = event => {
console.log('event received', event)
};
// Add listener to new data
addListener(result, 'event', handleEvent);
// Remove the listener from new data
removeListener(result, 'event', handleEvent);
The lastEvent
property should be accessed directly or use get
from Ember
Object.
console.log(result.lastEvent);
// or
// import { get } from '@ember/object';
console.log(get(result, 'lastEvent'));
Remove unused prod dependencies (#306) @josemarluedke
It's not recommended to import dependencies of other dependencies in your application. Therefore, if you depend on any apollo package that this addon depends on, you should add to your package.json
. You should also add ember-auto-import to make sure you are able to import them.
Mixins are deprecated in favor of queryManager
computed macro. (#262) @josemarluedke
Return the actual returned data, not a copy (#312) @josemarluedke
graphql
has been added as a peer dependency and removed from the addon's direct dependency. Please run ember install ember-apollo-client
to add the default dependencies to your project or run yarn add -D graphql
.
If you are using Ember versions 3.4 or 3.5 you must add ember-native-class-polyfill
to your application. Please run ember install ember-native-class-polyfill
. Later Ember versions are not required to have this polyfill. (#261) @josemarluedke
Dropped support for Ember LTS 2.18. We now only support the last LTS version (3.4) and above. (#261) @josemarluedke
The way to overwrite clientOptions
, link
and chache
has been changed from computed properties to functions. Previous behavior will be removed in the next major version. (#261) @josemarluedke
Please refer to readme for examples.
Drop support for node.js v6 (#295) @josemarluedke
Switch from custom webpack build setup to ember-auto-import. (#159) @jasonmit
The old build configs (include
, exclude
) have been removed. Additional dependencies can be used via ember-auto-import and a regular npm install. (#171) @bgentry
The old, deprecated mixin import paths have been removed. (#171) @bgentry
The deprecated middlewares
option has been removed from the apollo service. Users should switch to override link
instead. (#171) @bgentry
_apolloUnsubscribe
from the result query.queryManager
computed macro with support for classic Ember Object and ES6 classes through decorators (decorator syntax requires Ember v3.10.0).@FabHof, @brunoocasali, @buschtoens, @dmzza, @vsergiu93, @lstrzebinczyk, @jasonmit, @coladarci, @brunoocasali, @jgwhite, @christophermlne, @bgentry and @josemarluedke
For full changes, see the comparison between v1.1.0 and v2.0.0
@FabHof, @brunoocasali and @josemarluedke
For full changes, see the comparison between v2.0.0-beta.7 and v2.1.0