fix(install-internal-package): retarget replacement to node_modules/.pnpm#38
fix(install-internal-package): retarget replacement to node_modules/.pnpm#38IlyaKhD wants to merge 5 commits intoDevExpress:mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the install-internal-package GitHub Action’s package replacement logic to work correctly with pnpm’s symlinked node_modules layout by replacing the resolved target directory rather than the symlink itself.
Changes:
- Replace package contents at the symlink target (pnpm) instead of deleting/recreating the symlink.
- Retarget tar extraction to the resolved package directory (
realpathSync) when the entry is a symlink. - Ignore
.DS_Storefiles in the repository.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| install-internal-package/replace-package.js | Adjusts replacement to operate on pnpm symlink targets instead of node_modules/<pkg> directly. |
| .gitignore | Adds .DS_Store to ignored files. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the internal package replacement script to work correctly with pnpm’s symlink-based node_modules layout by replacing the real package directory under node_modules/.pnpm rather than overwriting the top-level symlink.
Changes:
- Preserve pnpm symlinks by resolving
entryPathto its real path and replacing the symlink target contents. - Update extraction and directory creation to operate on the resolved target path.
- Ignore
.DS_Storein the repository.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| install-internal-package/replace-package.js | Retargets replacement from the resolved package entry to the symlink target to keep pnpm resolution intact. |
| .gitignore | Adds .DS_Store to ignored files. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Note
Practical Value
Fixes https://github.com/DevExpress/ThemeBuilder/actions/runs/24517040510/job/71663917780#step:7:17
Before
After