CONSOLE-5428: migrate to i18next-cli#16796
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
@logonoff: This pull request references CONSOLE-5428 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
WalkthroughThe frontend i18n workflow now uses i18next-cli with shared namespace mapping and custom console-extension extraction. Translation lookups, interpolation, pluralization, rich-text markup, accessibility labels, and locale catalogs are updated across frontend packages and public UI components. ChangesFrontend i18n migration
Estimated code review effort: 4 (Complex) | ~45 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 14 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (14 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
/label px-approved |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@frontend/i18next.config.ts`:
- Around line 37-39: Update the catch block in the extension manifest extraction
flow to re-throw the parsing error after logging it, instead of continuing past
the malformed file. Keep the existing contextual console.error message and
ensure invalid console-extensions.json manifests fail the i18n build.
In `@frontend/package.json`:
- Line 176: Update the dependency declarations for i18next-http-backend and
i18next-cli in package.json to use exact versions without caret or other range
operators, keeping i18next-http-backend at a version at or above 3.0.5.
In `@frontend/packages/console-app/locales/en/console-app.json`:
- Line 750: Update the count-based locale entries near the identified item keys
to use explicit plural variants, adding `_one` and `_other` forms while
retaining the existing count interpolation. Ensure values greater than one
resolve to the plural wording instead of the singular string.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: cbb4ca3e-7995-436a-9d68-40b37e3550e8
⛔ Files ignored due to path filters (1)
frontend/yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (47)
frontend/__tests__/i18n-structure.spec.tsfrontend/i18n-scripts/build-i18n.shfrontend/i18n-scripts/common.jsfrontend/i18n-scripts/consolidate-public-folders.jsfrontend/i18n-scripts/lexers.jsfrontend/i18n-scripts/namespace-map.tsfrontend/i18n-scripts/set-english-defaults.jsfrontend/i18next-parser.config.jsfrontend/i18next.config.tsfrontend/package.jsonfrontend/packages/console-app/locales/en/console-app.jsonfrontend/packages/console-app/src/components/nodes/configuration/high-availability/RemediationAgent.tsxfrontend/packages/console-app/src/components/pdb/PDBFormPage.tsxfrontend/packages/dev-console/locales/en/devconsole.jsonfrontend/packages/dev-console/src/components/buildconfig/BuildConfigFormEditor.tsxfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImageSamples.tsfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImages.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfile.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfileSamples.tsxfrontend/packages/dev-console/src/components/catalog/providers/useTemplates.tsxfrontend/packages/dev-console/src/components/deployments/AdvancedSection.tsxfrontend/packages/dev-console/src/components/health-checks/RequestTypeForms.tsxfrontend/packages/dev-console/src/components/import/ImportPage.tsxfrontend/packages/dev-console/src/components/import/advanced/AdvancedSection.tsxfrontend/packages/dev-console/src/components/pipeline-section/pipeline/GithubSection.tsxfrontend/packages/helm-plugin/locales/en/helm-plugin.jsonfrontend/packages/knative-plugin/src/catalog/useEventSourceProvider.tsfrontend/packages/knative-plugin/src/catalog/useEventTypeProvider.tsxfrontend/packages/knative-plugin/src/catalog/useKafkaSinkProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsSinkProvider.tsfrontend/packages/knative-plugin/src/components/eventing/EventType.tsxfrontend/packages/metal3-plugin/locales/en/metal3-plugin.jsonfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostDisks.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostNICs.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostStatus.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsPage.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsTable.tsxfrontend/packages/metal3-plugin/src/components/modals/StopNodeMaintenanceModal.tsxfrontend/packages/operator-lifecycle-manager/locales/en/olm.jsonfrontend/packages/shipwright-plugin/src/components/build-list/BuildTable.tsxfrontend/packages/shipwright-plugin/src/components/buildrun-list/BuildRunTable.tsxfrontend/packages/topology/locales/en/topology.jsonfrontend/packages/vsphere-plugin/src/components/VSphereOperatorStatuses.tsxfrontend/packages/webterminal-plugin/src/components/cloud-shell/setup/CloudShellAdvancedOption.tsxfrontend/public/components/error.tsxfrontend/public/locales/en/public.json
💤 Files with no reviewable changes (6)
- frontend/i18n-scripts/set-english-defaults.js
- frontend/i18n-scripts/consolidate-public-folders.js
- frontend/i18next-parser.config.js
- frontend/i18n-scripts/lexers.js
- frontend/i18n-scripts/build-i18n.sh
- frontend/i18n-scripts/common.js
2908854 to
ca254a8
Compare
There was a problem hiding this comment.
🧹 Nitpick comments (1)
frontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsx (1)
183-201: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winUpdate the stale parser reference in this extraction block.
The surrounding comment still directs maintainers to
i18next-parser, while this PR migrates extraction toi18next-cli. Update the caveat and instructions so future changes do not follow obsolete tooling guidance.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsx` around lines 183 - 201, Update the extraction-block comment in quick-start-context.tsx to replace the stale i18next-parser guidance with the current i18next-cli tooling and instructions, while leaving the translation key list unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In
`@frontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsx`:
- Around line 183-201: Update the extraction-block comment in
quick-start-context.tsx to replace the stale i18next-parser guidance with the
current i18next-cli tooling and instructions, while leaving the translation key
list unchanged.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 51658654-95c2-4a84-b83b-2fb9321eae30
⛔ Files ignored due to path filters (1)
frontend/yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (49)
frontend/__tests__/i18n-structure.spec.tsfrontend/i18n-scripts/__tests__/lexers.spec.tsfrontend/i18n-scripts/build-i18n.shfrontend/i18n-scripts/common.jsfrontend/i18n-scripts/consolidate-public-folders.jsfrontend/i18n-scripts/lexers.jsfrontend/i18n-scripts/namespace-map.tsfrontend/i18n-scripts/set-english-defaults.jsfrontend/i18next-parser.config.jsfrontend/i18next.config.tsfrontend/package.jsonfrontend/packages/console-app/locales/en/console-app.jsonfrontend/packages/console-app/src/components/nodes/configuration/high-availability/RemediationAgent.tsxfrontend/packages/console-app/src/components/pdb/PDBFormPage.tsxfrontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsxfrontend/packages/dev-console/locales/en/devconsole.jsonfrontend/packages/dev-console/src/components/buildconfig/BuildConfigFormEditor.tsxfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImageSamples.tsfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImages.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfile.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfileSamples.tsxfrontend/packages/dev-console/src/components/catalog/providers/useTemplates.tsxfrontend/packages/dev-console/src/components/deployments/AdvancedSection.tsxfrontend/packages/dev-console/src/components/health-checks/RequestTypeForms.tsxfrontend/packages/dev-console/src/components/import/ImportPage.tsxfrontend/packages/dev-console/src/components/import/advanced/AdvancedSection.tsxfrontend/packages/dev-console/src/components/pipeline-section/pipeline/GithubSection.tsxfrontend/packages/helm-plugin/locales/en/helm-plugin.jsonfrontend/packages/knative-plugin/src/catalog/useEventSourceProvider.tsfrontend/packages/knative-plugin/src/catalog/useEventTypeProvider.tsxfrontend/packages/knative-plugin/src/catalog/useKafkaSinkProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsSinkProvider.tsfrontend/packages/knative-plugin/src/components/eventing/EventType.tsxfrontend/packages/metal3-plugin/locales/en/metal3-plugin.jsonfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostDisks.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostNICs.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostStatus.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsPage.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsTable.tsxfrontend/packages/metal3-plugin/src/components/modals/StopNodeMaintenanceModal.tsxfrontend/packages/operator-lifecycle-manager/locales/en/olm.jsonfrontend/packages/shipwright-plugin/src/components/build-list/BuildTable.tsxfrontend/packages/shipwright-plugin/src/components/buildrun-list/BuildRunTable.tsxfrontend/packages/topology/locales/en/topology.jsonfrontend/packages/vsphere-plugin/src/components/VSphereOperatorStatuses.tsxfrontend/packages/webterminal-plugin/src/components/cloud-shell/setup/CloudShellAdvancedOption.tsxfrontend/public/components/error.tsxfrontend/public/locales/en/public.json
💤 Files with no reviewable changes (7)
- frontend/i18n-scripts/tests/lexers.spec.ts
- frontend/i18n-scripts/build-i18n.sh
- frontend/i18n-scripts/lexers.js
- frontend/i18n-scripts/set-english-defaults.js
- frontend/i18n-scripts/consolidate-public-folders.js
- frontend/i18n-scripts/common.js
- frontend/i18next-parser.config.js
🚧 Files skipped from review as they are similar to previous changes (33)
- frontend/packages/knative-plugin/src/catalog/useEventTypeProvider.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useBuilderImageSamples.ts
- frontend/packages/dev-console/src/components/catalog/providers/useBuilderImages.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useDevfileSamples.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostDisks.tsx
- frontend/packages/metal3-plugin/src/components/modals/StopNodeMaintenanceModal.tsx
- frontend/packages/dev-console/src/components/pipeline-section/pipeline/GithubSection.tsx
- frontend/packages/dev-console/src/components/deployments/AdvancedSection.tsx
- frontend/packages/knative-plugin/src/catalog/useKameletsProvider.ts
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsTable.tsx
- frontend/i18n-scripts/namespace-map.ts
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsPage.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostStatus.tsx
- frontend/packages/dev-console/src/components/import/ImportPage.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useTemplates.tsx
- frontend/packages/webterminal-plugin/src/components/cloud-shell/setup/CloudShellAdvancedOption.tsx
- frontend/packages/helm-plugin/locales/en/helm-plugin.json
- frontend/public/components/error.tsx
- frontend/tests/i18n-structure.spec.ts
- frontend/packages/dev-console/src/components/import/advanced/AdvancedSection.tsx
- frontend/packages/knative-plugin/src/components/eventing/EventType.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostNICs.tsx
- frontend/package.json
- frontend/packages/dev-console/src/components/catalog/providers/useDevfile.tsx
- frontend/packages/console-app/src/components/pdb/PDBFormPage.tsx
- frontend/packages/console-app/src/components/nodes/configuration/high-availability/RemediationAgent.tsx
- frontend/packages/dev-console/src/components/health-checks/RequestTypeForms.tsx
- frontend/packages/operator-lifecycle-manager/locales/en/olm.json
- frontend/packages/shipwright-plugin/src/components/build-list/BuildTable.tsx
- frontend/packages/knative-plugin/src/catalog/useEventSourceProvider.ts
- frontend/packages/vsphere-plugin/src/components/VSphereOperatorStatuses.tsx
- frontend/packages/metal3-plugin/locales/en/metal3-plugin.json
- frontend/packages/shipwright-plugin/src/components/buildrun-list/BuildRunTable.tsx
391b14b to
0293ad6
Compare
The new i18next-cli config correctly assume the ns is "public" when the `t` function from `useTranslation` is not directly used by a caller.
Explicitly add namespaces to functions which use the t function but indirectly through a param.
the extractor also doesn't like `{ count: 0 }` in code comments, but for some reason it will catch `{ count: 2}`.
ed819b0 to
1ac76ef
Compare
4a953d5 to
0f26660
Compare
Note that i18next is sort of nasty with their dependency semver ranges so 1.50.3 is the last compatible version with react-i18next 16.5.8
i18next-cli prints out some extraction errors which this commit fixes
0f26660 to
8c7532f
Compare
Older version of i18next-cli has a bug if `sort: false` is set, the sort order is non-deterministic and different every time. To counteract this, i18n keys need to be sorted. No changes were made to the key/value pairs in this commit, only the sorting order.
568cd62 to
c4a1cee
Compare
|
@coderabbitai resume |
✅ Action performedReviews resumed. |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@frontend/packages/console-app/locales/en/console-app.json`:
- Around line 827-828: Correct the _other translation for “You selected all
{{count}} {{label}}” so the plural suffix appears before the period, producing
“Pod.s” no longer and preserving the existing _one wording.
In `@frontend/packages/console-shared/locales/en/console-shared.json`:
- Around line 11-12: Update the plural translation value for "{{count}} resource
reached quota_other" so the counted noun is pluralized, producing "{{count}}
resources reached quota"; leave the singular "{{count}} resource reached
quota_one" translation unchanged.
In `@frontend/packages/topology/locales/en/topology.json`:
- Around line 10-11: Update the singular and plural CPU translation values in
the topology locale so a space is preserved between the <0> value tag and <1>
unit tag, matching the spacing produced by CpuCell. Keep the existing
pluralization and tag structure unchanged.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: d92ff214-2cf8-4b36-8ddf-473b7bfcb627
⛔ Files ignored due to path filters (1)
frontend/yarn.lockis excluded by!**/yarn.lock,!**/*.lock
📒 Files selected for processing (77)
frontend/__tests__/i18n-structure.spec.tsfrontend/i18n-scripts/__tests__/lexers.spec.tsfrontend/i18n-scripts/build-i18n.shfrontend/i18n-scripts/common.jsfrontend/i18n-scripts/consolidate-public-folders.jsfrontend/i18n-scripts/lexers.jsfrontend/i18n-scripts/namespace-map.tsfrontend/i18n-scripts/set-english-defaults.jsfrontend/i18next-parser.config.jsfrontend/i18next.config.tsfrontend/package.jsonfrontend/packages/console-app/locales/en/console-app.jsonfrontend/packages/console-app/src/components/nodes/configuration/high-availability/RemediationAgent.tsxfrontend/packages/console-app/src/components/pdb/PDBFormPage.tsxfrontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsxfrontend/packages/console-app/src/components/volume-snapshot/volume-snapshot-class.tsxfrontend/packages/console-shared/locales/en/console-shared.jsonfrontend/packages/console-telemetry-plugin/locales/en/console-telemetry-plugin.jsonfrontend/packages/container-security/locales/en/container-security.jsonfrontend/packages/dev-console/locales/en/devconsole.jsonfrontend/packages/dev-console/src/components/NamespacedPage.tsxfrontend/packages/dev-console/src/components/buildconfig/BuildConfigFormEditor.tsxfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImageSamples.tsfrontend/packages/dev-console/src/components/catalog/providers/useBuilderImages.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfile.tsxfrontend/packages/dev-console/src/components/catalog/providers/useDevfileSamples.tsxfrontend/packages/dev-console/src/components/catalog/providers/useTemplates.tsxfrontend/packages/dev-console/src/components/deployments/AdvancedSection.tsxfrontend/packages/dev-console/src/components/health-checks/RequestTypeForms.tsxfrontend/packages/dev-console/src/components/import/ImportPage.tsxfrontend/packages/dev-console/src/components/import/advanced/AdvancedSection.tsxfrontend/packages/dev-console/src/components/pipeline-section/pipeline/GithubSection.tsxfrontend/packages/git-service/locales/en/git-service.jsonfrontend/packages/helm-plugin/locales/en/helm-plugin.jsonfrontend/packages/helm-plugin/src/topology/sidebar/release-panel/tab-sections.tsxfrontend/packages/insights-plugin/locales/en/insights-plugin.jsonfrontend/packages/knative-plugin/locales/en/knative-plugin.jsonfrontend/packages/knative-plugin/src/catalog/useEventSourceProvider.tsfrontend/packages/knative-plugin/src/catalog/useEventTypeProvider.tsxfrontend/packages/knative-plugin/src/catalog/useKafkaSinkProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsProvider.tsfrontend/packages/knative-plugin/src/catalog/useKameletsSinkProvider.tsfrontend/packages/knative-plugin/src/components/eventing/EventType.tsxfrontend/packages/metal3-plugin/locales/en/metal3-plugin.jsonfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostDisks.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostNICs.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostStatus.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsPage.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsTable.tsxfrontend/packages/metal3-plugin/src/components/baremetal-hosts/dashboard/EventsCard.tsxfrontend/packages/metal3-plugin/src/components/modals/StopNodeMaintenanceModal.tsxfrontend/packages/operator-lifecycle-manager-v1/locales/en/olm-v1.jsonfrontend/packages/operator-lifecycle-manager/locales/en/olm.jsonfrontend/packages/operator-lifecycle-manager/src/components/descriptors/spec/endpoint.tsxfrontend/packages/operator-lifecycle-manager/src/components/descriptors/spec/match-expressions.tsxfrontend/packages/shipwright-plugin/locales/en/shipwright-plugin.jsonfrontend/packages/shipwright-plugin/src/components/build-list/BuildTable.tsxfrontend/packages/shipwright-plugin/src/components/buildrun-list/BuildRunTable.tsxfrontend/packages/topology/locales/en/topology.jsonfrontend/packages/topology/src/components/list-view/cells/CpuCell.tsxfrontend/packages/topology/src/components/list-view/cells/MemoryCell.tsxfrontend/packages/topology/src/components/list-view/cells/MetricsTooltip.tsxfrontend/packages/vsphere-plugin/locales/en/vsphere-plugin.jsonfrontend/packages/vsphere-plugin/src/components/VSphereOperatorStatuses.tsxfrontend/packages/webterminal-plugin/locales/en/webterminal-plugin.jsonfrontend/packages/webterminal-plugin/src/components/cloud-shell/setup/CloudShellAdvancedOption.tsxfrontend/public/components/RBAC/rules.jsxfrontend/public/components/cluster-settings/cluster-settings.tsxfrontend/public/components/configmap-and-secret-data.tsxfrontend/public/components/error.tsxfrontend/public/components/image-stream-timeline.tsxfrontend/public/components/instantiate-template.tsxfrontend/public/components/modals/impersonate-user-modal.tsxfrontend/public/components/service-monitor.jsxfrontend/public/components/utils/download-button.tsxfrontend/public/components/utils/webhooks.tsxfrontend/public/locales/en/public.json
💤 Files with no reviewable changes (8)
- frontend/i18n-scripts/lexers.js
- frontend/i18n-scripts/tests/lexers.spec.ts
- frontend/i18n-scripts/build-i18n.sh
- frontend/i18n-scripts/common.js
- frontend/i18n-scripts/set-english-defaults.js
- frontend/i18next-parser.config.js
- frontend/i18n-scripts/consolidate-public-folders.js
- frontend/public/components/cluster-settings/cluster-settings.tsx
🚧 Files skipped from review as they are similar to previous changes (37)
- frontend/packages/dev-console/src/components/catalog/providers/useTemplates.tsx
- frontend/packages/knative-plugin/src/catalog/useEventTypeProvider.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostStatus.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useDevfileSamples.tsx
- frontend/packages/dev-console/src/components/import/advanced/AdvancedSection.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useBuilderImageSamples.ts
- frontend/packages/console-app/src/components/volume-snapshot/volume-snapshot-class.tsx
- frontend/i18n-scripts/namespace-map.ts
- frontend/packages/dev-console/src/components/buildconfig/BuildConfigFormEditor.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsTable.tsx
- frontend/packages/knative-plugin/src/catalog/useKafkaSinkProvider.ts
- frontend/packages/knative-plugin/src/components/eventing/EventType.tsx
- frontend/packages/webterminal-plugin/src/components/cloud-shell/setup/CloudShellAdvancedOption.tsx
- frontend/packages/dev-console/src/components/pipeline-section/pipeline/GithubSection.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useDevfile.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostsPage.tsx
- frontend/packages/dev-console/src/components/deployments/AdvancedSection.tsx
- frontend/packages/dev-console/src/components/catalog/providers/useBuilderImages.tsx
- frontend/packages/metal3-plugin/src/components/modals/StopNodeMaintenanceModal.tsx
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostNICs.tsx
- frontend/packages/dev-console/src/components/import/ImportPage.tsx
- frontend/packages/knative-plugin/src/catalog/useKameletsProvider.ts
- frontend/packages/knative-plugin/src/catalog/useKameletsSinkProvider.ts
- frontend/packages/metal3-plugin/src/components/baremetal-hosts/BareMetalHostDisks.tsx
- frontend/packages/dev-console/src/components/health-checks/RequestTypeForms.tsx
- frontend/packages/knative-plugin/src/catalog/useEventSourceProvider.ts
- frontend/packages/shipwright-plugin/src/components/buildrun-list/BuildRunTable.tsx
- frontend/packages/console-app/src/components/quick-starts/utils/quick-start-context.tsx
- frontend/packages/console-app/src/components/nodes/configuration/high-availability/RemediationAgent.tsx
- frontend/package.json
- frontend/i18next.config.ts
- frontend/packages/shipwright-plugin/src/components/build-list/BuildTable.tsx
- frontend/packages/dev-console/locales/en/devconsole.json
- frontend/tests/i18n-structure.spec.ts
- frontend/packages/vsphere-plugin/src/components/VSphereOperatorStatuses.tsx
- frontend/packages/helm-plugin/locales/en/helm-plugin.json
- frontend/packages/operator-lifecycle-manager/locales/en/olm.json
d9a0af9 to
bad4d07
Compare
catches untranslated strings
bad4d07 to
4610c54
Compare
|
/lgtm |
|
Scheduling tests matching the |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: logonoff, vojtechszocs The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
1 similar comment
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: logonoff, vojtechszocs The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
QA Verification Evidence
Verification Steps
i18n Tooling Verification
Visual EvidenceNote All screenshots are visually identical between baseline and candidate, confirming no visual regressions from the i18n tooling migration. Console errors are the same on both branches (standard API 404/500s for missing CRDs — unrelated to i18n). Warning This verification was performed by an AI agent. Results may contain false positives or miss Automated QA verification by Claude Code |
|
/verified by claude |
|
@logonoff: This PR has been marked as verified by DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/test all |
|
@logonoff: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
56550c1
into
openshift:main
















Analysis / Root cause:
From yarn npm audit, i18next-http-backend has a CVE and i18next-parser is deprecated.
Solution description:
Additional info:
yarn i18nis now ~2 times faster:before:
after:
Summary by CodeRabbit
{{ }}interpolations, improved pluralization prompts, and updated rich-text emphasis markup.i18next-cliand upgradedi18next-http-backend.