riverpod_generator 3.0.0-dev.13
riverpod_generator: ^3.0.0-dev.13 copied to clipboard
A code generator for Riverpod. This both simplifies the syntax empowers it, such as allowing stateful hot-reload.
3.0.0-dev.13 - 2025-05-01 #
riverpod
upgraded to3.0.0-dev.13
riverpod_annotation
upgraded to3.0.0-dev.13
3.0.0-dev.12 - 2025-04-30 #
-
Breaking Removed support for
@riverpod external int fn();
. -
Breaking Family arguments are no-longer available on the
Ref
object. The various override methods now take two parameters:@riverpod String example(Ref ref, int arg, {required int anotherArg}) {...} // ... exampleProvider.overrideWith( (ref, ({int arg, int anotherArg}) args) { } )
-
Added support for mutations. See also
@mutation
for further information. -
Added support for
@Riverpod(retry: ...)
2.6.5 - 2025-02-28 #
riverpod_analyzer_utils
upgraded to0.5.10
2.6.4 - 2025-01-08 #
Support latest analyzer
2.6.3 - 2024-11-18 #
riverpod_analyzer_utils
upgraded to0.5.8
2.6.2 - 2024-10-27 #
riverpod_analyzer_utils
upgraded to0.5.7
2.6.1 - 2024-10-22 #
- Support analyzer >=6.7.0 <7.0.0 This should make it compatible with Flutter's stable channel.
2.6.0 - 2024-10-20 #
- Deprecated the generated
Ref
subclasses. Instead of:
Do:@riverpod Model foo(FooRef ref) => ..
@riverpod Model foo(Ref ref) => ..
2.4.4 - 2024-10-12 #
@Riverpod(dependencies: [...])
now respectsbuild.yaml
options
2.4.3 - 2024-08-15 #
riverpod_analyzer_utils
upgraded to0.5.4
2.4.2 - 2024-05-14 #
- Correctly set minimum support analyzer version to 6.5.0
2.4.1 - 2024-05-14 (retracted) #
- Support analyzer 6.5.0
2.4.0 - 2024-03-10 #
- Adds
provider_name_prefix
andprovider_family_name_prefix
tobuild.yaml
. (thanks to @ValentinVignal) - Generated providers are now always
const
. - Added support for abstract
build
method on Notifiers:
This is equivalent to writing:@riverpod class Example extends _$Example { @override int build(); }
@Riverpod(dependencies: []) class Example extends _$Example { @override int build() => throw UnimplementedError(); }
- Added support for documentation and annotations on providers/parameters.
Comments on providers and family parameters will be
injected in the generated code, for IDE documentation
in the relevant places.
Annotations will be pasted over, such as to mark parameters
as
@deprecated
everywhere. - Updated to support latest
riverpod_analyzer_utils
3.0.0-dev.11 - 2023-11-27 #
riverpod_annotation
upgraded to3.0.0-dev.3
riverpod
upgraded to3.0.0-dev.3
3.0.0-dev.10 - 2023-11-20 #
riverpod_annotation
upgraded to3.0.0-dev.2
riverpod
upgraded to3.0.0-dev.2
3.0.0-dev.9 - 2023-11-20 #
- Fix crash when encountering classes with a
ProviderBase
field.
3.0.0-dev.8 - 2023-10-30 #
riverpod_analyzer_utils
upgraded to1.0.0-dev.0
3.0.0-dev.7 - 2023-10-29 #
-
Providers can now be generic:
@riverpod List<T> example<T extends num>(ExampleRef<T> ref) { return <T>[]; } @riverpod class ClassExample<T> extends _$ClassExample<T> { @override List<T> build() => <T>[]; }
Specifying type parameters works the same as specifying arguments, and make the generated provider a "function":
ref.watch(example<int>());
-
Upgraded to use Riverpod 3.0
-
Fixed
family.overrideWith
missing
3.0.0-dev.5 - 2023-10-21 #
riverpod_analyzer_utils
upgraded to0.4.2
3.0.0-dev.4 - 2023-10-15 #
- Annotating a provider with
@deprecated
and a few other annotations also annotate the generated code accordingly (thanks to @SunlightBro) provider.argument
is now a record of all arguments in a provider.
3.0.0-dev.3 - 2023-10-06 #
riverpod_analyzer_utils
upgraded to0.4.1
riverpod_annotation
upgraded to2.2.0
3.0.0-dev.2 - 2023-10-02 #
riverpod_analyzer_utils
upgraded to0.4.0
3.0.0-dev.1 - 2023-10-02 #
The code generator now supports import aliases, generated types and typedefs as input of providers!.
This comes with a few minor restrictions:
-
Breaking: Returning a Typedef or type Future/FutureOr/Stream is no-longer supported:
typedef Example = Future<int>; @riverpod Example foo(FooRef ref) async => 0;
-
Breaking: Arguments of the form
fn(void myParameter())
are no-longer supported. Instead usefn(void Function() myParameter)
.
2.3.11 - 2024-02-04 #
riverpod_analyzer_utils
upgraded to0.5.1
2.3.10 - 2024-02-03 #
- Improved error handling if:
- a Notifier has no default constructor
- a Notifier has has a default constructor but with required parameters
- a Notifier is abstract
2.3.9 - 2023-11-27 #
riverpod_annotation
upgraded to2.3.3
riverpod
upgraded to2.4.9
2.3.8 - 2023-11-20 #
riverpod_annotation
upgraded to2.3.2
riverpod
upgraded to2.4.8
2.3.7 - 2023-11-20 #
- Fix crash when encountering classes with a
ProviderBase
field.
2.3.6 - 2023-11-13 #
Fix typos and internal changes
2.3.5 - 2023-10-21 #
riverpod_analyzer_utils
upgraded to0.4.1
2.3.4 - 2023-10-19 (retracted) #
riverpod_analyzer_utils
upgraded to0.4.1
2.3.3 - 2023-09-27 #
riverpod_analyzer_utils
upgraded to0.3.4
riverpod_annotation
upgraded to2.1.6
2.3.2 - 2023-09-04 #
- Disable
invalid_use_of_visible_for_testing_member
in generated files
2.3.1 - 2023-08-28 #
riverpod_annotation
upgraded to2.1.4
2.3.0 - 2023-08-28 #
- The "ref" object now contains the provider parameters too.
This enabled
provider.overrideWith
to use the provider arguments:@riverpod int example(ExampleRef ref, {int? id}) { /* */ } // ... exampleProvider.overrideWith( (ref) { print(ref.id); } )
- Fix all
provider.overrideWith
causing a cast error if the notifier receives arguments.
2.2.6 - 2023-08-16 #
- Support both analyzer 5.12.0 and analyzer 6.0.0
2.2.5 - 2023-08-03 #
Support analyzer 6.0.0
2.2.4 - 2023-07-25 #
Disable all lints in generated files.
2.2.3 - 2023-05-12 #
riverpod_analyzer_utils
upgraded to0.3.1
2.2.2 - 2023-05-12 #
- Fix an issue where specifying a dependency on a provider declared in a different file could cause a missing import.
2.2.1 - 2023-04-24 #
riverpod_annotation
upgraded to2.1.1
2.2.0 - 2023-04-18 #
- 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);
2.1.6 - 2023-04-07 #
- If a provider has an empty list of dependencies, the generated list is now
const
(thanks to @K9i-0)
2.1.5 - 2023-04-06 #
riverpod_annotation
upgraded to2.0.3
2.1.4 - 2023-03-13 #
riverpod_analyzer_utils
upgraded to0.2.0
riverpod_annotation
upgraded to2.0.2
2.1.3 - 2023-03-10 #
- Fixed InconsistentAnalysisException
- Fixed an
Unsupported operation: Unknown type SimpleIdentifierImpl
crash
2.1.2 - 2023-03-09 #
riverpod_analyzer_utils
upgraded to0.1.3
2.1.1 - 2023-03-09 #
riverpod_analyzer_utils
upgraded to0.1.2
2.1.0 - 2023-03-09 #
-
Added support for configuring the name of providers with parameters ("families") (thanks to @K9i-0)
-
Deprecate the (new) shorthand syntax for scoping provider using the
external
keyword. That syntax unfortunately does not work on web and therefore will be removed.
2.0.0 #
- Add support for returning a
Stream
inside providers. This is equivalent to creating aStreamProvider
using the "old" syntax. - Bump minimum riverpod_analyzer_utils version
- Fix exception thrown when the analyzed file has some syntax errors.
1.2.0 #
- It is now possible to specify
@Riverpod(dependencies: [...])
to scope providers - Marked
@Riverpod
as@sealed
1.1.1 #
Upgrade Riverpod to latest
1.1.0 #
- The generated hash function of providers is now correctly private (thanks to @westito)
- Allow customizing the name of the generated providers (thanks to @trejdych)
- Update dependencies.
1.0.6 #
Upgrade Riverpod to latest
1.0.5 #
- Upgrade Riverpod and annotation package to latest
1.0.4 #
- Update dependencies.
1.0.4 #
- Update dependencies.
1.0.2 #
- Update a dependency to the latest release.
1.0.1 #
Fix version conflict with Riverpod
1.0.0 #
Initial release