modulisto 3.0.0
modulisto: ^3.0.0 copied to clipboard
An advanced state management solution with any number of event flows
Changelog #
3.0.0 - 2025-04-22 #
Bug Fixes #
- (collections_store) hide
valueunder UnmodifiableView's - (90a61e3) - (unit) check unit state on
addListener,removeListener- (17f308f)
Features #
- (unit) introduce
ModuleBindedUnitBasewith auto-disposition bind - (1dec02a) - [BREAKING CHANGE] operation - (0bc2a72)
- [BREAKING CHANGE] mutation context - (5359780)
- mutator accepts only
Storeand it subtypes - (c58ac9b) MapValueUnitViewmaps new value lazily - (87ab905)
Miscellaneous Chores #
- (debug)
debugReportOperationTypeMismatchnaming - (1447224) - (operation) future like operation handle - (b828fb5)
- (subject)
unawaitedinstead ofignore- (3408537) - (trigger) export
nothingValuefor empty payload - (26c69ae) - remove
DisposableonOperationRunner- (44a927e)
Refactoring #
- (map_store)
setKeyValueinstead ofsetValue- (66feb26) - (pipeline) split ref for pipelines - (e7cd1c2)
- (pipeline) split pipelines and contexts to less coupling - (60981e7)
Tests #
2.4.0 - 2025-03-16 #
Bug Fixes #
Features #
- (operation) expando nullify at dispose + tests - (78e039a)
Operation<T>- special indirect unit that wraps around functions - (70b43ed)- pipeline linker for
Operation<T>- (a964f68) - settings for package +
debugReportTypeMismatchOnOperation- (b049543) - integrate
OperationRunnerinModule- (daba526) - hide
debugName+ assigndebugNametoModuleoninitialize- (779dca9) - operation tests - (921d995)
Miscellaneous Chores #
- mark
modulewith$as internal marker - (c4898e5)
Ci #
- major update + fix lints - (7329f15)
2.2.1 #
- fix: remove unneccessary flutter sdk constraint in
pubspec.yaml - chore: rename
CloseableStreamWrappertoClosableStreamWrapper
2.2.0 #
- feat:
UnitAdapter<Unit>.stream()returnsCloseableStreamWrapperthat allows us to interact only with underlying.streamand.close - feat:
UnitAdapter<Store>.stream(emitFirstImmediately: true)will returnSubjectwrapped intoCloseableStreamWrapper - feat:
Subject<T>- lightweight alternative ofBehaviorSubjectfromrxdart, emits last value on each newStreamSubcription
2.1.0 #
- feat: extendable
UnitAdapterthat allows convertation ofUnitinto several other types - refactor: make
interfaces.dartmore clean looking - docs: doc-comments for
interfaces.dart
2.0.2 #
- docs: actualize documentation for
2.0.*
2.0.1 #
- feat(sync_pipeline):
StreamPipelineLinkerinSyncPipeline
2.0.0 #
- feat!(pipeline): new system of working with custom types in
Pipeline-PipelineLinker - feat!(pipeline): introduce two built-in linkers:
StreamPipelineLinkerandUnitPipelineLinker - feat!(pipeline): changed linkers signature in
Pipeline' constructors, relevant type comes first and then goes by method of subscription - fix!(unit):
Unit<T>now is justValueListenable<T>from Flutter SDK, that means that it doesn'textends Stream<T> - refactor(unit): reduce count of asynchronous calls in
Unitlifecycle - refactor(module):
Pipeline's queued by type for.dispose:AsyncPipelinedisposes first, thenSyncPipelinegoes off too
1.1.0 #
- refactor:
Set<Attachable>instead of attach callback inModule.initialize
1.0.2 #
- docs: fullpledged
README.md
1.0.1 #
- feat:
PipelineContextcan.updateanyUpdatable<T>interface implementation
1.0.0 #
- feat:
Trigger<T>as executiveUnit - feat:
Store<T>as storageUnit - feat:
Pipelineas flow handler (both.asyncand.sync) - feat:
ModuleLifecyclethat allows you to react on module lifecycle updates