Unload all user modules when build finishes. #179
+26
−7
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.
When the build script (e.g. psake.ps1) is ran from a powershell window and modules are loaded globally (to enable code sharing), they
2
could be solved by usingImport-Module -Force
inLoadModules
, but1
requires that Psake unloads all loaded modules when finished.To make the code less complicated (e.g. managing nested imports), all loaded modules are tracked and unloaded only when all builds are done (the last scope have been cleaned up).
No idea how to write tests for this tho, the current test runner does not allow me to run tests after the build have finished.