fix: handle add and unlink file in bundleless mode#642
Merged
Timeless0911 merged 1 commit intomainfrom Jan 6, 2025
Merged
Conversation
fb8be63 to
3c6d306
Compare
✅ Deploy Preview for rslib ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Contributor
There was a problem hiding this comment.
Copilot reviewed 5 out of 9 changed files in this pull request and generated no comments.
Files not reviewed (4)
- packages/core/tests/snapshots/config.test.ts.snap: Language not supported
- tests/integration/directive/index.test.ts: Evaluated as low risk
- tests/integration/cli/build-watch/src/index.ts: Evaluated as low risk
- tests/integration/directive/react/bundleless/rslib.config.ts: Evaluated as low risk
Comments suppressed due to low confidence (4)
tests/scripts/helper.ts:110
- The error message should be 'awaitFileChanges failed: ${file}' to reflect the actual function name.
throw new Error(`awaitFileExists failed: ${file}`);
packages/core/src/config.ts:921
- [nitpick] The function name globScanEntries could be more descriptive. Consider renaming it to scanGlobEntries.
const globScanEntries = async (calcLcp: boolean) => {
packages/core/src/config.ts:990
- [nitpick] The variable name lcp is ambiguous. It should be renamed to longestCommonPath.
const lcp = await calcLongestCommonPath(Object.values(resolvedEntries));
packages/core/src/config.ts:110
- The error message awaitFileExists failed is unclear. It should be updated to File existence check failed for: ${file}.
throw new Error(`awaitFileExists failed: ${file}`);
Timeless0911
reviewed
Jan 6, 2025
Timeless0911
reviewed
Jan 6, 2025
Timeless0911
approved these changes
Jan 6, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Previously, the
entryin bundleless mode is set during the initial build and does not change during therslib build --watchphase. For example, a newly added file will not be monitored, while a file that was included initially will trigger an error (entry module not found) if it is deleted later.In this PR, we use two combined functionality to resolve the issue:
compilation.contextDependencies: an extra directory to watch and trigger watch build (e.g. used in https://github.com/soda-x/extra-watch-webpack-plugin)Limitation:
compilation.contextDependencieswill be resolved at the very beginning by LCP path, it won't be changed anymore.Related Links
Checklist