NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1171 most downloaded on pub.dev
MobX is a library for reactively managing the state of your applications. Use the power of observables, actions, and reactions to supercharge your Dart and Flutter apps.
Last release 27 days ago
11 Sep 2026
Release timing varies
gaps range from 1 weeks to 13 months
Most releases are documented
notes for 44 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
133 releases · first in 2018
Removing the deprecated authors field from pubspec.yaml
authors field from pubspec.yamlREADME.md translated to Portuguese, thanks to Jacob MouraFixed some analyzer errors related to unused_element
Store.disposeunused_elementOne column per quarter.
Nothing published for this version
Nothing published for this version
Documentation comments for many of the public methods and classes
Added toString override for MobXException
toString override for MobXExceptionObservableValue that is a common interface for all observables: Observable, Computed, ObservableFuture, ObservableStream. Thanks to @t-artikovNothing published for this version
Nothing published for this version
Fixes the type resolution bug that prevented using types from packages like dart:ui
dart:uiStore classes referenced in the @store based generationThanks to @shyndman for the tremendous work on this release.
pubspec.yamlobserver.dart to separate out the StatelessObserverWidget, StatefulObserverWidget and the ObserverWidgetMixin into their own files.Added new way to create Store classes using the @store annotation. This will exist as an alternative to the mixin based approach we already have.
Store classes using the @store annotation. This will exist as an alternative to the mixin based approach we already have.reaction for using a custom EqualityComparator<T, T>. This is useful when you want to avoid expensive reactions by plugging in a custom comparison function for the previous and next values of the predicate.Nothing published for this version
Nothing published for this version
Fixed a bug where the ObservableFuture would not show the correct status. This was happening because of the lazy evaluation strategy. We are now being
ObservableFuture<T> would not show the correct status. This was happening because of the lazy evaluation strategy. We are now being eager in creating the status and monitoring the inner Future<T> immediately.test_coveragemobx dependency version to 0.4.0 in flutter_mobx pubspec.yamlObserver in debug-mode with the correct line in StackTrace.Thanks to Scott Hyndman for all the contributions in this release.
Removing the deprecated authors field from pubspec.yaml
Observer-widgets: StatelessObserverWidget and StatefulObserverWidgetObserver widgets.debugAddStackTraceInObserverName fieldauthors field from pubspec.yamlThanks to Scott Hyndman and Remi Rousselet for the work done in this release!
Removed the @experimental annotations for Observable{Future,Stream} and reaction.
@experimental annotations for Observable{Future,Stream} and reaction.meta package.Nothing published for this version
Wrapping all collection setters in conditional action wrappers. This removes the need to wrap collection mutating methods in explicit actions.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Errors that occur internal to the setState() call are now reported via FlutterError.reportError so they don't go unnoticed by the user.
setState() call are now reported via FlutterError.reportError so they don't go unnoticed by the user.pubspec.yamlNothing published for this version
Nothing published for this version
Nothing published for this version
API changes introduced to the enforceActions setting of ReactiveConfig. It is now called writePolicy and the enum EnforceActions has been renamed to R
enforceActions setting of ReactiveConfig. It is now called writePolicy and the enum EnforceActions has been renamed to ReactiveWritePolicy.readPolicy setting on ReactiveConfig. It is an enumeration with two values:ReactiveWritePolicy is violated. This was a vestige from the mobx.js world.isWithinBatch on ReactiveContext, which tells if the current code is running inside a batch. This is used to conditionally apply an action-wrapper for mobx_codegen-generated setters.conditionallyRunInAction() that runs the given function in an action only when outside a batch.enum ReactiveReadPolicy { always, never }
mobx 0.3.0StackTrace.current as the name for an Observer, when not provided. This helps in quickly jumping to the location of the Observer-usage during debugging.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
- README updates
An internal change was made to support the new restrictions around non-covariant type variables in superinterfaces. This was causing compile errors in
beta/dev/master channels.0.2.1 version of mobx, which makes it compatible with the latest beta/dev/master channelsA breaking change has been introduced to the use of the Store type. Previously it was meant to be used as an _interface_, which has now changed to a m…
Store type. Previously it was meant to be used as an interface, which has now changed to a mixin. Instead of doing:abstract class UserBase implements Store {}
You now do:
abstract class UserBase with Store {}
This allows us to add more convenience methods to the Store mixin without causing any breaking change in the future. With the current use of the interface, this was not possible and was limiting the purpose. Store was just a marker interface without any core functionality. With a mixin, it opens up some flexibility in adding more functionality later.
Store mixin.0.2.0 version of mobxObserver's builder function. This was originally an AssertionError, which was deemed to be too strong and caused apps to crash in debug mode.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →