Skip to content

fix: resolve pnpm-related Docker build failures#26

Merged
sundancekid73 merged 2 commits into
chore/migrate-to-pnpmfrom
claude/romantic-euclid-cedcfd
May 12, 2026
Merged

fix: resolve pnpm-related Docker build failures#26
sundancekid73 merged 2 commits into
chore/migrate-to-pnpmfrom
claude/romantic-euclid-cedcfd

Conversation

@sundancekid73
Copy link
Copy Markdown
Collaborator

What changed

Two commits fixing GitHub Actions build failures introduced by the pnpm migration.

Why

1. Declare lodash and regenerator-runtime as explicit dependencies

The build failed with "These dependencies were not found: lodash, regenerator-runtime".
pnpm enforces strict dependency isolation and does not hoist transitive packages,
so both had to be declared explicitly in package.json. Under npm they worked as
phantom (hoisted) dependencies. lodash is imported directly in ComicList.vue,
ComicForm.vue, CommentField.vue, and PredicateList.vue. regenerator-runtime is
injected by the @vue/app Babel preset.

2. Pin pnpm to v9 in Dockerfiles

After the first fix, the build failed with ERR_PNPM_IGNORED_BUILDS. pnpm v10
(now installed by npm install -g pnpm) introduced a new interactive
pnpm approve-builds workflow that requires lockfile-level approval for any
package with build scripts — incompatible with CI. Pinning to pnpm@9 restores
the working onlyBuiltDependencies behavior without further changes.

Reviewer notes

No logic or feature changes — all fixes are in package.json, pnpm-lock.yaml,
and both Dockerfiles.

sundancekid73 and others added 2 commits May 12, 2026 11:54
pnpm enforces strict dependency isolation and does not hoist transitive
packages, so lodash (used directly in 4 components) and regenerator-runtime
(injected by the @vue/app Babel preset) must be declared explicitly.
These were phantom dependencies under npm that worked by accident.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
pnpm v10 introduced ERR_PNPM_IGNORED_BUILDS which requires explicit
lockfile-level approval of build scripts via `pnpm approve-builds`.
Without a pinned version, `npm install -g pnpm` now installs v10.
Pinning to pnpm@9 restores the previous onlyBuiltDependencies behavior.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
@sundancekid73 sundancekid73 merged commit d0235dd into chore/migrate-to-pnpm May 12, 2026
2 checks passed
@sundancekid73 sundancekid73 deleted the claude/romantic-euclid-cedcfd branch May 12, 2026 12:56
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