Skip to content

fix(deps): @nextcloud/vite-config 3.0.0-beta.1 — development cannot npm ci after vite 8 - #272

Merged
rubenvdlinde merged 1 commit into
developmentfrom
fix/vite-config-3-beta-for-vite-8
Aug 30, 2026
Merged

fix(deps): @nextcloud/vite-config 3.0.0-beta.1 — development cannot npm ci after vite 8#272
rubenvdlinde merged 1 commit into
developmentfrom
fix/vite-config-3-beta-for-vite-8

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

Problem

#267 merged vite 7.3.6 -> 8.2.2, but left @nextcloud/vite-config at ^2.5.4, which declares a hard peer of vite: ^7.3.6. npm ci on development now fails with ERESOLVE before any job body runs:

npm error Conflicting peer dependency: vite@7.3.6
npm error   peer vite@"^7.3.6" from @nextcloud/vite-config@2.5.4

That takes out every frontend check at once: Vue Quality (eslint), Vue Quality (stylelint), Frontend Build, Frontend Tests (unit), Security (npm), License (npm) and E2E Tests (Playwright). Reproduced locally against origin/development at 1412a47.

Why this fix

@nextcloud/vite-config 2.x will never accept vite 8 — the peer is pinned. 3.0.0-beta.1 (npm dist-tag next, published 2026-08-19) is the first release whose peer range is vite: >=8.2. There is no stable 3.x yet.

The alternative is reverting vite to ^7.3.6 and re-closing #267. Happy to do that instead if a prerelease build toolchain is not acceptable — versioniq is the only fleet app on @nextcloud/vite-config; every other app builds with webpack, which is why buildiq's identical vite 8 bump was trivially green.

Verification (node 22 / npm 11.19, against this exact tree)

check result
npm ci passes (fails on development)
npm run build passes, vite 8.2.2
npm test 11 files / 58 tests passed
npm run lint 0 errors
npm run stylelint 0 errors

Emitted bundle file set is unchanged from the vite 7 baseline (js/versioniq-main.mjs, .mjs.license, .mjs.map, css/versioniq-main.css, css/main-<hash>.chunk.css) apart from the css chunk content hash.

Scope is dev-only: @nextcloud/vite-config is a build tool, not shipped runtime code.

…pm ci

#267 merged vite 8.2.2 while @nextcloud/vite-config stayed at 2.5.4,
which declares a hard peer of vite ^7.3.6. npm ci on development now
fails with ERESOLVE before a single job runs, taking every frontend
check with it: eslint, stylelint, Frontend Build, Frontend Tests,
Security (npm), License (npm) and the Playwright E2E job.

3.0.0-beta.1 (dist-tag 'next') is the first release whose peer range
accepts vite 8 (>=8.2). 2.x will never accept it, and there is no
stable 3.x yet — the alternative is reverting vite to ^7.3.6.

Verified with node 22 / npm 11.19 against this exact tree: npm ci,
vite build, vitest (11 files / 58 tests), eslint and stylelint all
pass. The emitted bundle file set is unchanged from the vite 7
baseline apart from the css chunk content hash.
@rubenvdlinde
rubenvdlinde merged commit c104bbb into development Aug 30, 2026
46 of 47 checks passed
@rubenvdlinde
rubenvdlinde deleted the fix/vite-config-3-beta-for-vite-8 branch August 30, 2026 08:49
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/versioniq @ 38aaed8

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
composer ✅ 29/29
npm ✅ 310/310
app:check-code ⏭️
info.xml
REUSE
PHPUnit
Newman ⏭️
Playwright 🚨 NO VERDICT — enabled but never ran
Hydra gates

Quality workflow — 2026-08-30 09:10 UTC

Download the full PDF report from the workflow artifacts.

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