* Fix output race
TestCommand starts the test process before wiring up stderr & stdout. This change delays process start until after the wireup is finished so that the test process cannot shut down before we have wired up output redirection.
* Bypass stream forwarder when it fails to attach to a process
CLI has tests failing errenously when, due to timing issues, the StreamForwarders fail to attach to a process because it managed to exit before attachment occurs.
We tried attaching the forwarders prior to Process Start but this proved impossible because the OUT and ERR streams are not available to attach before the process starts.
This exposes a fundamental flaw in our output redirection mechanisms. We should probably move to using https://msdn.microsoft.com/en-us/library/system.diagnostics.process.outputdatareceived.aspx or a similar mechanism. However, I don't know that @brthor hadn't considered and discarded this approach.
For the time being I am attempting to make tests more deterministic by capturing the associated exceptions and moving to a different mechanism when StreamForwarders are not available.
Opened https://github.com/dotnet/cli/issues/4913 to track the broader issue.
* File.Copy is not atomic...
* Centralize Microsoft.Net.Sdk package version
Note: Templates were omitted as their version needs to be static.
* Unifying additional missmatched versions
* prefercliruntime
whitespace threw off ReplaceAll
* Additional missed globs
* Revert SDK version for performance tests
* PR Feedback
* Roll back VSTestXunitDesktopAndNetCore.csproj SDK version
* Fix 4066
* Merge Conflict
* Move fix to the DotNetCommandFactory
* More normalization
The `\r\n` issue is oddly non-deterministic. This change did not affect the message endings and yet CI started failing. Normalizing both string should have the desired result...
* Checking that the lock file exists before trying to acquire a lock for it, which takes up to 30 seconds.
* Adding a test for failing when reading the lock file and it does not exists.
* WIP migrate tests
* WIP fixing more tests
* WIP fix test build break
* Test results files are now trx
* Get CI to pass until we get an xunit xml logger
* Added DotNetTestPJ since that was needed for one test
* Fix build break
* Forgot to add DotNetTestPJ as a build task
* Need to restore project.json for the project used in ubuntu test
* Restore PJ for ubuntu test
* Switch the Ubuntu test to csproj based
* Updating the Microsoft.Net.Sdk & Microsoft.Net.Sdk.Web versions
* Fixed merge conflicts. Had to re-update the Sdk version in one place.
* re-migrate dotnet.dll
* Revert Performance Test Projects
* Fix test test
* Add missing WithRuntime
* Disable failing test test
* Upgrade MSBuild references to 15.1.0-preview-000370-00
* Custom logger for MSBuild to receive telemetry events
Had to make the telemetry session ID a static variable so that the forwarding app could use it.
I've tested this all manually and will be writing tests after everyone signs off on the implementation here.
Moving the CommandResolution classes that depend on msbuild back into Cli.Utils.
Updating the src projects to a netstandard compatible with Cli.Utils moving to netstandard1.5
Microsoft.Extensions.Testing.Abstractions is the only one I couldn't move to netstandard1.3 that should be. But this library should be removed with the new `dotnet test` strategy.
This enables users to use the CLI on newer versions of the OS that aren't fully supported yet - for example using a new OSX version that isn't listed in the runtime graph in the current NuGet packages.
Fix#4238
Update Microsoft.Extensions.DependencyModel to 1.0.1-beta-000933
Update Microsoft.DotNet.PlatformAbstraction to 1.0.1-beta-000933
Update NuGet to 3.6.0-beta.1.msbuild.4
Update dotnet-test-xunit to 1.0.0-rc2-350904-49
Moves generating the runtimeconfig files to a separate MSBuild target which is only dependent on project.lock.json.
Also, moving up our NuGet dependency to 3.5.0-rc1-1653, since that brings in the LockFile.PackageFolders property, which is needed for runtimeconfig.dev.json.
* Update README.md
* Moving Ubuntu 16.04 to be next to Ubuntu 14.04
* Adding Oracle Linux and Linux Mint to the titles
Adding Oracle Linux and Linux Mint to the titles next to their compatible binaries.
* Remove showing firsttime eula for non verbs.
* Add Serviceable assembly attribute and nuspec attributes for all shipping CLI assemblies.
Fix#3345
* Use NugetCache Sentinel for Telemetry setting.
* Fix Oracle Linux version in README.md
Oracle Linux 7 -> Oracle Linux 7.1
* Fix README to use hostfxr download links (#3622)
Also fix a rebase error from b524fd079e6dcdd744faeb6061ccbfe99d1f810f#diff-04c6e90faac2675aa89e2176d2eec7d8
* Remove the VS2012 CRT dependency from docs (#3632)
* fix typo in dotnet-install file
This was needed to rebuild the CLI with the updated Roslyn NuGet packages.
Thanks goes to @akoken for the fix.