Skip to content

fix(create): migrate pack config in new workspace libraries - #2862

Draft
SaKaNa-Y wants to merge 1 commit into
voidzero-dev:mainfrom
SaKaNa-Y:fix/create-workspace-pack-config
Draft

SaKaNa-Y wants to merge 1 commit into
voidzero-dev:mainfrom
SaKaNa-Y:fix/create-workspace-pack-config

Conversation

@SaKaNa-Y

@SaKaNa-Y SaKaNa-Y commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Important

Please take a moment to read this. Thank you!

I should include a brief explanation of the problem in my own words in every PR. If that explanation is missing, please @mention me and do not merge this PR until I have added it. You may also leave this PR unaddressed (because this means I have not fulfilled my responsibilities as the author).

If my explanation is unclear or difficult to follow, please ask me to clarify or provide reproduction steps or supporting evidence.

I welcome suggestions and counterarguments, especially questions about anything I may have overlooked. (Your feedback helps me learn and improve. 🙏)

I hold myself to this standard for every PR, regardless of its size.

vp create can add a library to an existing workspace without updating legacy pack configuration such as dts.tsgo: true. The library then fails to build with Cannot create property 'path' on boolean 'true'. Standalone creation already runs the migration that updates this configuration. The code that adds a workspace member skips that step.

Run the existing import and configuration migration when adding a workspace member, before updating lazy plugins. Full workspace migration still runs this step at the root. The generated library receives the current configuration without a separate conversion or a change to the external template.

Verification:

  • The new regression test failed before the fix and passed after it. Running the rewrite twice produces the same file.
  • Migration tests: 374 passed. Repository unit tests: 2198 passed, 1 skipped.
  • vp check passed formatting, lint, and type checks.
  • The new CLI test creates a workspace library from a template with legacy configuration. It builds the library and confirms JavaScript and declaration output.

This branch has not been deployed

No deployments
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