4.1.0-beta.2 (2021-03-12)
- client: fix rebroadcasting for regular queries (0c6b0e7)
4.1.0-beta.1 (2021-03-06)
- client: SocketClient with web_socket_channel (6631f42)
4.0.2-beta.1 (2021-02-08)
- client: hotfix dataIdFromObject passthrough in cache.readQuery (e3e04f8)
4.0.1 (2021-02-07)
- client: hotfix dataIdFromObject passthrough in cache.readQuery (000d59f)
4.0.0 (2021-01-31)
- examples: starwars example cache (22db4f7)
- fix ObservableQuery.lifecycle for cache only results (f44b479)
- client: mutation not firing observer callbacks (75393c2)
- query test (f54c6ae)
- ci: loosen path version (645d462)
- client: add CacheMissException for when write/read results in null (a0a967f)
- client: fetchMore partial handling (10ec576)
- client: gql_http_link==0.3.2 for custom toJsons closing #734 (98b8cf7)
- client: only queries are refetch safe (1e93376)
- client: refetch overrides fetchPolicy (891bc2b)
- client: skip cache writes on null data, thus fixing #405 (7472bb9)
- client: wrap all subscription errors in QueryResults (aae61ca)
- docs: typo in docstring, add todo to sanitizeVariables (9c84cb1)
- examples: cleanup bloc example (82724f0)
- examples: flutter bloc pubspec (61582b3)
- examples: ignore missing token (ffd3294)
- examples: starwars example works again (7514b93)
- examples: update ios files for graphql_flutter/example (5b6e3d0)
- graphql: default-yet-overrideable variable (6ba687e)
- graphql: don't close mutations after callbacks (2ba6c74)
- graphql: dumb ?? documentNode bug (ba7b641)
- graphql: fix rebroadcasting by refactoring onData callbacks into a simpler async function (9a5fff1)
- graphql: keep deprecated QueryResult api and mark it as such (2b447a0)
- graphql: sanitize multipart files for cache (4ceb800)
- graphql: simplified AuthLink (0b3fbd9)
- tests: update tests (bba4a7a)
- cache now flags itself for broadcasting (84cba43)
- client.fetchMore utility for leveraging the fetch more logic results without using ObservableQuery (814ccb3)
- documentNode -> document, dependency issues, reexport links from client (for now), retrieve subscription changes from #533 (4fb205c)
- graphql: HiveStore.open (6db4677)
- drop Link layer in favor of package:gql_link and package:gql_exec (2e491a7)
- client: add context to QueryResult (fbc5a2d)
- client: cache proxy methods on cache, resetStore with optional refetchQueries (ba7134a)
- client: cache writes are now strict, and throw PartialDataException (from normalize), (616b5ed)
- client: CacheRereadPolicy, watchMutation workaround (32e02da)
- client: carry forward data on exception (ccf3b9c)
- client: expose store, cleanup (6fc5e7e)
- client: only rebroadcast on deep equals (ee64e99)
- client: partialDataPolicy for configuring rejections (0a7cd28)
- client: QueryResult.unexecuted (13e3257)
- client: refetchSafeQueries, clarify rebroadcast calls in docs (e45b240)
- docs: v4 changelog (38cfd9b)
- examples: reorg graphql example so pub displays code (bc32bdd)
- examples: starwars hivestore usage (2f874ec)
- graphql: add isMutation etc helpers to Options types (04e7888)
- graphql: complete caching overhaul (e9b5660)
- graphql: HiveStore api improvements, fetchmore fixes (2d1a7f2)
- graphql: multipart file support (c2733ca)
- graphql: re-add documentNode asdeprecated (20d0176)
- more work on gql links (0d7ef7a)
- graphql: Robust ObservableQuery docs (1e893b5)
- graphql: update old websocket_link (496d994)
- graphql: upgrade normalize to 0.4.2 (4655e7d)
- graphql: use new cache correctly everywhere else (f64a6c8)
- starting on gql links (d9452bc)
- graphql: work on making subscriptions more of a first-class citizen (6d0b045)
- graphql_flutter: add ResultAccumulator, fix Subscription (7e1edee)
- graphql_flutter: initHiveForFlutter (1118cc7)
- HiveStore (2c3c66c)
- move to DocumentNode-only documents (7499323)
- graphql_flutter: work on making subscriptions more of a first-class citizen (a0e0d5c)
- tests: test subscriptions (2a3e6a1)
- client: By fixing the defaults for mutations, the old behavior is now lost
- the deprecated string documents are no longer supported
- Link layer is now implemented via package:gql_link and package:gql_exec
4.0.0-beta.7 (2021-01-25)
- client: add context to QueryResult (fbc5a2d)
- client: CacheRereadPolicy, watchMutation workaround (32e02da)
- client: QueryResult.unexecuted (13e3257)
- client: By fixing the defaults for mutations, the old behavior is now lost
4.0.0-beta.6 (2020-12-27)
- fix ObservableQuery.lifecycle for cache only results (f44b479)
4.0.0-beta.5 (2020-11-10)
- client: wrap all subscription errors in QueryResults (aae61ca)
4.0.0-beta.4 (2020-11-07)
- client: add CacheMissException for when write/read results in null (a0a967f)
- client: fetchMore partial handling (10ec576)
- client: skip cache writes on null data, thus fixing #405 (7472bb9)
- client: cache writes are now strict, and throw PartialDataException (from normalize), (616b5ed)
- client: carry forward data on exception (ccf3b9c)
- client: only rebroadcast on deep equals (ee64e99)
- client: partialDataPolicy for configuring rejections (0a7cd28)
4.0.0-beta.3 (2020-10-17)
- client: refetch overrides fetchPolicy (891bc2b)
4.0.0-beta.2 (2020-10-13)
- graphql: upgrade normalize to 0.4.2 (4655e7d)
4.0.0-beta.1 (2020-10-07)
v4
reworks a lot of the internals of the core graphql/client.dart
(and thus graphql_flutter
).
Please see the v4 changelog for more details, and the updated READMEs for more extensive documentation.
The following was autogenerated from ill-manicured commits:
- examples: ignore missing token (ffd3294)
- query test (f54c6ae)
- ci: loosen path version (645d462)
- client: gql_http_link==0.3.2 for custom toJsons closing #734 (98b8cf7)
- client: mutation not firing observer callbacks (75393c2)
- client: only queries are refetch safe (1e93376)
- docs: typo in docstring, add todo to sanitizeVariables (9c84cb1)
- examples: cleanup bloc example (82724f0)
- examples: flutter bloc pubspec (61582b3)
- examples: starwars example cache (22db4f7)
- examples: starwars example works again (7514b93)
- examples: update ios files for graphql_flutter/example (5b6e3d0)
- graphql: default-yet-overrideable variable (6ba687e)
- graphql: don't close mutations after callbacks (2ba6c74)
- graphql: dumb ?? documentNode bug (ba7b641)
- graphql: fix rebroadcasting by refactoring onData callbacks into a simpler async function (9a5fff1)
- graphql: keep deprecated QueryResult api and mark it as such (2b447a0)
- graphql: sanitize multipart files for cache (4ceb800)
- graphql: simplified AuthLink (0b3fbd9)
- tests: update tests (bba4a7a)
- cache now flags itself for broadcasting (84cba43)
- client.fetchMore utility for leveraging the fetch more logic results without using ObservableQuery (814ccb3)
- documentNode -> document, dependency issues, reexport links from client (for now), retrieve subscription changes from #533 (4fb205c)
- graphql_flutter: add ResultAccumulator, fix Subscription (7e1edee)
- drop Link layer in favor of package:gql_link and package:gql_exec (2e491a7)
- client: cache proxy methods on cache, resetStore with optional refetchQueries (ba7134a)
- client: expose store, cleanup (6fc5e7e)
- client: refetchSafeQueries, clarify rebroadcast calls in docs (e45b240)
- docs: v4 changelog (38cfd9b)
- examples: reorg graphql example so pub displays code (bc32bdd)
- examples: starwars hivestore usage (2f874ec)
- graphql: add isMutation etc helpers to Options types (04e7888)
- graphql: complete caching overhaul (e9b5660)
- graphql: HiveStore api improvements, fetchmore fixes (2d1a7f2)
- graphql: HiveStore.open (6db4677)
- graphql: multipart file support (c2733ca)
- graphql: re-add documentNode asdeprecated (20d0176)
- graphql: Robust ObservableQuery docs (1e893b5)
- graphql: update old websocket_link (496d994)
- graphql: use new cache correctly everywhere else (f64a6c8)
- HiveStore (2c3c66c)
- more work on gql links (0d7ef7a)
- move to DocumentNode-only documents (7499323)
- starting on gql links (d9452bc)
- graphql: work on making subscriptions more of a first-class citizen (6d0b045)
- graphql_flutter: initHiveForFlutter (1118cc7)
- graphql_flutter: work on making subscriptions more of a first-class citizen (a0e0d5c)
- tests: test subscriptions (2a3e6a1)
- the deprecated string documents are no longer supported
- Link layer is now implemented via package:gql_link and package:gql_exec
- hotfix(client):
gql_http_link==0.3.2
for custom toJsons closing #734 (98b8cf7)
- hotfix(client):
gql_http_link==0.3.1
fix for bool json encoding support (38b2fd2)
cache.readFragment / cache.readFragment
API has been reworked:
final fragDoc = gql(...);
final idFields = { '__typename': 'MyType', 'id': 1 }
final fragmentData = {
'myField': 'updatedValue',
'someNewField': [
{'newData': false}
],
};
+ // or Fragment(document: fragDoc).asRequest(idFields: idFields)
+ final fragmentRequest = FragmentRequest(
+ fragment: Fragment(
+ document: fragDoc,
+ ),
+ idFields: idFields,
+ );
cache.writeFragment(
- fragment: fragDoc,
- idFields: idFields,
+ fragmentRequest,
data: fragmentData,
);
This was done because I (@micimize) wanted to make it more consistent with cache.readQuery
/cache.writeQuery
before beta
.
- client: refactor(client): Fragment and FragmentRequest for more normalized api (2f04058)
- docs: update docs, add more sections (00f4a97)
This was mostly a prep release for the first v4 beta.
- client: cache proxy methods on cache, resetStore with optional refetchQueries (ba7134a)
- test(client): more cache and store tests (a9eed21)
- examples: merge and update flutter_bloc changes (ac4759a)
- docs: correct multipart example (f9d1adb)
- chore: re-merge changelog and templates (9db0b44)
- tests: restore old websocket client tests (3e4870c)
- refactor: pollInterval is now a Duration (fe02bb8)
- chore: I think fixes coverage and lint (d37e81c)
GraphQLClient
now implements GraphQLDataProxy
, exposing readQuery
, writeQuery
, readFragment
, and writeFragment
. The writing methods also trigger rebroadcasts, closing #728.
It also adds an experimental client.resetStore({refetchQueries = true})
for refetching the results of all observed queries (not mutations), and expose cache.store
with a WARNING about direct access.
- client: cache proxy methods on cache, resetStore with optional refetchQueries (ba7134a)
- client: refetchSafeQueries, clarify rebroadcast calls in docs (e45b240)
- client: expose store, cleanup (6fc5e7e)
- client: add isMutation etc helpers to Options types (04e7888)
- fix: only queries are refetch safe (1e93376)
- refactor: clean up unused helpers, clarify shoudRebroadcast (1cf6478)
- client: fix subscription initial result from cache (de66cff)
- cache: sanitize multipart files for cache. (4ceb800)
- client: bring back old websocket link with gql adapter layer (496d994)
- client: multipart file support from
gql_http_link==0.3.0
(c2733ca)
- client: don't close mutations after callbacks (2ba6c74)
- examples: update ios files for graphql_flutter/example (5b6e3d0)
- client: simplified AuthLink (0b3fbd9)
- docs: direct cache access in changelog (1f21927)
- examples: starwars hivestore usage (2f874ec)
- client:
HiveStore
api improvements (2d1a7f2) - fix:
FetchMoreOptions
was throwing withoutdocument
(2d1a7f2) - fix:
deeplyMergeLeft
type error (65fdcb2)
- client:
maybeRebroadcast
onmutation
(75393c2)
See the v4 changelog
3.1.0 (2020-07-27)
- ci: add changelog back (3e63c3e)
- ci: Sync master into beta (2a0507e)
- client: Throw a ClientException on non-json responses, to be (7d538e1), closes #552
- client: translateNetworkFailure when no route to host (877bdb8)
- examples: rebuilt & tested starwars example (2aaffeb)
- examples/starwars: use git dependency for graphql_starwars_test_server (0facc48)
- flutter: Query.didUpdateWidget and policy overrides (6672e44)
- flutter: widgets make unnecessary requests when dependencies change (c487931)
- packaging: correct dependencies, remove authors (13f6a43)
- packaging: don't commit .flutter-plugins-dependencies (f77dafa)
- packaging: upgrade rxdart (20364a9)
- release: RunMutation return type definition (9cb9658)
- tests: don't factor tests into coverage scores (4a9bcd4)
3.1.0-beta.7 (2020-06-04)
- ci: add changelog back (3e63c3e)
- ci: Sync master into beta (2a0507e)
- client: FetchMoreOptions bug with operator precedence (f8e05af)
3.0.2 (2020-05-18)
- client: FetchMoreOptions bug with operator precedence (f8e05af)
3.1.0-beta.6 (2020-05-16)
- packaging: correct dependencies, remove authors (a22d504)
3.1.0-beta.5 (2020-05-10)
- packaging: upgrade rxdart (20364a9)
- graphql: custom auth headerKey (167fac5)
3.1.0-beta.4 (2020-04-21)
- examples: rebuilt & tested starwars example (f8e19f1)
- packaging: don't commit .flutter-plugins-dependencies (0857030)
3.1.0-beta.3 (2020-04-20)
- flutter: Query.didUpdateWidget and policy overrides (32f6172)
- style: use curly braces (42f4da4)
- tests: don't factor tests into coverage scores (4a9bcd4)
3.0.1 (2020-04-20)
- style: use curly braces (42f4da4)
3.1.0-beta.2 (2020-04-12)
- flutter: widgets make unnecessary requests when dependencies change (31936ff)
3.1.0-beta.1 (2020-03-30)
- examples/starwars: use git dependency for graphql_starwars_test_server (0facc48)
- examples/starwars: add web support (f52b1db)
3.0.1-beta.3 (2020-03-10)
- release: RunMutation return type definition (9cb9658)
3.0.1-beta.2 (2020-02-14)
3.0.1-beta.1 (2020-01-21)
- client: translateNetworkFailure when no route to host (e8b6322)
3.0.0 (2020-01-13)
- cache: add value == and hashCode to lazy cache map, fix traversal (617dde7)
- cache: AppLifecycleState.{suspending -> detached} (8bc7b14)
- ci: attempt to fix ci (4fac2e4)
- client: default toEncodable (5f938e4)
- client: export operation and fetch results (5dcbae5)
- client: make fetchMore valid with default original document again (faa3779)
- client: organize exports alphabetically (a322339)
- client: patch fetchMore to write to cache (9cb7474)
- client: use http 0.12.0+4 to fix a wrong content-type header on multipart request on http 0.12.0+3 (ea8822c), closes #525
- client: use noCache for fetchMore, avoiding normalization (da20541)
- docs: remove moved onComplete (31a0d2f)
- switch test to AST from document string (894dc53)
- docs: use ast for examples (d68616e)
- add eager result to stream, rebuild query widget on var change (af89b19)
- bump gql dependency (b55a891)
- don't set default policies on options so defaults are applied (fd95e37)
- exception test cases (001cb48)
- fix issues so example runs on latest stable (87d8feb)
- ignore
*.iml
and.idea
(361fdff) - ignore linting errors from the core (0612d44)
- ignore uri doesn't exist lint error (e14349d)
- individually suppress "deprecated_member_use_from_same_package" only (3879f18)
- individually suppress "deprecated_member_use_from_same_package" only (9216976)
- pass queryId directly instead of ObservableQuery object (405ae24)
- remove analysis_options.yaml as its ineffective (0a8d05d)
- remove equatable package (0c32b14)
- remove equitable package and update tests (dbe4db5)
- subscriptions reconnect (fd8f3d1)
- subscriptions reconnect (c310db2)
- suppress fix: individually suppress "deprecated_member_use_from_same_package" only (511630f)
- temporary disable assertion which is failing (3cf7333)
- update .gitignore with standard flutter paths (892fe36)
- graphql-flutter: replace document string with AST Document (23e40af)
- update starwars example (8aaa99b)
- example: depend on updated angel server, add paging example (609c4ec)
- flutter: prevent observable discarding in
MutationState.didChangeDependencies
(baeca25) - flutter: return callback results in case of futures to await (c7d6fd1)
- graphql-flutter: ignore ast errors in the core (3b16f3f)
- packaging: update rxdart and sdk min versions (1980f22), closes #497
- tests: clobbered tests from library-level exceptions (f76e165)
- tests: fix failing tests seemingly to to ast-switch (664fdd1)
- use AST for graphql client example (edf7df6)
- use case else instead of detached or suspended (9fb5aab)
- client: add error link (de9714a), closes #419 #440
- client: cache.reset() added (8c4f2e2)
- client: introduce Policies class for options and add defaults to client (fa24aab)
- client: library-level exception handling (20e57bd)
- client: library-level exceptions (8976cfc)
- client: support defining operations from document AST (fa2db11)
- client: support joining multiple links at once (9565244)
- attempt to call mutation callbacks from mutation method (e323a4d)
- better message on UnhandledFailure (eccab11)
- document exception handling (b38e2a3)
- flutter: add mutation callback for onError (1ff0b8f)
- graphql-client: re-export parseString as gql (dcd5508)
- update examples to gql instead of parse string (7b9ac57)
- updating example (1a1bc43)
- use equatable package to make it easier to compare links (a7ed072)
- packaging: projects dependent on old sdk/rxdart versions wouldn't build, there is a way to override rxdart dependency with dependency_override (we don't use Observable features in these places, so it should be compatible with older version) there is no way to override min sdk version outside of a project
- client: replaces result.errors with result.exception
3.0.0-beta.3 (2020-01-09)
- client: use http 0.12.0+4 to fix a wrong content-type header on multipart request on http 0.12.0+3 (ea8822c), closes #525
3.0.0-beta.2 (2020-01-08)
- packaging: projects dependent on old sdk/rxdart versions wouldn't build, there is a way to override rxdart dependency with dependency_override (we don't use Observable features in these places, so it should be compatible with older version) there is no way to override min sdk version outside of a project
3.0.0-beta.1 (2019-12-22)
- cache: add value == and hashCode to lazy cache map, fix traversal (617dde7)
- cache: AppLifecycleState.{suspending -> detached} (8bc7b14)
- ci: attempt to fix ci (4fac2e4)
- client: default toEncodable (5f938e4)
- client: export operation and fetch results (5dcbae5)
- client: make fetchMore valid with default original document again (faa3779)
- client: organize exports alphabetically (a322339)
- client: patch fetchMore to write to cache (9cb7474)
- client: use noCache for fetchMore, avoiding normalization (da20541)
- docs: remove moved onComplete (31a0d2f)
- docs: use ast for examples (d68616e)
- example: depend on updated angel server, add paging example (609c4ec)
- flutter: prevent observable discarding in
MutationState.didChangeDependencies
(baeca25) - flutter: return callback results in case of futures to await (c7d6fd1)
- pass queryId directly instead of ObservableQuery object (405ae24)
- graphql-flutter: ignore ast errors in the core (3b16f3f)
- add eager result to stream, rebuild query widget on var change (af89b19)
- bump gql dependency (b55a891)
- don't set default policies on options so defaults are applied (fd95e37)
- exception test cases (001cb48)
- fix issues so example runs on latest stable (87d8feb)
- ignore
*.iml
and.idea
(361fdff) - ignore linting errors from the core (0612d44)
- ignore uri doesn't exist lint error (e14349d)
- individually suppress "deprecated_member_use_from_same_package" only (3879f18)
- individually suppress "deprecated_member_use_from_same_package" only (9216976)
- remove analysis_options.yaml as its ineffective (0a8d05d)
- remove equatable package (0c32b14)
- remove equitable package and update tests (dbe4db5)
- subscriptions reconnect (c310db2)
- subscriptions reconnect (fd8f3d1)
- suppress fix: individually suppress "deprecated_member_use_from_same_package" only (511630f)
- switch test to AST from document string (894dc53)
- temporary disable assertion which is failing (3cf7333)
- update .gitignore with standard flutter paths (892fe36)
- update starwars example (8aaa99b)
- use AST for graphql client example (edf7df6)
- graphql-flutter: replace document string with AST Document (23e40af)
- tests: clobbered tests from library-level exceptions (f76e165)
- tests: fix failing tests seemingly to to ast-switch (664fdd1)
- use case else instead of detached or suspended (9fb5aab)
- client: add error link (de9714a), closes #419 #440
- client: cache.reset() added (8c4f2e2)
- client: introduce Policies class for options and add defaults to client (fa24aab)
- client: library-level exception handling (20e57bd)
- client: library-level exceptions (8976cfc)
- client: support defining operations from document AST (fa2db11)
- client: support joining multiple links at once (9565244)
- attempt to call mutation callbacks from mutation method (e323a4d)
- better message on UnhandledFailure (eccab11)
- document exception handling (b38e2a3)
- flutter: add mutation callback for onError (1ff0b8f)
- graphql-client: re-export parseString as gql (dcd5508)
- update examples to gql instead of parse string (7b9ac57)
- updating example (1a1bc43)
- use equatable package to make it easier to compare links (a7ed072)
- client: replaces result.errors with result.exception
See GitHub Releases.
-
Loosened
initPayload
todynamic
to support many use-cases, RemovedInitOperation
's excessive and inconsistent json encoding. Old implmentation can still be utilized aslegacyInitPayload
until deprecation -
Fixed broken anonymous operations