NO-JIRA: Prepare for 4.22-prerelease.1 release#15933
NO-JIRA: Prepare for 4.22-prerelease.1 release#15933openshift-merge-bot[bot] merged 1 commit intoopenshift:mainfrom
Conversation
|
@logonoff: This pull request explicitly references no jira issue. 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. |
|
/label px-approved |
|
@logonoff: The 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. |
|
@logonoff: This pull request explicitly references no jira issue. 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. |
2c6c067 to
a8bebd5
Compare
📝 WalkthroughWalkthroughThis pull request restructures the console-dynamic-plugin-sdk documentation by consolidating version-specific upgrade and deprecation guidance into individual release notes files (4.14 through 4.22). The main README is substantially simplified by removing extensive version-pattern compatibility tables, CSP change logs, and deprecation details. Changelogs are updated with a concrete prerelease date and TypeScript minimum version requirement. Legacy upgrade guide files are deleted. Release notes now serve as the authoritative source for version-specific changes, PatternFly compatibility, and migration paths. 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Comment |
There was a problem hiding this comment.
Actionable comments posted: 11
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.md (1)
29-29: Chronological inconsistency in changelog ordering.This entry shows
4.21.0-prerelease.1 - 2025-12-04, which is chronologically later than the4.22.0-prerelease.1 - 2025-01-20entry above (line 13). This violates semantic versioning expectations where 4.22 should come after 4.21 in time.If the date on line 13 should actually be
2026-01-20, then this would make chronological sense (4.21 in Dec 2025, followed by 4.22 in Jan 2026).
🤖 Fix all issues with AI agents
In `@frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.md`:
- Line 13: Update the mistaken changelog header entry: replace the existing
heading "## 4.22.0-prerelease.1 - 2025-01-20" with "## 4.21.0-prerelease.1 -
2026-01-20" in CHANGELOG-core.md (ensure you update the heading text only), and
then check for the existing "4.21.0-prerelease.1" entry later in the file to
decide whether to consolidate or keep both entries as separate prerelease
iterations before committing.
In `@frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.md`:
- Line 13: The changelog header currently reads "## 4.22.0-prerelease.1 -
2025-01-20" which mismatches the PR title and current date; update the header in
frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.md to the correct
version "4.21-prerelease.1" (matching the PR title) and set the date to today
"2026-01-20", and ensure it matches the corresponding entry in CHANGELOG-core.md
for consistency.
- Line 18: The changelog entry "4.21.0-prerelease.1 - 2025-12-04" is
chronologically out of order relative to "4.22.0-prerelease.1 - 2025-01-20";
update the changelog by correcting the date or moving the "4.21.0-prerelease.1 -
2025-12-04" line so entries are in descending chronological/version order—locate
the string "4.21.0-prerelease.1 - 2025-12-04" in CHANGELOG-webpack.md and either
fix its date to the correct earlier date or reorder it beneath entries for later
versions like "4.22.0-prerelease.1 - 2025-01-20".
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.14.md`:
- Around line 9-16: Update the "PatternFly 4" block in the release notes by
removing the incorrect shared-module entries `@patternfly/react-core`,
`@patternfly/react-table`, and `@patternfly/quickstarts` and either delete the
entire PatternFly 4 section or replace it with a single, accurate statement that
Console only shares `@patternfly/react-topology` (as declared in
shared-modules-meta.ts) and that plugins must bundle any other PatternFly
packages themselves; locate the "PatternFly 4" heading and the listed bullet
items in the release-notes content and make the change there.
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.15.md`:
- Line 1: The release note heading is wrong: in release-notes/4.15.md the
markdown header reads "# 4.14 Release Notes"; update that header to "# 4.15
Release Notes" so the file name and top-level heading match (search for the
header string "4.14 Release Notes" and replace it with "4.15 Release Notes").
- Line 13: Replace the unhyphenated phrase "PatternFly related" in the release
note sentence "Any PatternFly related code should be imported via the
corresponding package index:" with the grammatically correct hyphenated form
"PatternFly-related" so the sentence reads "Any PatternFly-related code should
be imported via the corresponding package index:"; update the text in the
release-notes/4.15.md file where that exact phrase appears.
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.16.md`:
- Around line 6-7: Update the two deprecation lines to use the hyphenated
compound adjective "Console-provided" instead of "Console provided";
specifically change the PatternFly 4.x deprecation line ("All Console provided
PatternFly 4.x shared modules are deprecated...") and the React Router v5
deprecation line ("All Console provided React Router v5 shared modules are
deprecated...") so both read "All Console-provided ... shared modules are
deprecated and will be removed in the future."
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.18.md`:
- Around line 29-30: Update the sentence containing "CSP related issues in
future" to read "CSP-related issues in the future": add the hyphen to form the
compound adjective "CSP-related" and insert "the" before "future" to match US
English usage, replacing the original phrase exactly.
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.19.md`:
- Around line 55-58: Split the combined bullet into two separate bullets: one
stating "Removed styling for generic HTML heading elements (e.g., <h1>). Use
PatternFly components to achieve correct styling." and a second stating "Removed
styling for generic HTML description list elements (e.g., <dl>, <dt>, <dd>). Use
PatternFly components to achieve correct styling.", making sure each removal is
its own list item so headings (<h1>) and description list tags (<dl>, <dt>,
<dd>) are clearly separated.
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.20.md`:
- Line 12: Update the 4.20 release notes entry for the removed `co-disabled`
styling to include concise migration guidance: mention using PatternFly
component props like isDisabled (e.g., Button, Form controls) and relevant
PatternFly utility classes for disabled visuals, provide one or two short
example patterns (prop usage and an equivalent utility-class approach), and add
a brief note for plugin authors to audit custom CSS that targeted `.co-disabled`
and replace it with the PatternFly alternatives.
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.21.md`:
- Around line 1-3: The release notes file is missing detailed 4.21 deprecations,
breaking changes, features, PatternFly guidance, and prerelease metadata; update
release-notes/4.21.md to mirror the structure used in 4.19/4.20 by adding a
"Deprecations" section noting that setPluginStore is now a noop and will be
removed, a "Type breaking changes" section documenting the popupComponent prop
type fix in console.dashboards/overview/health/resource and the removal of
AlwaysOnExtension and ModelDefinition from api/common-types, a "New features and
enhancements" section describing async function support for
topology/data/factory resources, the fetch property for health/url extension,
and color theme & font size customization in ResourceYAMLEditor, a "PatternFly 6
guidance" note recommending plugin targeting of PatternFly 6, and prerelease
metadata (version number and prerelease date) consistent with
4.21.0-prerelease.1; keep headings and upgrade guidance consistent with the
4.19/4.20 format so consumers can find deprecations, breaking changes, and
upgrade steps easily.
🧹 Nitpick comments (4)
frontend/packages/console-dynamic-plugin-sdk/release-notes/4.19.md (2)
9-10: Consider simplifying phrasing (optional)."in order to consume" can be simplified to "to consume" for conciseness.
✏️ Optional simplification
- `react-router-dom-v5-compat` shared module is deprecated and will be removed in the future. Plugins - should continue using `react-router-dom-v5-compat` module in order to consume React Router v6 APIs. + should continue using `react-router-dom-v5-compat` module to consume React Router v6 APIs.
5-6: Consider clarifying PatternFly migration timeline (optional).The notes mention that Console uses PF 6.x while providing PF 5.x styles for compatibility, recommend upgrading to PF 6.x, and deprecate PF 5.x support. Plugin developers might benefit from understanding what happens to PF 5.x-based plugins after the deprecation period ends—whether they'll break or degrade gracefully.
Also applies to: 35-37, 46-46
frontend/packages/console-dynamic-plugin-sdk/README.md (1)
129-143: Strong improvement: Consolidated upgrade guidance.Replacing scattered version tables and deprecation notes with clear "How to upgrade" and "PatternFly" sections significantly improves developer experience. Directing users to release notes for version-specific guidance is a better pattern than maintaining duplicate documentation.
This aligns with architectural best practices for documentation maintenance and reduces the burden of keeping multiple sources of truth synchronized.
Consider adding a brief example or link showing the typical upgrade workflow (e.g., "update package.json → check release notes → run migrations") to help first-time upgraders.
frontend/packages/console-dynamic-plugin-sdk/release-notes/4.14.md (1)
17-24: LGTM — Consider enhancing with rationale for better developer understanding.The import guidance correctly discourages deep imports in favor of package-root imports, which aligns with PatternFly best practices and enables optimal tree-shaking.
Consider optionally adding a brief explanation of the benefits (tree-shaking, smaller bundles, resilience to internal package restructuring) to help plugin developers understand the performance and maintainability implications.
📚 Optional enhancement: Add rationale to import guidance
When using code from these packages, make sure to import directly from the package index: +This ensures optimal tree-shaking and reduces bundle size while avoiding coupling to internal package structure. ```ts // Do _not_ do this: import { Button } from '@patternfly/react-core/dist/esm/components/Button'; // Instead, do this: import { Button } from '@patternfly/react-core';</details> </blockquote></details> </blockquote></details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
| table in [Console dynamic plugins README](./README.md). | ||
|
|
||
| ## 4.22.0-prerelease.1 - TBD | ||
| ## 4.22.0-prerelease.1 - 2025-01-20 |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
# Search for PR metadata and git information
cd frontend/packages/console-dynamic-plugin-sdk
pwd
git log --oneline -n 20 -- CHANGELOG-core.mdRepository: openshift/console
Length of output: 178
🏁 Script executed:
# Read the full CHANGELOG-core.md to understand context and version patterns
head -50 frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.mdRepository: openshift/console
Length of output: 178
🏁 Script executed:
# Check if there's any PR title or branch info available
cd frontend/packages/console-dynamic-plugin-sdk
git branch -v 2>/dev/null || echo "No branch info"
git log -1 --format="%s%n%b" -- CHANGELOG-core.md 2>/dev/null || echo "No commit message"Repository: openshift/console
Length of output: 430
🏁 Script executed:
head -60 frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.mdRepository: openshift/console
Length of output: 4251
Critical: Fix version and date in changelog entry.
The changelog shows 4.22.0-prerelease.1 with date 2025-01-20, but the commit message indicates this PR prepares for 4.21-prerelease.1, and today's date is 2026-01-20.
Update line 13 to: ## 4.21.0-prerelease.1 - 2026-01-20
Note: The changelog already contains a 4.21.0-prerelease.1 entry dated 2025-12-04 below this one. Verify whether you need to consolidate entries or if this is a new prerelease iteration.
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.md` at line 13,
Update the mistaken changelog header entry: replace the existing heading "##
4.22.0-prerelease.1 - 2025-01-20" with "## 4.21.0-prerelease.1 - 2026-01-20" in
CHANGELOG-core.md (ensure you update the heading text only), and then check for
the existing "4.21.0-prerelease.1" entry later in the file to decide whether to
consolidate or keep both entries as separate prerelease iterations before
committing.
| table in [Console dynamic plugins README](./README.md). | ||
|
|
||
| ## 4.22.0-prerelease.1 - TBD | ||
| ## 4.22.0-prerelease.1 - 2025-01-20 |
There was a problem hiding this comment.
Critical: Version and date mismatch with PR title.
Same issue as in CHANGELOG-core.md: the PR title indicates 4.21-prerelease.1, but this shows 4.22.0-prerelease.1, and the date 2025-01-20 appears to be one year in the past (today is 2026-01-20).
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.md` at line
13, The changelog header currently reads "## 4.22.0-prerelease.1 - 2025-01-20"
which mismatches the PR title and current date; update the header in
frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.md to the correct
version "4.21-prerelease.1" (matching the PR title) and set the date to today
"2026-01-20", and ensure it matches the corresponding entry in CHANGELOG-core.md
for consistency.
| - **Breaking**: Minimum compatible version of `webpack` increased to `^5.100.0` ([CONSOLE-3769], [#15945]) | ||
| - **Breaking**: Minimum compatible version of `typescript` increased to `^5.9.3` ([CONSOLE-3769], [#15945]) | ||
|
|
||
| ## 4.21.0-prerelease.1 - 2025-12-04 |
There was a problem hiding this comment.
Chronological inconsistency in changelog ordering.
Same issue as CHANGELOG-core.md: 4.21.0-prerelease.1 - 2025-12-04 is dated after 4.22.0-prerelease.1 - 2025-01-20, which violates expected version chronology.
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.md` at line
18, The changelog entry "4.21.0-prerelease.1 - 2025-12-04" is chronologically
out of order relative to "4.22.0-prerelease.1 - 2025-01-20"; update the
changelog by correcting the date or moving the "4.21.0-prerelease.1 -
2025-12-04" line so entries are in descending chronological/version order—locate
the string "4.21.0-prerelease.1 - 2025-12-04" in CHANGELOG-webpack.md and either
fix its date to the correct earlier date or reorder it beneath entries for later
versions like "4.22.0-prerelease.1 - 2025-01-20".
| ### PatternFly 4 | ||
|
|
||
| Console provides the following PatternFly 4.x shared modules to plugins: | ||
|
|
||
| - `@patternfly/react-core` | ||
| - `@patternfly/react-table` | ||
| - `@patternfly/quickstarts` | ||
|
|
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
# Find webpack, federation, or shared module configuration files
fd -e 'js' -e 'ts' -e 'json' . frontend/packages/console-dynamic-plugin-sdk --type f | grep -E '(webpack|federation|shared|plugin)' | head -20Repository: openshift/console
Length of output: 178
🏁 Script executed:
# Search for PatternFly package references in configuration context
rg -l '@patternfly' frontend/packages/console-dynamic-plugin-sdk --type=js --type=ts --type=json | head -20Repository: openshift/console
Length of output: 1413
🏁 Script executed:
# Look specifically for shared module declarations in webpack or federation configs
rg -n 'shared.*:.*{' -A 10 --type=ts --type=js | grep -E '(patternfly|react-core|react-table|quickstarts)' -B 5 -A 2 | head -50Repository: openshift/console
Length of output: 148
🏁 Script executed:
# Check the actual file structure of the console-dynamic-plugin-sdk package
ls -la frontend/packages/console-dynamic-plugin-sdk/Repository: openshift/console
Length of output: 1207
🏁 Script executed:
# Examine the shared modules metadata file
cat -n frontend/packages/console-dynamic-plugin-sdk/src/shared-modules/shared-modules-meta.tsRepository: openshift/console
Length of output: 2399
🏁 Script executed:
# Check the ConsoleRemotePlugin for webpack shared module configuration
head -200 frontend/packages/console-dynamic-plugin-sdk/src/webpack/ConsoleRemotePlugin.ts | cat -nRepository: openshift/console
Length of output: 8499
🏁 Script executed:
# Look at the 4.14 release notes file directly
cat -n frontend/packages/console-dynamic-plugin-sdk/release-notes/4.14.mdRepository: openshift/console
Length of output: 991
Remove inaccurate PatternFly 4 shared module claims from release notes.
Lines 9-16 incorrectly list @patternfly/react-core, @patternfly/react-table, and @patternfly/quickstarts as shared modules. According to shared-modules-meta.ts, only @patternfly/react-topology is actually shared by Console with plugins. The release notes must be corrected to prevent plugin developers from relying on unavailable modules. Either remove this section entirely or clarify that only @patternfly/react-topology is provided, while other PatternFly packages must be bundled by plugins themselves.
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.14.md` around
lines 9 - 16, Update the "PatternFly 4" block in the release notes by removing
the incorrect shared-module entries `@patternfly/react-core`,
`@patternfly/react-table`, and `@patternfly/quickstarts` and either delete the
entire PatternFly 4 section or replace it with a single, accurate statement that
Console only shares `@patternfly/react-topology` (as declared in
shared-modules-meta.ts) and that plugins must bundle any other PatternFly
packages themselves; locate the "PatternFly 4" heading and the listed bullet
items in the release-notes content and make the change there.
| @@ -0,0 +1,34 @@ | |||
| # 4.14 Release Notes | |||
There was a problem hiding this comment.
Fix release note header version to match file name.
The file is 4.15.md but the heading says “4.14 Release Notes,” which is likely to confuse readers.
🔧 Suggested fix
-# 4.14 Release Notes
+# 4.15 Release Notes📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| # 4.14 Release Notes | |
| # 4.15 Release Notes |
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.15.md` at line
1, The release note heading is wrong: in release-notes/4.15.md the markdown
header reads "# 4.14 Release Notes"; update that header to "# 4.15 Release
Notes" so the file name and top-level heading match (search for the header
string "4.14 Release Notes" and replace it with "4.15 Release Notes").
| - All Console provided PatternFly 4.x shared modules are deprecated and will be removed in the future. | ||
| - All Console provided React Router v5 shared modules are deprecated and will be removed in the future. |
There was a problem hiding this comment.
Fix hyphenation in compound adjectives.
Both lines use "Console provided" but should use "Console-provided" (hyphenated) when modifying a noun. This applies to both the PatternFly 4.x and React Router v5 deprecation notices.
📝 Proposed fix
-- All Console provided PatternFly 4.x shared modules are deprecated and will be removed in the future.
-- All Console provided React Router v5 shared modules are deprecated and will be removed in the future.
+- All Console-provided PatternFly 4.x shared modules are deprecated and will be removed in the future.
+- All Console-provided React Router v5 shared modules are deprecated and will be removed in the future.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - All Console provided PatternFly 4.x shared modules are deprecated and will be removed in the future. | |
| - All Console provided React Router v5 shared modules are deprecated and will be removed in the future. | |
| - All Console-provided PatternFly 4.x shared modules are deprecated and will be removed in the future. | |
| - All Console-provided React Router v5 shared modules are deprecated and will be removed in the future. |
🧰 Tools
🪛 LanguageTool
[grammar] ~6-~6: Use a hyphen to join words.
Context: ...act-helmet` shared module. - All Console provided PatternFly 4.x shared modules a...
(QB_NEW_EN_HYPHEN)
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.16.md` around
lines 6 - 7, Update the two deprecation lines to use the hyphenated compound
adjective "Console-provided" instead of "Console provided"; specifically change
the PatternFly 4.x deprecation line ("All Console provided PatternFly 4.x shared
modules are deprecated...") and the React Router v5 deprecation line ("All
Console provided React Router v5 shared modules are deprecated...") so both read
"All Console-provided ... shared modules are deprecated and will be removed in
the future."
| In a future release, Console will begin enforcing CSP. Consider testing and preparing your | ||
| plugins now to avoid CSP related issues in future. |
There was a problem hiding this comment.
Fix grammar for professional documentation.
"CSP related issues in future" should be "CSP-related issues in the future" (hyphenate compound adjective, use US English).
📝 Proposed grammar fix
In a future release, Console will begin enforcing CSP. Consider testing and preparing your
-plugins now to avoid CSP related issues in future.
+plugins now to avoid CSP-related issues in the future.🧰 Tools
🪛 LanguageTool
[grammar] ~30-~30: Use a hyphen to join words.
Context: ... preparing your plugins now to avoid CSP related issues in future.
(QB_NEW_EN_HYPHEN)
[locale-violation] ~30-~30: The phrase ‘in future’ is British English. Did you mean: “in the future”?
Context: ...plugins now to avoid CSP related issues in future.
(IN_FUTURE)
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.18.md` around
lines 29 - 30, Update the sentence containing "CSP related issues in future" to
read "CSP-related issues in the future": add the hyphen to form the compound
adjective "CSP-related" and insert "the" before "future" to match US English
usage, replacing the original phrase exactly.
| - Removed styling for generic HTML heading elements (e.g., `<h1>`). Use PatternFly components to achieve | ||
| correct styling. | ||
| Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly | ||
| components to achieve correct styling. |
There was a problem hiding this comment.
Fix formatting: separate bullet points.
Lines 57-58 contain two distinct removals concatenated into a single bullet. Split into separate bullets for clarity.
📝 Proposed formatting fix
- Removed styling for generic HTML heading elements (e.g., `<h1>`). Use PatternFly components to achieve
correct styling.
- Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly
- components to achieve correct styling.
+- Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly
+ components to achieve correct styling.
- Removed `co-m-horizontal-nav` styling. Use [PatternFly Tabs](https://www.patternfly.org/components/tabs/)
instead.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - Removed styling for generic HTML heading elements (e.g., `<h1>`). Use PatternFly components to achieve | |
| correct styling. | |
| Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly | |
| components to achieve correct styling. | |
| - Removed styling for generic HTML heading elements (e.g., `<h1>`). Use PatternFly components to achieve | |
| correct styling. | |
| - Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly | |
| components to achieve correct styling. |
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.19.md` around
lines 55 - 58, Split the combined bullet into two separate bullets: one stating
"Removed styling for generic HTML heading elements (e.g., <h1>). Use PatternFly
components to achieve correct styling." and a second stating "Removed styling
for generic HTML description list elements (e.g., <dl>, <dt>, <dd>). Use
PatternFly components to achieve correct styling.", making sure each removal is
its own list item so headings (<h1>) and description list tags (<dl>, <dt>,
<dd>) are clearly separated.
| - Removed support for the Bootstrap Grid system (`.row`, `.col-*`, etc.). Use | ||
| [PatternFly Grid](https://www.patternfly.org/layouts/grid) instead. | ||
| - Removed `co-external-link` styling. Use PatternFly Buttons with `variant="link"` instead. | ||
| - Removed `co-disabled` styling. |
There was a problem hiding this comment.
Provide migration guidance for co-disabled removal.
Unlike the other removed CSS features, co-disabled lacks migration guidance. Plugin developers who relied on this styling will need direction on the recommended PatternFly alternative (e.g., using isDisabled props on PatternFly components, or PatternFly utility classes).
📝 Suggested enhancement
-- Removed `co-disabled` styling.
+- Removed `co-disabled` styling. Use the `isDisabled` prop on PatternFly components or PatternFly utility classes instead.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - Removed `co-disabled` styling. | |
| - Removed `co-disabled` styling. Use the `isDisabled` prop on PatternFly components or PatternFly utility classes instead. |
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.20.md` at line
12, Update the 4.20 release notes entry for the removed `co-disabled` styling to
include concise migration guidance: mention using PatternFly component props
like isDisabled (e.g., Button, Form controls) and relevant PatternFly utility
classes for disabled visuals, provide one or two short example patterns (prop
usage and an equivalent utility-class approach), and add a brief note for plugin
authors to audit custom CSS that targeted `.co-disabled` and replace it with the
PatternFly alternatives.
| # 4.21 Release Notes | ||
|
|
||
| This release contains no breaking changes. Existing plugins remain fully compatible without modification. |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Explore release notes structure
echo "=== Release notes files in the directory ==="
fd -e md . frontend/packages/console-dynamic-plugin-sdk/release-notes/ 2>/dev/null | head -20
echo -e "\n=== Content of nearby release notes (4.20, 4.19, 4.17) ==="
for file in frontend/packages/console-dynamic-plugin-sdk/release-notes/{4.20,4.19,4.17}.md; do
if [ -f "$file" ]; then
echo "--- $file ---"
cat "$file"
echo ""
fi
done
echo -e "\n=== CHANGELOG check for 4.21 entries ==="
fd -g "CHANGELOG*" frontend/packages/console-dynamic-plugin-sdk/ 2>/dev/null | while read f; do
echo "File: $f"
head -50 "$f"
doneRepository: openshift/console
Length of output: 11073
🏁 Script executed:
#!/bin/bash
# Check package.json for TypeScript version and dependencies
echo "=== Package.json info for console-dynamic-plugin-sdk ==="
fd -g "package.json" frontend/packages/console-dynamic-plugin-sdk/ -x cat 2>/dev/null | jq '{
name,
version,
engines,
peerDependencies,
devDependencies: (if has("devDependencies") then {typescript: .devDependencies.typescript, "@types/react": .devDependencies."@types/react"} else {} end)
}'Repository: openshift/console
Length of output: 313
🌐 Web query:
OpenShift Console 4.21 PatternFly version compatibility
💡 Result:
OpenShift Console 4.21 uses PatternFly 6 as the primary design system. Plugins and custom console UI should target PatternFly 6; older PatternFly 5 compatibility may be provided by the console for legacy plugins, but new/updated plugins should use PF6. References: Red Hat docs and OpenShift Console plugin guidance. [1][2]
Sources
- Red Hat OpenShift Web Console (PatternFly guidance). [1]
- openshift/console (dynamic plugin SDK / notes on PF6 + PF5 compatibility). [2]
🌐 Web query:
console-dynamic-plugin-sdk 4.21 TypeScript minimum version requirements
💡 Result:
I couldn't find any explicit "minimum TypeScript version" stated for console-dynamic-plugin-sdk (Console 4.21) in the SDK docs or package manifests I searched. Would you like me to fetch the release-4.21 package.json / tsconfig files from the OpenShift Console repo and check peerDependencies/devDependencies and tsconfig targets for an explicit TypeScript requirement?
Expand release notes with actual 4.21 deprecations, breaking changes, and features.
The release notes are incomplete relative to the 4.21.0-prerelease.1 CHANGELOG entries. The CHANGELOG-core.md documents deprecations (setPluginStore), type breaking changes (popupComponent, AlwaysOnExtension, ModelDefinition removal), and new features (async resources, color theme customization, etc.), but the release notes file omits all of this.
Add sections documenting:
- Deprecations: setPluginStore is now a noop and will be removed in a future release
- Type breaking changes: popupComponent prop type fix in
console.dashboards/overview/health/resource, removal of AlwaysOnExtension and ModelDefinition from api/common-types - New features and enhancements: async function support for topology/data/factory resources, fetch property for health/url extension, color theme and font size customization in ResourceYAMLEditor
- PatternFly 6 guidance: Confirm plugins should target PatternFly 6
- Prerelease metadata: Include prerelease date and version number for developer reference
Follow the structure established in 4.19 and 4.20 release notes, which document breaking changes, deprecations, and upgrade paths. For a 4.21 prerelease with type breaking changes, this level of detail is essential for plugin developers.
🤖 Prompt for AI Agents
In `@frontend/packages/console-dynamic-plugin-sdk/release-notes/4.21.md` around
lines 1 - 3, The release notes file is missing detailed 4.21 deprecations,
breaking changes, features, PatternFly guidance, and prerelease metadata; update
release-notes/4.21.md to mirror the structure used in 4.19/4.20 by adding a
"Deprecations" section noting that setPluginStore is now a noop and will be
removed, a "Type breaking changes" section documenting the popupComponent prop
type fix in console.dashboards/overview/health/resource and the removal of
AlwaysOnExtension and ModelDefinition from api/common-types, a "New features and
enhancements" section describing async function support for
topology/data/factory resources, the fetch property for health/url extension,
and color theme & font size customization in ResourceYAMLEditor, a "PatternFly 6
guidance" note recommending plugin targeting of PatternFly 6, and prerelease
metadata (version number and prerelease date) consistent with
4.21.0-prerelease.1; keep headings and upgrade guidance consistent with the
4.19/4.20 format so consumers can find deprecations, breaking changes, and
upgrade steps easily.
|
/lgtm |
|
/uncc cajieh krishagarwal278 |
|
@logonoff: GitHub didn't allow me to assign the following users: jseseCCS. Note that only openshift members with read permissions, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. 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 kubernetes-sigs/prow repository. |
a8bebd5 to
cb35212
Compare
jseseCCS
left a comment
There was a problem hiding this comment.
Reviewed user-facing release notes for 4.19 and 4.22 only per guidance from @logonoff.
Edits focus on:
- Clarifying deprecation/removal language to avoid ambiguity
- Aligning future-facing statements w/style guidance
- Improving accuracy, clarity, concision
- Ensuring consistent product naming/version-style compliance
If any of these comments apply to other release note versions in this PR, please make the same updates there for consistency.
|
|
||
| ## Changes to shared modules | ||
|
|
||
| > [!WARNING] |
There was a problem hiding this comment.
Duplicate [!WARNING] blocks? Please keep warning at lines 3–5 under title, remove second warning at lines 9–11 to avoid redundant messaging.
Also please revise for clarity and style. Suggested rewrite:
[!WARNING]
These 4.22 release notes describe features and behavior that are still in progress and might change before general availability.
| ## Changes to shared modules | ||
|
|
||
| > [!WARNING] | ||
| > There will be further upgrades to these shared modules during the development |
There was a problem hiding this comment.
Lines 10–11: Sentence about “further upgrades” is vague/adds little user value. Please either remove or replace w/more concise, user-focused statement. Suggested rewrite:
Additional updates to these shared modules might occur before the 4.22 release becomes generally available.
| > There will be further upgrades to these shared modules during the development | ||
| > of 4.22. | ||
|
|
||
| - Upgraded from `react-redux` v7 to v8. Plugins must use `react-redux` v8 to be compatible |
There was a problem hiding this comment.
Lines 13–17: Clarify that these dependency upgrades are required for compatibility. The current wording understates breaking impact. Suggested rewrite:
- Upgraded from
react-reduxv7 to v8. Plugins must usereact-reduxv8 to remain compatible with the Hybrid Cloud Console. - Upgraded from
reactv17 to v18. Plugins must use React 18 to remain compatible with the Hybrid Cloud Console. - Upgraded from
react-i18nextv11 to v15. Plugins must usereact-i18nextv15 to remain compatible with the Hybrid Cloud Console.
^^ Replace “Console” with “Hybrid Cloud Console” in this section. For user-facing content (and under most circumstances), we have to use full product name.
| - Upgraded from `react-i18next` v11 to v15. Plugins must use `react-i18next` v15 to be compatible | ||
| with Console. | ||
|
|
||
| ## React 18 upgrade tips |
There was a problem hiding this comment.
Lines 19–21: Revise intro sentence to distinguish React 18 change from optional guidance. Suggested rewrite:
The Hybrid Cloud Console now uses React 18. The following guidance highlights common update considerations for plugin authors.
| ## React 18 upgrade tips | ||
|
|
||
| React 18 contains several breaking changes that may affect plugins. | ||
|
|
There was a problem hiding this comment.
Lines 22–24: Revise guidance to avoid implying requirement. This section is informational, no? Suggested rewrite:
When updating plugins for React 18, plugin authors might need to review and update custom hooks and effects to align with the new rendering behavior.
| target OpenShift Console 4.19 and newer should upgrade to PatternFly 6.x or newer due to the design | ||
| changes made in PatternFly 6. | ||
|
|
||
| ### Addition of `DocumentTitle` to replace `react-helmet` |
There was a problem hiding this comment.
39–43: Please revise this section to remove directive language, tighten guidance. Suggested rewrite:
The react-helmet shared module was removed in OpenShift 4.16. Plugins that require document title management can use the DocumentTitle component from @openshift-console/dynamic-plugin-sdk.
|
|
||
| - Support for PatternFly 5.x within Console is deprecated and will be removed in the future. | ||
|
|
||
| > [!WARNING] |
There was a problem hiding this comment.
48–50: Tighten warning language for clarity/tone. Suggested rewrite:
[!WARNING]
The Hybrid Cloud Console does not support non-PatternFly CSS in plugins. The following information is provided for reference only.
| - Removed `@fortawesome/font-awesome` and `openshift-logos-icon`. Plugins should use PatternFly icons | ||
| from `@patternfly/react-icons` instead. The `fa-spin` class remains but is deprecated and will be | ||
| removed in the future. Plugins should provide their own CSS to spin icons if needed. | ||
| - Removed styling for generic HTML heading elements (e.g., `<h1>`). Use PatternFly components to achieve |
There was a problem hiding this comment.
55–58: Please split into separate bullets; clarify what “Removed” refers to by making actor explicit. Suggested rewrite:
- The Hybrid Cloud Console no longer applies styling to generic HTML heading elements (for example,
<h1>). Use PatternFly components for correct styling. - The Hybrid Cloud Console no longer applies styling to generic HTML description list elements (for example,
<dl>,<dt>,<dd>). Use PatternFly components for correct styling.
| correct styling. | ||
| Removed styling for generic HTML description list elements (e.g., `<dl>`, `<dt>`, `<dd>`). Use PatternFly | ||
| components to achieve correct styling. | ||
| - Removed `co-m-horizontal-nav` styling. Use [PatternFly Tabs](https://www.patternfly.org/components/tabs/) |
There was a problem hiding this comment.
59–69: These bullets repeat ambiguous “Removed …” phrasing from earlier. For user-facing clarity, please make actor explicit. Suggested pattern (global):
The Hybrid Cloud Console no longer applies styling to <element/class>. Use instead.
| [PatternFly PageSection](https://www.patternfly.org/components/page#pagesection) instead. | ||
| - Removed `co-m-nav-title` spacing styling. Use | ||
| [PatternFly PageSection](https://www.patternfly.org/components/page#pagesection) instead. | ||
| - Removed `co-button-help-icon`, `co-inline`, `co-resource-list*`, `co-toolbar*` styling. |
There was a problem hiding this comment.
66–67: Please make actor explicit; add consistent guidance for these bullets. Suggested rewrite:
- The Hybrid Cloud Console no longer applies styling to
co-button-help-icon,co-inline,co-resource-list, andco-toolbar. Use PatternFly components instead. - The Hybrid Cloud Console no longer applies styling to Bootstrap
table,text-muted, andtext-secondaryclasses. Use PatternFly components instead.
|
/label docs-approved |
cb35212 to
9a785ec
Compare
49ec791 to
71fa6ee
Compare
|
/verified bypass |
|
@logonoff: The 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. |
71fa6ee to
f927b90
Compare
9a06ad1 to
0770da6
Compare
Co-Authored-By: Vojtech Szocs <vojtech.szocs@gmail.com>
0770da6 to
482a16c
Compare
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jseseCCS, krishagarwal278, 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 |
|
/verified bypass |
|
@logonoff: The 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. |
|
@logonoff: all tests passed! 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. |
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.