diff --git a/build_projects/dotnet-cli-build/project.json b/build_projects/dotnet-cli-build/project.json
index 9ae4316b9..caa2104b7 100644
--- a/build_projects/dotnet-cli-build/project.json
+++ b/build_projects/dotnet-cli-build/project.json
@@ -20,7 +20,7 @@
"System.Runtime.Serialization.Primitives": "4.1.1",
"System.Xml.XmlSerializer": "4.0.11",
"WindowsAzure.Storage": "6.2.2-preview",
- "NuGet.CommandLine.XPlat": "3.6.0-rc-1979",
+ "NuGet.CommandLine.XPlat": "3.6.0-rc-1984",
"Microsoft.Build.Utilities.Core": "0.1.0-preview-00043-160929",
"Microsoft.DotNet.PlatformAbstractions": "1.0.1-beta-000933"
},
diff --git a/resources/MSBuildImports/15.0/SolutionFile/ImportAfter/Microsoft.NuGet.ImportAfter.targets b/resources/MSBuildImports/15.0/SolutionFile/ImportAfter/Microsoft.NuGet.ImportAfter.targets
new file mode 100644
index 000000000..433922aac
--- /dev/null
+++ b/resources/MSBuildImports/15.0/SolutionFile/ImportAfter/Microsoft.NuGet.ImportAfter.targets
@@ -0,0 +1,18 @@
+
+
+
+
+ $(MSBuildExtensionsPath)\NuGet.targets
+
+
+
diff --git a/src/Microsoft.DotNet.Cli.Utils/project.json b/src/Microsoft.DotNet.Cli.Utils/project.json
index 02b93369e..8f8450bab 100644
--- a/src/Microsoft.DotNet.Cli.Utils/project.json
+++ b/src/Microsoft.DotNet.Cli.Utils/project.json
@@ -9,10 +9,10 @@
"target": "project"
},
"Microsoft.DotNet.PlatformAbstractions": "1.0.1-beta-000933",
- "NuGet.Versioning": "3.6.0-rc-1979",
- "NuGet.Packaging": "3.6.0-rc-1979",
- "NuGet.Frameworks": "3.6.0-rc-1979",
- "NuGet.ProjectModel": "3.6.0-rc-1979"
+ "NuGet.Versioning": "3.6.0-rc-1984",
+ "NuGet.Packaging": "3.6.0-rc-1984",
+ "NuGet.Frameworks": "3.6.0-rc-1984",
+ "NuGet.ProjectModel": "3.6.0-rc-1984"
},
"frameworks": {
"netstandard1.3": {
diff --git a/src/Microsoft.DotNet.Compiler.Common/project.json b/src/Microsoft.DotNet.Compiler.Common/project.json
index 1092f7d53..168364905 100644
--- a/src/Microsoft.DotNet.Compiler.Common/project.json
+++ b/src/Microsoft.DotNet.Compiler.Common/project.json
@@ -14,7 +14,7 @@
"Microsoft.DotNet.Files": {
"target": "project"
},
- "NuGet.ProjectModel": "3.6.0-rc-1979"
+ "NuGet.ProjectModel": "3.6.0-rc-1984"
},
"frameworks": {
"netstandard1.3": {
diff --git a/src/Microsoft.DotNet.ProjectModel/project.json b/src/Microsoft.DotNet.ProjectModel/project.json
index cfdb9a1de..292acc616 100644
--- a/src/Microsoft.DotNet.ProjectModel/project.json
+++ b/src/Microsoft.DotNet.ProjectModel/project.json
@@ -8,10 +8,10 @@
"Microsoft.Extensions.DependencyModel": "1.0.1-beta-000933",
"Microsoft.DotNet.PlatformAbstractions": "1.0.1-beta-000933",
"Newtonsoft.Json": "9.0.1",
- "NuGet.Configuration": "3.6.0-rc-1979",
- "NuGet.Packaging": "3.6.0-rc-1979",
- "NuGet.RuntimeModel": "3.6.0-rc-1979",
- "NuGet.ProjectModel": "3.6.0-rc-1979",
+ "NuGet.Configuration": "3.6.0-rc-1984",
+ "NuGet.Packaging": "3.6.0-rc-1984",
+ "NuGet.RuntimeModel": "3.6.0-rc-1984",
+ "NuGet.ProjectModel": "3.6.0-rc-1984",
"System.Reflection.Metadata": "1.4.1-beta-24410-02"
},
"frameworks": {
diff --git a/src/dotnet/commands/dotnet-restore3/Program.cs b/src/dotnet/commands/dotnet-restore3/Program.cs
index 7a8d5f0af..1a753dc7f 100644
--- a/src/dotnet/commands/dotnet-restore3/Program.cs
+++ b/src/dotnet/commands/dotnet-restore3/Program.cs
@@ -60,6 +60,12 @@ namespace Microsoft.DotNet.Tools.Restore3
"Treat package source failures as warnings.",
CommandOptionType.NoValue);
+ // Use a boolean argument instead of a switch to match nuget.exe
+ var recursive = cmd.Option(
+ "--recursive",
+ "Restore all dependency projects.",
+ CommandOptionType.BoolValue);
+
cmd.OnExecute(() =>
{
var msbuildArgs = new List()
@@ -69,7 +75,7 @@ namespace Microsoft.DotNet.Tools.Restore3
if (sourceOption.HasValue())
{
- msbuildArgs.Add($"/p:RestoreSources={string.Join(";", sourceOption.Values)}");
+ msbuildArgs.Add($"/p:RestoreSources={string.Join("%3B", sourceOption.Values)}");
}
if (packagesOption.HasValue())
@@ -97,6 +103,13 @@ namespace Microsoft.DotNet.Tools.Restore3
msbuildArgs.Add($"/p:RestoreIgnoreFailedSources=true");
}
+ // By default restore is recursive, if set to false turn it off.
+ // If the argument is not present use the default behavior.
+ if (recursive.BoolValue == false)
+ {
+ msbuildArgs.Add($"/p:RestoreRecursive=false");
+ }
+
// Add in arguments
msbuildArgs.AddRange(argRoot.Values);
diff --git a/src/redist/project.json b/src/redist/project.json
index 4f372691f..51d442bb3 100644
--- a/src/redist/project.json
+++ b/src/redist/project.json
@@ -22,7 +22,7 @@
"Microsoft.Build.Runtime": "15.1.316-preview5",
"Microsoft.CodeAnalysis.Build.Tasks": "2.0.0-beta6-60922-08",
"System.Runtime.Serialization.Xml": "4.1.1",
- "NuGet.Build.Tasks": "3.6.0-rc-1979",
+ "NuGet.Build.Tasks": "3.6.0-rc-1984",
"Microsoft.TestPlatform.CLI": "15.0.0-preview-20161005-01",
"Microsoft.TestPlatform.Build": "15.0.0-preview-20161005-01"
},
diff --git a/src/tool_nuget/project.json b/src/tool_nuget/project.json
index 02f0d8cd5..2358d30f5 100644
--- a/src/tool_nuget/project.json
+++ b/src/tool_nuget/project.json
@@ -8,7 +8,7 @@
"type": "platform",
"version": "1.0.1"
},
- "NuGet.CommandLine.XPlat": "3.6.0-rc-1979"
+ "NuGet.CommandLine.XPlat": "3.6.0-rc-1984"
},
"frameworks": {
"netcoreapp1.0": {
diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/project.json b/test/Microsoft.DotNet.Cli.Utils.Tests/project.json
index cbdadd442..9a96903d8 100644
--- a/test/Microsoft.DotNet.Cli.Utils.Tests/project.json
+++ b/test/Microsoft.DotNet.Cli.Utils.Tests/project.json
@@ -30,10 +30,10 @@
},
"System.Diagnostics.TraceSource": "4.0.0",
"System.Runtime.Serialization.Primitives": "4.1.1",
- "NuGet.Versioning": "3.6.0-rc-1979",
- "NuGet.Packaging": "3.6.0-rc-1979",
- "NuGet.Frameworks": "3.6.0-rc-1979",
- "NuGet.ProjectModel": "3.6.0-rc-1979",
+ "NuGet.Versioning": "3.6.0-rc-1984",
+ "NuGet.Packaging": "3.6.0-rc-1984",
+ "NuGet.Frameworks": "3.6.0-rc-1984",
+ "NuGet.ProjectModel": "3.6.0-rc-1984",
"Microsoft.DotNet.ProjectModel": {
"target": "project"
},
diff --git a/test/Microsoft.DotNet.ProjectModel.Tests/project.json b/test/Microsoft.DotNet.ProjectModel.Tests/project.json
index 68e54b2ed..5a3ed6d28 100644
--- a/test/Microsoft.DotNet.ProjectModel.Tests/project.json
+++ b/test/Microsoft.DotNet.ProjectModel.Tests/project.json
@@ -22,7 +22,7 @@
},
"xunit": "2.2.0-beta3-build3330",
"dotnet-test-xunit": "1.0.0-rc2-350904-49",
- "NuGet.ProjectModel": "3.6.0-rc-1979"
+ "NuGet.ProjectModel": "3.6.0-rc-1984"
},
"frameworks": {
"netcoreapp1.0": {