fix(config): try catch unlink after load#9577
Merged
Conversation
patak-cat
reviewed
Aug 8, 2022
Comment on lines
+1042
to
+1046
| try { | ||
| fs.unlinkSync(fileNameTmp) | ||
| } catch { | ||
| // already removed if this function is called twice simultaneously | ||
| } |
Member
There was a problem hiding this comment.
Nice! This could explain the flakiness we experienced after the file name scheme change. I think there may not be possible to get a race condition between writing the file and doing the dynamic import, so this fix should work. Let's merge this one for now.
But maybe we should directly make sure we generate a unique name? Looks like we don't have a way to do UUIDs right now, so we could use a simple scheme as we do here
plus the current timestamp. I'm not sure if it is needed though, reusing the same file looks ok to me.
Member
Author
There was a problem hiding this comment.
Yeah I think this should now work fine too as it's not possible for two simultaneous call to have one unlinking first before dynamic importing. Though I'd agree that a unique name would be a lot safer if we implement one day.
patak-cat
approved these changes
Aug 8, 2022
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.
Description
While trying to run VitePress build on another project, there is a possibility for the bundled config to be called at the same time (same
Date.now) based on this build code.This sometimes cause
Error: ENOENT: no such file or directory, unlink '/Users/bjorn/Work/oss/blas/vite.config.js.timestamp-1659938739266.mjs. This PR wraps the unlink in a try catch which works reliably for me.Additional context
What is the purpose of this pull request?
Before submitting the PR, please make sure you do the following
fixes #123).