Skip to content

[#4193]: upgrade typescript#4547

Merged
GCHQ-Developer-299 merged 4 commits into
mi6:developfrom
oakenroot:chore/4193-upgrade-typescript
Jun 25, 2026
Merged

[#4193]: upgrade typescript#4547
GCHQ-Developer-299 merged 4 commits into
mi6:developfrom
oakenroot:chore/4193-upgrade-typescript

Conversation

@oakenroot

@oakenroot oakenroot commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Summary of the changes

Upgrades typescript to 5.8 across the board, which is a blocker on #4205. I have gone for 5.8 here, but can go for 5.2 if that's preferable. 5.8 is the highest we can go right now, because 5.9 introduces autocorrect: boolean on HTMLElement which conflicts with ours, which do autocorrect: "on" | "off".

This also makes changes to docs, which popped up when running npm run build to check everything is happy. I assume these should have been updated in previous PRs. Happy to drop the commit from here and put on a separate PR if people like.

Related issue

#4193

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.

@oakenroot

Copy link
Copy Markdown
Contributor Author

I now have follow up branches to this to solve #3857 and #4205, which both seem to be working nicely locally. Have pushed these to my fork, eg https://github.com/oakenroot/ic-ui-kit/tree/chore/4205-upgrade-lerna. I can PR these in sequence once this merges, but can't stack as I can't create branches directly on this repo.

There are more likely more dependency/audit bits to do after bumping lerna, but will leave for now in case major changes are needed to any of this.

@oakenroot

Copy link
Copy Markdown
Contributor Author

Ok, as it turns out I've had a go at removing vulns, and have managed to get down to 2 advisories. Not run much manual testing but all validation and unit testing is passing locally...

@GCHQ-Developer-530

Copy link
Copy Markdown
Contributor

Hi @oakenroot, I don't seem to get those docs changes if I build locally, not sure on other members of the team. Please could you drop the commit from this PR anyway and then it can be looked into in a separate PR as you suggested?

@GCHQ-Developer-299

Copy link
Copy Markdown
Contributor

heya @oakenroot, thank you for another contribution :) unfortunately due to our commitlint setup, you'll need to separate the changes to each package into separate commits (e.g. /canary-react changes into a chore(canary-react):... commit)

@oakenroot
oakenroot force-pushed the chore/4193-upgrade-typescript branch from 948634a to 9230742 Compare June 25, 2026 09:39
@oakenroot
oakenroot force-pushed the chore/4193-upgrade-typescript branch from 9230742 to 0ef8164 Compare June 25, 2026 09:45
@oakenroot

Copy link
Copy Markdown
Contributor Author

Alright, have dropped the docs commit and split up the version bumps, should be good now... :)

@GCHQ-Developer-299
GCHQ-Developer-299 merged commit 1f68a22 into mi6:develop Jun 25, 2026
6 checks passed
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.

3 participants