If there are shims packaged by convention in nupkg. Shim Repository will simply copy it to the right location.
The query interface ToolPackageInstance will be in charge of finding the shim folder and filter the right RID. Shim Repository will pick the right file after the folder is located since Shim Repository knows the shim name and it also book keep the files at uninstallation.
During development, due to the wrong adapter level. The mock duplicated too much logic. So, I corrected the abstraction level to lower (only create shim). And replaced the existing mock with a much smaller one without any atomic control and file move, copy logic. At the same time. The chmod, which is a IO action, causes problem during tests. So I added adapter layer to it and put it in Util.
On environments where registry access is disabled, the first run experience
fails because it could not add the tools path to the user's environment.
This fix properly handles the security exception by printing a warning and
continuing. Users will have to manually add the PATH environment variable to
their environments to prevent `dotnet tool install` from printing PATH
instructions.
A new file sentinel is added to track whether or not the PATH has been
modified. The first run experience also now correctly skips modifying the PATH
if `DOTNET_SKIP_FIRST_TIME_EXPERIENCE` is set.
Fixes#8874.
This commit checks that the `--tool-path` option for the `tool list` and `tool
uninstall` commands is a directory that exists.
If the directory does not exist, an error and the command help is displayed.
Fixes#8931.
* Publish app host to folder under SDK
* Use carried apphost as shim
* Remove full framework launcher
* Fix test run command issue
* Use latest release/2.1 build
* Test with 32 bit env
* Add missing return
* Update to latest prodcon build
* Add xlfs
This commit implements the `buildserver shutdown` command that can be used to
shutdown MSBuild, VB/C# compiler, and Razor build servers.
By default, all three build servers are shut down. Options can be passed to
shut down a subset of the build servers.
Fixes#8185.
When `dotnet run` is executed, a project evaluation occurs to obtain properties
related to running the target executable. Currently, this evaluation causes
the default item globs to be evaluated. For project directories containing a
large number of files, this can be a bit performance hit since the globbing
happens twice: once for the build and again for evaluating the run properties.
This commit prevents the globbing from taking place when evaluating the run
properties.
Fixes#8103.
Work around https://github.com/Microsoft/vstest/issues/1503 by using the
MSBuild escape hatch variable MSBUILDENSURESTDOUTFORTASKPROCESSES and
ensuring that tests don't run in a disconnected MSBuild process by
passing /nr:false.