The most recent SDK for 2.2.1xx pinned netstandard.library to 2.0.3 due to
https://github.com/dotnet/sdk/issues/2410.
This commit changes the expected version to match.
This commit suppresses the output that is displayed by the `dotnet run` command
when launch settings are being used, unless the verbosity level is above
"quiet".
Fixes#9545.
This commit integrates a fix from the SDK repo that sets
`DefaultProjectTypeGuid` for VB and C# projects when the projects are
multitargeting. This property is used by `dotnet sln add` to determine the
project type guid to map in the solution file.
Adding additional tests that cover the multitargeting scenario for `dotnet sln
add`.
Fixes#9477.
This commit adds a `--runtime` option to the `dotnet test` command for
consistency with other commands.
The option does not have a short form of `-r`, however, because `dotnet test`
already uses the short form for another option (results directory).
Fixes#9583.
The mode switch tests are failing as they hit the 2.2.1xx branch
because we don't have a dotnet/sdk with the needed support for
it. Since the feature is reverted in release/2.1.4xx anyway, revert
the tests ahead of time to match release/2.1.4xx (modulo s/2.1/2.2/)
* release/2.1.4xx:
Add XSLT Transform for apphost (#9609)
Update date test according to MicrosoftNETSdkPackageVersion update
Update MicrosoftNETCoreAppPackageVersion
Update SDK to 2.1.400-preview-63110-09
Revert implementation of the --mode option for the publish command.
Updating the WebSdk from aspnet/websdk/2.1.4xx
Removing 'Locked-file' test; CLI:release/2.1.3xx (#9604)
Log a verbose message when DOTNET_CLI_HOME is being used.
* release/2.1.3xx-MSRC:
Updates asp.net versions to match prodcon
Change the implicit asp.net core version for FDD apps to be pinned as 2.1.1.
Update expected versions to 2.1.2
Disable NewProjectRestoresCorrectPackageVersion "console" test for now.
Update the version for 'microsoft.netcore.app' to "2.1.1*"
Pass "PB_AssetRootUrl" explictly on the MSBuild call; we are looking for Microsoft.NETCore.App "2.1.0" or "2.1.1*"
Merged PR 126122: Fix alpine file ownership issues with newer docker
Fix mismatch of dotnet-watch with package variable name
Set package versions for bundled aspnet tools separately from the metapackage version
Split the version of Microsoft.AspNetCore.DeveloperCertificates.XPlat into a separate variable
Fixup myget feed for aspnetcore
Upgrade to aspnetcore 2.1.1-rtm-30818 and react to file name change
Updated Version.props
This commit reverts the implementation of the `--mode` option for the `dotnet
publish` command. A bug in the apphost prevents this feature from working
properly in some cases and there currently is not a mechanism to service it
with this feature.
The team has decided to move this feature to 2.2.1xx for the .NET Core SDK.
Fixesdotnet/sdk#2380.
This commit logs a diagnostic message when the `DOTNET_CLI_HOME` variable is
used. This enables users to determine where first-run-experience and global
tool files are being written to.
Fixes#9510.
* '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
...
Instead of command line to avoid escaping problem.
It can support most of the character including surrogate char. It cannot
support semicolon. However, semicolon is not allow to be part of the
user name.
Port 2.1.4xx fix 0251f677ede571b61a47ca24f38df8e09038277d while keep
BaseIntermediateOutputPath instead of MsBuildProjectExtensionsPath to
minimize the change.
* Use correct nuget version normalized format
* Change test accordingly
This matches nuget behavior
if restore with `<PackageReference Include="global.tool.console.demo" Version="1.0.*" />` there is no warning
and if restore with `<PackageReference Include="global.tool.console.demo" Version="1.0.0" />` there is warning due to no exact 1.0.0 find
* Add Compute UseBundledNETCoreAppPackageVersionAsDefaultNetCorePatchVersion
* Add tests to catch DefaultNetCorePatchVersion moving
* Update LatestPatchVersionForNetCore2_0 to 2.0.9, it is in the process of shipping
* Update LatestPatchVersionForNetCore1_0 and LatestPatchVersionForNetCore1_1
* release/2.1.3xx:
Updating the CLI stage0 to 2.1.300 and fixing some build failures.
Update Microsoft.NETCore.App Package Version
Formatting...
Drop the LZMA archive for every build.
This commit implements a `mode` option that can control how an application is
published with the `dotnet publish` command.
There are three supported modes:
* self-contained: publishes a self-contained application (same as
--self-contained).
* fx-dependent: publishes a framework-dependent application (with an
application host when a runtime is specified).
* fx-dependent-no-exe: publishes a framework-dependent application without an
application host.
The default when publishing without a runtime specified is
`fx-dependent-no-exe`.
The default when publishing with a runtime specified is `self-contained`.
`fx-dependent` requires netcoreapp2.1 or later when a runtime is specified.
The `--self-contained` option is still supported, but is now hidden so that
users will be encouraged to move to the `--mode` option.
Fixes#6237.
There is no need to store relative path today. But some part of the system does not accept relative path and there is no indication if it is storing full path or not. This is the root cause of https://github.com/dotnet/cli/issues/9319
“someplace” means different full path for Path class on unix and Windows. And the mock file system uses real Path class. Change tests' setup to use essentially “TEMPATH/someplace” instead of “someplace”
This reverts commit f9b939fe89.
That fix caused a regression that prevented a single `/property` option to
define multiple properties using the `/property:First=foo;Second=bar` syntax.
Users that want literal semicolons in the property values should use escaped
quotes around the property value, e.g. `/property:Prop='"foo;bar;baz"'`.
Fixes#9369.
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.
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.
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`.
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.
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.
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.