- Calling `AssemblyLoadContext.LoadFromAssemblyName(new AssemblyName("foo"))` would not work prior to this because the assembly path lookup was a dictionary where the key was `AssemblyName` without a proper `AssemblyName` comparer.
#1084#955
- Project dependencies are always built into their specific folders and the main project is the only one that uses the output path and intermediate output path variable.
- Publish respects the output path for publish only, not compile as part of publish. This means that publishing multiple runtimes will stomp on each other. So don't do that. We can throw if you specify and output location and you haven't specified a specific combination of RID and framework. Alternatively it should probably just pick the first TFM/RID pair from the lock file. This is similar to how `dotnet run` works.
- Cleaned up the incremental build output formatting
- Use a single stream (output stream) since interleaving them was causing formatting issues (like losing random characters in the middle of outputting things).
- Didn't change how pack works, it still preserves the output structure when passing `--output`, this one is worth discussing. We could leave the build output inplace and only move the package to the output location. That's more consistent with how everything else works and can be a follow up PR.
- Fixed a bunch of dependencies that was causing dotnet restore to fail on the CLI
- Added imports to `project.json` so that `dotnet-restore` works
- Fixed a bunch of dependency issues in different projects
- Ironically, running `dotnet restore` on the dotnet-restore project still fails (will fix in another commit). Looks like it might be a nuget issue
CentOS tests were blocked due to issue https://github.com/dotnet/corefx/issues/5066.
It has been fixed with the latest NetStandardLibrary, hence upgrading from 1.0.0-rc2-23616 to 1.0.0-rc2-23704.
With this fix the native shims are correctly restored by dnx for RID centos.7-x64.