PackageTrack
Sign in Get early access

riverpod_annotation

A package exposing annotations for riverpod_generator

4.0.6 1.1M downloads/mo #344 most downloaded on pub.dev rrousselGit/riverpod

What this package is like to depend on

Last release 26 days ago

28 Jul 2026

Ships fairly regularly

a new release about every 5 weeks

Nearly every release is documented

notes for 43 of 43 stable releases

1 version withdrawn

withdrawn after publishing

4 years old

57 releases · first in 2022

13 releases in the last 12 months

see the full history below

Release timeline

57 releases · Sep 2022 to Jul 2026
2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 57
  1. 4.0.6 28 Jul 2026
    Release notes

    riverpod_annotation : 4.0.5 -> 4.0.6
    riverpod_sqflite : 0.4.5 -> 0.4.6
    riverpod_generator : 4.0.7 -> 4.0.8
    flutter_riverpod : 3.4.1 -> 3.4.2
    riverpod_lint : 3.1.7 -> 3.1.8
    hooks_riverpod : 3.4.1 -> 3.4.2

    Open source →
    Release notes

    Dependency changes

    • riverpod upgraded to 3.4.2
    Open source →
  2. 4.0.5 26 Jul 2026
    Release notes

    Dependency changes

    • riverpod upgraded to 3.4.1
    Open source →
  3. 4.0.3 10 Jun 2026
    Release notes
    • Fix AsyncNotifierProvider/StreamNotifierProvider disposing dependencies watched after an asynchronous gap during rebuild. (thanks to @a1573595)

    Dependency changes

    • riverpod upgraded to 3.3.2
    Open source →
  4. 4.0.3-dev.2 06 May 2026 pre-release
    Release notes

    Dependency changes

    • riverpod upgraded to 3.3.2-dev.2
    Open source →
  5. 4.0.3-dev.1 03 May 2026 pre-release
    Release notes

    Upgrade riverpod

    Dependency changes

    • riverpod upgraded to 3.3.2-dev.1
    Open source →
  6. 4.0.2 03 Feb 2026
    Release notes

    Dependency changes

    • riverpod upgraded to 3.2.1
    Open source →
  7. 4.0.1 17 Jan 2026
    Release notes

    Dependency changes

    • riverpod upgraded to 3.2.0
    Open source →
  8. 4.0.0 28 Dec 2025
    Release notes

    Updated to match riverpod_generator

    Open source →
  9. 3.0.3 09 Oct 2025
    Release notes
    • riverpod upgraded to 3.0.3
    Open source →
  10. 3.0.2 07 Oct 2025
    Release notes
    • riverpod upgraded to 3.0.2
    Open source →
  11. 3.0.1 30 Sep 2025
    Release notes
    • Now supports Dart 3.7.0
    Open source →
  12. 3.0.0 10 Sep 2025
    Release notes

    Finally, a stable release for Riverpod 3.0!

    For the full changelog, check out https://riverpod.dev/docs/whats_new

    Open source →
  13. 3.0.0-dev.18 09 Sep 2025 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.18
    Open source →
  14. 3.0.0-dev.17 01 Aug 2025 pre-release
    Release notes
    • Fixed a conflict between public and private providers of the same name
    • Allow passing persist(key: ...)
    • Bump minimum meta version
    • Support @Riverpod(name: ...)
    • Add provider_name_strip_pattern build option
    • Bump minimum meta version
    • Support @Riverpod(name: ...)
    • Added MutationState.isPending/isIdle/hasError/isSuccess
    • fixes various "pause" issues
    • Bump minimum meta version
    • Added AsyncValue.retrying, to check when a retry is scheduled or pending
    • Exposed the default retry implementation (ProviderContainer.defaultRetry)
    • Offline's Storage now is base and requires overriding deleteOutOfDate
    • Make AsyncValue.copyWithPrevious @internal. This API was not meant to be public.
    Open source →
  15. 3.0.0-dev.16 20 Jun 2025 pre-release
    Release notes

    Reworked annotations. The old annotation logic has been removed.

    Open source →
  16. 3.0.0-dev.15 04 May 2025 pre-release
    Release notes

    Update dependency

    Open source →
  17. 3.0.0-dev.14 02 May 2025 pre-release
    Release notes

    Removed dead code

    Open source →
  18. 3.0.0-dev.13 01 May 2025 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.13
    Open source →
  19. 3.0.0-dev.12 30 Apr 2025 pre-release
    Release notes

    Say hello to Riverpod 3.0.0!
    This major version is a transition version, to unblock the development of the project. It is quite possible that a 4.0.0 will be released relatively soon in the future, so keep that in mind when migrating.

    Here are some highlights about this version:

    • Offline and mutation support, as experimental features
    • Automatic retry support
    • Pause/resume support
    • Simplification of various aspects of the API (such as fusing AutoDisposeNotifier/Notifier)
    • Added a Ref.mounted to simplify dealing with provider disposal
    • Improved testing with the new ProviderContainer.test() and the ability to mock a Notifier's build method without mocking the whole object using provider.overrideWithBuild(...)

    Note about experimental features:
    Anything imported with package:riverpod/experimental/....dart are not stable features. They may be modified in breaking ways without a major version. Use with care!

    Full change list

    • Breaking various package:riverpod objects are no-longer exported. If you wish to use providers by hand, you will have to separately import package:riverpod/riverpod.dart.
    • Breaking: ChangeNotifierProvider, StateProvider and StateNotifierProvider are moved out of package:hooks_riverpod/hooks_riverpod.dart to package:hooks_riverpod/legacy.dart.
    • Breaking: All providers now use == to compare previous/new values and filter updates. If you want to revert to the old behavior, you can override updateShouldNotify inside Notifiers.
    • Breaking: ProviderListenable.addListener is deleted and now internal-only. A simpler alternative will be added in the future.
    • Breaking: ProviderObserver methods have been updated to take a ProviderObserverContext parameter. This replaces the old provider+container parameters, and contains extra information.
    • Breaking: Removed all Ref subclasses (such FutureProviderRef). Use Ref directly instead. For FutureProviderRef.future, migrate to using an AsyncNotifier.
    • Breaking All ref and notifier methods besides "mounted" now throw if used after getting disposed.
    • Breaking: StateProvider and StateNotifierProvider are moved out of package:flutter_riverpod/flutter_riverpod.dart to package:flutter_riverpod/legacy.dart.
    • Breaking Some internal utils are no-longer exported.
    • Breaking AsyncValue.value now returns null during errors.
    • Breaking removed AsyncValue.valueOrNull (use .value instead).
    • Stream/FutureProvider.overrideWithValue was added back.
    • Breaking: Notifier and variants are now recreated whenever the provider rebuilds. This enables using Ref.mounted to check dispose.
    • Breaking: StreamProvider now pauses its StreamSubscription when the provider is not actively listened.
    • Breaking: Calling ref.watch multiple times calls ref.onListen every-times.
    • Breaking: A provider is now considered "paused" if all of its listeners are also paused. So if a provider A is watched only by a provider B, and B is currently unused, then A will be paused.
    • Breaking: When an asynchronous provider rebuilds, it doesn't immediately stops listening to its previous providers. Instead, those subscriptions are removed when the rebuild completes.
      This impacts how "auto-dispose" behaves. See https://github.com/rrousselGit/riverpod/issues/1253
    • Added @mutation support. Mutations are a way to enable your UI to easily listen to the status of side-effects. See the documentation of @mutation for further information.
    • Made @Riverpod final
    • Added @Dependencies([...]), for lint purposes. This is similar to @Riverpod(dependencies: [...]), but is applied on non-provider objects that may use a scoped provider.
    • Added support for @Riverpod(retry: ...)
    • Failing providers are now automatically retried after a delay. The delay can be optionally configured.
    • Allow using Ref synchronously after a provider has been invalidated. This avoids mounted exceptions when doing multiple operations in a quick succession.
    • Instead of Provider.autoDispose() and Provider.autoDispose.family(), it is now possible to write Provider(isAutoDispose: true) and Provider.family(isAutoDispose: true).
    • Fix StreamProvider not cancelling the StreamSubscription if the stream is never emitted any value.
    • All Ref life-cycles (such as Ref.onDispose) and Notifier.listenSelf now return a function to remove the listener.
    • Added methods to ProviderObserver for listening to "mutations". Mutations are a new code-generation-only feature. See riverpod_generator's changelog for more information.
    • Added Ref.listen(..., weak: true). When specifying weak: true, the listener will not cause the provider to be initialized. This is useful when wanting to react to changes to a provider, but not trigger a network request if not necessary.
    • AsyncValue now has an optional progress field. This can be set by providers to allow the UI to show a custom progress logic.
    • An error is now thrown when trying to override a provider twice in the same ProviderContainer.
    • Disposing a ProviderContainer now disposes of all of its sub ProviderContainers too.
    • Added ProviderSubscription.pause()/.resume(). This enables temporarily stopping the subscription to a provider, without it possibly loosing its state when using autoDispose.
    • Added ProviderContainer.test(). This is a custom constructor for testing purpose. It is meant to replace the createContainer utility.
    • Added NotifierProvider.overrideWithBuild, to override Notifier.build without overriding methods of the notifier.
    • Ref.mounted has been added. It can now be used to check if a provider was disposed.
    • When a provider is rebuilt, a new Ref is now created. This avoids issues where an old build of a provider is still performing work.
    • Updated AsyncValue documentations to use pattern matching.
    • Added support for Ref/ProviderContainer.invalidate(provider, asReload: true)
    • Failing providers are now automatically retried after a delay. The delay can be optionally configured.
    • Fixed a bug when overriding a specific provider of a family, combined with dependencies: [family]
    Open source →
  20. 3.0.0-dev.3 27 Nov 2023 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.3
    Open source →
  21. 3.0.0-dev.2 20 Nov 2023 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.2
    Open source →
  22. 3.0.0-dev.1 20 Nov 2023 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.1
    Open source →
  23. 3.0.0-dev.0 29 Oct 2023 pre-release
    Release notes
    • riverpod upgraded to 3.0.0-dev.0
    Open source →
  24. 2.6.1 22 Oct 2024
    Release notes
    • riverpod upgraded to 2.6.1
    Open source →
  25. 2.6.0 20 Oct 2024
    Release notes
    • riverpod upgraded to 2.6.0
    Open source →
  26. 2.5.3 12 Oct 2024
    Release notes
    • riverpod upgraded to 2.5.3
    Open source →
  27. 2.3.5 10 Mar 2024
    Release notes
    • riverpod upgraded to 2.5.1
    Open source →
  28. 2.3.4 03 Feb 2024
    Release notes
    • Improved @Riverpod(dependencies: [...]) documentation.
    Open source →
  29. 2.3.3 26 Nov 2023
    Release notes
    • riverpod upgraded to 2.4.9
    Open source →
  30. 2.3.2 20 Nov 2023
    Release notes
    • riverpod upgraded to 2.4.8
    Open source →
  31. 2.3.1 13 Nov 2023
    Release notes
    • riverpod upgraded to 2.4.7
    Open source →
  32. 2.3.0 28 Oct 2023
    Release notes
    • Exported internal FamilyOverride API, for use in generated code.
    Open source →
  33. 2.2.1 15 Oct 2023
    Release notes
    • riverpod upgraded to 2.4.4
    Open source →
  34. 2.2.0 05 Oct 2023
    Release notes
    • Exports @internal from pkg:meta for the code-generator to use.
    Open source →
  35. 2.1.6 27 Sep 2023
    Release notes
    • riverpod upgraded to 2.4.1
    Open source →
  36. 2.1.5 04 Sep 2023
    Release notes
    • riverpod upgraded to 2.4.0
    Open source →
  37. 2.1.4 28 Aug 2023
    Release notes
    • riverpod upgraded to 2.3.10
    Open source →
  38. 2.1.3 28 Aug 2023
    Release notes
    • riverpod upgraded to 2.3.8
    Open source →
  39. 2.1.2 16 Aug 2023
    Release notes
    • riverpod upgraded to 2.3.7
    Open source →
  40. 2.1.1 24 Apr 2023
    Release notes
    • riverpod upgraded to 2.3.6
    Open source →
  41. 2.1.0 18 Apr 2023
    Release notes
    • Added support for Raw typedef in the return value of providers. This can be used to disable the conversion of Futures/Streams into AsyncValues
      @riverpod
      Raw<Future<int>> myProvider(...) async => ...;
      ...
      // returns a Future<int> instead of AsyncValue<int>
      Future<int> value = ref.watch(myProvider);
      
    Open source →
  42. 2.0.4 07 Apr 2023
    Release notes
    • riverpod upgraded to 2.3.4
    Open source →
  43. 2.0.3 06 Apr 2023
    Release notes
    • riverpod upgraded to 2.3.3
    Open source →
  44. 2.0.2 13 Mar 2023
    Release notes
    • riverpod upgraded to 2.3.2
    Open source →
  45. 2.0.1 09 Mar 2023
    Release notes
    • riverpod upgraded to 2.3.1
    Open source →
  46. 2.0.0 28 Feb 2023
    Release notes
    • Export necessary utilities for providers returning a Stream.
    • Upgraded riverpod dependency
    Open source →
  47. 1.2.1 12 Feb 2023
    Release notes

    Bump minimum Riverpod version

    Open source →
  48. 1.2.0 12 Feb 2023 withdrawn
    Release notes
    • It is now possible to specify @Riverpod(dependencies: [...]) to scope providers
    • Marked @Riverpod as @sealed
    Open source →
  49. 1.1.1 25 Dec 2022
    Release notes

    Upgrade Riverpod to latest

    Open source →
  50. 1.1.0 25 Dec 2022
    Release notes

    Upgrade Riverpod to latest

    Open source →
  51. 1.0.6 01 Nov 2022
    Release notes

    Upgrade Riverpod to latest

    Open source →
  52. 1.0.5 31 Oct 2022
    Release notes

    Upgrade Riverpod to latest

    Open source →
  53. 1.0.4 08 Oct 2022
    Release notes

    Export more missing types

    Open source →
  54. 1.0.3 08 Oct 2022
    Release notes

    Export missing types

    Open source →
  55. 1.0.2 03 Oct 2022
    Release notes
    • Update a dependency to the latest release.
    Open source →
  56. 1.0.1 02 Oct 2022
    Release notes

    Upgrade Riverpod version

    Open source →
  57. 1.0.0 30 Sep 2022
    Release notes

    Initial release

    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive