Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[rush] Refactor PackageExtractor into a separate package #4064

Merged
merged 31 commits into from
Apr 27, 2023

Conversation

D4N14L
Copy link
Member

@D4N14L D4N14L commented Apr 19, 2023

Summary

This PR refactors the DeployManager class and all associated classes and utilities into the @rushstack/package-extractor package.

Fixes #3774

Details

  • Refactors deploy manager into @rushstack/package-extractor
  • Async-ifies many of the FS calls that the PackageExtractor class makes
  • Runs analysis and file copies using Async.forEachAsync to increase parallelism
  • Adds an AsyncQueue class which can be used alongside Async.forEachAsync to provide a modifiable, async-iterable queue that can be iterated in parallel
  • Adds Import.resolveModule*Async APIs to allow for async module/package path resolution
  • Fixes a FileSystem.copyFilesAsync typings issue with the options parameter

How it was tested

Tested locally against the rushstack-samples repo, comparing output of the existing version with the updated version. Tested re-linking using the create-links.js script.

Impacted documentation

  • New package created for @rushstack/package-extractor may warrant additional documentation on the Rushstack website
  • CLI for rush deploy remains unchanged, as does schema for deploy(-*).json files

@D4N14L
Copy link
Member Author

D4N14L commented Apr 19, 2023

cc @JoePomm @octogonz

@D4N14L D4N14L changed the title [rush] Refactor DeployManager into a separate package [rush] Refactor PackageExtractor into a separate package Apr 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

[rush] Improve rush deploy error message for symlinks outside of the source path
4 participants