Repository navigation
fix: write YAML config files in block style - #86
Conversation
#85 switched the generated config files to JSON, which is valid YAML but leaves pnpm-workspace.yaml as a multi-line flow collection. pnpm 12 edits that file in place (`--allow-build` records `allowBuilds` there) and refuses to edit a flow collection, so bootstrapping the installer failed with ERR_PNPM_WORKSPACE_MANIFEST_WRITER_UNSUPPORTED_INLINE_BLOCK. yamlText now serializes with js-yaml's dump, which still quotes and escapes every value but emits block style. `noRefs` keeps shared objects from becoming aliases, which pnpm cannot edit either. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
PR Summary by QodoWrite generated YAML in block style for pnpm 12
AI Description
Diagram
High-Level Assessment
Files changed (3)
|
Problem
Since #85, the generated config files have been written as JSON. JSON is valid YAML, but it leaves
pnpm-workspace.yamlas a multi-line flow collection. pnpm 12 edits that file in place (--allow-buildrecordsallowBuildsthere) and refuses to edit a flow collection, so thepopulate-registry-cachejob fails while bootstrapping the installer:Fix
yamlTextnow serializes withjs-yaml'sdump. LikeJSON.stringify, it still quotes and escapes every value, which #85 was after, but it emits block style.noRefs: truekeeps shared objects from being written as aliases, which pnpm cannot edit either.js-yamlwas already installed throughwrite-yaml-file; it is now a direct dependency.Testing
bootstrapInstaller()now succeeds locally, and pnpm addsallowBuildsto the generated file.pnpm test: 13 of 13 pass.pnpm lint: clean.🤖 Generated with Claude Code
Summary by CodeRabbit