Skip to content

Commit b7cdef4

Browse files
committed
Merge branch 'release/0.15.0'
2 parents ac4ac5c + 1df9389 commit b7cdef4

File tree

127 files changed

+4829
-2414
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

127 files changed

+4829
-2414
lines changed

CHANGELOG.md

+48-31
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
66

77
## [vNext]
88

9+
## [0.15.0] / 2019-01-16
10+
- Changed `OnlyWhen` to `OnlyWhenStatic` and `OnlyWhenDynamic`
11+
- Changed `graph` parameter to `plan`
12+
- Added `DependentFor`, `Triggers` and `TriggeredBy` for target declarations
13+
- Added `ToolSettings.CombineWith` for combinatorial invocations
14+
- Added several `FileSystemTasks` methods
15+
- Added `TemplateUtility.FillTemplateDirectory` and `FillTemplateFile`
16+
- Added highlighting of execution plans in HTML representation
17+
- Added process cancellation handler to always show summary
18+
- Added `NuGetTasks` to add, remove, update, enable, disable and list sources
19+
- Added `TravisOutputSink`
20+
- Added path resolution for `VSTestTasks`
21+
- Added caching of `MSBuild` path in `GetMSBuidProject`
22+
- Fixed `GitRepository.IsOnDevelopBranch` to recognize `develop` and `development`
23+
- Fixed shell-completion for PowerShell
24+
925
## [0.14.1] / 2018-12-31
1026
- Fixed package reference versions
1127
- Fixed `SolutionSerializer` to handle empty lines
@@ -252,35 +268,36 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
252268
- Added CLT tasks for Git
253269
- Fixed background color in console output
254270

255-
[vNext]: https://github.com/nuke-build/nuke/compare/0.14.1...HEAD
256-
[0.14.1]: https://github.com/nuke-build/nuke/compare/0.14.0...0.14.1
257-
[0.14.0]: https://github.com/nuke-build/nuke/compare/0.13.0...0.14.0
258-
[0.13.0]: https://github.com/nuke-build/nuke/compare/0.12.4...0.13.0
259-
[0.12.4]: https://github.com/nuke-build/nuke/compare/0.12.3...0.12.4
260-
[0.12.3]: https://github.com/nuke-build/nuke/compare/0.12.2...0.12.3
261-
[0.12.2]: https://github.com/nuke-build/nuke/compare/0.12.1...0.12.2
262-
[0.12.1]: https://github.com/nuke-build/nuke/compare/0.12.0...0.12.1
263-
[0.12.0]: https://github.com/nuke-build/nuke/compare/0.11.1...0.12.0
264-
[0.11.1]: https://github.com/nuke-build/nuke/compare/0.11.0...0.11.1
265-
[0.11.0]: https://github.com/nuke-build/nuke/compare/0.10.5...0.11.0
266-
[0.10.5]: https://github.com/nuke-build/nuke/compare/0.10.4...0.10.5
267-
[0.10.4]: https://github.com/nuke-build/nuke/compare/0.10.3...0.10.4
268-
[0.10.3]: https://github.com/nuke-build/nuke/compare/0.10.2...0.10.3
269-
[0.10.2]: https://github.com/nuke-build/nuke/compare/0.10.1...0.10.2
270-
[0.10.1]: https://github.com/nuke-build/nuke/compare/0.10.0...0.10.1
271-
[0.10.0]: https://github.com/nuke-build/nuke/compare/0.9.1...0.10.0
272-
[0.9.1]: https://github.com/nuke-build/nuke/compare/0.9.0...0.9.1
273-
[0.9.0]: https://github.com/nuke-build/nuke/compare/0.8.0...0.9.0
274-
[0.8.0]: https://github.com/nuke-build/nuke/compare/0.7.0...0.8.0
275-
[0.7.0]: https://github.com/nuke-build/nuke/compare/0.6.2...0.7.0
276-
[0.6.2]: https://github.com/nuke-build/nuke/compare/0.6.1...0.6.2
277-
[0.6.1]: https://github.com/nuke-build/nuke/compare/0.6.0...0.6.1
278-
[0.6.0]: https://github.com/nuke-build/nuke/compare/0.5.3...0.6.0
279-
[0.5.3]: https://github.com/nuke-build/nuke/compare/0.5.2...0.5.3
280-
[0.5.2]: https://github.com/nuke-build/nuke/compare/0.5.0...0.5.2
281-
[0.5.0]: https://github.com/nuke-build/nuke/compare/0.4.0...0.5.0
282-
[0.4.0]: https://github.com/nuke-build/nuke/compare/0.3.1...0.4.0
283-
[0.3.1]: https://github.com/nuke-build/nuke/compare/0.2.10...0.3.1
284-
[0.2.10]: https://github.com/nuke-build/nuke/compare/0.2.0...0.2.10
285-
[0.2.0]: https://github.com/nuke-build/nuke/tree/0.2.0
271+
[vNext]: https://github.com/nuke-build/common/compare/0.15.0...HEAD
272+
[0.15.0]: https://github.com/nuke-build/common/compare/0.14.1...0.15.0
273+
[0.14.1]: https://github.com/nuke-build/common/compare/0.14.0...0.14.1
274+
[0.14.0]: https://github.com/nuke-build/common/compare/0.13.0...0.14.0
275+
[0.13.0]: https://github.com/nuke-build/common/compare/0.12.4...0.13.0
276+
[0.12.4]: https://github.com/nuke-build/common/compare/0.12.3...0.12.4
277+
[0.12.3]: https://github.com/nuke-build/common/compare/0.12.2...0.12.3
278+
[0.12.2]: https://github.com/nuke-build/common/compare/0.12.1...0.12.2
279+
[0.12.1]: https://github.com/nuke-build/common/compare/0.12.0...0.12.1
280+
[0.12.0]: https://github.com/nuke-build/common/compare/0.11.1...0.12.0
281+
[0.11.1]: https://github.com/nuke-build/common/compare/0.11.0...0.11.1
282+
[0.11.0]: https://github.com/nuke-build/common/compare/0.10.5...0.11.0
283+
[0.10.5]: https://github.com/nuke-build/common/compare/0.10.4...0.10.5
284+
[0.10.4]: https://github.com/nuke-build/common/compare/0.10.3...0.10.4
285+
[0.10.3]: https://github.com/nuke-build/common/compare/0.10.2...0.10.3
286+
[0.10.2]: https://github.com/nuke-build/common/compare/0.10.1...0.10.2
287+
[0.10.1]: https://github.com/nuke-build/common/compare/0.10.0...0.10.1
288+
[0.10.0]: https://github.com/nuke-build/common/compare/0.9.1...0.10.0
289+
[0.9.1]: https://github.com/nuke-build/common/compare/0.9.0...0.9.1
290+
[0.9.0]: https://github.com/nuke-build/common/compare/0.8.0...0.9.0
291+
[0.8.0]: https://github.com/nuke-build/common/compare/0.7.0...0.8.0
292+
[0.7.0]: https://github.com/nuke-build/common/compare/0.6.2...0.7.0
293+
[0.6.2]: https://github.com/nuke-build/common/compare/0.6.1...0.6.2
294+
[0.6.1]: https://github.com/nuke-build/common/compare/0.6.0...0.6.1
295+
[0.6.0]: https://github.com/nuke-build/common/compare/0.5.3...0.6.0
296+
[0.5.3]: https://github.com/nuke-build/common/compare/0.5.2...0.5.3
297+
[0.5.2]: https://github.com/nuke-build/common/compare/0.5.0...0.5.2
298+
[0.5.0]: https://github.com/nuke-build/common/compare/0.4.0...0.5.0
299+
[0.4.0]: https://github.com/nuke-build/common/compare/0.3.1...0.4.0
300+
[0.3.1]: https://github.com/nuke-build/common/compare/0.2.10...0.3.1
301+
[0.2.10]: https://github.com/nuke-build/common/compare/0.2.0...0.2.10
302+
[0.2.0]: https://github.com/nuke-build/common/tree/0.2.0
286303

README.md

+6-46
Large diffs are not rendered by default.

build/Build.GitFlow.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@
1515
partial class Build
1616
{
1717
Target Changelog => _ => _
18-
.OnlyWhen(() => GitRepository.Branch.NotNull().StartsWith("release") ||
19-
GitRepository.Branch.StartsWith("hotfix"))
18+
.OnlyWhenStatic(
19+
() => GitRepository.Branch.NotNull().StartsWith("release") ||
20+
GitRepository.Branch.StartsWith("hotfix"))
2021
.Executes(() =>
2122
{
2223
FinalizeChangelog(ChangelogFile, GitVersion.MajorMinorPatch, GitRepository);

build/Build.cs

+10-21
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using Nuke.Common;
1010
using Nuke.Common.Git;
1111
using Nuke.Common.ProjectModel;
12+
using Nuke.Common.Tooling;
1213
using Nuke.Common.Tools.DotNet;
1314
using Nuke.Common.Tools.GitVersion;
1415
using Nuke.Common.Tools.InspectCode;
@@ -55,14 +56,14 @@ partial class Build : NukeBuild
5556
readonly string HotfixBranchPrefix = "hotfix";
5657

5758
Target Clean => _ => _
59+
.Before(Restore)
5860
.Executes(() =>
5961
{
6062
DeleteDirectories(GlobDirectories(SourceDirectory, "*/bin", "*/obj"));
6163
EnsureCleanDirectory(OutputDirectory);
6264
});
6365

6466
Target Restore => _ => _
65-
.DependsOn(Clean)
6667
.Executes(() =>
6768
{
6869
DotNetRestore(s => s
@@ -75,7 +76,6 @@ partial class Build : NukeBuild
7576

7677
Target Compile => _ => _
7778
.DependsOn(Restore)
78-
.Requires(() => IsUnix || GitVersion != null)
7979
.Executes(() =>
8080
{
8181
DotNetBuild(s => s
@@ -86,29 +86,18 @@ partial class Build : NukeBuild
8686
.SetFileVersion(GitVersion.GetNormalizedFileVersion())
8787
.SetInformationalVersion(GitVersion.InformationalVersion));
8888

89-
var publishSettings = new DotNetPublishSettings()
89+
DotNetPublish(s => s
9090
.EnableNoRestore()
9191
.SetConfiguration(Configuration)
9292
.SetAssemblyVersion(GitVersion.GetNormalizedAssemblyVersion())
9393
.SetFileVersion(GitVersion.GetNormalizedFileVersion())
94-
.SetInformationalVersion(GitVersion.InformationalVersion);
95-
96-
DotNetPublish(s => publishSettings
97-
.SetProject(GlobalToolProject));
98-
99-
DotNetPublish(s => publishSettings
100-
.SetProject(CommonProject)
101-
.SetFramework("netstandard2.0"));
102-
DotNetPublish(s => publishSettings
103-
.SetProject(CommonProject)
104-
.SetFramework("net461"));
105-
106-
DotNetPublish(s => publishSettings
107-
.SetProject(CodeGenerationProject)
108-
.SetFramework("netstandard2.0"));
109-
DotNetPublish(s => publishSettings
110-
.SetProject(CodeGenerationProject)
111-
.SetFramework("net461"));
94+
.SetInformationalVersion(GitVersion.InformationalVersion)
95+
.CombineWith(
96+
from project in new[] { GlobalToolProject, CommonProject, CodeGenerationProject }
97+
from framework in project.GetMSBuildProject().GetTargetFrameworks()
98+
select new { project, framework }, (cs, v) => cs
99+
.SetProject(v.project)
100+
.SetFramework(v.framework)));
112101
});
113102

114103
string ChangelogFile => RootDirectory / "CHANGELOG.md";

build/specifications/DotCover.json

-6
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
{
2121
"name": "Configuration",
2222
"type": "string",
23-
"assertion": "FileOrNull",
2423
"format": "{value}"
2524
},
2625
{
@@ -55,7 +54,6 @@
5554
{
5655
"name": "Configuration",
5756
"type": "string",
58-
"assertion": "FileOrNull",
5957
"format": "{value}"
6058
},
6159
{
@@ -75,7 +73,6 @@
7573
{
7674
"name": "Configuration",
7775
"type": "string",
78-
"assertion": "FileOrNull",
7976
"format": "{value}"
8077
},
8178
{
@@ -96,7 +93,6 @@
9693
{
9794
"name": "Configuration",
9895
"type": "string",
99-
"assertion": "FileOrNull",
10096
"format": "{value}"
10197
},
10298
{
@@ -129,7 +125,6 @@
129125
{
130126
"name": "Configuration",
131127
"type": "string",
132-
"assertion": "FileOrNull",
133128
"format": "{value}"
134129
},
135130
{
@@ -168,7 +163,6 @@
168163
{
169164
"name": "Configuration",
170165
"type": "string",
171-
"assertion": "FileOrNull",
172166
"format": "{value}"
173167
},
174168
{

build/specifications/DotNet.json

-1
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,6 @@
487487
{
488488
"name": "TargetPath",
489489
"type": "string",
490-
"assertion": "File",
491490
"format": "{value}",
492491
"help": "Path of the package to push."
493492
},

build/specifications/InspectCode.json

-2
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,13 @@
1717
{
1818
"name": "TargetPath",
1919
"type": "string",
20-
"assertion": "File",
2120
"format": "{value}",
2221
"createOverload": true,
2322
"help": "Target path."
2423
},
2524
{
2625
"name": "Output",
2726
"type": "string",
28-
"assertion": "NotNull",
2927
"format": "--output={value}",
3028
"createOverload": true,
3129
"help": "Lets you set the output file. By default, the output file is saved in the <em>%TEMP%</em> directory."

build/specifications/MSBuild.json

-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
{
1515
"name": "TargetPath",
1616
"type": "string",
17-
"assertion": "FileOrNull",
1817
"format": "{value}",
1918
"createOverload": true,
2019
"help": "The solution or project file on which MSBuild is executed."

build/specifications/Nunit3.json build/specifications/NUnit.json

+9-9
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"references": [
44
"https://github.com/nunit/docs/wiki/Console-Command-Line#//div[@id='wiki-body']"
55
],
6-
"name": "Nunit",
6+
"name": "NUnit",
77
"officialUrl": "https://www.nunit.org/",
88
"help": "NUnit is a unit-testing framework for all .Net languages. Initially ported from <a href=\"http://www.junit.org/\">JUnit</a>, the current production release, version 3.0, has been completely rewritten with many new features and support for a wide range of .NET platforms.",
99
"packageId": "NUnit.ConsoleRunner",
@@ -54,7 +54,7 @@
5454
},
5555
{
5656
"name": "Process",
57-
"type": "NunitProcessType",
57+
"type": "NUnitProcessType",
5858
"format": "--process={value}",
5959
"help": "Process isolation for test assemblies. Values: Single, Separate, Multiple. If not specified, defaults to Separate for a single assembly or Multiple for more than one. By default, processes are run in parallel."
6060
},
@@ -186,13 +186,13 @@
186186
},
187187
{
188188
"name": "Labels",
189-
"type": "NunitLabelType",
189+
"type": "NUnitLabelType",
190190
"format": "--labels={value}",
191191
"help": "Specify whether to write test case names to the output. Values: Off, On, All"
192192
},
193193
{
194194
"name": "Trace",
195-
"type": "NunitTraceLevel",
195+
"type": "NUnitTraceLevel",
196196
"format": "--trace={value}",
197197
"help": "Set internal trace LEVEL. Values: Off, Error, Warning, Info, Verbose (Debug)"
198198
},
@@ -228,7 +228,7 @@
228228
},
229229
{
230230
"name": "SetPrincipalPolicy",
231-
"type": "NunitPrincipalPolicy",
231+
"type": "NUnitPrincipalPolicy",
232232
"format": "--set-principal-policy={value}",
233233
"help": "Set the principal policy for the test domain to POLICY. Values: UnauthenticatedPrincipal, NoPrincipal, WindowsPrincipal"
234234
},
@@ -250,31 +250,31 @@
250250
],
251251
"enumerations": [
252252
{
253-
"name": "NunitProcessType",
253+
"name": "NUnitProcessType",
254254
"values": [
255255
"Single",
256256
"Separate",
257257
"Multiple"
258258
]
259259
},
260260
{
261-
"name": "NunitPrincipalPolicy",
261+
"name": "NUnitPrincipalPolicy",
262262
"values": [
263263
"UnauthenticatedPrincipal",
264264
"NoPrincipal",
265265
"WindowsPrincipal"
266266
]
267267
},
268268
{
269-
"name": "NunitLabelType",
269+
"name": "NUnitLabelType",
270270
"values": [
271271
"Off",
272272
"On",
273273
"All"
274274
]
275275
},
276276
{
277-
"name": "NunitTraceLevel",
277+
"name": "NUnitTraceLevel",
278278
"values": [
279279
"Off",
280280
"Error",

0 commit comments

Comments
 (0)