-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Add Korean translation for 'What's new in Riverpod 3.0' documentation #4260
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
This adds a complete Korean translation of the whats_new.mdx document, following the existing i18n structure. The translation covers all new features and changes in Riverpod 3.0 including offline persistence, mutations, automatic retry, and other improvements. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
…mentation - Add comprehensive Korean translation of whats_new.mdx following i18n conventions - Translate all sections including experimental features, lifecycle changes, and new utilities - Fix Link component usage with proper Docusaurus Link components - Improve Korean grammar and particle usage for natural readability - Correct code snippets with proper syntax and function signatures - Fix internal navigation anchors for smooth in-page navigation - Update naming consistency in dependency declarations - Add Korean document metadata for proper integration This addresses issue rrousselGit#4258 and provides complete Korean localization for the Riverpod 3.0 feature documentation. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
WalkthroughAdds a new Korean translation of the "What's New in Riverpod 3.0" documentation and registers a document title entry in the website metadata. No runtime code, APIs, or control flow changes were made. Changes
Sequence Diagram(s)No sequence diagrams included — changes are documentation and metadata only; no control-flow or feature-level interactions to visualize. Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Assessment against linked issues
Assessment against linked issues: Out-of-scope changes
Possibly related PRs
Poem
✨ 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: 2
🧹 Nitpick comments (3)
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx (3)
38-45
: 용어 일관성: “오프라인 지속성”으로 통일 제안본문/목차에서 혼용됩니다. 섹션 제목/첫 문장만 정리하면 전체가 자연스러워집니다.
-## 오프라인 지속 기능 (experimental) {#offline-persistence-experimental} +## 오프라인 지속성 (experimental) {#offline-persistence-experimental} -오프라인 지속 기능은 Provider를 장치에 로컬로 캐시할 수 있게 하는 새로운 기능입니다. +오프라인 지속성은 Provider를 장치에 로컬로 캐시할 수 있게 하는 새로운 기능입니다.
741-751
: Flutter 위젯 명칭 일관성:Button
→ElevatedButton
예제 상단에서
ElevatedButton
을 사용하므로 여기서도 동일 위젯 사용을 권장합니다.- return Button( + return ElevatedButton( onPressed: () { ref.read(anotherProvider); }, child: Text('클릭하세요'), );- return Button( + return ElevatedButton( onPressed: () { ref.read(anotherProvider); }, child: Text('클릭하세요'), );Also applies to: 759-769
1289-1304
: Consider switching version-pinned pub.dev links to ‘latest’발견된 3.0.0-dev.17 버전 고정 링크는 시간이 지나면서 깨질 수 있습니다. 가능하다면 다음 엔드포인트들을
/latest/...
형식으로 전환하세요.
- Lines 1291, 1295, 1303, 1304
변경 예시:
-[Mutation]: https://pub.dev/documentation/riverpod/3.0.0-dev.17/experimental_mutation/Mutation-class.html +[Mutation]: https://pub.dev/documentation/riverpod/latest/experimental_mutation/Mutation-class.html정책상 특정 버전 유지가 필요하면 현 상태를 유지해도 됩니다.
📜 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 (2)
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
(1 hunks)website/src/documents_meta.js
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
[grammar] ~5-~5: There might be a mistake here.
Context: ...n: 1 --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; im...
(QB_NEW_EN)
[grammar] ~6-~6: There might be a mistake here.
Context: ...'; import TabItem from '@theme/TabItem'; import { AutoSnippet } from "/src/compon...
(QB_NEW_EN)
[grammar] ~7-~7: There might be a mistake here.
Context: ...et } from "/src/components/CodeSnippet"; import { Link } from "/src/components/Li...
(QB_NEW_EN)
[grammar] ~17-~17: Ensure spelling is correct
Context: ...ion 이 버전은 몇 가지 생명주기 변경사항을 포함하고 있습니다. 이런 변경사항들이 미묘한 방식으로 앱을 손상시킬 수 있습니다. 신중하게 업그레이드하세요....
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~24-~24: There might be a mistake here.
Context: ...l) - 인터페이스가 사이드이펙트에 반응할 수 있게 하는 새로운 메커니즘 - 자동 재시도 - Provider가 실패...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ...BuildContext.mounted
와 유사하지만 Ref
용입니다. - [제네릭 지원 (코드 생성)](#generic-support-code-ge...
(QB_NEW_EN)
[grammar] ~30-~30: There might be a mistake here.
Context: ...es) - 최신 코드에 더 잘 맞도록 Provider 동작에 약간의 조정 - 새로운 테스팅 유틸리티: ...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ...트 내에서 ProviderContainer
를 얻는 헬퍼 메서드입니다. - [정적으로 안전한 스코핑](#statically-safe-scoping-c...
(QB_NEW_EN)
[grammar] ~57-~57: There might be a mistake here.
Context: ...다. return JsonSqFliteStorage.open( join(await getDatabasesPath(), 'riverpod...
(QB_NEW_EN)
[grammar] ~112-~112: There might be a mistake here.
Context: ...합니다. return JsonSqFliteStorage.open( join(await getDatabasesPath(), 'riverpod...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ... }; } } final todosProvider = AsyncNotifierProvider<TodosNotifier, Lis...
(QB_NEW_EN)
[grammar] ~202-~202: There might be a mistake here.
Context: ...로운 [Mutation] 객체가 추가되었습니다. 이는 Provider처럼 최상위 final 변수로 선언됩니다: ```dart final addT...
(QB_NEW_EN)
[grammar] ~244-~244: Ensure spelling is correct
Context: ...} 마지막으로, `onPressed` 콜백 내에서 다음과 같이 사이드이펙트을 트리거할 수 있습니다:
dart onPressed: () { ...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~318-~318: There might be a mistake here.
Context: ...n? retry(int retryCount, Object error) { if (error is SomeSpecificError) return n...
(QB_NEW_EN)
[grammar] ~332-~332: There might be a mistake here.
Context: ...odo> build() => []; } } raw={
final todoListProvider = NotifierProvide...
(QB_NEW_EN)
[grammar] ~341-~341: There might be a mistake here.
Context: ...on(seconds: retryCount * 2); }, ); } ></AutoSnippet> ##
Ref.mounted` {#...
(QB_NEW_EN)
[grammar] ~350-~350: There might be a mistake here.
Context: ...트되어 있는지 확인하는 데 사용할 수 있습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~371-~371: There might be a mistake here.
Context: ...te, newTodo]; } } } raw={
class TodoList extends Notifier<List<Tod...
(QB_NEW_EN)
[grammar] ~424-~424: There might be a mistake here.
Context: ...Riverpod는 이제 다양한 상황에서 Provider를 일시정지합니다: - Provider가 더 이상 보이지 않으면 일시정지됩니다 ([Ticke...
(QB_NEW_EN)
[grammar] ~426-~426: There might be a mistake here.
Context: ... 이상 보이지 않으면 일시정지됩니다 ([TickerMode] 기반). - Provider가 재구축되면, 재구축이 완료될 때까지 구독이 일시정지됩니...
(QB_NEW_EN)
[grammar] ~435-~435: There might be a mistake here.
Context: ...아래 세부 목표를 포함했습니다. - 권장하는 것과 그렇지 않은 것을 강조 - 불필요한 인터페이스 중복 제거 - 모든 기능이 일관된 방식으로 작동하도록...
(QB_NEW_EN)
[grammar] ~436-~436: There might be a mistake here.
Context: ... 권장하는 것과 그렇지 않은 것을 강조 - 불필요한 인터페이스 중복 제거 - 모든 기능이 일관된 방식으로 작동하도록 보장 이를 위해 몇 가지 변경사...
(QB_NEW_EN)
[grammar] ~454-~454: There might be a mistake here.
Context: ... 이러한 Provider가 더 이상 권장되지 않음을 강조하기 위함입니다. 동시에 이들은 하위 호환성을 위해 보존됩니다. ### AutoDispo...
(QB_NEW_EN)
[grammar] ~459-~459: Ensure spelling is correct
Context: ...oDispose 인터페이스가 제거됨 AudoDispose 인터페이스가 제거된거지, 기능이 제거된 것은 아닙니다. 2.0에서 모든 Provider, Re...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~459-~459: There might be a mistake here.
Context: ... Notifier
vs AutoDisposeNotifier
등). 이는 일부 엣지 케이스에서 컴파일 오류를 위한 것이었지만, 나쁜 API라...
(QB_NEW_EN)
[grammar] ~506-~506: There might be a mistake here.
Context: ...otifier+
AutoDisposeFamilyNotifier대신, 항상
Notifier` 클래스를 사용한다는 의미입니다. 이 변경사항은...
(QB_NEW_EN)
[grammar] ~513-~513: There might be a mistake here.
Context: ..., 일부에는 future
또는 notifier
등이 있었습니다. 유용했지만, 얻는 것에 비해 많은 복잡성이었습니다. 그 이유 중 하나는 ...
(QB_NEW_EN)
[grammar] ~535-~535: There might be a mistake here.
Context: ...r가 특정 상황에서 더 이상 리스너에게 알림을 보내지 않을 수 있습니다. - 일부 리스너가 이전보다 더 자주 알림을 받을 수 있습니다. - ==
를...
(QB_NEW_EN)
[grammar] ~541-~541: There might be a mistake here.
Context: ...드하여 사용자 정의 구현을 사용할 수 있습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~557-~557: There might be a mistake here.
Context: ... return true; } } } raw={
class TodoList extends Notifier<List<Tod...
(QB_NEW_EN)
[grammar] ~577-~577: There might be a mistake here.
Context: ...od가 때때로 그 오류를 직접 다시 던졌습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~595-~595: There might be a mistake here.
Context: ...); }, child: Text('클릭하세요'), ); } raw={
final exampleProvider =...
(QB_NEW_EN)
[grammar] ~598-~598: There might be a mistake here.
Context: ...ld: Text('클릭하세요'), ); } raw={
final exampleProvider = FutureProvider<i...
(QB_NEW_EN)
[grammar] ~613-~613: There might be a mistake here.
Context: ...); }, child: Text('클릭하세요'), ); `} > 3.0에서는 이것이 변경되었습니다....
(QB_NEW_EN)
[grammar] ~618-~618: There might be a mistake here.
Context: ....0에서는 이것이 변경되었습니다. 대신, 오류는 원본 오류와 스택 추적을 모두 포함하는 ProviderException
에 캡슐화됩니다. ::...
(QB_NEW_EN)
[grammar] ~649-~649: There might be a mistake here.
Context: ...d의 자동 재시도 메커니즘에서 내부적으로 사용됩니다. 기본 자동 재시도는 ProviderException
을 무시합니다: ```dart Pro...
(QB_NEW_EN)
[grammar] ~667-~667: There might be a mistake here.
Context: ...미합니다. 구체적인 예로, 두 경로가 있는 애플리케이션을 생각해보세요: - Provider를 사용해 웹소켓을 수신하는 홈 페이지 - 해당 웹소켓에 ...
(QB_NEW_EN)
[grammar] ~668-~668: There might be a mistake here.
Context: ... 생각해보세요: - Provider를 사용해 웹소켓을 수신하는 홈 페이지 - 해당 웹소켓에 의존하지 않는 설정 페이지 일반적인 애플리케이션에서 사...
(QB_NEW_EN)
[grammar] ~677-~677: There might be a mistake here.
Context: ...ickerMode]에 의존하여 위젯이 보이는지 여부를 판단합니다. 그리고 false일 때, [Consumer]의 모든 리스너가 일시정지됩니다. ...
(QB_NEW_EN)
[grammar] ~680-~680: There might be a mistake here.
Context: ...으로 제어할 수 있습니다. 값을 자의적으로 true/false로 설정하여 강제로 재개/일시정지할 수 있습니다: ```dart class MyWi...
(QB_NEW_EN)
[grammar] ~704-~704: There might be a mistake here.
Context: ...있었습니다. 하지만 제한적이었고 일부 엣지 케이스를 다루지 못했습니다. 다음을 생각해보세요: <AutoSnippet language="da...
(QB_NEW_EN)
[grammar] ~707-~707: There might be a mistake here.
Context: ...를 다루지 못했습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~732-~732: There might be a mistake here.
Context: ...ider를 통해 간접적으로 사용될 수 있습니다. <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~741-~741: There might be a mistake here.
Context: ... class MyWidget extends ConsumerWidget { @OverRide Widget build(BuildContext ...
(QB_NEW_EN)
[grammar] ~754-~754: There might be a mistake here.
Context: ...요'), ); } } } raw={
final anotherProvider = Provider((r...
(QB_NEW_EN)
[grammar] ~759-~759: There might be a mistake here.
Context: ... class MyWidget extends ConsumerWidget { @OverRide Widget build(BuildContext ...
(QB_NEW_EN)
[grammar] ~781-~781: There might be a mistake here.
Context: ...pose"가 예기치 않게 트리거될 수 있었습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen...
(QB_NEW_EN)
[grammar] ~782-~782: There might be a mistake here.
Context: ...리거될 수 있었습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~808-~808: There might be a mistake here.
Context: ...Provider.future); } void main() { final container = ProviderContainer(); ...
(QB_NEW_EN)
[grammar] ~818-~818: There might be a mistake here.
Context: ...}\n----'); }); } } raw={
final autoDisposeProvider = StreamProvid...
(QB_NEW_EN)
[grammar] ~840-~840: There might be a mistake here.
Context: ...ovider.future); }); void main() { final container = ProviderContainer(); ...
(QB_NEW_EN)
[grammar] ~944-~944: There might be a mistake here.
Context: ...원래 구현을 계속 사용하고 싶을 때 유용합니다. <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~970-~970: There might be a mistake here.
Context: ... ], ); } } raw={
class MyNotifier extends Notifier {...
(QB_NEW_EN)
[grammar] ~1000-~1000: There might be a mistake here.
Context: ...일시적으로" 제거되었습니다. 다시 돌아왔습니다! <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~1019-~1019: There might be a mistake here.
Context: ... ], ); } } raw={
final myFutureProvider = FutureProvider<...
(QB_NEW_EN)
[grammar] ~1184-~1184: There might be a mistake here.
Context: ... 이는 Provider가 요청의 현재 진행률을 정의할 수 있게 해줍니다: <AutoSnippet language="dart" cod...
(QB_NEW_EN)
[grammar] ~1202-~1202: There might be a mistake here.
Context: ... } } } raw={
class MyNotifier extends AsyncNotifier<U...
(QB_NEW_EN)
[grammar] ~1228-~1228: There might be a mistake here.
Context: ...= ref.onDispose(() => print('dispose')); // 단순히 함수를 호출하여 리스너를 제거합니다: remove...
(QB_NEW_EN)
[grammar] ~1240-~1240: There might be a mistake here.
Context: ...= ref.onDispose(() => print('dispose')); // 단순히 함수를 호출하여 리스너를 제거합니다: remove...
(QB_NEW_EN)
[grammar] ~1253-~1253: There might be a mistake here.
Context: ... weak: true
를 지정할 수 있습니다: <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~1269-~1269: There might be a mistake here.
Context: ... // ... } } raw={
final exampleProvider = FutureProvider<i...
(QB_NEW_EN)
[grammar] ~1283-~1283: There might be a mistake here.
Context: ...pet> 이 플래그를 지정하면 수신된 Provider가 사용되지 않으면 여전히 해제될 수 있다고 Riverpod에 알려줍니다. 이 플래그는 단...
(QB_NEW_EN)
[grammar] ~1286-~1286: There might be a mistake here.
Context: ...는 단일 Provider에서 여러 "진실의 원천"을 결합하는 것과 관련된 일부 틈새 사용 사례를 돕는 고급 기능입니다. [ProviderCont...
(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). (22)
- GitHub Check: Redirect rules - river-pod
- GitHub Check: Header rules - river-pod
- GitHub Check: Pages changed - river-pod
- GitHub Check: build (master, packages/riverpod_generator)
- GitHub Check: build (master, packages/hooks_riverpod/example)
- GitHub Check: build (master, examples/todos)
- GitHub Check: build (master, packages/riverpod)
- GitHub Check: build (master, packages/flutter_riverpod)
- GitHub Check: build (master, packages/flutter_riverpod/example)
- GitHub Check: build (stable, packages/riverpod_annotation)
- GitHub Check: build (master, examples/marvel)
- GitHub Check: build (master, examples/random_number)
- GitHub Check: build (stable, packages/hooks_riverpod/example)
- GitHub Check: build (stable, packages/flutter_riverpod)
- GitHub Check: build (stable, packages/flutter_riverpod/example)
- GitHub Check: build (stable, packages/riverpod/example)
- 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: riverpod_lint (master, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils_tests)
- GitHub Check: check_generation
🔇 Additional comments (2)
website/src/documents_meta.js (1)
161-161
: KO title entry for whats_new looks correct
Mapping key aligns with the new doc id and the Korean title reads well.To verify id/title consistency, run:
#!/usr/bin/env bash set -eo pipefail # 1) Confirm KO translation exists test -f website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx || { echo 'Missing KO translation: whats_new.mdx' exit 1 } # 2) Ensure the "whats_new" key appears exactly once occurrences=$(rg -n '"whats_new"\s*:' website/src/documents_meta.js | wc -l) echo "Occurrences in documents_meta.js: $occurrences" # 3) Compare frontmatter title with mapping label front_title=$(rg -m1 '^\s*title:\s*(.+)$' website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx \ | sed -E 's/^\s*title:\s*//') map_title=$(rg -m1 '"whats_new":\s*"(.*)"' website/src/documents_meta.js \ | sed -E 's/.*"whats_new":\s*"(.*)".*/\1/') printf 'frontmatter: %s\nmapping : %s\n' "$front_title" "$map_title"Run and confirm the file exists, the key appears once, and both titles match.
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx (1)
1-4
: Front-matter OK제목/메타 구조 및 Docusaurus 호환 어휘 사용은 적절합니다.
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
Outdated
Show resolved
Hide resolved
- Correct particle usage: 사이드이펙트을 → 사이드이펙트를 - Fix spelling: AudoDispose → AutoDispose - Improve grammar: AudoDispose 인터페이스가 제거된거지 → AutoDispose 인터페이스가 제거된 것이지 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.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
♻️ Duplicate comments (1)
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx (1)
223-227
: Re: 을/를 particle fixes are now correct“사이드이펙트를 …” usages look good in both snippets. Marking the earlier bot comment as resolved.
Also applies to: 244-255
🧹 Nitpick comments (7)
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx (7)
1-1304
: Overall: Solid translation; a few consistency/typo nitsGreat work preserving formatting and code blocks. I’m proposing minor Korean style/consistency fixes below; all are non-blocking.
23-23
: Unify term: “오프라인 지속성”Use one term across bullet/section/body. The doc mostly uses “지속성,” so align the heading/body to match.
Apply:
-## 오프라인 지속 기능 (experimental) {#offline-persistence-experimental} +## 오프라인 지속성 (experimental) {#offline-persistence-experimental} -오프라인 지속 기능은 Provider를 장치에 로컬로 캐시할 수 있게 하는 새로운 기능입니다. +오프라인 지속성은 Provider를 장치에 로컬로 캐시할 수 있게 하는 새로운 기능입니다.Also applies to: 38-38, 45-45
25-25
: Spacing: “새로고침됩니다”Korean spacing for ‘…고침됩니다’ should be closed up.
-- [자동 재시도](#automatic-retry) - Provider가 실패할 때 지수적 백오프로 자동으로 새로고침 됩니다 +- [자동 재시도](#automatic-retry) - Provider가 실패할 때 지수적 백오프로 자동으로 새로고침됩니다
92-105
: Spacing: “할일” → “할 일”Standard spacing in Korean is “할 일”. Update occurrences in comments/UI strings.
- // 서버에서 비동기적으로 할일을 가져옵니다. + // 서버에서 비동기적으로 할 일을 가져옵니다. - // await 중에 지속된 할일 목록을 사용할 수 있습니다. + // await 중에 지속된 할 일 목록을 사용할 수 있습니다. @@ - // 서버에서 비동기적으로 할일을 가져옵니다. + // 서버에서 비동기적으로 할 일을 가져옵니다. - // await 중에 지속된 할일 목록을 사용할 수 있습니다. + // await 중에 지속된 할 일 목록을 사용할 수 있습니다. @@ - MutationSuccess() => const Text('할일이 추가되었습니다!'), + MutationSuccess() => const Text('할 일이 추가되었습니다!'), @@ - await tsx.get(todoListProvider.notifier).addTodo('새 할일'); + await tsx.get(todoListProvider.notifier).addTodo('새 할 일'); @@ - // 새 할일을 서버에 게시합니다 + // 새 할 일을 서버에 게시합니다 @@ - // 새 할일을 서버에 게시합니다 + // 새 할 일을 서버에 게시합니다Also applies to: 172-185, 238-239, 251-251, 359-359, 377-377
31-31
: Terminology: “테스팅” → “테스트”“테스트” is the more common term in KR tech docs.
-- [새로운 테스팅 유틸리티](#new-testing-utilities): +- [새로운 테스트 유틸리티](#new-testing-utilities): @@ -## 새로운 테스팅 유틸리티 {#new-testing-utilities} +## 새로운 테스트 유틸리티 {#new-testing-utilities}Also applies to: 921-921
461-461
: Typo: “치뤘습니다” → “치렀습니다”Standard spelling.
-이는 일부 엣지 케이스에서 컴파일 오류를 위한 것이었지만, 나쁜 API라는 대가를 치뤘습니다. +이는 일부 엣지 케이스에서 컴파일 오류를 위한 것이었지만, 나쁜 API라는 대가를 치렀습니다.
777-777
: Spacing: “때 까지” → “때까지”-### Provider가 다시 빌드될 때, 빌드가 완료될 때 까지 이전 상태가 유지 +### Provider가 다시 빌드될 때, 빌드가 완료될 때까지 이전 상태가 유지
📜 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/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
[grammar] ~5-~5: There might be a mistake here.
Context: ...n: 1 --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; im...
(QB_NEW_EN)
[grammar] ~6-~6: There might be a mistake here.
Context: ...'; import TabItem from '@theme/TabItem'; import { AutoSnippet } from "/src/compon...
(QB_NEW_EN)
[grammar] ~7-~7: There might be a mistake here.
Context: ...et } from "/src/components/CodeSnippet"; import { Link } from "/src/components/Li...
(QB_NEW_EN)
[grammar] ~17-~17: Ensure spelling is correct
Context: ...ion 이 버전은 몇 가지 생명주기 변경사항을 포함하고 있습니다. 이런 변경사항들이 미묘한 방식으로 앱을 손상시킬 수 있습니다. 신중하게 업그레이드하세요....
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~24-~24: There might be a mistake here.
Context: ...l) - 인터페이스가 사이드이펙트에 반응할 수 있게 하는 새로운 메커니즘 - 자동 재시도 - Provider가 실패...
(QB_NEW_EN)
[grammar] ~26-~26: There might be a mistake here.
Context: ...BuildContext.mounted
와 유사하지만 Ref
용입니다. - [제네릭 지원 (코드 생성)](#generic-support-code-ge...
(QB_NEW_EN)
[grammar] ~30-~30: There might be a mistake here.
Context: ...es) - 최신 코드에 더 잘 맞도록 Provider 동작에 약간의 조정 - 새로운 테스팅 유틸리티: ...
(QB_NEW_EN)
[grammar] ~35-~35: There might be a mistake here.
Context: ...트 내에서 ProviderContainer
를 얻는 헬퍼 메서드입니다. - [정적으로 안전한 스코핑](#statically-safe-scoping-c...
(QB_NEW_EN)
[grammar] ~57-~57: There might be a mistake here.
Context: ...다. return JsonSqFliteStorage.open( join(await getDatabasesPath(), 'riverpod...
(QB_NEW_EN)
[grammar] ~112-~112: There might be a mistake here.
Context: ...합니다. return JsonSqFliteStorage.open( join(await getDatabasesPath(), 'riverpod...
(QB_NEW_EN)
[grammar] ~143-~143: There might be a mistake here.
Context: ... }; } } final todosProvider = AsyncNotifierProvider<TodosNotifier, Lis...
(QB_NEW_EN)
[grammar] ~202-~202: There might be a mistake here.
Context: ...로운 [Mutation] 객체가 추가되었습니다. 이는 Provider처럼 최상위 final 변수로 선언됩니다: ```dart final addT...
(QB_NEW_EN)
[grammar] ~318-~318: There might be a mistake here.
Context: ...n? retry(int retryCount, Object error) { if (error is SomeSpecificError) return n...
(QB_NEW_EN)
[grammar] ~332-~332: There might be a mistake here.
Context: ...odo> build() => []; } } raw={
final todoListProvider = NotifierProvide...
(QB_NEW_EN)
[grammar] ~341-~341: There might be a mistake here.
Context: ...on(seconds: retryCount * 2); }, ); } ></AutoSnippet> ##
Ref.mounted` {#...
(QB_NEW_EN)
[grammar] ~350-~350: There might be a mistake here.
Context: ...트되어 있는지 확인하는 데 사용할 수 있습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~371-~371: There might be a mistake here.
Context: ...te, newTodo]; } } } raw={
class TodoList extends Notifier<List<Tod...
(QB_NEW_EN)
[grammar] ~424-~424: There might be a mistake here.
Context: ...Riverpod는 이제 다양한 상황에서 Provider를 일시정지합니다: - Provider가 더 이상 보이지 않으면 일시정지됩니다 ([Ticke...
(QB_NEW_EN)
[grammar] ~426-~426: There might be a mistake here.
Context: ... 이상 보이지 않으면 일시정지됩니다 ([TickerMode] 기반). - Provider가 재구축되면, 재구축이 완료될 때까지 구독이 일시정지됩니...
(QB_NEW_EN)
[grammar] ~435-~435: There might be a mistake here.
Context: ...아래 세부 목표를 포함했습니다. - 권장하는 것과 그렇지 않은 것을 강조 - 불필요한 인터페이스 중복 제거 - 모든 기능이 일관된 방식으로 작동하도록...
(QB_NEW_EN)
[grammar] ~436-~436: There might be a mistake here.
Context: ... 권장하는 것과 그렇지 않은 것을 강조 - 불필요한 인터페이스 중복 제거 - 모든 기능이 일관된 방식으로 작동하도록 보장 이를 위해 몇 가지 변경사...
(QB_NEW_EN)
[grammar] ~454-~454: There might be a mistake here.
Context: ... 이러한 Provider가 더 이상 권장되지 않음을 강조하기 위함입니다. 동시에 이들은 하위 호환성을 위해 보존됩니다. ### AutoDispo...
(QB_NEW_EN)
[grammar] ~459-~459: There might be a mistake here.
Context: ... Notifier
vs AutoDisposeNotifier
등). 이는 일부 엣지 케이스에서 컴파일 오류를 위한 것이었지만, 나쁜 API라...
(QB_NEW_EN)
[grammar] ~506-~506: There might be a mistake here.
Context: ...otifier+
AutoDisposeFamilyNotifier대신, 항상
Notifier` 클래스를 사용한다는 의미입니다. 이 변경사항은...
(QB_NEW_EN)
[grammar] ~513-~513: There might be a mistake here.
Context: ..., 일부에는 future
또는 notifier
등이 있었습니다. 유용했지만, 얻는 것에 비해 많은 복잡성이었습니다. 그 이유 중 하나는 ...
(QB_NEW_EN)
[grammar] ~535-~535: There might be a mistake here.
Context: ...r가 특정 상황에서 더 이상 리스너에게 알림을 보내지 않을 수 있습니다. - 일부 리스너가 이전보다 더 자주 알림을 받을 수 있습니다. - ==
를...
(QB_NEW_EN)
[grammar] ~541-~541: There might be a mistake here.
Context: ...드하여 사용자 정의 구현을 사용할 수 있습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~557-~557: There might be a mistake here.
Context: ... return true; } } } raw={
class TodoList extends Notifier<List<Tod...
(QB_NEW_EN)
[grammar] ~577-~577: There might be a mistake here.
Context: ...od가 때때로 그 오류를 직접 다시 던졌습니다: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~595-~595: There might be a mistake here.
Context: ...); }, child: Text('클릭하세요'), ); } raw={
final exampleProvider =...
(QB_NEW_EN)
[grammar] ~598-~598: There might be a mistake here.
Context: ...ld: Text('클릭하세요'), ); } raw={
final exampleProvider = FutureProvider<i...
(QB_NEW_EN)
[grammar] ~613-~613: There might be a mistake here.
Context: ...); }, child: Text('클릭하세요'), ); `} > 3.0에서는 이것이 변경되었습니다....
(QB_NEW_EN)
[grammar] ~618-~618: There might be a mistake here.
Context: ....0에서는 이것이 변경되었습니다. 대신, 오류는 원본 오류와 스택 추적을 모두 포함하는 ProviderException
에 캡슐화됩니다. ::...
(QB_NEW_EN)
[grammar] ~649-~649: There might be a mistake here.
Context: ...d의 자동 재시도 메커니즘에서 내부적으로 사용됩니다. 기본 자동 재시도는 ProviderException
을 무시합니다: ```dart Pro...
(QB_NEW_EN)
[grammar] ~667-~667: There might be a mistake here.
Context: ...미합니다. 구체적인 예로, 두 경로가 있는 애플리케이션을 생각해보세요: - Provider를 사용해 웹소켓을 수신하는 홈 페이지 - 해당 웹소켓에 ...
(QB_NEW_EN)
[grammar] ~668-~668: There might be a mistake here.
Context: ... 생각해보세요: - Provider를 사용해 웹소켓을 수신하는 홈 페이지 - 해당 웹소켓에 의존하지 않는 설정 페이지 일반적인 애플리케이션에서 사...
(QB_NEW_EN)
[grammar] ~677-~677: There might be a mistake here.
Context: ...ickerMode]에 의존하여 위젯이 보이는지 여부를 판단합니다. 그리고 false일 때, [Consumer]의 모든 리스너가 일시정지됩니다. ...
(QB_NEW_EN)
[grammar] ~680-~680: There might be a mistake here.
Context: ...으로 제어할 수 있습니다. 값을 자의적으로 true/false로 설정하여 강제로 재개/일시정지할 수 있습니다: ```dart class MyWi...
(QB_NEW_EN)
[grammar] ~704-~704: There might be a mistake here.
Context: ...있었습니다. 하지만 제한적이었고 일부 엣지 케이스를 다루지 못했습니다. 다음을 생각해보세요: <AutoSnippet language="da...
(QB_NEW_EN)
[grammar] ~707-~707: There might be a mistake here.
Context: ...를 다루지 못했습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~732-~732: There might be a mistake here.
Context: ...ider를 통해 간접적으로 사용될 수 있습니다. <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~741-~741: There might be a mistake here.
Context: ... class MyWidget extends ConsumerWidget { @OverRide Widget build(BuildContext ...
(QB_NEW_EN)
[grammar] ~754-~754: There might be a mistake here.
Context: ...요'), ); } } } raw={
final anotherProvider = Provider((r...
(QB_NEW_EN)
[grammar] ~759-~759: There might be a mistake here.
Context: ... class MyWidget extends ConsumerWidget { @OverRide Widget build(BuildContext ...
(QB_NEW_EN)
[grammar] ~781-~781: There might be a mistake here.
Context: ...pose"가 예기치 않게 트리거될 수 있었습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen...
(QB_NEW_EN)
[grammar] ~782-~782: There might be a mistake here.
Context: ...리거될 수 있었습니다. 다음을 생각해보세요: <AutoSnippet language="dart" codegen={` @riverpod...
(QB_NEW_EN)
[grammar] ~808-~808: There might be a mistake here.
Context: ...Provider.future); } void main() { final container = ProviderContainer(); ...
(QB_NEW_EN)
[grammar] ~818-~818: There might be a mistake here.
Context: ...}\n----'); }); } } raw={
final autoDisposeProvider = StreamProvid...
(QB_NEW_EN)
[grammar] ~840-~840: There might be a mistake here.
Context: ...ovider.future); }); void main() { final container = ProviderContainer(); ...
(QB_NEW_EN)
[grammar] ~944-~944: There might be a mistake here.
Context: ...원래 구현을 계속 사용하고 싶을 때 유용합니다. <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~970-~970: There might be a mistake here.
Context: ... ], ); } } raw={
class MyNotifier extends Notifier {...
(QB_NEW_EN)
[grammar] ~1000-~1000: There might be a mistake here.
Context: ...일시적으로" 제거되었습니다. 다시 돌아왔습니다! <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~1019-~1019: There might be a mistake here.
Context: ... ], ); } } raw={
final myFutureProvider = FutureProvider<...
(QB_NEW_EN)
[grammar] ~1184-~1184: There might be a mistake here.
Context: ... 이는 Provider가 요청의 현재 진행률을 정의할 수 있게 해줍니다: <AutoSnippet language="dart" cod...
(QB_NEW_EN)
[grammar] ~1202-~1202: There might be a mistake here.
Context: ... } } } raw={
class MyNotifier extends AsyncNotifier<U...
(QB_NEW_EN)
[grammar] ~1228-~1228: There might be a mistake here.
Context: ...= ref.onDispose(() => print('dispose')); // 단순히 함수를 호출하여 리스너를 제거합니다: remove...
(QB_NEW_EN)
[grammar] ~1240-~1240: There might be a mistake here.
Context: ...= ref.onDispose(() => print('dispose')); // 단순히 함수를 호출하여 리스너를 제거합니다: remove...
(QB_NEW_EN)
[grammar] ~1253-~1253: There might be a mistake here.
Context: ... weak: true
를 지정할 수 있습니다: <AutoSnippet language="dart" codegen={` @Riverp...
(QB_NEW_EN)
[grammar] ~1269-~1269: There might be a mistake here.
Context: ... // ... } } raw={
final exampleProvider = FutureProvider<i...
(QB_NEW_EN)
[grammar] ~1283-~1283: There might be a mistake here.
Context: ...pet> 이 플래그를 지정하면 수신된 Provider가 사용되지 않으면 여전히 해제될 수 있다고 Riverpod에 알려줍니다. 이 플래그는 단...
(QB_NEW_EN)
[grammar] ~1286-~1286: There might be a mistake here.
Context: ...는 단일 Provider에서 여러 "진실의 원천"을 결합하는 것과 관련된 일부 틈새 사용 사례를 돕는 고급 기능입니다. [ProviderCont...
(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). (18)
- GitHub Check: check_generation
- GitHub Check: build (stable, packages/flutter_riverpod/example)
- GitHub Check: build (master, packages/riverpod_annotation)
- GitHub Check: build (master, packages/flutter_riverpod)
- GitHub Check: build (master, examples/marvel)
- GitHub Check: build (master, examples/random_number)
- GitHub Check: build (stable, packages/riverpod)
- GitHub Check: build (stable, packages/riverpod_annotation)
- GitHub Check: build (master, packages/flutter_riverpod/example)
- GitHub Check: build (stable, examples/todos)
- GitHub Check: build (stable, packages/flutter_riverpod)
- GitHub Check: build (stable, packages/riverpod_generator)
- GitHub Check: riverpod_lint (stable, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (stable, packages/riverpod_analyzer_utils_tests)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint_flutter_test)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils)
- GitHub Check: riverpod_lint (master, packages/riverpod_lint)
- GitHub Check: riverpod_lint (master, packages/riverpod_analyzer_utils_tests)
🔇 Additional comments (1)
website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx (1)
1-4
: Korean “What’s new” page is correctly registered and present
Thedocuments_meta.js
entry at line 161 includes"whats_new": "Riverpod 3.0의 새로운 기능"
, and the filewebsite/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
exists. No changes needed.
Related Issues
fixes #4258
Summary
This PR adds a complete Korean translation for the "What's new in Riverpod 3.0" documentation, addressing issue
#4258.
Changes Made
✅ Added Korean Translation
/website/i18n/ko/docusaurus-plugin-content-docs/current/whats_new.mdx
✅ Updated Metadata Integration
documents_meta.js
for proper navigationImpact
This translation will help Korean developers:
Additional Notes
Summary by CodeRabbit