Commit graph

3047 commits

Author SHA1 Message Date
Peter Huene
c3e78cca1d
Remove unused resource strings.
This commit removes unused resource strings from commands that no longer exist.
2018-02-26 18:29:40 -08:00
William Lee
c28f4a2e34
Pass any as rid (#8677) 2018-02-26 11:46:01 -08:00
Nick Guerrera
49f03538ba Fix loc test by using straight quotes 2018-02-22 17:49:15 -08:00
Nick Guerrera
8a1ff2eac0 Merge branch 'master' into loc_20180220_master 2018-02-22 16:02:54 -08:00
Zbyněk Sailer
3c2c956670 LOC CHECKIN | cli master | 20180222 2018-02-22 17:07:50 +01:00
Peter Huene
aab9af71b8
Implement uninstall tool command.
This commit implements the `uninstall tool` command.

The `uninstall tool` command is responsible for uninstalling global tools that
are installed with the `install tool` command.

This commit heavily refactors the ToolPackage and ShellShim namespaces to
better support the operations required for the uninstall command.

Several string resources have been updated to be more informative or to correct
oddly structured sentences.

This commit also fixes `--version` on the install command not supporting ranges
and wildcards.

Fixes #8549.

Issue #8485 is partially fixed by this commit (`--prerelease` is not yet
implemented).
2018-02-19 22:46:16 -08:00
William Lee
08f050c012
bundled DotnetTool (#8606)
Extract packages to DotnetTools folder under sdk/{version}

Add new resolver to discover it

Add test to enforce package structure. It will fail when the structure
changed
2018-02-16 13:32:29 -08:00
Livar Cunha
e8f521cbef Stop re-targeting Roslyn to the CLI runtime. It will roll-forward to the CLI runtime (2.1.0) through minor version roll-forward if necessary. 2018-02-15 14:21:27 -08:00
Livar Cunha
f19b3fddc9 Merge remote-tracking branch 'dotnet/release/2.1.3xx' into merges/release/2.1.3xx-to-master
* dotnet/release/2.1.3xx:
  Update to aspnetcore 2.1.0-preview1-28275 and react to feed layout changes (#8611)
  "ExternalRestoreSources" needs to be set in the docker container (#8602)
  Signing nupkg contents (Cli.Utils and MSBuildResolver) along with the rest of the compiled assemblies.
  Use satellites from roslyn package, not cli-deps-satellites
  Update to roslyn 2.7.0-beta3-62612-07 for 2.1.1xx
  Support TildeSlash expand (#8589)
  Port Kernel Version telemetry to preview1
  Do not create a directory with a trailing space; it cannot be deleted by conventional methods. (#8587)
  Consume generic aspnetcore rpm installers
  Insert NuGet Build 4.6.0-rtm-4918 into cli
  Adding roslyn to automatic dependency flow through maestro.
  Fixing update dependency by using the new APIs. We broke this when we updated the version of VersionTools.
  MSBuild 15.6.81
  Update SDK to 2.1.300-preview1-62608-07
  MSBuild 15.6.80

 Conflicts:
	build/DependencyVersions.props
	test/Microsoft.DotNet.ShellShim.Tests/ShellShimMakerTests.cs
2018-02-15 11:57:36 -08:00
Livar Cunha
7e32b9a593 Merge remote-tracking branch 'dotnet/release/2.1.2xx' into merges/release/2.1.2xx-to-release/2.1.3xx
* dotnet/release/2.1.2xx:
  Use satellites from roslyn package, not cli-deps-satellites
  Update to roslyn 2.7.0-beta3-62612-07 for 2.1.1xx

 Conflicts:
	build/DependencyVersions.props
	src/redist/redist.csproj
	src/tool_roslyn_satellites/tool_roslyn_satellites.csproj
2018-02-14 15:18:29 -08:00
Nick Guerrera
bc1fb44364 Use satellites from roslyn package, not cli-deps-satellites 2018-02-12 16:52:26 -08:00
William Lee
2a493c1318
Support TildeSlash expand (#8589) 2018-02-12 14:59:43 -08:00
danmosemsft
aa90d8efd2 Port Kernel Version telemetry to preview1 2018-02-09 17:20:50 -08:00
Nick Guerrera
6677d8f0b6 Merge branch 'master' into loc_20180129_master 2018-02-08 15:48:10 -08:00
Livar Cunha
f752dd7fc7 Merge branch 'release/2.1.3xx' into merge_release_213xx
* release/2.1.3xx: (51 commits)
  Removing all references to a static 'aspnetpatch' Nuget.Config (#8556)
  Updating the MSI Installation Note message. Also had to shift components around slightly to make it fit.
  Fixing recent CLI test failures around ASP.NETcore in the orchestrated build (#8553)
  The BuildTasksFeedTool version and the VersionTools version should be in sync to prevent incompatabilities between these two packages.
  Update to aspnetcore 2.1.0-preview1-28228
  Adding the VBCSCompiler to the list of signed files due to crossgen.
  Ensure ASP.NET Core is included in macos .pkg installer and update to 2.1.0-preview1-28226
  Remove obsolete F# satellite package
  MSBuild 15.6.76
  Update F# to match dev15.6 preview 4
  Excluding shared framework assemblies from the Roslyn folder in the SDK.
  Insert NuGet Build 4.6.0-rtm-4880 into cli
  Updating Roslyn to 2.7.0-beta3-62529-05.
  Update fsharp compiler to match preview 4
  Insert NuGet Build 4.6.0-rtm-4862 into cli
  MSBuild 15.6.70
  Insert NuGet Build 4.6.0-rtm-4859 into cli
  MSBuild 15.6.69
  Update package reference
  update fsharp compiler to match vs2017.6 preview 3
  ...

 Conflicts:
	build/DependencyVersions.props
2018-02-08 09:50:59 -08:00
Livar Cunha
8408322652 Merge branch 'release/2.1.1xx' into merge_release_211xx
* release/2.1.1xx: (45 commits)
  Adding the VBCSCompiler to the list of signed files due to crossgen.
  Remove obsolete F# satellite package
  MSBuild 15.6.76
  Update F# to match dev15.6 preview 4
  Excluding shared framework assemblies from the Roslyn folder in the SDK.
  Insert NuGet Build 4.6.0-rtm-4880 into cli
  Updating Roslyn to 2.7.0-beta3-62529-05.
  Update fsharp compiler to match preview 4
  Insert NuGet Build 4.6.0-rtm-4862 into cli
  MSBuild 15.6.70
  Insert NuGet Build 4.6.0-rtm-4859 into cli
  MSBuild 15.6.69
  Update package reference
  update fsharp compiler to match vs2017.6 preview 3
  Insert NuGet Build 4.6.0-rtm-4825 into cli
  Fixing the prefercliruntime asset
  Updating the SDK dependency to 15.5.0-preview-62518-04 to fix the signing issue
  Updating the channel to release/2.1.1xx. We can manually update release/2.0 if necessary, but LTS is always updated every time we release.
  MSBuild 15.6.54
  Updates the TestPlatform to 15.6.0-preview-20180109-01
  ...

 Conflicts:
	build/BranchInfo.props
	build/Branding.props
	build/DependencyVersions.props
	build/NugetConfigFile.targets
	build/Version.props
	build/package/Installer.DEB.proj
	build/package/Installer.DEB.targets
	build/package/Installer.RPM.targets
	build_projects/dotnet-cli-build/dotnet-cli-build.csproj
	packaging/osx/clisdk/resources/cs.lproj/conclusion.html
	packaging/osx/clisdk/resources/de.lproj/conclusion.html
	packaging/osx/clisdk/resources/en.lproj/conclusion.html
	packaging/osx/clisdk/resources/es.lproj/conclusion.html
	packaging/osx/clisdk/resources/fr.lproj/conclusion.html
	packaging/osx/clisdk/resources/it.lproj/conclusion.html
	packaging/osx/clisdk/resources/ja.lproj/conclusion.html
	packaging/osx/clisdk/resources/ko.lproj/conclusion.html
	packaging/osx/clisdk/resources/pl.lproj/conclusion.html
	packaging/osx/clisdk/resources/pt-br.lproj/conclusion.html
	packaging/osx/clisdk/resources/ru.lproj/conclusion.html
	packaging/osx/clisdk/resources/tr.lproj/conclusion.html
	packaging/osx/clisdk/resources/zh-hans.lproj/conclusion.html
	packaging/osx/clisdk/resources/zh-hant.lproj/conclusion.html
	packaging/windows/clisdk/bundle.wxl
	scripts/obtain/dotnet-install.ps1
	scripts/obtain/dotnet-install.sh
	src/tool_fsharp/tool_fsc.csproj
	test/Microsoft.DotNet.Cli.Utils.Tests/GivenAProjectToolsCommandResolver.cs
	test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj
2018-02-07 12:30:22 -08:00
William Lee
5fa558a2ed
Atomic install tool (#8518)
* Make dotnet install tool atomic

Apply TransactionScope to tool install. It can handle the correct timing
of roll back and commit.

Convert existing ToolPackageObtainer and ShellShimMaker by passing logic
via lambda to an object that has IEnlistmentNotification interface. It
turns out the very clean.

Use .stage as staging place to verify of package content, and shim. It
should roll back when something is wrong. When there is ctrl-c, there
will be garbage in .stage folder but not the root of the package folder.
2018-02-06 13:38:06 -08:00
Livar Cunha
2980fdbfa1 Merge branch 'release/2.1.3xx' into merge_release_213xx
* release/2.1.3xx:
  Infrastructure updates: CLI:master -> release/2.1.3xx (#8541)
  Fixing the recent CLI test failures around ASP.NETcore in the orchestrated build: adding a 'dotnet-corefxlab' feed. (#8536)
  Update BranchInfo.props
  Update the branch info to be correct for 2.1
  [Fixes #8511] Update ASP.NET Core certificate installation message
  Excluding shared framework assemblies from the Roslyn folder in the SDK.
  Updating Roslyn to 2.7.0-beta3-62529-06.
2018-02-05 15:55:31 -08:00
Nate McMaster
bc486e787a Ensure ASP.NET Core is included in macos .pkg installer and update to 2.1.0-preview1-28226 2018-02-05 11:34:52 -08:00
Nick Guerrera
d4dedc616c
Merge branch 'release/2.1.1xx' into update_roslyn 2018-02-02 14:06:05 -08:00
Zbyněk Sailer
f0be5cc1ef LOC CHECKIN | cli master | 20180202 2018-02-02 12:31:06 +01:00
Livar
89898c5a45
Merge pull request #8512 from javiercn/javiercn/update-message
Update ASP.NET Core certificate installation message
2018-02-01 19:07:20 -08:00
Nick Guerrera
ad1292bac2 Remove obsolete F# satellite package 2018-02-02 02:44:14 +01:00
Peter Huene
7ebfdde749
Add verbosity option to install tool command.
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.
2018-01-31 15:19:34 -08:00
Javier Calvarro Nelson
b1c780550f [Fixes #8511] Update ASP.NET Core certificate installation message 2018-01-31 12:47:16 -08:00
Peter Huene
d8d600d44e
Merge branch 'release/2.1.3xx' into master
* release/2.1.3xx:
  Updating the WebSdk DependencyVersion to support local build
  Fix non-fatal null exception when no extra parameters are passed.
  Separate tool package and shim file location
  Updating the CLI branding and version to 2.1.300.

* Conflicts
  src/dotnet/commands/dotnet-install/dotnet-install-tool/InstallToolCommand.cs
  run-build.ps1
  build/Version.props
2018-01-30 16:47:05 -08:00
William Lee
55eb8bb7fc
replace string with FilePath (#8494) 2018-01-30 15:41:39 -08:00
Livar Cunha
3bf4751a8d Excluding shared framework assemblies from the Roslyn folder in the SDK. 2018-01-30 15:33:08 -08:00
Livar Cunha
a52bd1a205 Excluding shared framework assemblies from the Roslyn folder in the SDK. 2018-01-30 14:02:40 -08:00
William Lee
9e535a867a
Remove PackageToProjectFileAdder (#8468)
Add reference to project with version * is doing the same thing
2018-01-24 17:55:26 -08:00
William Lee
05052c0541
Use rich mock to test InstallCommand (#8402)
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"
2018-01-24 10:16:27 -08:00
Kevin Ransom
b3c2414804 Update package reference 2018-01-23 15:42:57 -08:00
William Li
36c01137ad Separate tool package and shim file location 2018-01-22 16:30:52 -08:00
Livar
c9ac5c9c02
Merge pull request #7951 from wfurt/freebsd
add basic support for FreeBSD
2018-01-22 14:17:56 -08:00
Zbyněk Sailer
8cb01e226c LOC CHECKIN | cli - master | 20180112 (#8385)
* LOC CHECKIN | cli - master | 20180112

* LOC CHECKIN | cli - master | 20180118 update

* LOC CHECKIN | cli - master | 20180119 update | DEU fix
2018-01-22 13:56:03 -08:00
William Lee
839eccbcaf
MacOs HighSierra Fallback (#8437)
walk around for https://github.com/dotnet/corefx/issues/26488
2018-01-22 10:45:35 -08:00
William Lee
02a98d4e63
[tools] Integrate NuGet (#8414)
* Integrate NuGet ask

* Update NuGet version. Rely on NuGet to filter TFM. And use asset.json to find entrypoint

* Update XML file to per TFM

* Add extra property to the fake project according to nuget

* Treat nuget fallback folder as offline cache for tool

* Require -g to install global tool

* Copy test asset during test project build

* Address code review on LockFileMatchChecker

* Get NETCorePlatformsImplicitPackageVersion from PackageDefinitions

* Edit and add missing loc

* Change LockFileMatchChecker to local function

* Adding comment

* Add to content instead of copy

* Download platform package instead

* disable SDK side implicit NuGetFallbackFolder

* merge loc

* Revert extra line

* use a prerelease platforms version that supports alpine
2018-01-19 17:15:34 -08:00
Nate McMaster
c8bae2ffda Simplify the tool_launcher to build for just one version of .NET Framework 2018-01-19 15:19:33 -08:00
Nate McMaster
fa47e95e90
Generate a .NET Framework shim app in dotnet-install-tools on Windows instead of a batch script (#8384)
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
2018-01-18 14:54:10 -08:00
Peter Huene
a64da0129a
Fix source option for install command.
The original PR that implemented the source option was updated incorrectly
during review and the source option was accidentally not passed into the
package obtainer.  This resulted in the source option not being respected from
the install command.

The tests passed because the only test coverage is at the package obtainer
level; tests of the install command itself were waiting on additional changes
to enable (still not yet merged).

The fix is to properly pass the source option through when obtaining the
package.
2018-01-17 19:28:29 -08:00
Peter Huene
83609cef8a
Merge pull request #8408 from peterhuene/install-tool-strings
Fix missing package id error message for install tool command.
2018-01-17 13:49:05 -08:00
Nick Guerrera
840acee074
Defend against forthcoming breaking change in SDK (#8409) 2018-01-17 10:13:41 -08:00
Peter Huene
5b696e4831
Update help description for install command.
Replace the word `add` with the word `install` to match the verb of the
tool.
2018-01-16 15:01:57 -08:00
Peter Huene
2f26f10ed2
Fix missing package id error message for install tool command.
This commit fixes the error message that is displayed when the `install
tool` command is not given a package id to install.  Previously, only
`packageId` was output, which was confusing.

Fixes #8381.
2018-01-16 13:57:26 -08:00
Peter Huene
2c03ff9bcf
Refactor install command localizable strings.
This commit moves the `tool` subcommand strings into its own resource
file, rather than putting them into the `install` command's resource
file.

This better follows the patterns of other commands, such as `add`, and
enables subcommands to isolate their string resources from one another.

As part of this commit, the `install tool` string resources were cleaned
up.
2018-01-16 12:59:34 -08:00
William Lee
e8f7ddd01b
Localization for tools work so far (#8251) 2018-01-13 09:40:48 -08:00
William Lee
a3aa6dc1c2
Merge pull request #8379 from peterhuene/install-tool-source-option
Add source option to install tool command.
2018-01-12 17:46:08 -08:00
Peter Huene
fe89456f2a
Add source option to install tool command.
This commit adds the `--source` option to the `install tool` command.  This
option is equivalent to the option of the same name for the `restore` command.

The option is forwarded to the underlying restore operation.

Fixes #8226.
2018-01-12 16:08:13 -08:00
Andy Gerlicher
2b3ade043d Use a multi-proc aware MSBuild logger (#8371)
Make use of the MSBuild distributed logger functionality and add a
forwarding logger. When in a multi-proc build, the forwarding logger
will decide which events to forward to the main node to be logged.
Without this, all events are routed and a perf penalty is incurred.
2018-01-11 15:30:56 -08:00
Javier Calvarro Nelson
08a369cf86 Prevent the ASP.NET certificate generation logic from running on the installers 2018-01-10 21:54:05 -08:00