Skip to content

docs(release-highlights): Adds 6.3 highlights.#4682

Merged
dlabaj merged 25 commits into
patternfly:mainfrom
edonehoo:iss4637
Jul 21, 2025
Merged

docs(release-highlights): Adds 6.3 highlights.#4682
dlabaj merged 25 commits into
patternfly:mainfrom
edonehoo:iss4637

Conversation

@edonehoo
Copy link
Copy Markdown
Collaborator

@edonehoo edonehoo commented Jul 1, 2025

Closes #4637

@edonehoo edonehoo marked this pull request as draft July 1, 2025 18:26
@patternfly-build
Copy link
Copy Markdown
Collaborator

patternfly-build commented Jul 1, 2025


1. Hamburger menu (`fa-bars`)
- **Animation type:** Opt-out.
- **Animation behavior:** When a hamburger icon receives hover or keyboard focus, the middle bar becomes an arrow, pointing in the direction that the attached menu will move when the icon is clicked. This motion helps better indicate when a menu will open and close.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This behavior actually changes slightly for mobile views. I don't know if we want to go into it here or make this more generic so that it covers mobile as well.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh good callout! I think it's good to mention when mobile behavior is notably different.

Is there a good place to view the mobile behavior?

From the og issue, it seems like this was the idea, but I'm not able to replicate it on staging sites:

On desktop

  • No direction by default (regular 3 bars)
  • Show "collapse" arrows on hover/focus

On mobile

  • Show "collapse" arrows when expanded
  • Show "expand" arrows on hover/focus when collapsed

- **Animation type:** Opt-out.
- **Animation behavior:** When a hamburger icon receives hover or keyboard focus, the middle bar becomes an arrow, pointing in the direction that the attached menu will move when the icon is clicked. This motion helps better indicate when a menu will open and close.
- **Example:** As an opt-out animation, you can see this by default across hamburger menus in our examples and demos. To visualize the motion behavior, interact with the navigation menu in [our page examples](/components/page#vertical-navigation).
- **Note:** Because the hamburger menu icon for the PatternFly.org navigation has more padding than standard PatternFly buttons, we've opted out of this animation to avoid fit issues.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is true?

Copy link
Copy Markdown
Collaborator Author

@edonehoo edonehoo Jul 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ahh, I was going off of patternfly/patternfly#7151 (comment), which I'm now realizing is a super old comment. But I also don't see the animation in the pf menu on any of the staging sites? Do you know if it's just something yet to be pulled in, vs an intentional leave-off?

@rebeccaalpert
Copy link
Copy Markdown
Member

rebeccaalpert commented Jul 3, 2025

Hey @edonehoo - This is what we added for ChatBot lately:

  • Smart scroll for MessageBox - this was a contribution from Red Hat Developer Hub Lightspeed
  • Compact variants for many UI components
  • Empty and no-results states for chat history
  • Expandable view for sources card
  • External links in sources card
  • Editable messages
  • Expandable code blocks for use in Messages
  • Documentation on how to add and use rehype plugins for advanced Message HTML customization
  • Bug fixes like allowing custom placeholder text for message bar, allowing manual control over response action clicked state, improved image rendering in Message blocks, and passing additional props to many components

@srambach
Copy link
Copy Markdown
Member

srambach commented Jul 3, 2025

One other thought - we had implemented expand/collapse motion on navigation previously, but in this release we changed the approach so that it's more performant. This is probably worth calling out as at least one consumer saw some lagginess when lots of things were happening on their page.

Copy link
Copy Markdown
Member

@rebeccaalpert rebeccaalpert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ChatBot stuff looks great; thank you! Links should work after a rebase/merge.

@edonehoo edonehoo marked this pull request as ready for review July 7, 2025 18:16
Copy link
Copy Markdown
Contributor

@mcoker mcoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@edonehoo edonehoo requested a review from thatblindgeye July 9, 2025 17:22

#### enable-animations codemods

We have also created an [enable-animations codemod](https://github.com/patternfly/pf-codemods/tree/main/packages/eslint-plugin-pf-codemods/src/rules/v6/enableAnimations), which adds the `hasAnimations` prop to components that support opt-in animations.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to be super clear here that using this codemod to enable these particular animations could cause breaking changes. That's why they are created as opt-in - they create breaking changes due to changes in the HTML structure.

Instead of "support opt-in" perhaps it's also clearer to say "require opt-in"

Comment on lines +94 to +97
- **Notes:**
- This release does not include expansion animations for tree tables.
- To prevent visual issues with the divider on expanded rows, ensure that both the `<Table>` and the first `Tr` in the `Tbody` contains `isExpanded` logic.
- To avoid visual issues with animations in compound expandable tables, ensure that the `Tr` which contains `isControlRow` contains `isExpanded` logic. To dynamically render the content, each expandable row content should also be rendered in its own structure.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think what you have here is a great start for all of this. Some comments that would be worth tweaking/adding so consumers are structuring their tables in the way that was originally intended by Core but wasn't done so in React (but is now in expandable-like examples), moreso if they're opting into animations but they should also update their structure regardless (but nothing should break if they don't and aren't opting into animations):

  • Table must have isExpandable passed to it (rather than isExpanded logic)
  • The Tbody that contains any expandable rows must have isExpanded logic
  • Any Tr whose purpsoe is to act as a "control row" (for normal expandable tables) or has the isControlRow prop (for compound expansion tables) must have isExpanded logic
  • Any Tr whose purpose is to expand/collapse (the one that actually contains the expandable content) must have isExpandable passed to it, in addition to isExpanded logic
    • Additionally, any Td within these expandable Tr's must wrap any content in an ExpandableRowContent

With a basic example structure being:

<Table isExpandable> // pass hasAnimations if opting into animations, or run codemods rule to auto apply it
  ...Thead stuff...
  <Tbody isExpanded={...logic for checking if expanded}>
    <Tr isExpanded={...logic for checking if expanded}> // pass isControlRow for compound expandable implementation as well
      ..."control row" content
    </Tr>
    <Tr isExpandable isExpanded={...logic for checking if expanded}>
      <Td>
        <ExpandableRowContent>
          ...the actual content to display for the cell
        </ExpandableRowContent>
      </Td>
    </Tr>
  </Tbody>
</Table>

But this is also a lot of information so let me know what you think.

cc @mcoker did I miss anything/mess anything up in the intended structure here?

Copy link
Copy Markdown
Contributor

@mcoker mcoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Copy Markdown
Contributor

@thatblindgeye thatblindgeye left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😮 looks great, thank you for adding the verbiage about all the table stuff! 🪨 ⭐

Co-authored-by: Michael Coker <35148959+mcoker@users.noreply.github.com>
…d/release-highlights.md

Co-authored-by: Eric Olkowski <70952936+thatblindgeye@users.noreply.github.com>

#### enable-animations codemods

We have also created an [enable-animations codemod](https://github.com/patternfly/pf-codemods/tree/main/packages/eslint-plugin-pf-codemods/src/rules/v6/enableAnimations), which adds the `hasAnimations` prop to components that require opt-in animations. Keep in mind that, depending on your codebase, this codemod could introduce breaking changes that require further attention.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
We have also created an [enable-animations codemod](https://github.com/patternfly/pf-codemods/tree/main/packages/eslint-plugin-pf-codemods/src/rules/v6/enableAnimations), which adds the `hasAnimations` prop to components that require opt-in animations. Keep in mind that, depending on your codebase, this codemod could introduce breaking changes that require further attention.
We have also created an [enable-animations codemod](https://github.com/patternfly/pf-codemods/tree/main/packages/eslint-plugin-pf-codemods/src/rules/v6/enableAnimations), which adds the `hasAnimations` prop to components that require opt-in animations. Keep in mind that, depending on your codebase, this codemod could introduce breaking changes that require further attention. Due to this, when running the codemod you will be asked whether you want to include the Table components for the animations opt-in, or just opt into animations for the react-core package.

Since the codemod will now offer a CLI option to include the react-table package as part of the animations optin, wdyt about this tweak?

@dlabaj dlabaj merged commit b59b592 into patternfly:main Jul 21, 2025
4 checks passed
nicolethoen pushed a commit to nicolethoen/patternfly-org that referenced this pull request Aug 1, 2025
* docs(release-highlights): Adds 6.3 highlights.

* Small link change

* And small wording change.

* Edits to animation details and addition of PF AI section.

* Update packages/documentation-site/patternfly-docs/content/get-started/release-highlights.md

* Add mention of codemods

* Package link updates and animation phrasing tweaks.

* Update enable animations codemod info

* Update packages/documentation-site/patternfly-docs/content/get-started/release-highlights.md

Co-authored-by: Michael Coker <35148959+mcoker@users.noreply.github.com>

* Adds more details per reviews

* Adds more codemod instruction per request.

* Add more around codemod.

* update details about expandable table animations.

* Tabbing for code block

Co-authored-by: Michael Coker <35148959+mcoker@users.noreply.github.com>

* Update packages/documentation-site/patternfly-docs/content/get-started/release-highlights.md

Co-authored-by: Eric Olkowski <70952936+thatblindgeye@users.noreply.github.com>

* Small edits for table

* Make note of potential memory issues re spinners.

* Update animations memory issue note

* Update animations note per Jenny's suggestion

* Update animations codemod note

---------

Co-authored-by: Michael Coker <35148959+mcoker@users.noreply.github.com>
Co-authored-by: Eric Olkowski <70952936+thatblindgeye@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add release highlights for 6.3

8 participants