Skip to content

chore(root): migrate to lerna v10 - #4601

Draft
evenstensberg wants to merge 21 commits into
mi6:developfrom
evenstensberg:chore/migrate-lerna-workspaces
Draft

chore(root): migrate to lerna v10#4601
evenstensberg wants to merge 21 commits into
mi6:developfrom
evenstensberg:chore/migrate-lerna-workspaces

Conversation

@evenstensberg

Copy link
Copy Markdown
Contributor

Summary of the changes

Updates to lerna v10

Related issue

N/A

Checklist

General

  • Changes to docs package checked and committed.
  • All acceptance criteria reviewed and met.

Testing

  • Relevant unit tests and visual regression tests added.
  • Visual testing against Figma component specification completed.
  • Playground stories in React Storybook up to date, with any prop changes and additions addressed.
  • Compare performance of modified components against develop using Performance addon in React Storybook.

Accessibility

  • Accessibility Insights FastPass performed.
  • A11y unit test added and yields no issues.
  • A11y plug-in on Storybook yields no issues.
  • Manual screen reader testing performed using NVDA and VoiceOver.
  • Manual keyboard testing for keyboard controls and logical focus order.
  • Correct roles used and ARIA attributes used correctly where required.
  • Logical heading structure is maintained, and the HTML elements used for headings can be changed to fit within the wider page structure.

Resize/zoom behaviour

  • Page can be zoomed to 400% with no loss of content.
  • Screen magnifier used with no issues.
  • Text resized to 200% with no loss of content.
  • Text spacing increased as per the WCAG 1.4.12 success criterion with no loss of content.

System modes

  • Browser setting 'prefers reduced motion' tested. No animations or motion visible whilst this setting is on.
  • Windows High Contrast mode tested with no loss of content.
  • System light and dark mode tested with no loss of content.
  • Browser support tested (Chrome, Safari, Firefox and Edge).

Testing content extremes

  • Min/max content examples tested with no loss of content or overflow.
  • All prop combinations work without issue.
  • Tested for FOUC (Flash of Unstyled Content) in both SSR (Server-Side Rendering) and SSG (Static Site Generation) settings.
  • Controlled and uncontrolled input components tested.
  • Props/slots can be updated after initial render.

evenstensberg and others added 20 commits July 30, 2026 20:34
…on when attribute is removed

hostMutationCallback only updated inheritedAttributes when the new attribute value was truthy, so removing/clearing a mutable attribute (e.g. aria-label set by a child ic-badge) was never detected. This left ic-navigation-button permanently displaying a stale accessible name even after the attribute had been cleared.

Now the callback also deletes the corresponding key from inheritedAttributes and forces a re-render when the attribute is removed, so the component correctly falls back to its own label prop.
…-aria-label-on-badge-hidden

4565 clear inherited aria-label on ic-navigation-button when attribute is removed
Add new audit exceptions to audit-ci.json
Using npm run audit:fix, bumped version of dompurify
chore(root): add new audit exceptions
@evenstensberg

evenstensberg commented Aug 13, 2026

Copy link
Copy Markdown
Contributor Author

Would be nice if you approved workflows or took over the PR if you want this change. I can debug but it will take me some time because you'll need to approve workflows after each commit.

Building locally now takes ~10 seconds, very fast rebuilds too 🥳

@evenstensberg

evenstensberg commented Aug 13, 2026

Copy link
Copy Markdown
Contributor Author

There's two ways to run the project now:

  1. Using lerna to run scripts
  2. Using npm workspace scripts

  1. If you want to test without npm scripts: git checkout f1efecba234c92b30319c273424c589b30cdb10f (the first commit of this pr)
  2. If you want to test using npm workspace script instead, use this branch

@GCHQ-Developer-299

Copy link
Copy Markdown
Contributor

Would be nice if you approved workflows or took over the PR if you want this change. I can debug but it will take me some time because you'll need to approve workflows after each commit.

Building locally now takes ~10 seconds, very fast rebuilds too 🥳

Thanks for having a go at this, as you say it's probably better managed by a member of the core team for convenience. I'm not sure we'll be able to investigate it in the short term, this change to many of our build processes and an uplift to the minimum Node version might require changes to our release workflows. But it's good to have this PR around for when we do have more resource to look into it :)

@evenstensberg
evenstensberg marked this pull request as draft August 14, 2026 11:48
@GCHQ-Developer-299
GCHQ-Developer-299 force-pushed the develop branch 3 times, most recently from 923f9cd to a8b47fb Compare August 24, 2026 11:55
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.

4 participants