Skip to content

deps(template): bump vite 5→6.4.3 to clear dev-server advisories; add engines + workflow permissions - #5

Open
sanjeevkkansal wants to merge 1 commit into
mainfrom
fix-cra-template-install
Open

deps(template): bump vite 5→6.4.3 to clear dev-server advisories; add engines + workflow permissions#5
sanjeevkkansal wants to merge 1 commit into
mainfrom
fix-cra-template-install

Conversation

@sanjeevkkansal

Copy link
Copy Markdown

What

Reduces the template's dependency advisories from 8 → 4 and adds two small hardening touches. All remaining advisories are deep-transitive dev/build-time deps with no clean fix available in this repo (details below).

vite 5 → 6.4.3 (clears 4 advisories)

Bumps the template's vite devDependency ^5.4.0 → ^6.4.3. @vitejs/plugin-react ^4.3.0 already declares vite 6 support, so no plugin change is needed. This clears the three vite advisories (GHSA-fx2h-pf6j-xcff high, GHSA-v6wh-96g9-6wx3, GHSA-4w7w-66w2-5vf9) and the transitive esbuild one (GHSA-67mh-4wv8-2f99, vite 6 pulls esbuild 0.25+; resolves to 0.28.1).

Verified: template npm ci + gen-config + typecheck + vite build all pass; the CI template-config job path is unchanged.

Remaining 4 advisories — left deliberately

  • tmp (high + low) — transitive via solc (contract compile, build-time only). Forcing tmp@0.2.x onto solc risks breaking compilation; left for solc to update.
  • uuid (moderate) — transitive via @solana/web3.js. Forcing uuid@11 creates a tree conflict with rpc-websockets (wants uuid 14) and risks web3.js at runtime.
  • bigint-buffer (high) — transitive via @solana/web3.js; no published fix exists (GHSA-3gc7-fjrx-p6mg).

With Dependabot security updates now enabled on the repo, these will be picked up automatically as solc / web3.js publish upgrades.

Hardening

  • engines.node added: root >=18 (scaffolder uses cpSync), template >=20 (vite 6).
  • permissions: contents: read added to the ci workflow.

Note on the lockfile git URLs

The lockfile resolves the two github: deps (@rome-protocol/registry, @rome-protocol/sdk) as git+ssh:// — this is npm's default normalization for the github: shorthand, not a misconfiguration, and it does not break installs: npm install and npm ci both fall back to https automatically (verified with ssh forced to fail), and both target repos are public. Left as-is.

… engines + workflow permissions

Bumps the template's vite devDependency from ^5.4.0 to ^6.4.3 (plugin-react
^4.3.0 already supports vite 6, no plugin change needed), which clears the
three vite advisories plus the transitive esbuild one — 8 template advisories
down to 4. The template still typechecks and builds; CI's npm-ci + gen-config
+ typecheck path is unchanged.

The 4 remaining are deep-transitive dev/build-time deps — tmp (via solc),
uuid and bigint-buffer (via @solana/web3.js). bigint-buffer has no published
fix; forcing tmp/uuid majors risks breaking solc/web3.js, so those are left
for their upstreams (Dependabot will pick them up).

Also pins node engines (root >=18, template >=20) and adds
`permissions: contents: read` to the ci workflow.
@sanjeevkkansal
sanjeevkkansal requested a review from anil-rome July 23, 2026 16:08
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.

1 participant