Commit graph

3545 commits

Author SHA1 Message Date
Daniel Plaisted
9efaad971f Include runtime pack and other additional information for known frameworks 2018-12-30 00:14:44 -08:00
Livar Cunha
00aba8b3d0 Fixing FreeBSD build. 2018-12-28 15:16:07 -08:00
Livar
88a1a412d3
Merge pull request #227 from livarcocc/fix_pkg_installer
Fixes the layout of the dotnet-internal artifacts
2018-12-27 15:53:52 -08:00
Livar
ae5f9ac795
Merge pull request #225 from livarcocc/fix_tar_gz_generation
Adding a call to generate a targz for the combined Sdk + runtimes.
2018-12-27 15:46:52 -08:00
Livar Cunha
b46aa5d68e Fixes the layout of the dotnet-internal artifacts, which are used by the chained pkg, msi and -internal.zips/tarballs. We were flattenning all files in the folder. 2018-12-27 15:33:02 -08:00
Livar
0433e6b549
Addressing code review comment.
Fixing the set of files we put in the internal.tar.gz file.
2018-12-27 15:27:24 -08:00
Livar Cunha
5df3288c55 Adding a call to generate a targz for the combined Sdk + runtimes. We were missing that. 2018-12-27 15:01:45 -08:00
Livar Cunha
990a41eab1 Fixing the version branding for this repo back to preview. 2018-12-26 15:06:23 -08:00
Livar Cunha
3336f6a113 Updating the branch, for copy to latest blob storage, to master. 2018-12-26 14:07:55 -08:00
Livar
f89ff73408 Fixing MSI generation. We were missing the Windows desktop version as a parameter to the bundle script. 2018-12-26 10:46:40 -08:00
Livar Cunha
3ce8eaefaa Merge branch 'master' into official_builds
* master:
  Adding a Wpf and Winforms templates registry key (#218)
  Update coresetup to preview-27218-01 (#216)
  Update WindowsDesktop Framework (#215)
  Update coresetup to preview-27217-02 (#214)
  Update coresetup to preview-27217-01
  Update coresetup to preview-27216-02 (#211)
  make GivenDotnetUsesDotnetTools test optional based on AspNetCore availability (#207)
  Update DependencyVersions.props
  Include the WindowsDesktop sharedframework in install 'Finish' page. (#208)
  Update readme; core-sdk:master (#209)
  Update WindowsDesktop
  Update toolset
  Update coresetup to preview-27214-02
  change debug to Debug to match managed part
  add entry for freebsd to badge processing
  update stage0 sdk to 3.0 preview
  Update coresetup to preview-27206-02 (#202)
  initial support for freebsd
2018-12-25 19:08:40 -08:00
Parallels
d3e2ea2488 Fixing debs generation. The issue was that we were losing the exec permission on the apphost in the sdk folder. This caused it to not be picked up by dh_shlibsdeps. This happened because the order of the apphost acquisition was changed to be after crossgen, where we change permissions of all files under the SDK folder to 644. The fix here was to make the apphost acquisition to happen after crossgen. 2018-12-25 11:52:51 -08:00
Livar Cunha
be52214b62 Align the publishing properties between publish and copy latest and use the right key for the cli storage blob. 2018-12-21 21:27:03 -08:00
Livar Cunha
4556ac7915 Don't produce a sha file for cab files. We don't upload those. 2018-12-21 20:41:34 -08:00
Livar Cunha
23b7b332e6 Producing and publishing checksums. Also, publishing sdk assets ourselves, so that we can add metadata regarding where to push nupkgs. 2018-12-21 19:42:48 -08:00
Livar
92217daaa8 Removing strong name signing from our signing and fixing crossgen for arm. 2018-12-20 21:26:49 -08:00
Livar
b86ce49e8e Updating the YAML file to run ci and signing. 2018-12-20 15:25:20 -08:00
Livar Cunha
db5b588e45 Copy latest to blob when all legs succeed. 2018-12-20 13:21:18 -08:00
Livar
a7476cb30c
Merge pull request #153 from wfurt/freebsd
Unofficial support for freebsd
2018-12-11 11:06:45 -08:00
Daniel Plaisted
ee9799118e Remove commented out code 2018-12-06 18:22:29 -08:00
Daniel Plaisted
4980693ed6 Change release suffix to "arcade" 2018-12-06 14:07:36 -08:00
Daniel Plaisted
a84cda76e2 Create nupkg for VS insertion 2018-12-06 13:32:32 -08:00
Daniel Plaisted
f2481a29b3 Correctly generate internal and combined archives 2018-12-06 13:31:59 -08:00
Daniel Plaisted
5c56d2c273 Glob for .cab files to sign 2018-12-06 13:14:44 -08:00
Daniel Plaisted
583de7f027 Sign MSI and Bundle 2018-12-06 10:49:10 -08:00
Daniel Plaisted
f974e2bbac Merge upstream changes 2018-12-05 18:08:40 -08:00
Daniel Plaisted
60f6fe6496 Disable generating DEB packages
https://github.com/dotnet/core-sdk/issues/201
2018-12-05 18:02:18 -08:00
Daniel Plaisted
c6b78f4205 Use different dotnet and artifacts folders when running in docker (on Windows)
This means docker builds won't conflict with each other or with a non-docker build
2018-12-05 17:48:17 -08:00
Daniel Plaisted
2b9f55496d Remove dependency on target which doesn't exist 2018-12-05 14:02:31 -08:00
Daniel Plaisted
42c0ecb69a Hook up building installers to Pack target 2018-12-05 12:21:56 -08:00
Daniel Plaisted
406519bc8a Sign layout 2018-12-04 22:59:19 -08:00
Daniel Plaisted
6c8f08bbd9 Include AppHostTemplate 2018-12-03 18:58:43 -08:00
Daniel Plaisted
55841f78ea Crossgen layout 2018-12-03 18:15:31 -08:00
Daniel Plaisted
9c18e156fe Merge upstream changes 2018-12-03 18:10:32 -08:00
Daniel Plaisted
d4db5e64b5 Merge upstream changes 2018-11-29 17:27:58 -08:00
Daniel Plaisted
bde288e6d0 Don't include WindowsDesktop in ARM builds 2018-11-23 09:56:43 -08:00
Daniel Plaisted
d8b5dbb44b Apply code review feedback 2018-11-21 18:43:34 -08:00
Daniel Plaisted
23a826b544 Merge upstream changes 2018-11-21 15:53:12 -08:00
Daniel Plaisted
67c4e27948 Merge upstream changes 2018-11-20 18:45:43 -08:00
Daniel Plaisted
7b76c6dd89 Generate version file 2018-11-20 10:46:41 -08:00
Livar
25046ed471
Merge pull request #154 from dotnet/enable_win_arm
Enabling win-arm CI and builds.
2018-11-19 21:53:17 -08:00
Livar Cunha
6f3303f309 Enabling win-arm CI and builds. 2018-11-16 17:54:46 -08:00
User Toweinfu
36dfe5b5a9 initial support for freebsd 2018-11-16 17:51:51 -08:00
Livar Cunha
60aadab0a8 Stop downloading and add the lzma archive to the SDK output. 2018-11-16 17:02:14 -08:00
Daniel Plaisted
88fda677f3 Remove debugging code 2018-11-16 15:21:09 -08:00
Daniel Plaisted
f69d1f0fd3 Rename DesktopUI to WindowsDesktop 2018-11-16 15:20:52 -08:00
Daniel Plaisted
48c2d3ef4f Merge upstream changes 2018-11-16 13:56:21 -08:00
Daniel Plaisted
0bf42114de Include bundled tools in layout 2018-11-13 15:04:44 -08:00
Daniel Plaisted
b1b9dfda09 Include templates in layout 2018-11-12 15:23:44 -08:00
Daniel Plaisted
45c3817d65 Generate bundled versions 2018-11-12 11:52:19 -08:00
Daniel Plaisted
853a27da6f Add workaround for tar warning about "file changed as we read it" in Docker under Windows host 2018-11-08 08:10:33 -08:00
Daniel Plaisted
f4209b9de6 Don't try creating tar.gz archive on Windows 2018-11-07 18:17:30 -08:00
Daniel Plaisted
2bee59a9bc Create Mac PKG 2018-11-06 14:29:00 -08:00
Daniel Plaisted
8c9e6aea55 Move / rename PKG generation targets 2018-11-05 14:11:42 -08:00
Daniel Plaisted
24ccfbae1a Generate RPM Installer 2018-11-05 13:38:10 -08:00
Daniel Plaisted
d2528332b2 Move, merge, and rename RPM targets 2018-11-04 18:52:13 -08:00
Daniel Plaisted
143bee75ff Produce deb packages 2018-11-01 23:15:59 -07:00
Daniel Plaisted
8d026b422e Move and merge deb generation targets 2018-10-31 16:42:59 -07:00
Daniel Plaisted
1e32ccfb7e Generate Windows installers 2018-10-31 16:35:14 -07:00
Daniel Plaisted
6c0c9119fc Move and rename MSI installer targets 2018-10-31 12:43:19 -07:00
Daniel Plaisted
70dd736032 Create archives for core SDK layout 2018-10-29 13:31:03 -07:00
Daniel Plaisted
ce468ec79e Move layout folder 2018-10-29 12:26:31 -07:00
Daniel Plaisted
b155e4e8bf Multitarget core sdk tasks 2018-10-29 11:37:13 -07:00
Daniel Plaisted
ac23150af3 Include DesktopUI shared framework and toolset in redist layout 2018-10-24 16:05:02 -07:00
Daniel Plaisted
584ec3c3d6 Add more components to download / layout 2018-10-24 00:08:51 -07:00
Daniel Plaisted
1344cb26c2 Lay out components in publish directory 2018-10-23 23:15:58 -07:00
Daniel Plaisted
7ab1aa5a6c Set up infrastructure to download bundled components for layout 2018-10-23 18:16:45 -07:00
Daniel Plaisted
2e76a1e5fd Build Core SDK tasks to separate folder for consumption during main build 2018-10-22 20:04:13 -07:00
Daniel Plaisted
914f465b30 Get tests and skeleton build tasks building 2018-10-22 19:59:58 -07:00
Egor Chesakov
71f120f27d Enable CrossgenPublishDir for arm and arm64 in src/redist/redist.csproj 2018-10-13 10:10:12 -07:00
Livar
2c2238a572 Adding the winforms and wpf runtime to the SDK. For now, only for zips, as we don't have a msi yet to bundle up. 2018-08-13 17:04:48 -07:00
jbeisner
1537818815 The target: "PublishVersionFile" fails to fire as it is pinned to [line 30] AfterTargets="Publish" and [line 118] BeforeTargets="Publish" 2018-08-07 17:38:24 +00:00
Chris Rummel
5fab2468f5
Add dependency for restoring packages before trying to find Microsoft.NETCore.DotNetAppHost package.
This appears to be a difference between the 2.2.0-preview SDK currently
being used in core-sdk and the 2.1.401-preview SDK currently being used
in source-build.  In the 2.2.0 SDK, this target happens to run before
the resolved package list is used, but in the 2.1.401 it is not, so I
added the explicit dependency (doesn't affect anything in the 2.2.0 SDK).
2018-07-18 21:04:14 -05:00
jbeisner
d88a7ce337 The SDK-version directory under the SDK directory should match the advertised SDK version. 2018-07-17 16:40:52 +00:00
Daniel Plaisted
b3be19b820 Fix up runtimeconfig.json files for tools (dotnet, MSBuild, VSTest, etc) to target .NET Core 3.0 2018-07-09 13:46:04 -07:00
Parallels
4d9b015f8f Fixing a merge issue and crossgen issues. 2018-06-26 14:44:55 -07:00
Livar Cunha
e2b679c4bb Merge branch 'master' of /Users/livarcocc/Documents/git/cli into merge_master_cli
* 'master' of /Users/livarcocc/Documents/git/cli: (1063 commits)
  Updating signing project to use new intermediate directory (int).
  Update runtimeconfig.json doc for 2.1 (#9382)
  Shortening the path to the intermediate folder by renaming it to int.
  fix typo (#9364)
  Updating asp.net to 2.2.0 as well.
  Updating the build and tests to work with the 2.2.0 runtime.
  Simplified combining dictionaries in Telemetry
  Fixing 'Channel' and 'BranchName': "release/2.1.4xx" to "master" (#9362)
  Fix extraction of folders (#9335)
  Update Sha256Hasher.cs
  Fix relative path tool path (#9330)
  Insert updated SDK from 2.1.4xx branch
  MSBuild 15.8.60
  Fix crash when user home directory cannot be determined.
  Make `CliFolderPathCalculator` a static class.
  Don't add the ReleaseSuffix to the branding on the CLI when DropSuffix is set to true.
  Add retry when Directory.Move (#9313)
  Override new SdkResult public properties
  Add reference to Microsoft.Build.NuGetSdkResolver
  Disable crossgen for MSBuild inline-task refs
  ...
2018-06-25 22:38:01 -07:00
Livar
0e346aa5ba
Merge pull request #9360 from SimonCropp/patch-1
Update Sha256Hasher.cs
2018-06-05 22:46:18 -07:00
Livar
670dcedba2
Merge pull request #9381 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-06-05 22:45:53 -07:00
William Li
48ee97fb42
Merge pull request #9371 from svick/patch-4
Simplified combining dictionaries in Telemetry
2018-06-04 13:43:13 -07:00
Livar
447bd91100
Merge branch 'master' into merges/release/2.1.4xx-to-master 2018-06-04 11:38:31 -07:00
Maira Wenzel
7ce47778b4 fix typo (#9364)
* fix typo

* add loc files
2018-06-01 14:16:41 -07:00
Livar
80d542b8f4
Merge pull request #9332 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-31 10:22:00 -07:00
Petr Onderka
139fc86dbc
Simplified combining dictionaries in Telemetry 2018-05-31 01:03:27 +02:00
Simon Cropp
ca8fefb1be
Update Sha256Hasher.cs 2018-05-29 23:00:23 +10:00
William Li
983612b95b
Fix relative path tool path (#9330)
Pass full path to Path.GetRelativePath
2018-05-24 18:15:23 -07:00
Peter Huene
b1f8eb1d8d
Fix crash when user home directory cannot be determined.
Currently, dotnet will crash with an `ArgumentNullException` if `USERPROFILE`
(Windows) or `HOME` (macOS and Linux) is not set in the environment.  This
is because there is a missing null check after retrieving the environment
variable's value.  Additionally, if either variable is set to an empty string,
a `.dotnet` directory is created in the current directory where dotnet is being
run.

This commit fixes this by printing a graceful error informing the user the home
directory could not be determined and to set `DOTNET_CLI_HOME` to the directory
to use.  This variable will be respected before `USERPROFILE` or `HOME`. It is
likely that CI environments where `HOME` is not set can use `DOTNET_CLI_HOME`
to specify a local temporary location; by using this variable rather than
setting `HOME`, it is guaranteed to only affect dotnet.

It was discussed that we should perhaps fallback to some temporary location if
the home directory could not be determined, but NuGet currently requires `HOME`
to be set to work.  Because of this, it was decided that we should just handle
this case gracefully and provide a way for users to override the home directory
without relying on `USERPROFILE`/`HOME` entirely.

Closes #8053.
2018-05-22 17:34:39 -07:00
Peter Huene
3e962bc131
Make CliFolderPathCalculator a static class.
The `CliFolderPathCalculator` class implements no interface and has no instance
fields.

This commit therefore makes it a static class.
2018-05-22 17:34:39 -07:00
Livar
6f6f28dac6
Merge pull request #9323 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-22 13:28:50 -07:00
Livar
8f8770be8a
Merge pull request #9265 from livarcocc/first_run_native_intallers
Always execute cache expansion on native installers.
2018-05-22 13:17:55 -07:00
William Li
ca8a109d1c
Add retry when Directory.Move (#9313) 2018-05-22 09:55:10 -07:00
Andy Gerlicher
5e794a064c Add reference to Microsoft.Build.NuGetSdkResolver 2018-05-21 15:29:37 -07:00
Andy Gerlicher
7bed83fc98 Disable crossgen for MSBuild inline-task refs 2018-05-21 15:29:37 -07:00
Peter Huene
88e2e9e993
Improve command line help user experience.
This commit attempts to make the command line help user experience for `dotnet`
more consistent for all of the built-in SDK commands.

The following has been changed:

* Organized the top-level help into a section detailing how to run .NET
  applications and a section on running SDK commands.
* Sorted the SDK commands by name (previous ordering was undefined).
* Removed `--verbosity` from the "common options section" since it is not a
  top-level option, nor is it common to all commands.
* Added missing parameter names for parameterized options (especially for the
  `dotnet tool` subcommands).
* Fixed the localization of parameter names for parameterized options.
* Added missing `PROJECT` parameter to a few commands.
* Fixed the localization of the build command's `PROJECT` parameter description.
* Fixed the confusing descriptions for the `--framework`, `--configuration`,
  and `--runtime` options that were being shared between different commands.
* Fixed the "unknown command" error for `dotnet help <command>` to show in red.
* Deleted .resx for `dotnet msbuild` that is no longer used.
* Change the option descriptions to be more consistent in their grammatical
  structure.
* Removed extra blank line from end of help output.

Fixes #7431.
Fixes #9230.
Fixes #9165.
2018-05-18 16:43:31 -07:00
Livar
c921ea92b8
Merge pull request #9309 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-17 15:17:50 -07:00
Livar Cunha
e5e2256ae9 Addressing code review comments by making the Configuration class's fields readonly. 2018-05-17 14:13:14 -07:00
Livar
e338e46e10
Merge pull request #9306 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-17 13:41:23 -07:00
Peter Huene
b5b47dd40d
Merge pull request #9294 from peterhuene/fix-completion
Improve command completion.
2018-05-17 11:02:57 -07:00
Peter Huene
d79f3ead27
Merge pull request #9292 from peterhuene/fix-sln-list
Fix header output by `dotnet sln list`.
2018-05-17 10:59:15 -07:00
Peter Huene
7be6af8c3b
Merge pull request #9302 from mayankbansal018/dotnetvstestargs
Multiple Logger/TestAdapter inputs from dotnet CLI
2018-05-17 10:41:01 -07:00
Livar
f23377b19f
Merge pull request #9299 from dotnet/merges/release/2.1.3xx-to-release/2.1.4xx
Merge release/2.1.3xx to release/2.1.4xx
2018-05-17 10:35:31 -07:00
Mayank Bansal
b584750620 Multiple Logger/TestAdapter inputs from dotnet CLI 2018-05-17 12:54:39 +05:30
Peter Huene
b24e9f4cec
Add unit tests for dotnet complete.
This commit adds a few simple unit tests to cover the `dotnet complete`
command.

It only checks the top-level output, integration with the `new`
command from the templating engine, and the custom `nuget` command parser that
is solely intended for use with `dotnet complete`.
2018-05-16 17:19:06 -07:00
Peter Huene
089d8bfc1b
Remove internal-reportinstallsuccess from dotnet complete.
This commit removes `internal-reportinstallsuccess` from `dotnet complete` by
changing the command's help text to an empty string.  This causes the parser to
treat the command as hidden and does not match the command name for
suggestions.

Fixes #9111.
2018-05-16 14:07:33 -07:00
Peter Huene
6f184070f0
Improve command completion.
This commit improves command completion by updating the `new` and `nuget` parsers to
match their current supported syntax.  Removes the unnecessary description
strings that were not used (these commands are parsed by assemblies external to
the CLI). The top level options are also sync'd to the currently supported
options.

Additionally, it unhides the `msbuild` and `vstest` commands so that `dotnet
complete` suggests them.

Fixes #9286.
2018-05-16 14:07:27 -07:00
Livar Cunha
2531e3a136 Add NoWarn for the stable package depending on non-stable package when packaging Cli.Utils for tests. 2018-05-16 12:44:23 -07:00
John Beisner
baeb21728d
Merge pull request #9285 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-16 09:00:04 -07:00
Peter Huene
63d30787b9
Fix header output by dotnet sln list.
The `dotnet sln list` command uses `Project reference(s)` as the header for the
output instead of `Project(s)`. To be consistent with Visual Studio, the header
should refer to these as projects rather than project references as users can't
add "project references" to a solution.

This commit changes the header to `Project(s)`.

Additionally, the command now filters out solution folders and only shows
projects.

Fixes #9246.
2018-05-15 23:06:36 -07:00
John Beisner
08b20ef268
Merge pull request #9275 from dotnet/merges/release/2.1.3xx-to-release/2.1.4xx
Merge release/2.1.3xx to release/2.1.4xx
2018-05-15 09:17:36 -07:00
Livar
69062dda4e
Merge pull request #9266 from dotnet/merges/release/2.1.4xx-to-master
Merge release/2.1.4xx to master
2018-05-14 09:47:53 -07:00
Peter Huene
1feaa0385a
Fix incorrect default VSTest verbosity level.
Commit 10289504a8 changed the default verbosity
option used for MSBuild from `-v:quiet` to `-verbosity:quiet`.  This triggered a
match that was being done against arguments starting with `-verbosity` to
forward the value to VSTest via the `VSTestVerbosity` property.  The result is
that VSTest is using a default verbosity of `quiet`, suppressing error output
that users expect to see.

The fix is to change the check to only match against user-supplied options.
The default level the command uses for MSBuild is not forwarded to VSTest.

Fixes #9229.
2018-05-11 20:03:24 -07:00
Livar
11f2843f7b
Merge pull request #9252 from dotnet/merges/release/2.1.3xx-to-release/2.1.4xx
Merge release/2.1.3xx to release/2.1.4xx
2018-05-11 10:16:04 -07:00
Livar Cunha
b7a8c6d12f Introducing a Config object as a input to the FirstRunConfigurer. This allows us to decide what operations we want to
do as part of first run based on whether this is the invoke-reportsuccess from a native installer or a regular command
being invoked for the first time. This in turn allows us to ignore the skip first run variable on native installers and
expand the cache always in those cases.
2018-05-10 15:27:12 -07:00
jbeisner
e1ec232c47 Merge remote-tracking branch 'origin/release/2.1.4xx' into merges/release/2.1.4xx-to-master 2018-05-09 21:12:09 +00:00
Peter Huene
0f0f70ce48
Fix adding tools directory to PATH for native installers.
This commit fixes adding the tools directory to the user's PATH for the native
installers.

The issue was a regression caused by #8886.  The change used a "no-op" sentinel
file that reported it existed.  This "no-op" sentinel was used for the native
installers.  Unlike the other "no-op" sentinels used by the native installer,
we do want PATH to be modified by the native installer.

The fix is to change the "no-op" sentinel to report the file doesn't exist, but
also to not to attempt to create the file.

This fixes #9208.
2018-05-07 16:35:29 -07:00
Livar
6cc9ce45e8
Merge pull request #9028 from livarcocc/add_remove_messages
Updating the description of add/remove nuget packages and references and list
2018-05-07 11:24:58 -07:00
Tanner Gooding
f2f5c1b12b Merge remote-tracking branch 'dotnet/release/2.1.4xx' into merges/release/2.1.4xx-to-master 2018-05-07 10:55:14 -07:00
Tanner Gooding
6d6bf64f28 Merge remote-tracking branch 'dotnet/release/2.1.3xx' into merges/release/2.1.3xx-to-release/2.1.4xx 2018-05-07 08:20:23 -07:00
Livar
e7ebf48578
Merge pull request #9199 from livarcocc/remove_word_please
Removing the word please from the ASP.NET first run message.
2018-05-04 13:25:31 -07:00
Tanner Gooding
481e4a19b3
Merge pull request #9013 from dotnet/merges/release/2.1.2xx-to-release/2.1.3xx
Merge release/2.1.2xx to release/2.1.3xx
2018-05-04 11:00:39 -07:00
Livar Cunha
488711b4ff Removing the word please from the ASP.NET first run message. We are not supposed to use it. 2018-05-04 10:12:00 -07:00
Tanner Gooding
a8856ddccc Merge remote-tracking branch 'dotnet/release/2.1.2xx' into merges/release/2.1.2xx-to-release/2.1.3xx 2018-05-03 15:24:39 -07:00
Livar
bf5ad90bcf
Merge pull request #9182 from wli3/add-bundled-tool-description
Add additional tools to help text
2018-05-03 10:55:37 -07:00
Livar Cunha
8c2160b6a0 Removing some patches for source build. 2018-05-02 11:59:01 -07:00
Livar Cunha
661f058fed Updating the description of add/remove nuget packages and references and list. Also updating the parameter placeholder for add/remove reference. 2018-05-01 16:06:38 -07:00
Livar
f87c6e7d11
Merge pull request #9178 from natemcmaster/namc/disable-aspnet
Add a property to disable bundling ASP.NET Core tools and runtimes
2018-05-01 15:56:32 -07:00
Petr Onderka
6c9942bae6 Use NuGet autocomplete API for add-package suggestions (#9171) 2018-05-01 15:39:12 -07:00
William Li
46d4b71814 Add additional tools to help text 2018-05-01 14:28:15 -07:00
Nate McMaster
c382932ec4
Fix #if to match .csproj constant 2018-05-01 12:45:50 -07:00
Peter Huene
67ecb5ac65
Merge pull request #9161 from v-zbsail/loc_20180427_release_2.1.3xx
LOC CHECKIN | dotnet/cli release/2.1.3xx | 20180427
2018-05-01 11:25:45 -07:00
William Li
57d065e43d
Correct dotnet list description (#9174)
After dotnet tool list moved out of dotnet list, the description has not been updated.
2018-05-01 10:24:40 -07:00
William Li
d681933b87
Rename --source-feed to --add-source (#9164)
* Rename to add-source
2018-05-01 10:21:00 -07:00
Nate McMaster
b0c5fddc04
Add a property to disable bundling ASP.NET Core tools, templates, and runtimes 2018-04-30 17:49:09 -07:00
Zbyněk Sailer
47a65f258a
LOC CHECKIN | dotnet/cli release/2.1.3xx | 20180427 2018-04-30 14:50:26 -07:00
Peter Huene
b23259c30f
Merge pull request #9160 from peterhuene/fix-pid-file-share-mode
Fix Razor server shutdown on Windows.
2018-04-30 14:47:31 -07:00
Peter Huene
eaf5e95996
Merge pull request #9153 from peterhuene/quote-msbuild-properties
Fix MSBuild invocation to quote property option values.
2018-04-27 16:52:02 -07:00
Peter Huene
b2b3947c68
Fix Razor server shutdown on Windows.
On Windows, the Razor server correctly creates the pid file with
`FileAccess.Write` and `FileOptions.DeleteOnClose`.  This requires a share mode
of `FileShare.Write | FileShare.Delete` to open.  However, the
`dotnet build-server shutdown` command was opening the file with
`FileShare.Read`.  As a result, an `IOException` was being thrown and was not
handled.

This change first opens the file with the appropriate share access and also
properly handles a failure to access or read the contents of the pid file.

Additionally, an integration test was added to test that Razor server shutdown
works as expected.

Fixes #9158.
2018-04-27 13:52:17 -07:00
Peter Huene
f9b939fe89
Fix MSBuild invocation to quote property option values.
This commit ensures that any `/property` option's value is surrounded by quotes
to allow MSBuild to properly interpret special characters like semicolons.

Users familiar with MSBuild expect `/property:Name="Value"` to handle
semicolons. However, since `dotnet` parses the command line first, the
quotes get processed by its command line parser.  This results in
`/property:Name=Value` being passed to MSBuild, which will not parse a "Value"
containing a semicolon correctly.

Since it is safe to always quote the property value for this option, this fix
simply ensures that the value is surrounded by quotes.

This fixes the issue for all commands that forward arguments to MSBuild.

Fixes #7791.
2018-04-26 14:38:21 -07:00
Peter Huene
b9597913dc
Fix --source-feed option for tool install and update commands.
Commit 9cc2b7cd2f regressed the `--source-feed`
option so that it no longer accepted relative paths.  Because the option is now
saved to the temp project file, any relative paths specified by the
`--source-feed` option were made relative to the temp project path and not from
the current working directory of where dotnet was run.

The fix is to use `Path.GetFullPath` of the `--source-feed` option, provided
the option specified was not an absolute URI.

Fixes #9132.
2018-04-24 20:43:14 -07:00
Livar
355b08befd
Merge branch 'release/2.1.4xx' into merges/release/2.1.3xx-to-release/2.1.4xx 2018-04-24 14:20:28 -07:00
William Li
270fc4428a
do not set BaseIntermediateOutputPath in temp project of dotnet install (#9122)
Should use MsBuildProjectExtensionsPath instead.

Change the property passin by project file instead of command line. It is more reliable passing path in xml and also the timing of MsBuildProjectExtensionsPath is controlled. (Before loading SDK)
Change mock fake project to use “;” instead, since c:\path contains “:”.
2018-04-24 10:19:27 -07:00
William Li
008e5f3d97
Remove -f short hand in dotnet tool install (#9102) 2018-04-23 13:23:35 -07:00
Peter Huene
1ade191cb6
Implement Razor server discovery by pid file.
Previously, Razor server discovery for the `build-server shutdown` command was
implemented by invoking MSBuild on a project file in the current directory to
evaluate the path to the Razor server dll.  This was problematic since it would
only discover a single running Razor server instance and required that the user
run the `build-server shutdown` command from a specific location.

Razor's server now writes a "pid file" to a well-known location
(`~/.dotnet/pids/build`) which the command can now enumerate to discover, and
shutdown, the running Razor servers.

This commit changes the Razor server discovery to use the pid files and removes
the requirement that users need to run the command in specific directories to
work.

Fixes #9084.
2018-04-20 10:49:31 -07:00
Peter Huene
8e01912b36
Merge pull request #9089 from peterhuene/buildserver-command-rename
Rename buildserver command.
2018-04-18 11:42:54 -07:00
William Li
34060d3a23
pick up nuget loc (#9090) 2018-04-18 11:18:14 -07:00
Peter Huene
3f1ab372b4
Rename buildserver command.
This commit renames the `buildserver` command to `build-server`.

Fixes #9075.
2018-04-17 17:04:12 -07:00
Steve MacLean
8c937a0db0 [Arm64] Add crosscomponent crossgen (#9011) 2018-04-17 16:54:01 -07:00
William Li
ae75392078
Merge pull request #9079 from wli3/help-text-02
Help text improves
2018-04-17 12:21:39 -07:00
William Li
854feefe6f
Give a different error to guide use to install via global tools (#9070)
Give a different error to guide use to install via global tools so, if several bundled DotnetTools cannot finish source build on time. The user can use global tools to get it.

The original plan that adding a different resolver is hard due to resolver can only find dll that will be used to spawn a process. However, the command constructor will give an error message when resolver find null. By adding a different error when the command name is part of the list, it can achieve the same goal.
2018-04-17 12:21:20 -07:00
William Li
fd66168922 Error message has instruction to help investigate from NuGet error message 2018-04-16 21:42:50 -07:00
William Li
b0610b9116 Add doc link for both dotnet-tool and dotnet-buildserver 2018-04-16 21:42:45 -07:00
William Li
6851961c16 Better help text on dotnet tool 2018-04-16 10:51:43 -07:00
Nick Guerrera
c2713b41c3
Merge pull request #9020 from v-zbsail/loc_20180403_master
LOC CHECKIN | dotnet/cli master | 20180409
2018-04-11 17:55:36 -07:00
William Li
b0ee5db411
consume bring your own shim(byos) (#9018)
If there are shims packaged by convention in nupkg. Shim Repository will simply copy it to the right location.

The query interface ToolPackageInstance will be in charge of finding the shim folder and filter the right RID. Shim Repository will pick the right file after the folder is located since Shim Repository knows the shim name and it also book keep the files at uninstallation.
During development, due to the wrong adapter level. The mock duplicated too much logic. So, I corrected the abstraction level to lower (only create shim). And replaced the existing mock with a much smaller one without any atomic control and file move, copy logic. At the same time. The chmod, which is a IO action, causes problem during tests. So I added adapter layer to it and put it in Util.
2018-04-10 15:42:50 -07:00
Livar Cunha
18dd8107f2 Removing the explicit dependency on System.Diagnostics.Process from Cli.Utils. Use the assembly from netstandard. 2018-04-10 10:37:09 -07:00
Livar Cunha
82a85aa269 Updating the dev-certs message displayed in the first run experience. 2018-04-09 11:57:11 -07:00
Zbyněk Sailer
5cdfca4e94 LOC CHECKIN | dotnet/cli master | 20180409 2018-04-09 15:18:54 +02:00
William Li
2f01bb4fad
Add TryGetMostFitRuntimeIdentifier (#8997) 2018-04-06 17:39:58 -07:00
William Li
cbd6434c8b Adapt to no config file Apphost shim
Instead of writing the config file. Embed the relative path, instead of only the file name of app binary, to the AppHost itself.
2018-04-06 12:23:05 -07:00
Livar
7cb7535bae
Merge branch 'master' into merges/release/2.1.3xx-to-master 2018-04-06 09:05:57 -07:00
Nick Guerrera
4956bfea8c
Merge pull request #8996 from nguerrera/publish-no-build
Implement `dotnet publish --no-build`
2018-04-05 23:43:02 -07:00
Nick Guerrera
42e0afff1d Tweak --no-build messages based on PR feedback 2018-04-05 16:07:52 -07:00
Livar
94a69a95b8
Merge pull request #8933 from dotnet/merges/release/2.1.3xx-to-master
Merge release/2.1.3xx to master
2018-04-05 13:27:53 -07:00
Livar
c3a1fecd99
Merge pull request #9001 from livarcocc/automatic_build_numbers_installers
Automatic build numbers flow into installers
2018-04-05 10:50:33 -07:00
Livar
4c948fefcc
Merge branch 'master' into merges/release/2.1.3xx-to-master 2018-04-05 09:09:45 -07:00
Livar Cunha
b09b6bff26 Generating the conclusion.html files dynamically so that we don't need to set the version in them everytime our branding changes. 2018-04-04 20:57:45 -07:00
Nick Guerrera
b6174af511 Implement dotnet publish --no-build 2018-04-04 15:03:29 -07:00
Livar
a7bfaacf99
Merge branch 'master' into merges/release/2.1.3xx-to-master 2018-04-04 10:16:22 -07:00
Livar
721c068376
Merge branch 'release/2.1.2xx' into merges/release/2.1.1xx-to-release/2.1.2xx 2018-04-04 10:15:45 -07:00
Peter Huene
cee27d3970
Merge pull request #8886 from peterhuene/first-run-tool-path
Fix failure to add tools path on restricted Windows environments.
2018-04-03 21:14:30 -07:00
Peter Huene
19090744cb
Fix failure to add tools path on restricted Windows environments.
On environments where registry access is disabled, the first run experience
fails because it could not add the tools path to the user's environment.

This fix properly handles the security exception by printing a warning and
continuing.  Users will have to manually add the PATH environment variable to
their environments to prevent `dotnet tool install` from printing PATH
instructions.

A new file sentinel is added to track whether or not the PATH has been
modified.  The first run experience also now correctly skips modifying the PATH
if `DOTNET_SKIP_FIRST_TIME_EXPERIENCE` is set.

Fixes #8874.
2018-04-03 16:27:01 -07:00
Peter Huene
0181c67bb0
Fix validation of tool-path option for tool list and uninstall commands.
This commit checks that the `--tool-path` option for the `tool list` and `tool
uninstall` commands is a directory that exists.

If the directory does not exist, an error and the command help is displayed.

Fixes #8931.
2018-04-03 16:02:14 -07:00
Livar
a600b1b206
Merge pull request #8979 from livarcocc/remove_utils_explicity_dependency
Removing the explicit dependency on System.Diagnostics.Process from Cli.Utils
2018-04-03 15:22:03 -07:00
William Li
d3f69e2e01
Skip bundled dotnet tools (#8977) 2018-04-03 14:36:59 -07:00
William Li
ef389bb6b3
Add null check for Environment.GetEnvironmentVariable (#8970) 2018-04-03 14:36:19 -07:00
Livar Cunha
de81fbec2a Removing the explicit dependency on System.Diagnostics.Process from Cli.Utils. Use the assembly from netstandard. 2018-04-03 13:28:53 -07:00
Livar Cunha
b1fca8c4d2 Replacing the short form version of implicit msbuild parameters with longform ones. 2018-04-02 22:54:51 -07:00
Livar
0ca2c9fdc8
Merge pull request #8942 from wli3/better-error-message
Show version guide only when restore fails
2018-04-02 21:35:55 -07:00
Livar Cunha
10289504a8 Replacing all implicit msbuild parameters from using a forward slash to using a dash. 2018-04-02 14:49:52 -07:00
Livar Cunha
7c37c9a069 Changing the /m /v:m default parameters to msbuild to -m and -v:m to avoid confusing that with files on unix machines. 2018-04-02 12:41:21 -07:00
William Li
e70f07178a
Apphost shim (#8893)
* Publish app host to folder under SDK

* Use carried apphost as shim

* Remove full framework launcher

* Fix test run command issue

* Use latest release/2.1 build

* Test with 32 bit env

* Add missing return

* Update to latest prodcon build

* Add xlfs
2018-04-02 12:37:25 -07:00
Livar
e79425b27d
Merge pull request #8957 from natemcmaster/dev-cert-msg
Remove instruction to install dotnet-dev-certs separately
2018-04-02 10:33:08 -07:00
Nate McMaster
3986b570c7
Remove instruction to install dotnet-dev-certs separately 2018-03-30 22:19:08 -07:00
Peter Huene
abcdeba455
Merge pull request #8950 from peterhuene/server-command
Implement `buildserver shutdown` command.
2018-03-30 17:19:29 -07:00
Livar
abaea13eae
Merge pull request #8919 from dsplaisted/self-contained-roll-forward
Add latest patch versions to BundledVersions.props, and tests to make sure that they are up to date
2018-03-30 16:47:09 -07:00
William Lee
a67d1c6e06
Remove empty PATH in path resolver (#8943) 2018-03-30 16:05:41 -07:00
Peter Huene
3488a84c35
Implement buildserver shutdown command.
This commit implements the `buildserver shutdown` command that can be used to
shutdown MSBuild, VB/C# compiler, and Razor build servers.

By default, all three build servers are shut down.  Options can be passed to
shut down a subset of the build servers.

Fixes #8185.
2018-03-30 15:13:52 -07:00
Daniel Plaisted
ed8c0ac3e1 Improve error message when inable to generate deps.json for project tool 2018-03-30 14:49:24 -07:00
Daniel Plaisted
6e8355b30a Show arguments passed to MSBuild in verbose log when generating deps.json for DotNetCliToolReference 2018-03-30 14:39:12 -07:00
William Li
b75de8204a Reset loc to new 2018-03-29 21:48:23 -07:00
William Li
f949fb884e Show version guide only when restore fails 2018-03-29 17:29:05 -07:00
Livar
423010bf0d
Merge pull request #8906 from mairaw/sdk-help
added in use info to the --version option
2018-03-29 12:23:05 -07:00
William Lee
1043231a4e
Fix wrong instruction (#8922) 2018-03-28 17:46:34 -07:00
Peter Huene
3e575f7a7b
Prevent default item globbing when evaluating run properties.
When `dotnet run` is executed, a project evaluation occurs to obtain properties
related to running the target executable.  Currently, this evaluation causes
the default item globs to be evaluated.  For project directories containing a
large number of files, this can be a bit performance hit since the globbing
happens twice: once for the build and again for evaluating the run properties.

This commit prevents the globbing from taking place when evaluating the run
properties.

Fixes #8103.
2018-03-27 23:46:29 -07:00
Maira Wenzel
9b5a41f80b updated xliff files 2018-03-27 14:02:49 -07:00
Livar Cunha
6600612b9e Adding new docker files for opensuse.42.3, ubuntu.18.04 and fedora.27 and removing the project.json CLI from the build. It was not being used anymore. 2018-03-27 10:24:10 -07:00
Maira Wenzel
c551b88048 added in use info to the --version option 2018-03-26 18:16:56 -07:00
William Lee
01c11876b0
Better error message to guide user when there is only preview version in the feed (#8905) 2018-03-26 16:24:36 -07:00
William Lee
76d4824c39
Add xml setting version warning (#8860) 2018-03-26 12:50:09 -07:00
Livar
b5a163c7c1
Merge pull request #8884 from rainersigwald/AndyGerlicher-MSBuild-15.7.108
MSBuild 15.7.124 for 2.1.3xx
2018-03-25 19:14:20 -07:00
Rainer Sigwald
29ac66f7d2 Keep stdout for test execution
Work around https://github.com/Microsoft/vstest/issues/1503 by using the
MSBuild escape hatch variable MSBUILDENSURESTDOUTFORTASKPROCESSES and
ensuring that tests don't run in a disconnected MSBuild process by
passing /nr:false.
2018-03-25 07:28:42 -05:00
Rainer Sigwald
d98928ed21 Keep stdout for test execution
Work around https://github.com/Microsoft/vstest/issues/1503 by using the
MSBuild escape hatch variable MSBUILDENSURESTDOUTFORTASKPROCESSES and
ensuring that tests don't run in a disconnected MSBuild process by
passing /nr:false.
2018-03-24 18:51:59 -05:00
Livar
14098449e5
Merge pull request #8863 from mlorbetske/dev/mlorbe/UpdatePrecedenceOfAspNetUrlsForLaunchSettings
Update launch settings for ApplicationUrl handling
2018-03-23 13:06:47 -07:00
Peter Huene
e61a7a3570
Merge pull request #8796 from peterhuene/project-type-guid
Fix project type GUIDs when adding projects to solution files.
2018-03-22 22:27:01 -07:00
Peter Huene
e30fe29aab
Fix project type GUIDs when adding projects to solution files.
This commit ensures the correct property (`ProjectTypeGuids`) is respected when
adding a project to a solution file.

Additionally, we now error if a project type GUID cannot be determined rather
than incorrectly mapping to the C# project type.

Enabled previously disabled tests that were waiting on upstream changes from
MSBuild and F#.

Fixes #5131.
Fixes #7742.
2018-03-22 21:32:39 -07:00
Livar Cunha
39f08229a3 Updating InteropServices.Runtime to 4.3.0 in CLI utils and adding an explicit reference to netstandard 2.0 to TestFramework. 2018-03-22 20:00:34 -07:00
Jeff Kluge
8d7009cb83 Move some projects to netstandard2.0 (#8692)
* 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
2018-03-22 16:11:51 -07:00
Mike Lorbetske
c1fff9649a Update launch settings for ApplicationUrl handling 2018-03-21 21:19:24 -07:00
William Lee
149bdfd0fa
Change command order for tools (#8862)
dotnet install tool -> dotnet tool install
dotnet uninstall tool -> dotnet tool uninstall
dotnet list tool -> dotnet tool list
dotnet update tool -> dotnet tool update
2018-03-21 19:12:32 -07:00
Peter Huene
8e8426848d
Update translations following merge with conflicts.
Updating translation status for resource strings that changed upstream.
2018-03-20 16:55:10 -07:00
Zbyněk Sailer
e4e665d98a
LOC CHECKIN | cli master | 20180315 2018-03-20 16:55:00 -07:00
Peter Huene
60d71618be
Implement the --tool-path option for the list tool command.
This commit implements the missing `--tool-path` option for the list tool
command.  This enables the command to list locally installed tools.

Fixes #8803.
2018-03-20 16:54:50 -07:00
Peter Huene
4f8ac7dce5
Ensure tool package store root is a full path.
This commit fixes the tool package store such that it stores a full path
instead of, potentially, a relative path.

This prevents a relative path from inadvertently being passed to NuGet
during the restore and causing it to restore relative to the temp project
directory.

Fixes #8829.
2018-03-20 16:54:34 -07:00
William Lee
cee0a3baa7
Better using facing string (#8809)
Fix #8728

Fix #8369
2018-03-20 16:54:09 -07:00
Peter Huene
3ce2d4da0f
Fix list tool command tests to be localizable.
Currently the list tool command tests, while localizing the column headers,
didn't properly take into account the fact that localized builds might produce
strings longer than the English versions of the column header strings.  This
results in a mismatch of the actual from the expected due to additional column
padding.

The fix is to stop using a static expected table and do a simple calculation of
the expected table based on the length of the localized strings.

Fixes issue related to PR #8799.
2018-03-20 16:53:49 -07:00
Nate McMaster
ba8e18dac7
Fix #4139 - escape quoted strings for process start 2018-03-20 16:53:42 -07:00
William Lee
9cc2b7cd2f
Change --source to --source-feed and make it additional (#8833)
Other than change source to source-feed and make it additional instead of exclusive. I changed source to be multiple. Because restore support multiple source https://github.com/Microsoft/dotnet/issues/361

As for mock. The offline feed and source feed is considered the same, so remove the category of “source”. I renamed source to “AdditionalFeed” because that is more accurate on implementation level.

Note:
NuGet feed don’t have order. Whichever responses the fastest, is the first.
No change on restore.

scripts/cli-test-env.sh change is due to mac 10.13 is finally added to RID graph. And it is “considered” one of the CLI supported RID
2018-03-19 22:22:45 -07:00
William Lee
3f09a889d9
Update tool (#8794) 2018-03-15 19:45:11 -07:00
John Beisner
2a63f9e76c
Merge pull request #8788 from dotnet/merges/release/2.1.3xx-to-master
Merge release/2.1.3xx to master
2018-03-15 13:15:51 -07:00
John Beisner
a54f0ffb81
Enable 'arm' builds in the CLI (#8791)
* First draft enablement of Win-arm and Linux-arm builds for the CLI.

* Fixing a typo

* Disable tests for arm; enable badges and FinalizeBuild for arm.

* Remove the 'Win-arm' leg.

* Update the README

* Update the README [2]

* Update netci.groovy

* Fixing a hard-coded Architecture: 'linux-x64'; removing the LZMA for 'arm'.
2018-03-14 19:04:25 -07:00
John Beisner
dbcd83075c
Creating and publishing 'symbols.nuget' to the blob feed. (#8712)
* Creating and publishing '*.symbols.nuget' to the blob feed.

* Reverting 'generatenupkg' methodology.

* Fixing formatting...

* Overwrite should = 'false'

* Second draft - Creating and publishing '*.symbols.nuget' to the blob feed.

* Fixing a VS auto-update.

* Removing the 'Microsoft.SymbolUploader.Build.Task' modifications; need to make a PR just for this.

* Change "sdk.*.Microsoft.DotNet.SDK.*.symbols.nupkg" to "runtime.*.Microsoft.DotNet.SDK.*.symbols.nupkg"; removing the 'DotNetRestore' on the Symbols.csproj

* Removing a 'todo' comment...

* Putting back the 'dotnet restore'

* Fixing a typo...

* Logical separation of the 'nupkg' from the 'symbols.nupkg' enumeration; fixed 'swr' pattern.

* Add "BLOBFEED_STORAGE_CONTAINER"
2018-03-13 08:19:15 -07:00
William Lee
3861fc1700
Convert to graceful exception (#8751) 2018-03-08 15:49:16 -08:00
Peter Huene
4c2b07023a
Merge pull request #8734 from peterhuene/tool-install-message-cleanup
Remove temp project path from tool install warnings and errors.
2018-03-08 15:05:51 -08:00
Peter Huene
52478e8947
Stop modifying current working directory from test.
This commit fixes the ToolPackageInstaller tests so that they no longer modify
the current working directory.  The directory being set is now being properly
passed in as an argument to override the default of the current working
directory.

Additionally, this commit also changes the package root to a temp location
rather than based off of the current working directory.
2018-03-08 13:46:01 -08:00
Livar
a71450a305
Merge pull request #8736 from livarcocc/improve_info
Updating the dotnet --info message.
2018-03-07 21:27:58 -08:00
William Lee
495630fe97
when process has not env, but future will, show the instruction (#8739) 2018-03-07 19:46:38 -08:00
Livar Cunha
9da134cad1 Localizing portions of dotnet --info. 2018-03-07 12:39:46 -08:00
Livar Cunha
b8685bebb9 Updating the dotnet --info message. 2018-03-07 09:40:06 -08:00
Peter Huene
e2d9c2f892
Remove temp project path from tool install warnings and errors.
This commit attempts to filter the diagnostic messages emitted during tool
installation.  The diagnostic messages may be prefixed with the temporary
project; since this is an implementation detail that only causes confusion and
clutter in the diagnostic messages, the prefix is removed if present.

Fixes #8707.
2018-03-06 17:12:32 -08:00
William Lee
0598e6cb70
tool-path option -- "Session tool" (#8716)
* Change to escape string via XML

* tool-path option -- "Session tool"

From the beginning design, shim and packageInstaller take package location from constructor and don't have assumption anymore. From previous discussion, tool-path will simply change global location to the one user want, and everything else is the same.

However, this "override" need to happen during the call, that means InstallToolCommand will create different shim and packageInstaller object according to the tool-path during the call instead of constructor DI.

* global package location change

* block of leading dot as command name

* Localization of tool-path option
2018-03-06 15:58:05 -08:00
Livar
c83cafcf33
Merge pull request #8713 from livarcocc/clean_verbosity
Make the default verbosity for dotnet clean `normal`. This way we can…
2018-03-06 10:36:23 -08:00
Peter Huene
0cdc4b8f19
Merge pull request #8691 from peterhuene/list-command
Implement the `list tool` command.
2018-03-05 16:52:40 -08:00
Peter Huene
da90a08ada
Implement tests for the list tool command.
This commit implements tests for the `list tool` command.
2018-03-05 10:18:48 -08:00
Peter Huene
5ebbd618ec
Fix case sensitivity of tool package identifiers.
This commit fixes the case sensitivity of tool package identifiers.

Previously the install and uninstall commands unintentionally required the tool
package ids to specified in all lowercase for the install / uninstall to work.

Fixes #8682.
2018-03-05 10:18:41 -08:00
Peter Huene
4490fd5aa8
Implement list tool command.
This commit implements the `list tool` command.

The command is responsible for displaying a list of install global tools.

Fixes #8548.
2018-03-02 14:59:11 -08:00
Livar Cunha
6072355340 Make the default verbosity for dotnet clean normal. This way we can get some meaningful output out of the command. 2018-03-01 14:09:06 -08:00
Dan Moseley
f9c40ce94d Log Windows product type and installation type, and Linux libc version (#8688)
* Installation type

* Product Type

* Libc Release and Version

* Catch all

* Fix test

* Fix mac test

* Extract class

* Remove CharSet

* Remove extraneous assignment

* Missing space

* Typo

* Fix comment XML

* CR feedback
2018-02-27 18:55:35 -08:00
Peter Huene
9ef495327a
Implement a printable table.
This commit implements a simple printable table that can be used to display
tabular data.

The columns of the table can specify a maximum width which will cause the
column text to wrap around to the next line.
2018-02-27 15:57:53 -08:00
Jeff Kluge
8f7b58dd66
Move some projects to netstandard2.0 (#8692)
* 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
2018-02-27 13:59:59 -08:00
Peter Huene
2ff85cdd9a
Update description of uninstall command to match install command.
This commit updates the help text of the uninstall command to match the install
command's help text.
2018-02-26 18:29:40 -08:00
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
Livar
e9d1d025de
Merge pull request #8341 from natemcmaster/aspnetcore-sharedfx
Update to ASP.NET Core shared framework 2.1.0-preview1-28031
2018-01-09 18:57:13 -08:00
Peter Huene
28d929a6d5
Merge pull request #8285 from peterhuene/sln-add-map-project-configurations
Map solution configurations to existing project configurations on add.
2018-01-08 14:18:42 -08:00
Nate McMaster
b6b53f1e55 Update dev-certs version 2018-01-05 19:29:55 -08:00
Peter Huene
f7009106d8
Map solution configurations to existing project configurations on add.
This commit implements solution configuration to project configuration mapping.

Previously, when a project was added to the solution with the `sln add`
command, solution configurations would be mapped to a project configuration and
platform of the same name, regardless of whether or not the project had a
configuration or platform of that name.  This caused the solution to appear
dirty when opened in Visual Studio if the configuration or platform did not
exist at the project level because Visual Studio would attempt to correct the
mapping.

The fix is to check what configurations and platforms are supported by the
project and only map to what is present.  If a solution configuration can't be
mapped, the first configuration/platform supported by the project is chosen;
this is consistent with how Visual Studio does the fallback mapping.

Fixes #6221.
2018-01-05 18:40:26 -08:00
Livar Cunha
e329e0694f Fixing redist to use the new way to consume roslyn. I merged it wrong before. 2018-01-05 15:56:15 -08:00
Livar
ee4e7049eb
Merge pull request #8284 from v-zbsail/loc_20171213
LOC CHECKIN | dotnet/cli – master | 20171222
2018-01-05 12:54:49 -08:00
Livar Cunha
80933404d0 Fix tool_roslyn_satellite by making it use the new dependency version properties. 2018-01-05 12:53:03 -08:00
Zbyněk Sailer
7ff9ac9a36 LOC CHECKIN | dotnet/cli – master | 20170104 | update 2018-01-04 15:03:49 +01:00
Livar Cunha
3d92e52234 Merge remote-tracking branch 'dotnet/release/2.0.0' into merges/release/2.0.0-to-release/2.1-20180103-080038
* dotnet/release/2.0.0: (32 commits)
  Update wix version (#8313)
  Use explict and non-preview versions for the build DLL
  Fixing a typo...
  The 15.4.8 version of the Microsoft.Build.Runtime nuget package is currupt; use the replacement 15.4.8.1
  Fix dotnet-install to check the right path for no-op installs when --shared-runtime is specified
  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...
  The URL root will include the "dotnet" container; the structure will be identical after the "dotnet" container.
  No passwords should be in the open as environmental variables.
  ...

 Conflicts:
	build/DependencyVersions.props
	src/redist/redist.csproj
	src/tool_msbuild/tool_msbuild.csproj
	src/tool_roslyn/tool_roslyn.csproj
	test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj
2018-01-03 16:16:41 -08:00
Steve Harter
01b8e02100 Add help for list-sdks and list-runtimes 2018-01-03 17:34:08 -06:00