Commit graph

333 commits

Author SHA1 Message Date
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
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
Javier Calvarro Nelson
08a369cf86 Prevent the ASP.NET certificate generation logic from running on the installers 2018-01-10 21:54:05 -08:00
Livar Cunha
5a0e95897e Merge remote-tracking branch 'dotnet/release/15.5' into merges/release/15.5-to-master-20171206-080040
* dotnet/release/15.5: (26 commits)
  Fixing the reference to Microsoft.Build.Runtime from Cli.Utils.Tests. It was using the wrong package version property.
  One more old style version package name needed to change in redist.
  Fixing the versions of MSBuild and passing the right property to find roslyn files.
  Use "15.5.179" for the other Microsoft.Build.* packages
  Moving the 'MicrosoftBuildPackageVersion' forward.
  Fixing "RuntimeFrameworkVersion"
  Updating version naming convention.
  Fixed a typo...
  Nuget.config update to align with CLI:master - add comments in DependencyVersions.prop
  Even more package dependency re-names...
  Third pass clean-up of package names.
  Second pass clean-up of package names; resequencing download.
  Updating dependency version properties in alignment with sample orchestrated build file at: https://dotnetfeed.blob.core.windows.net/orchestrated/20171129-03/orchestration-metadata/PackageVersions.props
  The access key is already resolved: 'CoreSetupBlobAccessTokenParam'
  Fixed another typo...
  Fixed typo...
  The first pass will need the extra args [same as run-build.ps1].
  Dependency Uptake: download and import a package version props file.
  Accounting for MSRC builds with pre-set 'CoreSetupBlobRootUrl' and 'CoreSetupBlobAccessToke' properties.
  Changes per code review...
  ...

	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj
	TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj
	TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj
	TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj
	TestAssets/TestProjects/XunitMulti/VSTestXunitDesktopAndNetCore.csproj
	build/BundledTemplates.props
	build/DependencyVersions.props
	build/NugetConfigFile.targets
	build/Test.targets
	build_projects/dotnet-cli-build/dotnet-cli-build.csproj
	dir.props
	run-build.sh
	src/Microsoft.DotNet.Archive/Microsoft.DotNet.Archive.csproj
	src/Microsoft.DotNet.Cli.Utils/Microsoft.DotNet.Cli.Utils.csproj
	src/Microsoft.DotNet.Configurer/Microsoft.DotNet.Configurer.csproj
	src/dotnet/dotnet.csproj
	src/redist/redist.csproj
	src/tool_fsharp/tool_fsc.csproj
	test/ArgumentForwardingTests/ArgumentForwardingTests.csproj
	test/EndToEnd/EndToEnd.csproj
	test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj
	test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj
	test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj
	test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj
	test/binding-redirects.Tests/binding-redirects.Tests.csproj
	test/dotnet-add-package.Tests/dotnet-add-package.Tests.csproj
	test/dotnet-add-reference.Tests/dotnet-add-reference.Tests.csproj
	test/dotnet-back-compat.Tests/dotnet-back-compat.Tests.csproj
	test/dotnet-help.Tests/dotnet-help.Tests.csproj
	test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj
	test/dotnet-new.Tests/dotnet-new.Tests.csproj
	test/dotnet-remove-package.Tests/dotnet-remove-package.Tests.csproj
	test/dotnet-remove-reference.Tests/dotnet-remove-reference.Tests.csproj
	test/dotnet-restore.Tests/dotnet-restore.Tests.csproj
	test/dotnet-sln-add.Tests/dotnet-sln-add.Tests.csproj
	test/dotnet.Tests/dotnet.Tests.csproj
2017-12-07 09:55:12 -08:00
Livar Cunha
cd86a4cac4 Merge remote-tracking branch 'dotnet/release/2.0.0' into merges/release/2.0.0-to-release/15.5-20171206-080037
* dotnet/release/2.0.0:
  Fixed a typo...
  Nuget.config update to align with CLI:master - add comments in DependencyVersions.prop
  Even more package dependency re-names...
  Third pass clean-up of package names.
  Second pass clean-up of package names; resequencing download.
  Updating dependency version properties in alignment with sample orchestrated build file at: https://dotnetfeed.blob.core.windows.net/orchestrated/20171129-03/orchestration-metadata/PackageVersions.props
  The access key is already resolved: 'CoreSetupBlobAccessTokenParam'
  Fixed another typo...
  Fixed typo...
  The first pass will need the extra args [same as run-build.ps1].
  Dependency Uptake: download and import a package version props file.

 Conflicts:
	build/DependencyVersions.props
	src/redist/redist.csproj
	src/tool_roslyn/tool_roslyn.csproj
2017-12-06 12:18:28 -08:00
William Lee
55f62d9d64
Add install tool command (#8132)
* 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
2017-12-04 14:13:24 -08:00
John Beisner
f0abfb6b12 Updating dependency version properties in alignment with sample orchestrated build file at: https://dotnetfeed.blob.core.windows.net/orchestrated/20171129-03/orchestration-metadata/PackageVersions.props 2017-12-01 20:07:48 -08:00
William Lee
cc80ed43e0
Tools shim maker and env path handling (#8085)
* 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
2017-11-27 10:45:43 -08:00
William Lee
584d3f0502
Global tools package obtain (#8035)
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.
2017-11-21 20:10:06 -08:00
William Li
8c3b640540 Fix merge 2 2017-10-31 13:37:28 -07:00
Livar
2031c9cf33
Merge branch 'master' into merges/release/15.5-to-master-20171031-070033 2017-10-31 10:15:11 -07:00
William Lee
cef9a90ad1
Hashed telemetry and event name change (#7919) 2017-10-27 10:58:25 -07:00
William Li
9c1fa7c9d9 Do not move forward if there is parsing error 2017-09-12 16:54:51 -07:00
Daniel Plaisted
107252ebe7 Merge upstream changes 2017-08-28 11:09:19 -07:00
Nick Guerrera
497f6c5b0c Fix warnings in test projects 2017-08-25 20:17:58 -07:00
Daniel Plaisted
e4777c0b91 Update expected SDK version test to work with multiple stages 2017-08-24 15:51:38 -07:00
Daniel Plaisted
13da213183 Support new artifacts layout in tests and other build logic 2017-08-24 15:49:13 -07:00
Daniel Plaisted
ae0aa8ed24 Move dir.props to auto-imported Directory.Build.props
This is necessary for setting the intermediate output path to work correctly
2017-08-24 15:46:45 -07:00
Daniel Plaisted
60e5fabde2 Update tool tests to target netcoreapp2.1 2017-08-18 18:07:14 -07:00
Daniel Plaisted
dc4046ca7e Update test code to use netcoreapp2.1 2017-08-18 15:36:01 -07:00
John Doe
8fc8a03081 typo 2017-08-14 21:26:49 -07:00
William Li
081f208942 Add telemetry data points for .NET Core 2.0 2017-07-27 09:55:40 -07:00
Livar Cunha
015af46c99 Fixing a test that fails due to a race condition, because the .dotnet folder might not have been created yet. 2017-07-26 13:22:31 -07:00
Livar Cunha
20f0dac6b2 Making a change that will cause the first run notice to always show up in the first run of the CLI, even when it is installed by native installers. 2017-07-25 22:33:54 -07:00
Nick Guerrera
a1c423c0f6 Honor UI language override in test runs
Also fix some incorrect unlocalized test expectations that slipped in.
2017-07-18 22:03:31 -07:00
William Li
941c29c2be Mark test windows only 2017-07-07 12:56:21 -07:00
William Li
191e3e3019 Installer Success Reporting for Windows
Issue https://github.com/dotnet/cli/issues/7091

Add internal command dotnet internal-reportinstallsuccess. Before
Windows installer finishes, run this command instead of dotnet new. It
will trigger the first time experience as well as sending telemetry with
installer exe name.

This command blocks to ensure that the webservice call completes.
2017-07-07 12:56:21 -07:00
Nick Guerrera
9b77dc50f1 Redirect parser to localized validation messages 2017-06-27 15:49:00 -07:00
Livar Cunha
529d7caa79 Moving the expanding fallback folder to the dotnet folder hive. The folder will be expanded at sdk/NuGetFallbackFolder. 2017-06-20 10:59:23 -07:00
Nick Guerrera
62c3798679 Use fluent helper for line-end normalization 2017-06-19 11:54:42 -07:00
Nick Guerrera
11967b7d9c Merge branch 'release/2.0.0' into loc 2017-06-16 18:20:44 -07:00
Livar Cunha
0a4a0a082c Updating the SDK. Mostly, had to change PackageTargetFallback to AssetTargetFallback. 2017-06-14 00:27:26 -07:00
Nick Guerrera
f09124fcd6 Make dotnet.Tests pass on localized setup 2017-06-12 17:31:40 -07:00
Rainer Sigwald
a3dbfa47c9 Revert "Disabling the VB tests in non-windows platforms while MSBuild fixes a bug that we need for cross-plat."
This reverts commit a4c3e69c3c.

This should work since 28e25657cb picked
up the fix for Microsoft/msbuild#137.
2017-05-22 13:06:34 -05:00
Livar Cunha
a4c3e69c3c Disabling the VB tests in non-windows platforms while MSBuild fixes a bug that we need for cross-plat. 2017-05-18 10:09:36 -07:00
Livar Cunha
38fc8875f2 Enabling VB in the CLI.
Fixing the permissions for RunVbc.sh.
2017-05-17 22:16:22 -07:00
Livar Cunha
b51920d212 Merge branch 'release/2.0.0' into merge_release_200_into_master
* release/2.0.0:
  Fixing tests to look for 1.1.2.
  Updating the backwards compatible runtime to 1.1.2.
  Updating the SDK to one that carries updated versions of the implicit 1.0 versions.
  Update to SetupCrossgen 92 - Coherence 24937
  Update to SetupCrossgen 86 - Coherence 24920
  Fix date on package version
  Update templates to 222
  Update SetupCrossgen to build 82
  Update SetupCrossgen to build 80
  Update SetupCrossgen to build 77
2017-05-09 20:51:32 -07:00
Livar Cunha
c25fdd833e Fixing tests to look for 1.1.2. 2017-05-09 12:12:47 -07:00
Nick Guerrera
071789b33f Merge branch 'release/2.0.0' into merge-release-2.0 2017-05-05 16:21:15 -07:00
Daniel Plaisted
8b13b3e579 Fall back to tools restored for .NET Core 1.x if they haven't been restored for .NET Core 2.0 2017-05-05 13:15:02 -07:00
William Li
093bf72c3c Remove ProjectJson solution and its tests
It is moved to cli-migration repo
2017-05-01 08:27:02 -07:00
Daniel Plaisted
af9a85fd3f Disable multilevel lookup and fix tests that were depending on .NET Core 1.0 shared framework 2017-04-27 12:56:28 -07:00
Daniel Plaisted
06c1cc5990 Update test tools that need conflict resolution on 2.0 to target 2.0 2017-04-27 09:30:39 -07:00
Daniel Plaisted
01d3895b24 Add tests for behavior of tools that target previous major version of shared framework 2017-04-27 09:30:39 -07:00
Livar
4f6fbc4a7f Merge pull request #6362 from mlorbetske/dev/mlorbe/Update20Templates
Update templates and engine, pin ASP.NET package versions, add web item templates
2017-04-22 12:00:08 -07:00
Mike Lorbetske
8227a6edac Update templates, remove browserlink from checked packages 2017-04-21 22:10:57 -07:00
Mike Lorbetske
4dd1be1978 Respond to review feedback 2017-04-21 20:51:52 -07:00
Mike Lorbetske
9ea9cbc8a6 Update templates and engine, pin ASP.NET package versions, add web item templates 2017-04-21 20:51:52 -07:00
William Li
83f3a3ec86 Fix dotnet run double dash passing arguments
When run “dotnet run -- foo”, foo should be the argument passed to the
subject app. After replacing the original parser, dotnet-run did not
utilize the “unparsedtoken” of the parsed result.

To append unparsedtoken to RunCommand’s argument is not straight
forward. RunCommand has an “immutable constructor”, which is a good
thing, so I made update RunCommand’s argument following the immutable
pattern -- create a new object with the original field but only change
the arguments. I also made these filed private set.
2017-04-13 16:56:57 -07:00
Eric Erhardt
99f9786ac7 Merge pull request #6270 from eerhardt/CacheRename
Rename `cache` to `store`.
2017-04-10 12:15:25 -05:00
Livar
67563a4f12 Merge pull request #6268 from livarcocc/remove_1_0_runtime
Removing the additional shared framework from the official stage2 build of the CLI
2017-04-08 12:30:41 -07:00
Livar
18126c4ea8 Merge branch 'master' into CacheRename 2017-04-08 09:36:15 -07:00
Livar
cc9271119e Merge pull request #6266 from wli3/fix-migrate-x
Fix migrate command's parse error
2017-04-08 09:34:52 -07:00
Livar Cunha
e286c65d25 Removing Additional Framework entirely and renaming LegacyRuntime to something more appropriate: BackwardsCompatibleRuntimes. Also, turning off some tests that I forgot to turn off for linux-x64. 2017-04-08 00:31:27 -07:00
Livar Cunha
772e838ff8 Removing the additional shared framework from the official stage2 build of the CLI. Instead, I also create a stage2 build with the legacy runtime so that we can continue to run tests tthat depend on it, but most importantly, we will be able to run backwards compatibility tests using it. 2017-04-08 00:31:27 -07:00
Eric Erhardt
95ff3f9bf8 Fix tests for cache => store rename. 2017-04-07 15:51:37 -05:00
William Li
4f52ed37f7 Fix migrate command's parse error
argument. So, when it is trying to materialize MigrateCommand, the file
path does not match what it is expected(a bool).
2017-04-07 08:01:06 -07:00
Mike Lorbetske
379dd5c9e0 Update template engine & template versions 2017-04-05 13:50:12 -07:00
Livar
34f7df0763 Merge pull request #6209 from livarcocc/first_run_fallback_folder
First run fallback folder
2017-04-03 23:23:29 -07:00
Livar Cunha
dee8725fd2 Fixed the failing windows tests by pointing to a NuGet.Config during restore. The issue there was that when NuGet finds a package in the fallback folder, it does not copy it to the packages folder when --packages is specified. Also, to avoid collateral changes during tests, set APPDATA env variable when running the first run experience tests. 2017-04-03 10:45:35 -07:00
Livar Cunha
0c1af8a2fe Enabling E2E tests by setting HOME and USERPROFILE env variables. This will cause the NuGet.Config and fallback folder to be extract to the location in those variables during the tests. Also refactored all NuGet path calculators for the first run to a single place. 2017-03-30 11:28:01 -07:00
jonsequitur
7a90675be7 enforce repeating options to for multiple arguments 2017-03-30 07:43:04 -07:00
Nick Guerrera
fcd3c149f8 Merge pull request #6136 from nguerrera/vs-version-props
Package bundled version props in to a VS insertion nupkg
2017-03-24 15:56:04 -07:00
Nick Guerrera
c3a6999392 Skip flaky test 2017-03-24 13:14:07 -07:00
jonsequitur
abfb877c5d update Microsoft.DotNet.Cli.CommandLineParser version for more selective option splitting 2017-03-23 17:12:35 -07:00
Livar
960b3808ee Merge pull request #6115 from jonsequitur/adaptive-help-spacing
Adaptive help spacing
2017-03-23 13:13:49 -07:00
jonsequitur
149f292b6a check for help in DotNetTopLevelCommandBase 2017-03-23 08:15:41 -07:00
jonsequitur
055523770a update CliCommandLineParser version 2017-03-22 13:51:09 -07:00
jonsequitur
be86933ff8 use DotnetCommand instead of TestCommand 2017-03-21 14:55:56 -07:00
jonsequitur
4effd9354c merge 2017-03-21 11:57:08 -07:00
Eric Erhardt
5194735e27 Disable cli tool tests on linux-x64 that require netcoreapp1.1. 2017-03-20 21:39:15 -05:00
Jon Sequeira
43c13f2f53 move parse result validation to CommandBase to allow custom messages 2017-03-19 14:30:43 -07:00
Livar Cunha
ec7c81ea84 Disabling intermittent test and fixing assets for windows only tests. 2017-03-17 20:32:52 -07:00
Livar Cunha
bb178a5133 Updated tests to the new appropriate TFM 1.1, since we need a shared runtime besides 2.0 in the new distros. Once we have vstest for 2.0 then we won't need it anymore. 2017-03-17 20:32:51 -07:00
jonsequitur
973021b214 publish, cache, text fixes; rename ForwardAs and introduce ForwardAsMany 2017-03-16 13:22:08 -07:00
jonsequitur
3c8f330930 update parser 2017-03-16 08:31:15 -07:00
Jon Sequeira
69ba7095e5 update parser 2017-03-15 20:33:22 -07:00
Jon Sequeira
bcfc16000c latest CliCommandLine 2017-03-15 09:28:10 -07:00
Jon Sequeira
96683c1421 help text updates 2017-03-14 10:33:58 -07:00
Jon Sequeira
ace4fe49f6 new CliCommandLine version 2017-03-13 16:01:58 -07:00
Jon Sequeira
11b7e7e449 new CliCommandLine version 2017-03-13 12:46:39 -07:00
Jon Sequeira
02ac115f2b new CliCommandLine version with help fix 2017-03-13 09:03:14 -07:00
Jon Sequeira
8a0f37ed79 bump CliCommandLine version 2017-03-13 08:25:21 -07:00
Jon Sequeira
d3143b779f stop writing ParseResult.Diagram to output 2017-03-12 16:48:59 -07:00
Jon Sequeira
a6c2b6c9f6 update CliCommandLine, other code changes 2017-03-12 15:06:34 -07:00
jonsequitur
ae01694167 Merge branch 'tab-completion' of https://github.com/jonsequitur/cli into tab-completion 2017-03-11 09:45:19 -08:00
Jon Sequeira
6e3a55e872 update CliCommandLine version 2017-03-10 18:21:58 -08:00
Piotr Puszkiewicz
23d4fb32f3 Merge remote-tracking branch 'jonsequitur/tab-completion' into tab-completion 2017-03-10 17:37:26 -08:00
Jon Sequeira
34d9cbf863 new CliCommandLine version 2017-03-10 17:11:19 -08:00
Piotr Puszkiewicz
940dd6863a move dotnet-run 2017-03-10 10:13:11 -08:00
Jon Sequeira
4284c4e363 small change to arg forwarding methods, test fixes 2017-03-09 09:14:55 -08:00
jonsequitur
0b94c979db publish using new parser, rename ArgsToBeForwarded 2017-03-09 07:35:06 -08:00
Jon Sequeira
fd6f7e48b5 WIP 2017-03-08 16:02:24 -08:00
Jon Sequeira
30480fa189 restore:captures arguments for forwarding to MSBuild 2017-03-07 16:40:18 -08:00
Jon Sequeira
53ea7f62bf update CliCommandLine version 2017-03-07 11:29:29 -08:00
Jon Sequeira
1ed5b420a9 don't split on : or = in restore command parse 2017-03-07 11:28:35 -08:00
Jon Sequeira
69bc90dc6f dotnet restore using new parser 2017-03-06 20:53:26 -08:00
Jon Sequeira
0094fd4e08 revert subcommand change, align CliCommandLine versions 2017-03-06 16:34:05 -08:00
jonsequitur
5f227c1c45 split parser definitions across multiple files 2017-03-06 12:21:51 -08:00
jonsequitur
8b0dd3579c a couple of parser unit tests 2017-03-06 12:21:22 -08:00