repository 4.0.1
repository: ^4.0.1 copied to clipboard
A reactive repository toolkit for Flutter with HTTP, caching, dependency tracking, auto refresh, and UI integration.
4.0.1 - 2026-09-23 #
- Allow
cupertino_http3.x (>=2.3.0 <3.2.0) for Swift Package Manager / Native Assets support, while keeping compatibility with 2.3.x.
4.0.0-dev.1 Unreleased #
- Add configurable, isolated
RepositoryClientinstances. - Add
BaseRepository.configfor a default client captured by new repository instances while preserving optional per-repository overrides. - Add base URL resolution with typed relative and absolute repository URLs.
- Add ordered
RepositoryInterceptormiddleware with replay support. - Add external typed action factories whose runs receive
RepositoryClient, returnEither, and update repository state only onRight. - Remove the legacy
mutateinterface; repository writes now use typed actions. - Merge the Flutter integration into the main
repositorypackage. - Pass the complete
RepositoryState<Data>toRepositoryBuildercallbacks so consumers retain state metadata and handle states exhaustively. - Model content availability as
RepositoryStatePending,RepositoryStateReady, orRepositoryStateError, while preserving ready stale data when a background refresh fails. - Add repository dependencies, nullable resolution, hydration coordination, and exception-safe fibers.
- Separate cache
hydrate()from remoterefresh()and expose the initialhydrationfuture instead of a coordination completer. - Add multi-method HTTP requests, request bodies, mocks, token builders, platform-specific clients, and network-unavailable errors.
- Default requests with bodies to
Content-Type: application/jsonwhile preserving explicitly provided content types. - Make the package:http transport injectable with explicit ownership and a uniform client close lifecycle.
- Make
ZipRepositoryreact to changes from its child repositories. - Replace the old
Repositorybase class withBaseRepositoryand useRepositoryas the concrete HTTP implementation. - Move
HiveRepositoryCacheStorageinto the optionalrepository_cache_hiveadapter package so the core no longer depends on Hive.
3.0.0 - 2023-05-22 #
- Major rewrite of all repository package to be more efficient and gracefully handle the different cache strategies, using hive as default and adding Zip repository.
2.0.0 - 2019-10-02 #
- Major rewrite of
CachedRepositoryso that it returnsCacheItem<Item>instead ofItems. This is a breaking change as it's no longer mutable. But it allows for cooler advanced functionality as it offers new information to users.
1.0.4 - 2019-10-01 #
- Add
OnlyCollectionFetcher.
1.0.3 - 2019-09-13 #
- Major rewrite of
CachedRepositoryto be more efficient and gracefully handle the different cache strategies as well as caches yielding multiple values.
1.0.2 - 2019-09-09 #
CachedRepositoryallowing multiple cache strategies.
1.0.1 - 2019-09-09 #
- Minor fixes allowing
fetchstream subscription to be closed after first event.
1.0.0 - 2019-09-06 #
- Removed unnecessary dependencies
flutter,hive,path_provider,providerandshared_preferences. - Fixed pubspec description and homepage.
- Added example.
0.0.1 - 2019-08-22 #
- Initial release with basic
RepositoryandIdstructure, as well asInMemoryStorage,Transformer,ObjectToJsonTransformer,JsonToStringTransformer, andCachedRepository.