- Migrate to null safety
- Upgrade offline operations design
- Fix graph persistence issues
- Notifier
throttlehelper now takes aDuration Function()argument - Make
syncLocal=falsethe default - Fix flashing screen with
filterLocal - Misc watcher fixes
- Update logging style
- Offline support for all types of requests, including ad-hoc requests via
sendRequest - Fix
typeIdmanagement and issues aroundclear - Fix graph persistence issues
- Initialize graph externally (codegen)
- Remove
clearAll(use generatedrepositoryProviders+clearfor each one) - Fix bugs related to
types, internal types - Misc utils fixes
- Fix singular/plural types, fix remote default
- Allow specifying remote default value via
@DataRepository - Allow
typeto be overridable - Implemented offline-supporting APIs:
offlineSaved,offlineDeleted,offlineSync,offlineClear - Offline handling in
watchAll,watchOneandsave - Fix
addInverseissue - Fix initialization issues
- Make relationship collection-like, rework equality, fixes #88
- Improvements to
data_state - Restore functional
sendRequestAPI, addEtype param - Unify adapters into one main adapter graph and sort, closes #78
- Remove
ProviderandGetItbuilt-in support, can easily be done with documented extensions
- Fix
test.data.dartimports
- Fix type issues
- Add inverses to initialized belongsto relationships
- Support
onErroronsave - Notifier
updateWithfeature
- Add
syncLocalandfilterLocalfeatures - Make
saveoptimistic - Use default headers & params by default in
sendRequest - Include
data_statepackage within Flutter Data, upgrade others - Fix bug with related model updates in
alsoWatch - Fix initialization and refresh issues
- Fix empty response handling
- Fix URI helpers broken on web
- Allow specifying remoteType (useful for the JSON:API adapter)
- Always return Riverpod
StateNotifierProviders (notStateNotifierStateProviders)
- repositoryInitializerProvider is now fully restartable via riverpod ref.container.refresh
- if can't channel error through notifier then throw
- fix watchAll event handling
- add testing support
- fix onError callback
- guard onDispose with ref.mounted
- fix faulty data_state
- TODO since 0.5.9
- fix clearAll
- Upgrade dependencies
- Fix clearing boxes
- Fix
fieldForKey/keyForFieldin attributes
- Upgrade to Riverpod 0.10.x
- Upgrade to Riverpod 0.6.x
- Allow passing a repository to init() and generate dartdoc
- Expose adapter in DataModel, useful for extensions
- [bugfix] Adapter codegen related to models with a DataModel parent
- [bugfix] Type to string camelCase issue
- [internals] Simplify local storage
- Riverpod support
get_itsupport- Flutter Web support
- Self-reference relationship support
DataSupportis nowDataModeland it's a mixin- Redesign and reorganization for more API stability
- New
httpClientandsendRequestfor custom endpoints - Default params & headers now called
defaultParamsanddefaultHeaders - JSON serializer adapter is now included by default
- Move
JSONAPIAdapterto separate package - Expose graph API to external adapters
- Tons of small issues fixed
- 90%+ test coverage
- Dart docs
- New serializer API with
DeserializedData - Adapt, fix & merge
StandardJSONAdapterinto core, no longer required as adapter - New
DataSupport#init(manager, key, save)API shouldLoadRemoteAll,shouldLoadRemoteOneAPIs- Misc optimizations
- Test infrastructure fixes
- Throttle graph events, configure duration via
throttleDurationofWatchAdapter - Namespaced graph for custom adapters wanting to leverage graph capabilities
- JSON API adapter fixes
- Removed
DataSupportMixin: onlyDataSupportleft, can be used as class or mixin - Possible to leave models uninitialized (i.e. empty models used in forms)
DataSupport#save,DataSupport#watch,DataSupport#deletewill auto-initialize- Misc fixes and vastly improved
watch*tests
- Stabilize API (including
data_stateupgrade) - Ensure to reset exceptions in
watchOnebugfix DataSupportMixinmanualinitnow takes aDataManagerargument- Clean up and minor fixes/additions in tests
- Flutter Data is now Adapter-based from the core
- New engine powering relationships and metadata, based on a persitent graph notifier
- Configurable inverses via
@DataRelationship - Notifiers and
watching APIs vastly improved,alsoWatch, allow to work without IDs DataSupportnow hasreload,watch,delete(that can also work without IDs)- Revamped JSON adapters;
fieldForKeyAPI - De-pollute models (only carries a
_flutterDataMetadatamap) - Remove
IdDataSupportfor Freezed, no longer needed - Use
Sets for relationships - Relationships MUST be final
- Upgrade
data_state: ^0.3.0andjson_api: ^4.2.1, droprxdart - Massive testing improvements
- new
repositoryForAPI, useful for serialization adapters - JSON:API adapter includes bugfix
Repository#dumpLocalto dump the contents of this repository local storageRepository#remoteflag (closes #30)- verbose flag (closes #18)
- allow passing Hive AES encryption key (closes #29)
- new urlFor* API
- default params (closes #27)
- normalize params/headers
- delete keys when deleting models
- minor API fixes
- builder hotfix
- revamped URL design
- fix API consistency
- misc fixes
- add toJson support for different freezed kinds
- improved query parameters
- improved docs
- fix dependency issues
- Make
json_serializableoptional - Make type arguments in adapters optional
- Generate
dataProvidersonly if 'provider' is a dependency
- Optional
fromJson/toJson
- Package fixes and documentation
- Make linter and pana happy
- Release to pub
- Revamp serialization system
- Added standard json and JSON:API adapters
- Better relationship support
- Auto/manual model initialization modes
- Allow nullable relationships
- Misc refactoring
- More test coverage
- Allow
DataIdto holdnullIDs and save ID-less models - Fix relevant unit & integration tests
- Fix
alsoAPI inDataManagerXextension - Improve tests
- Initial commit