* Move some projects to netstandard2.0
* Use version agnostic $(TargetFrameworkIdentifier) property to make changing versions easier since we only care about .NET Framework vs .NET Standard
* Add missing project to solution file
* Update TestPackageProjects.targets to use netstandard2.0 on non-Windows
This commit adds the `--verbosity` option to the `install tool` command.
MSBuild/NuGet output is now controllable by the user and defaults to being "quiet".
This enables users to see warnings from NuGet that otherwise would be swallowed
unless NuGet returned a non-zero exit code. As a byproduct of this change, the
exception handling and error messages related to obtaining tool packages was
retooled. We no longer display `install tool` command line help for installation
failures, as it should only be displayed for command line syntax errors.
Fixes#8465.
To ensure the mock has the same behavior the component has, run mock under the same tests the adapter has.
It is a common problem that moq has -- "everything is mocked out, you are not test anything"
Implement a simple launcher tool for running new processes on Windows
- This application takes two parameters via the .exe.config configuration file
- entryPoint: required - the file path to the new process being launched
- runner: optional - the executable or interpretter used to launch the
entryPoint
- Update dotnet-install-tool to generate an exe instead of a batch script file
* compose all the parts
* Fix on obtain and shim maker for better end to end experience
* Fix error when there is space in the middle of path of nuget config
* Fix path in profile.d is the tmp home path during install
* better handle of ~home
* remove profile.d file in uninstall script
* Fix test since it looks up current directory
* folder structure inside nupkg to tools/TFM/RID/mytool.dll
* Add check for config file existence
* Rename name space to Microsoft.DotNet.ShellShim
* Rename name space to Microsoft.DotNet.ToolPackage
* Tools shim maker and env path handling
Includes component:
* Given executable, create shim (all three OSs)
* Add executable path to Env PATH during first run
* including manual instruction when there is no access
Add ExeutablePackageObtainer
Given a tools package id, it can create a fake project and restore to correct folder
- DI, aka no circular dependency of commands
- Parser of config XML
- I try to create test nupkg at build time, so I can run test and debug
easily with VSCode. The code is in test csproj.
* dotnet/release/15.5: (21 commits)
Manually merging some changes that git merged wrong and deleted from the 15.5 branch.
Separating the 'legacy' URL construction from the 'current' URL construction methods and logic.
Use temporary path for fake deps.json in test
Use same build number for roslyn and F# satellites
Updating Roslyn satellites and SDK versions
Insert NuGet Build 4.5.0-preview2-4529 into cli
Update NuGet to 4529 (signed)
MSBuild 15.5.154
MSBuild 15.5.153
removed commented out config I'd meant to remove
added a way to specify the asp.net template versions
Porting 'dotnet-install.sh' from CLI:master to CLI:release/2.0.0
'NuGet.master.config' does not appear to be used.
Fixed tests
Update branch info to release/15.5
Updating the websdk version to 2.0.0-rel-20171010-665
Insert NuGet Build 4.5.0-preview1-4526 into cli
Update DependencyVersions.props
Updated version of TestPlatform to 15.5.0-preview-20170923-02
MSBuild 15.4.8
...
Currently VSTS is producing duplicate package and they are running into
each other will producing
Today:
Linux x64 build definition: both .deb and .tar.gz
Ubuntu 16.04 build definition: both .deb and .tar.gz (ex.
dotnet-sdk-2.0.0-preview3-006477-linux-x64.tar.gz,
dotnet-sdk-debug-2.0.0-preview3-006477-linux-x64.tar.gz,
dotnet-sdk-internal-2.0.0-preview3-006477-linux-x64.tar.gz)
After this change:
Linux x64: .tar.gz
Ubuntu 16.04: .deb
No change for windows and macOS
Tested on Ubuntu with and without --linux-portable and windows
Remove ProjectJsonMigration and its test from solution file
Change dependecy by package reference instead of project 2 project
Construct the sln and dotnet new with wrapper that is used in migrate
package
Add reference to Nuget ProjectModel etc since CrossGen need it and it
cannot automatically get the reference
Our build scripts were pulling down all of buildtools and run.exe in
service of "clean.{cmd|sh}". While having consisent commands across
the repos is a good thing to strive for, we are pulling down a bunch
of additional stuff we don't need for simple commands that have well
known analogs (e.g. git clean).
If we had been all in on run.exe, this might have made sense, but we
aren't, so it feels like something we should clean up.
By doing this, we can stop downloading bootstrap from github when we
build (super dangerous anyway because changes in buildtools could have
broken us).
In addition, I changed the way we install dotnet to just invoke the
script in `scripts/obtain/` instead of downloading a version from
GitHub. This makes local development of changes to obtain easier and
removes yet another place we had to download a script.
When passing a property using the commandline, it is not flown through to "dotnet publish" calls. So instead of using "dotnet publish", just use the MSBuild task to invoke the Publish target on the reidst project. This way properties flow correctly.
I also did a little cleaning of unused build logic.