Deno.env review/cleanup: no set() past startup #12621
Open
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.
We need to get our
Deno.env.*
act together. It's generally not safe to callDeno.env.set
past the start of the process, becauseDeno.env
is global state which will be the cause of many race conditions from async code. This will become more acute when we add parallelism to Quarto, but it's already a problem in the test suite.@MichaelHatherly This PR affects all engines, and so we will need a bit of help from you on the
julia
side - ExecuteOptions now has a newenv
field that needs to be communicated to the execution processes appropriately. You shouldn't assume that the environment will be the same from one call to another, and so this will need proper handling on your side.We hope to merge this relatively early on in 1.8.