provider 3.2.0
provider: ^3.2.0 copied to clipboard
A mixture between dependency injection and state management, built with widgets for widgets.
3.2.0 #
- Deprecated "builder" of providers in favor to "create"
- Deprecated "builder"/"initialBuilder" of proxy providers in favor of respectively "create" and "update"
3.1.0 #
- Added
Selector, similar toConsumerbut can filter unneeded updates - improved the overall documentation
- fixed a bug where
ChangeNotifierProvider.valuedidn't update dependents when theChangeNotifierinstance changed. Consumercan now be used insideMultiProviderMultiProvider( providers: [ Provider(builder: (_) => Foo()), Consumer<Foo>( builder: (context, foo, child) => Provider.value(value: foo.bar, child: child), ) ], );
3.0.0 #
breaking (see the readme for migration steps): #
Providernow throws if used with aListenable/Stream. This can be disabled by settingProvider.debugCheckInvalidValueTypetonull.- The default constructor of
StreamProviderhas now builds aStreaminstead ofStreamController. The previous behavior has been moved toStreamProvider.controller. - All
XXProvider.valueconstructors now usevalueas parameter name. - Added
FutureProvider, which takes a future and updates dependents when the future completes. - Providers can no longer be instantiated using
constconstructors.
non-breaking: #
- Added
ProxyProvider,ListenableProxyProvider, andChangeNotifierProxyProvider. These providers allows building values that depends on other providers, without loosing reactivity or manually handling the state. - Added
DelegateWidgetand a few related classes to help building custom providers. - Exposed the internal generic
InheritedWidgetto help building custom providers.
2.0.1 #
- fix a bug where
ListenableProvider.value/ChangeNotifierProvider.value/StreamProvider.value/ValueListenableProvider.valuesubscribed/unsubscribed to their respective object too often - fix a bug where
ListenableProvider.value/ChangeNotifierProvider.valuemay rebuild too often or skip some.
2.0.0 #
Consumernow takes an optionalchildargument for optimization purposes.- merged
ProviderandStatefulProvider - added a "builder" constructor to
ValueListenableProvider - normalized providers constructors such that the default constructor is a "builder",
and offer a
valuenamed constructor.
1.6.1 #
Provider.of<T>now crashes with aProviderNotFoundExceptionwhen noProvider<T>are found in the ancestors of the context used.
1.6.0 #
- new:
ChangeNotifierProvider, similar to scoped_model that exposesChangeNotifersubclass and rebuilds dependents only whennotifyListenersis called. - new:
ValueListenableProvider, a provider that rebuilds whenever the value passed to aValueNotifierchange.
1.5.0 #
- new: Add
Consumerwith up to 6 parameters. - new:
MultiProvider, a provider that makes a tree of provider more readable - new:
StreamProvider, a stream that exposes to its descendants the current value of aStream.
1.4.0 #
- Reintroduced
StatefulProviderwith a modified prototype. The second argument ofvalueBuilderanddidChangeDependencieshave been removed. AndvalueBuilderis now called only once for the whole life-cycle ofStatefulProvider.
1.3.0 #
- Added
Consumer, useful when we need to both expose and consume a value simultaneously.
1.2.0 #
- Added:
HookProvider, aProviderthat creates its value from aHook. - Deprecated
StatefulProvider. Either make aStatefulWidgetor useHookProvider. - Integrated the widget inspector, so that
Providerwidget shows the current value.
1.1.1 #
- add
didChangeDependenciescallback to allow updating the value based on anInheritedWidget - add
updateShouldNotifymethod to bothProviderandStatefulProvider
1.1.0 #
onDisposehas been added toStatefulProviderBuildContextis now passed tovalueBuildercallback



