Commit graph

19 commits

Author SHA1 Message Date
Peter Huene
98dd811aa8
Revert "Fix MSBuild invocation to quote property option values."
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.
2018-05-31 21:34:05 -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
Nick Guerrera
b6174af511 Implement dotnet publish --no-build 2018-04-04 15:03:29 -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 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
Nick Guerrera
35b7ad2789 Use msbuild /restore instead of separate invocations where possible
It is not currently possible when there is a -f|--framework argument because
we cannot force a TargetFramework global property on to the restore evaluation.
Doing so completely breaks restore by applying the TargetFramework to all
projects transitively. The correct behavior is to restore for all frameworks,
then build/publish/etc for the given target framework. Achieving that still
requires two distinct msbuild invocations.

This also changes the verbosity of implicit restore from quiet to that
of the subsequent command (default=minimal). Similar to global properties,
we cannot specify a distinct console verbosity for the /restore portion of
the overall execution. For consistency, we apply the same verbosity change
to the case where we still use two separate msbuild invocations.

This also fixes an issue where the separate restore invocation's msbuild log
would be overwritten by the subsequent command execution. However, this remains
unfixed in the case where we still use two separate msbuild invocations.
2017-10-26 16:01:34 -07:00
Eric Erhardt
bfab25c259 Rename publish --target to --manifest.
Fix #6244
2017-04-14 16:08:32 -05:00
Eric Erhardt
ae78b87587 Update SDK to 2.0.0-alpha-20170410-1. 2017-04-10 14:24:52 -05:00
Eric Erhardt
95ff3f9bf8 Fix tests for cache => store rename. 2017-04-07 15:51:37 -05:00
Jon Sequeira
d3143b779f stop writing ParseResult.Diagram to output 2017-03-12 16:48:59 -07:00
Piotr Puszkiewicz
a751673172 Fix test bugs 2017-03-10 10:12:37 -08:00
Piotr Puszkiewicz
9a1483d3b6 Fix tests 2017-03-10 09:08:25 -08:00
jonsequitur
0b94c979db publish using new parser, rename ArgsToBeForwarded 2017-03-09 07:35:06 -08:00
Rama Krishnan Raghupathy
99301d0d95 fix cache test 2017-03-03 16:59:12 -08:00
Piotr Puszkiewicz
d55a8f8188 Add missing copyright headers to all cs files 2017-03-02 21:04:03 -08:00
Krzysztof Wicher
1514dd5e16 add dotnet-publish unit tests 2017-02-22 12:45:11 -08:00
Krzysztof Wicher
06ceb66089 skip not finished tests and add restore unit tests 2017-02-22 11:43:03 -08:00
Krzysztof Wicher
099dca3950 stub for tests 2017-02-22 10:44:15 -08:00