PackageTrack
Sign in Get early access

ferry_cache

A normalized, strongly typed, optimistic cache for GraphQL Operations and Fragments

0.10.1 70K downloads/mo #1284 most downloaded on pub.dev gql-dart/ferry

What this package is like to depend on

Last release 1 years ago

03 May 2025

Ships fairly regularly

a new release about every 3 months

Most releases are documented

notes for 23 of 29 stable releases

Nothing withdrawn

no release was ever pulled

6 years old

74 releases · first in 2020

0 releases in the last 12 months

see the full history below

Release timeline

74 releases · May 2020 to May 2025
2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 74
  1. 0.10.1 07 Feb 2025
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  2. 0.10.1-dev.1 07 Feb 2025 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  3. 0.10.1-dev.0 06 Jan 2025 pre-release
    Release notes
    • FEAT(ferr_cache): add evict operation.

    2025-01-06

    Changes


    Packages with breaking changes:

    Packages with other changes:

    Packages graduated to a stable release (see pre-releases prior to the stable version for changelog entries):

    • ferry - v0.16.1+2
    • ferry_exec - v0.7.0
    • ferry_flutter - v0.9.1+1
    • ferry_generator - v0.12.0+2
    • ferry_test_graphql2 - v0.4.0

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry_cache - v0.10.0+1

    Open source →
    Release notes
    • FEAT(ferr_cache): add evict operation.
    Open source →
  4. 0.10.1-dev.0+1 03 May 2025 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  5. 0.10.0+1 06 Jan 2025
    Release notes
    • Update a dependency to the latest release.
    Open source →
  6. 0.10.0-dev.0 06 Jan 2025 pre-release
    Release notes
    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    • BREAKING CHORE(deps): upgrade rxdart to v0.28.0 (#612).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    • BREAKING CHORE(deps): upgrade rxdart to v0.28.0 (#612).
    Open source →
  7. 0.9.0 06 Jan 2025
    Release notes

    2024-02-03

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry - v0.16.0+1
    • ferry_flutter - v0.9.0-dev.9

    Open source →
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  8. 0.9.0+1 03 Feb 2024
    Release notes
    • Update a dependency to the latest release.
    Open source →
  9. 0.9.0-dev.4 23 Oct 2024 pre-release
    Release notes
    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    Open source →
    Release notes
    • Update a dependency to the latest release.
    Open source →
  10. 0.9.0-dev.3 26 Sep 2024 pre-release
    Release notes
    • BREAKING CHORE(deps): upgrade rxdart to v0.28.0 (#612).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • BREAKING CHORE(deps): upgrade rxdart to v0.28.0 (#612).
    Open source →
  11. 0.9.0-dev.2 20 May 2024 pre-release
    Release notes
    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    Open source →
  12. 0.9.0-dev.1 12 Feb 2024 pre-release
    Release notes
    • BREAKING FEAT(ferry_generator): make dataToJson() method type safe by using the generic data type instead of dynamic.
    Open source →
    Release notes
    • Update a dependency to the latest release.
    Open source →
  13. 0.9.0-dev.0+2 12 Feb 2024 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  14. 0.8.0 11 Nov 2023
    Release notes

    2023-05-02

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry_flutter - v0.8.1-dev.1
    • ferry_cache - v0.7.1-dev.8

    Open source →
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  15. 0.8.0-dev.2 03 Feb 2024 pre-release
    Release notes
    • FIX: Use Posix separators for output paths (#369).
    • FIX: revert broken transitive dependency.
    • FIX: upgrade analyzer dependency.
    • FEAT(ferry_generator): when/maybeWhen extensions (#470).
    • FEAT(ferry): add IsolateClient (#405).
    • FEAT: generate possibleTypesMap in ferry_generator (#371).
    • BREAKING FIX(ferry_generator): properly generate nullable types for nullable elements in Lists (#445).
    • BREAKING CHORE: update gql_code_builder, gql_exec and vestigial analyzer pubspec entry.
    Open source →
    Release notes
    • Update a dependency to the latest release.
    Open source →
  16. 0.8.0-dev.1 12 Nov 2023 pre-release
    Release notes
    • FEAT(ferry_generator): support adding in the config of build.yaml in your graphql_builder in order to wrap nullable fields into a Value type in order to distinguish between absent and null values in inputs (#549).
    Open source →
  17. 0.8.0-dev.0 11 Nov 2023 pre-release
    Release notes
    • BREAKING FEAT(ferry_generator): upgrade to latest gql_code_builder (#637).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    • BREAKING FEAT(ferry_exec): remove usage of dynamic in cache and AddTypeNameTypedLink by adding new methods to operationrequest (#547).
    Open source →
  18. 0.7.1 18 Feb 2023
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  19. 0.7.1+1 20 Feb 2023
    Release notes
    • Update a dependency to the latest release.
    Open source →
  20. 0.7.1+2 02 May 2023
    Release notes
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.

    2023-05-02

    Changes


    Packages with breaking changes:

    Packages with other changes:

    Packages graduated to a stable release (see pre-releases prior to the stable version for changelog entries):

    • ferry - v0.14.2+1
    • ferry_cache - v0.7.1
    • ferry_flutter - v0.8.1
    • ferry_generator - v0.8.0
    • ferry_hive_store - v0.5.1
    • ferry_store - v0.5.3
    • ferry_test_graphql2 - v0.2.3
    • normalize - v0.8.2+1

    Open source →
    Release notes
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    Open source →
  21. 0.7.1-dev.8 02 May 2023 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  22. 0.7.1-dev.7 02 May 2023 pre-release
    Release notes
    • REFACTOR: apply lints fixes (#479).
    • REFACTOR(ferry_cache): use jsonMapEquals instead of DeepCollectionEquality.equals() to avoid it's O(n^2) complexity, remove duplicated .distinct() call (#477).
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    • FIX(ferry_cache): ensure emitting only one update per updated data ID in cache in watchQuery/watchFragment (#416).
    • FIX(ferry_cache): fix cache emits update too often (#411).
    • FIX(ferry_cache): fix regression in watch() methods by making changeStream emit when new item is added to the cache (#403).
    • FIX(cache): Fix memory leak. (#385).
    • FIX: add possibleTypes to every function that can use it of normalize (#380).
    • FIX: pin normalize 0.6.0.
    • FEAT(ferry_hive_store): use jsonMapEquals instead of DeepCollectionEquality().equals to avoid it's O(n^2) complexity, add distinct: param to watch() method (#475).
    • FEAT(ferry_cache): add clearOptimisticPatches() (#459).
    • FEAT(ferry): add IsolateClient (#405).
    • BREAKING FIX(ferry_generator): properly generate nullable types for nullable elements in Lists (#445).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • REFACTOR: apply lints fixes (#479).
    • REFACTOR(ferry_cache): use jsonMapEquals instead of DeepCollectionEquality.equals() to avoid it's O(n^2) complexity, remove duplicated .distinct() call (#477).
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    • FIX(ferry_cache): ensure emitting only one update per updated data ID in cache in watchQuery/watchFragment (#416).
    • FIX(ferry_cache): fix cache emits update too often (#411).
    • FIX(ferry_cache): fix regression in watch() methods by making changeStream emit when new item is added to the cache (#403).
    • FIX(cache): Fix memory leak. (#385).
    • FIX: add possibleTypes to every function that can use it of normalize (#380).
    • FIX: pin normalize 0.6.0.
    • FEAT(ferry_hive_store): use jsonMapEquals instead of DeepCollectionEquality().equals to avoid it's O(n^2) complexity, add distinct: param to watch() method (#475).
    • FEAT(ferry_cache): add clearOptimisticPatches() (#459).
    • FEAT(ferry): add IsolateClient (#405).
    • BREAKING FIX(ferry_generator): properly generate nullable types for nullable elements in Lists (#445).
    Open source →
  23. 0.7.1-dev.6 02 May 2023 pre-release
    Release notes
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    • BREAKING FEAT(ferry_exec): remove usage of dynamic in cache and AddTypeNameTypedLink by adding new methods to operationrequest (#547).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    • BREAKING FEAT(ferry_exec): remove usage of dynamic in cache and AddTypeNameTypedLink by adding new methods to operationrequest (#547).
    Open source →
  24. 0.7.1-dev.5 30 Apr 2023 pre-release
    Release notes
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    • BREAKING FEAT(ferry_exec): remove usage of dynamic in cache and AddTypeNameTypedLink by adding new methods to operationrequest (#547).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    • BREAKING FEAT(ferry_exec): remove usage of dynamic in cache and AddTypeNameTypedLink by adding new methods to operationrequest (#547).
    Open source →
  25. 0.7.1-dev.4 30 Apr 2023 pre-release
    Release notes
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).

    2023-08-13

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry - v0.15.0-dev.3
    • ferry_flutter - v0.8.1-dev.3

    Open source →
    Release notes
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    Open source →
  26. 0.7.1-dev.3 13 Aug 2023 pre-release
    Release notes
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    • FEAT(ferry_generator): add option to reuse data classes for fragments with a single inline fragment spread as selection (#530).
    Open source →
  27. 0.7.1-dev.2 21 Jan 2023 pre-release
    Release notes
    • REFACTOR: apply lints fixes (#479).
    • FIX(normalize): When there are dangling references in child objects of a list, by default do not treat the whole entity as partial data, but remove it from the list. This can be configured using the allowDanglingReference parameter.
    Open source →
  28. 0.7.1-dev.1 30 Apr 2023 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  29. 0.7.1-dev.0 28 Dec 2022 pre-release
    Release notes
    • FEAT: add clearOptimisticPatches() (#459).
    Open source →
  30. 0.7.1-dev.0+2 23 Feb 2023 pre-release
    Release notes
    • DOCS: add basic documentation for field policy (#494).
    Open source →
  31. 0.7.1-dev.0+3 19 May 2023 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  32. 0.7.0 11 Dec 2022
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  33. 0.7.0-dev.0 01 Nov 2022 pre-release
    Release notes
    • DOCS(ferry_exec): fix typo.
    • BREAKING FEAT(ferry_generator): update to gql_code_builders 0.12.0. this extracted the common serializers to a separate package. clients need to add gql_code_builder_serializers to their dependencies if they use ferry_generator. (#601).
    Open source →
    Release notes

    Note: This release has breaking changes.

    • BREAKING FIX: properly generate nullable types for nullable elements in Lists (#445).
    Open source →
  34. 0.6.4 25 Sep 2022
    Release notes
    • Graduate package to a stable release. See pre-releases prior to this version for changelog entries.
    Open source →
  35. 0.6.4-dev.0 25 Sep 2022 pre-release

    Nothing published for this version

  36. 0.6.4-dev.0+1 30 Oct 2022 pre-release

    Nothing published for this version

  37. 0.6.3-dev.1 21 Sep 2022 pre-release
    Release notes
    • FIX: ensure emitting only one update per updated data ID in cache in watchQuery/watchFragment (#416).
    Open source →
  38. 0.6.3-dev.0 18 Sep 2022 pre-release
    Release notes
    • FIX: fix cache emits update too often (#411).
    • FIX: fix regression in watch() methods by making changeStream emit when new item is added to the cache (#403).
    • FEAT: add IsolateClient (#405).
    Open source →
  39. 0.6.2-dev.0+1 27 Aug 2022 pre-release

    Nothing published for this version

  40. 0.6.1 18 Aug 2022
    Release notes
    • n

    2024-02-12

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry_cache - v0.9.0-dev.0+2
    • ferry_generator - v0.10.0-dev.0+1
    • ferry_test_graphql2 - v0.3.0-dev.0+1
    • ferry - v0.16.0-dev.0+2
    • ferry_flutter - v0.9.0-dev.1

    Open source →
    Release notes
    • FIX: add missing possibleTypes parameters to calls to normlalize

    • FIX: add possibleTypes to every function that can use it of normalize (#380).

    Open source →
  41. 0.6.1+1 21 Aug 2022
    Release notes
    • Update a dependency to the latest release.
    Open source →
  42. 0.6.1-dev.0+1 18 Aug 2022 pre-release
    Release notes
    • DOCS(ferry_exec): fix typo.

    2024-02-12

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry_flutter - v0.9.0-dev.2
    • ferry - v0.16.0-dev.1
    • ferry_cache - v0.9.0-dev.1
    • ferry_generator - v0.10.0-dev.1
    • ferry_test_graphql2 - v0.3.0-dev.1

    Open source →
  43. 0.6.1-dev.0+2 21 Aug 2022 pre-release

    Nothing published for this version

  44. 0.6.0 15 Aug 2022
    Release notes
      • FEAT: pass context to gql links.

    2024-02-03

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:

    Packages with dependency updates only:

    Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.

    • ferry_flutter - v0.9.0-dev.8
    • ferry_cache - v0.8.0-dev.2

    Open source →
    Release notes
    • bump normalize dependency version constraint to fix fragment disambiguation

    • FIX: pin normalize 0.6.0.

    Open source →
  45. 0.6.0-dev.0+1 15 Aug 2022 pre-release
    Release notes
    • FIX(ferry_exec): pass context for JsonOperationRequests (#580).

    2024-02-03

    Changes


    Packages with breaking changes:

    • There are no breaking changes in this release.

    Packages with other changes:


    Open source →
  46. 0.5.5 15 Jul 2021
    Release notes
    • FEAT: update dependences.
    • FEAT: update dependences.
    • CHORE: publish packages.
    • CHORE: publish packages.
    Open source →
  47. 0.5.5-dev.10 06 Mar 2022 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  48. 0.5.5-dev.9 07 Sep 2021 pre-release
    Release notes
    • Update a dependency to the latest release.
    Open source →
  49. 0.5.5-dev.8 07 Sep 2021 pre-release
    Release notes
    • DOCS: remove stale code (#271).
    Open source →
  50. 0.5.5-dev.6 05 Sep 2021 pre-release
    Release notes
    • FIX: add missing dependencies (#268).
    Open source →
  51. 0.5.5-dev.5 05 Sep 2021 pre-release
    Release notes
    • FIX: add missing dependencies (#267).
    Open source →
  52. 0.5.5-dev.4 02 Sep 2021 pre-release
    Release notes
    • FIX: add missing override annotations (#261).
    Open source →
  53. 0.5.5-dev.3 02 Sep 2021 pre-release
    Release notes
    • FEAT: add github action for validating formatting (#260).
    Open source →
  54. 0.5.5-dev.2 01 Sep 2021 pre-release
    Release notes
    • FEAT: add extensions to response (#259).
    Open source →
  55. 0.5.5-dev.1 01 Sep 2021 pre-release
    Release notes

    Note: This release has breaking changes.

    • BREAKING FEAT: build generated files to generated subdirectory.
    Open source →
  56. 0.5.5-dev.0+1 01 Sep 2021 pre-release
    Release notes
    • FIX: move pedantic to dependency (#257).
    Open source →
  57. 0.5.4 09 Jun 2021
    Release notes
    • FEAT: update dependences.
    • CHORE: publish packages.
    • CHORE: publish packages.
    Open source →
  58. 0.5.3 19 May 2021
    Release notes
    • add support for dataIdFromObject
    • bump normalize version
    Open source →
  59. 0.5.3+1 01 Jun 2021
    Release notes
    • FIX: Supply empty possibleTypeOf map operationFieldNames.
    • FIX: resolve issue with data change streams.
    • FIX: resolve issue with data change streams.
    • CHORE: publish packages.
    • CHORE: publish packages.
    Open source →
  60. 0.5.3+2 09 Jun 2021

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive