-
-
Notifications
You must be signed in to change notification settings - Fork 1k
docs: update documentation #4246
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
WalkthroughDocumentation edits across many pages: grammar fixes plus API migration updates in the 3.0 migration doc. ProviderObserver.didAddProvider now takes Changes
Sequence Diagram(s)sequenceDiagram
participant App
participant ProviderContainer
participant ProviderObserver
participant Notifier
rect rgba(60,130,200,0.06)
Note left of ProviderContainer: Provider added/initialized
App->>ProviderContainer: register/create provider
ProviderContainer->>ProviderObserver: didAddProvider(ProviderObserverContext context, value)
end
rect rgba(90,170,90,0.06)
Note left of Notifier: Notifier family migration: arg → constructor, build() no-arg
ProviderContainer->>Notifier: instantiate Notifier(arg)
Notifier->>Notifier: build()
Notifier-->>ProviderContainer: state/value
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. 📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 💡 Knowledge Base configuration:
You can enable these sources in your CodeRabbit configuration. 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (33)
website/docs/how_to/pull_to_refresh.mdx (3)
18-20
: Polish phrasing for readability.“complex due as” reads off. Consider either “complex because” or “complex due to.”
Apply:
-In general, pull-to-refreshes can be complex due as there are multiple -problems to solve: +In general, pull-to-refresh can be complex because there are multiple +problems to solve:
38-41
: Minor grammar nits in intro paragraph.Tweak gerund and verb agreement.
-Before implement a pull-to-refresh, we first need something to refresh. +Before implementing pull-to-refresh, we first need something to refresh. We can make a simple application which uses [Bored API](https://www.boredapi.com/) -to suggests a random activity to users. +to suggest a random activity to users.
50-52
: Article before acronym.Use “an HTTP GET”.
-Now, we'll want to define a provider making a HTTP GET request to fetch +Now, we'll want to define a provider making an HTTP GET request to fetchwebsite/docs/concepts2/containers.mdx (3)
92-92
: Fix duplicated word.-Riverpod does this for a few reasons, which come down the the same logic: "No global state". +Riverpod does this for a few reasons, which come down to the same logic: "No global state".
101-101
: Typo: “no” → “do”.-And generally, the UI will no nothing but invoke one method on the provider's Notifier. +And generally, the UI will do nothing but invoke one method on the provider's Notifier.
143-144
: Missing conjunction.-This feature is quite advanced generally discouraged, but useful for performance optimizations. +This feature is quite advanced and generally discouraged, but useful for performance optimizations.website/docs/concepts2/providers.mdx (3)
68-68
: Verb form: “combine” not “combined”.-Allows you to combined caches together, automatically invalidating what is needed. +Allows you to combine caches, automatically invalidating what is needed.
85-85
: Preposition: “come in”.-Providers come 6 variants: +Providers come in 6 variants:
83-83
: Infinitive “to render”.-Providers offer a built-in way for UIs render a spinner/error for side effects (such as form submission). +Providers offer a built-in way for UIs to render a spinner/error for side effects (such as form submission).website/docs/concepts2/offline.mdx (5)
95-96
: Nit: prefer “I/O” over “IO”Minor style tweak for technical writing consistency.
-This is generally safe, as Riverpod is designed to be used primarily -as a cache for IO operations (network requests, database queries, etc). +This is generally safe, as Riverpod is designed to be used primarily +as a cache for I/O operations (network requests, database queries, etc.).
43-46
: Grammar: fix “You need have to either”Tighten phrasing.
-You need have to either: +You need to either:
92-94
: Wording seems contradictory around “leak happens … stay … indefinitely”As written, it suggests the default prevents leaks but lets deleted providers remain indefinitely. Recommend clarifying intent.
-By default, state is only cached for 2 days. This default ensures that -no leak happens and deleted providers stay in the database indefinitely +By default, state is cached for 2 days. This helps prevent leaks, ensuring that +deleted providers don't remain in the database indefinitely.
122-126
: Nit: smoother phrasing for “help doing”Improve readability.
-Destroy keys help doing simple data migrations by enabling Riverpod to know when +Destroy keys help with simple data migrations by enabling Riverpod to know when
129-132
: Word choice: “This is voluntary” → “This is intentional”More idiomatic in technical docs.
-This is voluntary, as this allows the provider to start its network requests as soon as possible. +This is intentional, as it allows the provider to start its network requests as soon as possible.website/docs/migration/from_state_notifier.mdx (3)
32-33
: Grammar: “thought of as”Minor idiomatic correction.
-`AsyncNotifier` can be thought as a `FutureProvider` which can expose ways to be modified from the UI. +`AsyncNotifier` can be thought of as a `FutureProvider` that exposes ways to be modified from the UI.
41-43
: Grammar: add missing “to”-Let's see how to define a `Notifier`, how it compares with `StateNotifier` and how to migrate -the new `AsyncNotifier` for asynchronous state. +Let's see how to define a `Notifier`, how it compares with `StateNotifier`, and how to migrate +to the new `AsyncNotifier` for asynchronous state.
228-231
: Grammar: tighten “had already have”-AVOID accessing `.state` from tests; if you have to, do it _if and only if_ you had already have +AVOID accessing `.state` from tests; if you have to, do it _if and only if_ you already havewebsite/docs/concepts2/refs.mdx (4)
113-114
: Hyphenation: “go-to choice”-It is the most common way to listen to providers, and should be your go to choice. +It is the most common way to listen to providers, and should be your go-to choice.
296-299
: Clarity: missing preposition-You can safely call [Ref.read] button clicks to perform work. The following example +You can safely call [Ref.read] inside button clicks to perform work. The following example
315-319
: Fix “as a mean” → “as a means” (singular/plural idiom)-Do not use [Ref.read] as a mean to "optimize" your code by avoiding [Ref.watch]. +Do not use [Ref.read] as a means to "optimize" your code by avoiding [Ref.watch].
323-328
: Repeat: “as a means”-// ❌ Don't use "read" as a mean to ignore changes +// ❌ Don't use "read" as a means to ignore changeswebsite/docs/from_provider/quickstart.mdx (3)
6-8
: Subject–verb agreement: “who want to learn”-This section is designed for people familiar with the [Provider] package who -wants to learn about Riverpod. +This section is designed for people familiar with the [Provider] package who +want to learn about Riverpod.
10-12
: Word choice: “definitely” (not “definitively”)-[sandbox] example to test Riverpod's features out. If you like what you see there, you should then -definitively consider a migration. +[sandbox] example to test Riverpod's features out. If you like what you see there, you should then +definitely consider migrating.
121-124
: Clarity: eager initialization phrasingTighten wording and fix number agreement.
-In other words, since Riverpod can't be forced to be eager initialized, they can be read and cached -in your startup phase, so that they're warm and ready when needed inside the rest of your application. +In other words, since providers can't be eagerly initialized, you can read them during your startup +phase so they're warm and ready when needed inside the rest of your application.website/docs/how_to/cancel.mdx (1)
88-93
: Minor grammar: remove the hyphen in “no-longer”.Use “no longer” (adverbial phrase) rather than the hyphenated form.
Apply this diff:
-That is because our provider is no-longer used, and therefore disposed +That is because our provider is no longer used, and therefore disposedwebsite/docs/whats_new.mdx (1)
967-967
: Consistent code formatting for type names.Backticks around
ProviderException
in the heading improve readability. For consistency, consider using backticks for other occurrences of ProviderException across the document (e.g., earlier headings/paragraphs where it appears without code formatting).website/docs/concepts2/auto_dispose.mdx (2)
55-61
: Tense/voice consistency and minor clarity tweaksRecommend present tense throughout and active voice for who triggers lifecycle hooks. Also prefer “unused” over “not used” for concision.
-When that counter reaches zero, the provider is considered "not used", and -[Ref.onCancel](https://pub.dev/documentation/hooks_riverpod/3.0.0-dev.17/hooks_riverpod/Ref/onCancel.html) -is triggered. -At that point, Riverpod waits for one frame (cf. `await null`). If, after that frame, -the provider is still not used, then the provider is destroyed and -[Ref.onDispose](https://pub.dev/documentation/hooks_riverpod/3.0.0-dev.17/hooks_riverpod/Ref/onDispose.html) -will be triggered. +When that counter reaches zero, the provider is considered unused, and Riverpod triggers +[Ref.onCancel](https://pub.dev/documentation/hooks_riverpod/3.0.0-dev.17/hooks_riverpod/Ref/onCancel.html). +At that point, Riverpod waits for one frame (cf. `await null`). If, after that frame, +the provider is still unused, the provider is destroyed and +[Ref.onDispose](https://pub.dev/documentation/hooks_riverpod/3.0.0-dev.17/hooks_riverpod/Ref/onDispose.html) +is triggered.
71-76
: Tighten phrasing of onDispose explanationStreamline the sentence and avoid “enables registering a listener for whenever…”.
-In both cases, you may want to execute some logic when that happens. -This can be achieved with `ref.onDispose`. This method enables -registering a listener for whenever the state is destroyed. +In both cases, you may want to run some logic. +You can do this with `ref.onDispose`, which lets you register a callback +that runs when the state is destroyed. -For example, you may want to use it to close any active `StreamController`: +For example, you might use it to close any active `StreamController`:website/docs/3.0_migration.mdx (5)
11-11
: Smoother sentence structureMinor style improvement for readability.
-They should, in general, be relatively minor, but we recommend you read this page carefully. +In general, the changes are relatively minor, but we recommend reading this page carefully.
18-20
: Avoid comma splice; parallelize listAdjust punctuation to avoid a run-on and keep the verb forms parallel.
-It is important to us that the migration is as smooth as possible, so we will do our best to help you, -improve the migration guide, or even include helpers to make the migration easier. +It is important to us that the migration is as smooth as possible. We will do our best to help you, +improve the migration guide, and even include helpers to make the migration easier.
121-122
: Optional: tighten “legacy” paragraphNon-blocking wording tweak; current text is correct.
-They are not removed, but are no longer part of the main API. This is to discourage their use -in favor of the new `Notifier` API. +They are not removed but are no longer part of the main API. This discourages their use +in favor of the new `Notifier` API.
199-204
: Clarify phrasing around API moves“[Notifier]s” is valid Markdown, but might read awkwardly. Also specify these are instance APIs.
-For the sake of simplification, [Ref] has lost its type parameter, and all properties/methods that were -using the type parameter have been moved to [Notifier]s. +For the sake of simplification, [Ref] has lost its type parameter, and the affected APIs have moved to +the [Notifier] instance API. -Specifically, `ProviderRef.state`, `Ref.listenSelf` and `FutureProviderRef.future` should be replaced by -`Notifier.state`, `Notifier.listenSelf` and `AsyncNotifier.future` respectively. +Specifically, replace `ProviderRef.state`, `Ref.listenSelf`, and `FutureProviderRef.future` with +`Notifier.state`, `Notifier.listenSelf`, and `AsyncNotifier.future`, respectively.
311-313
: Minor grammar tweak in “family variant” paragraphOptional readability improvement.
-In the same vein as the previous point, the family variant of Notifiers has been removed. -Now, we only use `Notifier`/`AsyncNotifier`/`StreamNotifier`, and `FamilyNotifier`/... have been removed. +In the same vein as the previous point, the family variant of notifiers has been removed. +Now, we use only `Notifier`/`AsyncNotifier`/`StreamNotifier`; `FamilyNotifier`/... have been removed.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (17)
website/docs/3.0_migration.mdx
(4 hunks)website/docs/concepts/about_hooks.mdx
(1 hunks)website/docs/concepts2/auto_dispose.mdx
(2 hunks)website/docs/concepts2/consumers.mdx
(1 hunks)website/docs/concepts2/containers.mdx
(1 hunks)website/docs/concepts2/family.mdx
(1 hunks)website/docs/concepts2/offline.mdx
(1 hunks)website/docs/concepts2/overrides.mdx
(1 hunks)website/docs/concepts2/providers.mdx
(1 hunks)website/docs/concepts2/refs.mdx
(1 hunks)website/docs/from_provider/motivation/motivation.mdx
(1 hunks)website/docs/from_provider/quickstart.mdx
(1 hunks)website/docs/how_to/cancel.mdx
(1 hunks)website/docs/how_to/pull_to_refresh.mdx
(1 hunks)website/docs/migration/from_state_notifier.mdx
(1 hunks)website/docs/root/faq.mdx
(1 hunks)website/docs/whats_new.mdx
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
website/docs/concepts2/offline.mdx
[grammar] ~95-~95: There might be a mistake here.
Context: ...iverpod is designed to be used primarily as a cache for IO operations (network re...
(QB_NEW_EN)
website/docs/concepts2/providers.mdx
[grammar] ~33-~33: There might be a mistake here.
Context: ... we were to try using it inside widgets, we'd have to cache the result ourselves ...
(QB_NEW_EN)
website/docs/concepts2/auto_dispose.mdx
[grammar] ~55-~55: There might be a mistake here.
Context: ...e provider is considered "not used", and [Ref.onCancel](https://pub.dev/documenta...
(QB_NEW_EN)
[grammar] ~56-~56: There might be a mistake here.
Context: ...dev.17/hooks_riverpod/Ref/onCancel.html) is triggered. At that point, Riverpod w...
(QB_NEW_EN)
[grammar] ~72-~72: There might be a mistake here.
Context: ...ith ref.onDispose
. This method enables registering a listener for whenever the ...
(QB_NEW_EN)
website/docs/3.0_migration.mdx
[grammar] ~15-~15: There might be a mistake here.
Context: ...encountered a scenario that is difficult to migrate, please [open an issue](https...
(QB_NEW_EN)
[grammar] ~19-~19: There might be a mistake here.
Context: ...de helpers to make the migration easier. ::: ## Automatic retry Riverpod 3.0 no...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...ain API. This is to discourage their use in favor of the new Notifier
API. To ...
(QB_NEW_EN)
[grammar] ~199-~199: There might be a mistake here.
Context: ...er, and all properties/methods that were using the type parameter have been moved...
(QB_NEW_EN)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (12)
- GitHub Check: Redirect rules - river-pod
- GitHub Check: riverpod_lint (stable, packages/riverpod_analyzer_utils)
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint)
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (stable, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils)
- GitHub Check: check_generation
- GitHub Check: Header rules - river-pod
- GitHub Check: Pages changed - river-pod
🔇 Additional comments (13)
website/docs/how_to/pull_to_refresh.mdx (1)
106-106
: Typo fix looks good.“as follows” is correct here. No further change needed.
website/docs/concepts2/containers.mdx (1)
96-98
: Grammar correction LGTM.“…how/when a state is modified.” reads correctly now.
website/docs/from_provider/motivation/motivation.mdx (1)
68-68
: Hyphenation fix is correct.“error-prone” is the right spelling.
website/docs/root/faq.mdx (1)
108-108
: Header wording LGTM.“export” matches subject–verb agreement in the question.
website/docs/concepts2/providers.mdx (1)
33-36
: Article/number agreement fix LGTM.“inside widgets” resolves the grammatical issue flagged by tooling.
website/docs/concepts2/consumers.mdx (1)
92-92
: LGTM: clearer emphasis on the real problem beyond leaksThe clarification reads well and matches the surrounding explanation of auto-dispose reliability.
website/docs/migration/from_state_notifier.mdx (1)
32-32
: LGTM: duplicate punctuation fixedThe sentence now ends with a single period.
website/docs/concepts2/refs.mdx (1)
115-115
: LGTM: clearer description of Ref.listenThe “addListener style” phrasing is concise and accurate.
website/docs/from_provider/quickstart.mdx (1)
55-55
: LGTM: heading corrected“Start with leaves” reads correctly and matches the guidance below.
website/docs/concepts/about_hooks.mdx (1)
14-14
: Solid grammar fix in intro sentence.Reads naturally and improves clarity. No further changes needed here.
website/docs/concepts2/overrides.mdx (1)
15-15
: Wording correction looks good.“done on <Link ... />, using the
overrides
parameter.” reads correctly and matches how overrides are configured on containers/scopes.website/docs/concepts2/family.mdx (1)
99-99
: Grammar fix LGTM.“in tests” is the correct preposition in this context.
website/docs/concepts2/auto_dispose.mdx (1)
51-57
: Verified: All versioned hooks_riverpod 3.0.0-dev.17 links resolve successfully (HTTP 200). No broken or unreachable URLs were found inwebsite/docs/concepts2/auto_dispose.mdx
.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
website/docs/3.0_migration.mdx (3)
34-49
: Two TabItem components marked as defaultOnly one TabItem should have the
defaultValue
prop. Having it on both can cause rendering issues.-<TabItem value="ProviderScope" label="ProviderScope" defaultValue> +<TabItem value="ProviderScope" label="ProviderScope" defaultValue> ... -<TabItem value="ProviderContainer" label="ProviderContainer" defaultValue> +<TabItem value="ProviderContainer" label="ProviderContainer">
136-137
: Fix broken “What’s new” anchor slug in migration guideThe heading in
website/docs/whats_new.mdx
at line 564 reads:### All `updateShouldNotify` now use `==`
By Docusaurus’s slug rules, this generates the anchor
#all-updateshouldnotify-now-use
(no trailing dash). Inwebsite/docs/3.0_migration.mdx
(lines 136–137), update the link accordingly:-In Riverpod 3.0, [all providers now use `==` to filter updates](./whats_new.mdx#all-updateshouldnotify-now-use-). +In Riverpod 3.0, [all providers now use `==` to filter updates](./whats_new.mdx#all-updateshouldnotify-now-use).• File:
website/docs/3.0_migration.mdx
• Lines: 136–137
• Updated slug:all-updateshouldnotify-now-use
311-340
: Update provider declaration and usage example for Family→Notifier migrationThe migration snippet should also update the provider declaration to drop
.family
and the extra type parameter, and include how to pass the constructor argument when reading the provider:-final provider = NotifierProvider.family<CounterNotifier, int, String>(CounterNotifier.new); +final provider = NotifierProvider<CounterNotifier, int>(CounterNotifier.new); -class CounterNotifier extends FamilyNotifier<int, String> { +class CounterNotifier extends Notifier<int> { + CounterNotifier(this.arg); + final String arg; @override - int build(String arg) { + int build() { // Use `arg` as needed return 0; } }Add a one-line usage example after the diff to show passing the argument when reading:
• Flutter:
final value = ref.watch(provider('some-id'));• Vanilla:
final value = container.read(provider('some-id'));Please confirm that
ref.watch(provider('arg'))
andcontainer.read(provider('arg'))
are the correct call syntaxes in v3.0.
♻️ Duplicate comments (1)
website/docs/3.0_migration.mdx (1)
16-16
: Stray parenthesis fixed — thanksThe extra “)” after the link was removed correctly.
🧹 Nitpick comments (5)
website/docs/3.0_migration.mdx (5)
15-16
: Tense/flow tweak for clarityConsider present tense and a tighter clause.
-If there is anything that is unclear, or if you encountered a scenario that is difficult -to migrate, please [open an issue](https://github.com/rrousselGit/riverpod/issues/new/choose). +If anything is unclear, or if you encounter a scenario that is difficult to migrate, +please [open an issue](https://github.com/rrousselGit/riverpod/issues/new/choose).
18-19
: Comma splice and parallelismSmall grammar/flow improvement; make the list parallel.
-It is important to us that the migration is as smooth as possible, so we will do our best to help you, -improve the migration guide, or even include helpers to make the migration easier. +It is important to us that the migration is as smooth as possible, so we will do our best to help you, +improve the migration guide, and even include helpers to make the migration easier.
121-122
: Minor wording polishSemicolon reads better than a comma splice here.
-They are not removed, but are no longer part of the main API. This is to discourage their use +They are not removed; they are no longer part of the main API. This is to discourage their use in favor of the new `Notifier` API.
172-174
: Preposition/capitalization nitLowercase “such” mid‑sentence and use “to” instead of “in”.
-In the scenario where you didn't use a `Notifier`, you can refactor your provider in its notifier equivalent -(Such as converting [StreamProvider] to [StreamNotifierProvider]). +In the scenario where you didn't use a `Notifier`, you can refactor your provider to its notifier equivalent +(such as converting [StreamProvider] to [StreamNotifierProvider]).
199-205
: Tighten the explanation about Ref changesMinor rephrase for readability.
-For the sake of simplification, [Ref] has lost its type parameter, and all properties/methods that were -using the type parameter have been moved to [Notifier]s. +To simplify the API, [Ref] has lost its type parameter. Properties/methods that depended on that type +have moved to the corresponding [Notifier]s.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
website/docs/3.0_migration.mdx
(4 hunks)
🧰 Additional context used
🪛 LanguageTool
website/docs/3.0_migration.mdx
[grammar] ~15-~15: There might be a mistake here.
Context: ...encountered a scenario that is difficult to migrate, please [open an issue](https...
(QB_NEW_EN)
[grammar] ~19-~19: There might be a mistake here.
Context: ...de helpers to make the migration easier. ::: ## Automatic retry Riverpod 3.0 no...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...ain API. This is to discourage their use in favor of the new Notifier
API. To ...
(QB_NEW_EN)
[grammar] ~199-~199: There might be a mistake here.
Context: ...er, and all properties/methods that were using the type parameter have been moved...
(QB_NEW_EN)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
- GitHub Check: riverpod_lint (stable, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint)
- GitHub Check: check_generation
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint)
🔇 Additional comments (2)
website/docs/3.0_migration.mdx (2)
11-11
: Wording LGTMThe softened guidance about the scope of changes reads clearly.
187-195
: Observer API update reads correctlyThe example matches the new
ProviderObserver
signature (context + value).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
website/docs/3.0_migration.mdx (1)
16-16
: Stray “)” after link is fixed—nice cleanup.The extra closing parenthesis reported earlier is gone; punctuation reads correctly now.
🧹 Nitpick comments (5)
website/docs/3.0_migration.mdx (5)
18-19
: Reduce comma splices and tighten phrasing in the info block.Current sentence is a bit comma-heavy. Splitting it improves readability and addresses the “too many commas” feedback.
-It is important to us that the migration is as smooth as possible, so we will do our best to help you, -improve the migration guide, or even include helpers to make the migration easier. +It is important to us that this migration is as smooth as possible. +We will do our best to help you, improve this guide and include helpers when needed.
121-121
: Drop the unnecessary comma.Not an independent clause after “removed,” so the comma is unnecessary.
-They are not removed, but are no longer part of the main API. This is to discourage their use +They are not removed but are no longer part of the main API. This is to discourage their use
199-200
: Prefer “simplicity,” tighten wording, and avoid awkward pluralization of a link.Small grammar/style pass and clearer pluralization.
-For the sake of simplification, [Ref] has lost its type parameter, and all properties/methods that were -using the type parameter have been moved to [Notifier]s. +For simplicity, [Ref] has lost its type parameter, and properties/methods that used it have moved to [Notifier] classes.
311-312
: Avoid repetition in “family variant” paragraph.Reads cleaner and avoids repeating “removed.”
-In the same vein as the previous point, the family variant of Notifiers has been removed. -Now, we only use `Notifier`/`AsyncNotifier`/`StreamNotifier`, and `FamilyNotifier`/... have been removed. +In the same vein as the previous point, the family variants of Notifiers have been removed. +Use `Notifier`/`AsyncNotifier`/`StreamNotifier`; the `Family*` variants are no longer available.
8-8
: Confirmedwhats_new.mdx
exists and its anchors are in place
- Found
website/docs/whats_new.mdx
; there’s no explicitid:
orslug:
in its frontmatter, so the page uses the default slug derived from its file name.- The heading
produces the## Automatic retry
#automatic-retry
fragment, which matches your link on line 24.- The heading
produces the### All `updateShouldNotify` now use `==`
#all-updateshouldnotify-now-use
fragment. Update the link on line 137 to use this exact slug instead of#updateShouldNotify
.- To keep things tidy, pick one link style—either omit the file extension (
[…](whats_new#automatic-retry)
) or always include it ([…](./whats_new.mdx#automatic-retry)
)—and apply it consistently across both references.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
website/docs/3.0_migration.mdx
(4 hunks)
🧰 Additional context used
🪛 LanguageTool
website/docs/3.0_migration.mdx
[grammar] ~19-~19: There might be a mistake here.
Context: ...de helpers to make the migration easier. ::: ## Automatic retry Riverpod 3.0 no...
(QB_NEW_EN)
[grammar] ~121-~121: There might be a mistake here.
Context: ...ain API. This is to discourage their use in favor of the new Notifier
API. To ...
(QB_NEW_EN)
[grammar] ~199-~199: There might be a mistake here.
Context: ...er, and all properties/methods that were using the type parameter have been moved...
(QB_NEW_EN)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: check_generation
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (stable, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils_tests)
Summary by CodeRabbit