Skip to content

Update all deps#71

Open
pnzrr wants to merge 6 commits intokeycloakify:mainfrom
p2-inc:update/all-deps
Open

Update all deps#71
pnzrr wants to merge 6 commits intokeycloakify:mainfrom
p2-inc:update/all-deps

Conversation

@pnzrr
Copy link

@pnzrr pnzrr commented Feb 4, 2026

help to resolve old packages that toss lots of vulnerability errors
includes changes from #61

Summary by CodeRabbit

  • Chores
    • Updated React and React DOM to v18.3.1.
    • Upgraded Storybook from v8.x to v10.x along with related tooling.
    • Updated Storybook preview type source to the Vite-based variant.
    • Updated Vite to v7.3.1 and Vite React plugin to v5.1.3.
    • Modernized development dependencies and linting configurations.

@coderabbitai
Copy link

coderabbitai bot commented Feb 4, 2026

📝 Walkthrough

Walkthrough

The Storybook Preview type import is changed to @storybook/react-vite. Development dependencies are updated: React/React-DOM, Storybook, Vite, Vite React plugin, ESLint/Prettier and related type packages—no runtime code changes beyond type/source updates.

Changes

Cohort / File(s) Summary
Storybook Configuration
.​.storybook/preview.ts
Changed the Preview type import source from @storybook/react to @storybook/react-vite.
Development Dependencies
package.json
Bumped versions: react/react-dom^18.3.1, Storybook → ^10.2.6, vite^7.3.1, @vitejs/plugin-react^5.1.3, Prettier → 3.8.1, ESLint plugins/configs and @types/* updated. No API changes detected.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I nibbled on packages, tidy and bright,
Bumped versions by moonbeam and daylight,
Storybook hopped, Vite twitched its tail,
Types found their meadow, no errors prevail. 🥕✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Update all deps' is vague and generic; it describes a broad action without specifying the main change or scope of the update. Make the title more specific by highlighting the primary change—e.g., 'Update Storybook to v10 and modernize dev dependencies' or 'Update Storybook and Vite to resolve vulnerabilities'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

No actionable comments were generated in the recent review. 🎉


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@garronej
Copy link
Collaborator

garronej commented Feb 5, 2026

Hello @pnzrr,

Thank you for this.

The main issue on my side is that the Keycloak team is still using React 18 for both the Account and Admin UIs. As a result, when you run for example npx keycloakify initialize-admin-theme, you end up with two versions of React in the project.

I could fix this upstream by implementing a reconciliation mechanism (or simply wait for them to upgrade), but in the current state keycloakify asks the user to manually reconsile the version wich is not a great DX.

There is also the fact that Keycloakify performs noticeably worse on React 19 at the moment, especially in Storybook.

@Oussemasahbeni is actively working on removing the utilities that trigger the React 19 slow path, for example with this PR. So this is very much a work in progress.

I am happy to accept dependency updates in general, but I would like to stay on React 18 until we are fully ready to move on.

@pnzrr
Copy link
Author

pnzrr commented Feb 11, 2026

@garronej Got it. I missed that part about React 18. No problem keeping that there. They continue to patch it. Main issues were an old storybook and vite install.

Do you think this would work?

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
package.json (1)

45-47: ⚠️ Potential issue | 🟠 Major

Update engines field to remove Node 18 support.

Vite 7.3.1 and Storybook 10.2.6 both explicitly require Node 20.19+ or 22.12+ and do not support Node 18. The current engines field ("node": "^18.0.0 || >=20.0.0") incorrectly allows Node 18 and must be updated to "node": "^20.19.0 || >=22.12.0" to match the toolchain requirements.

🤖 Fix all issues with AI agents
In `@package.json`:
- Line 43: Update the package.json engines field to require Node versions
compatible with Vite 7.3.1 by changing the "node" constraint from Node 18 to
"node": "^20.19.0 || >=22.12.0" (so the project enforces the minimum Node.js
versions Vite 7 needs); locate the engines object in package.json and replace
the existing node range accordingly and update any related documentation or CI
config that enforces/mentions the Node version.
🧹 Nitpick comments (1)
package.json (1)

39-39: Minor: prettier is pinned without a caret, unlike all other dependencies.

All other dependencies use caret ranges (e.g. ^10.2.6), but prettier is pinned to an exact version 3.8.1. If this is intentional for reproducibility, that's fine — otherwise, consider ^3.8.1 for consistency.

"typescript": "^5.2.2",
"typescript-eslint": "^8.15.0",
"vite": "^5.0.8"
"vite": "^7.3.1"
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

Vite 7.3.1 release Node.js version requirements

💡 Result:

Vite 7.3.1 sets the engines.node requirement to:

  • ^20.19.0 || >=22.12.0 — i.e., Node 20.19+ (20.x) or Node 22.12+. [1]
    This matches the stated Node.js support policy for Vite 7. [2]

Sources:
[1] (app.unpkg.com)
[2] (main.vitejs.dev)

Citations:


Update Node.js version requirement in engines field to match Vite 7.3.1 compatibility.

Vite 7.3.1 requires Node.js ^20.19.0 || >=22.12.0 (Node 20.19+ or Node 22.12+). The current engines field allowing Node 18 is incompatible and will cause failures. Update the engines field to enforce the minimum Node.js version required by Vite 7.

🤖 Prompt for AI Agents
In `@package.json` at line 43, Update the package.json engines field to require
Node versions compatible with Vite 7.3.1 by changing the "node" constraint from
Node 18 to "node": "^20.19.0 || >=22.12.0" (so the project enforces the minimum
Node.js versions Vite 7 needs); locate the engines object in package.json and
replace the existing node range accordingly and update any related documentation
or CI config that enforces/mentions the Node version.

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.

2 participants