When running an app with `dotnet run`, we are redirecting the standard out and error just to print it out to our standard out and error. However, we are batching the output until we hit a newline, which isn't ideal for console apps.
To fix this, `dotnet run` no longer redirects the standard out and error.
Fix#2777
Also removed the dependency on Microsoft.Extensions.CommandLineUtils.Sources NuGet package and instead just checking the source files into our repo as internal classes.
Fix#2526
This script can be used to automatically update dotnet/cli's
dependencies on other repos like CoreFX, NuGet, etc.
Currently the script supports updating the CoreFX dependencies.
Adding a message handler for the version check message. Also introduced an IDotnetTest that handles state and handlers (the state machine).
Adding the test discover start message handler and introducing a test runner.
Added the handler for the GetTestRunnerProcessInfo message. Also, modified dotnet test to have separate setter for the special message handlers for terminate and unknown messages and added a separate method to add new reporting channels to DotnetTest, so that it can handle the new listener for the test runner.
Added the test runner test discovery handlers.
Added handlers to deal with the test execution itself.
Updated dotnet-test program to use the message handlers during design time.
Added a test for the whole discover tests message flow.
Added a test for the run tests full message exchange.
- Rename Compiler.Common.Tests to Microsoft.DotNet.Compiler.Common.Tests.
- Create the Microsoft.DotNet.Cli.Utils.Tests and move StreamForwarderTests to it.
- ArgumentForwardingTests will be moved here in the future
- Remove LoadContextTest, since it is old and no longer relevant.
Partial #1250
Build becomes the new compile. It decides which project to compile and how. It checks for incremental preconditions
Compile's resonsibility is trimmed down to only knowing how to invoke the compiler on a project
A tool which searches recursively for project.json files,
runs a set of analyses and reports on the result.
For CLI we have only one rule currently, that Dependencies
between projects must be equivalent to avoid stomping.