Skip to content

CI: dependabot dev-deps bump -> npm ci EUSAGE (eslint 10 + typescript 7 breaking majors) #90

Description

@TeacherEvan

CI failure (open PR #83 — dependabot/npm_and_yarn/development-dependencies)

npm ci fails in EVERY job (Lint, Type check, Project health, Security audit, Playwright E2E) with:

npm error code EUSAGE
npm error `npm ci` can only install packages when your package.json and package-lock.json are in sync.
npm error Invalid: lock file's @eslint/js@9.39.5 does not satisfy @eslint/js@10.0.1
npm error Invalid: lock file's eslint@9.39.5 does not satisfy eslint@10.8.1
npm error Invalid: lock file's @typescript/typescript-...@7.0.2 from lock file   (typescript 7)

Root cause

The grouped dependabot development-dependencies bump jumped eslint 9 → 10 and typescript 6 → 7 (both breaking majors). package.json was updated but the committed package-lock.json was left at the old versions, so npm ci aborts on lock drift. eslint 10 is a breaking major the project does not intend to adopt yet.

Fix (at the source — do NOT hand-edit package.json or commit a lock with breaking majors)

Add ignore rules to .github/dependabot.yml so the grouped bump stops pulling these majors, then let dependabot regenerate the PR:

    ignore:
      - dependency-name: "eslint"
        versions: [">=10"]
      - dependency-name: "@eslint/js"
        versions: [">=10"]
      - dependency-name: "typescript"
        versions: [">=7"]

Then close PR #83 (or comment to rebase) and let dependabot raise a clean grouped bump without the breaking majors. Verify with a FRESH npm ci after the lock is regenerated.

(Do not "fix" by running npm install --package-lock-only against the eslint-10/typescript-7 package.json — that would lock in the breaking majors and the Lint/Typecheck jobs would still fail.)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions