All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
10.1.0 / 2025-12-02
- Fixed solution folders in
StronglyTypedSolutionGenerator - Fixed MSBuild target packaging for .NET 10
- Fixed GitHub Actions versions
10.0.0 / 2025-11-20
- Added support for .NET 10
- Added support for slnx solution files
- Updated dependencies
- Removed automatic PowerShell/Pwsh argument positioning
9.0.4 / 2025-01-15
- Security: Fixed output filter from
ArgumentStringHandler - Removed obsolete members
- Fixed
PreProcessof tasks requires exact options type - Fixed missing
positionandsecretproperties - Fixed preparation of shadow directory in
ReSharperTasks - Fixed base class in
ReSharperTasks - Fixed missing arguments in
DotNetTasks - Fixed missing commands in
DotNetTasksandNuGetTasks - Fixed package executable in
OctoVersionTasks
9.0.3 / 2024-12-05
- Fixed nullable options for
ToolTasks.Run - Fixed static tool path resolution
- Fixed tool requirements initialization
- Fixed documentation link in tool wrapper remarks
- Fixed documentation on task methods and settings classes
- Fixed missing
NuGetKeyVaultSignTool - Fixed package executable in
OctopusTasks
9.0.2 / 2024-12-03
- Fixed MSBuild tasks to use
net8.0target framework - Fixed error handling in
:updatecommand - Fixed resolving tool path from options
- Fixed nullable options for
ToolTasks.Run - Fixed nullable underlying dictionary for delegate properties
- Fixed skipping null and whitespace arguments
- Fixed tool requirements
- Fixed NPM tool path resolution
- Fixed logging errors as standard in
GitTasksandDockerTasks - Fixed argument format in
DotNetTasks - Fixed nullable
Pluginsdictionary inReSharperTasks
9.0.1 / 2024-11-21
- Fixed
Optionsserialization to JSON - Fixed
Optionsfor default members in interfaces - Fixed missing
ProcessExitHandlersetters
9.0.0 / 2024-11-21
- Removed usages of
BinaryFormatter - Changed minimum framework from
net6.0tonet8.0
8.1.4 / 2024-11-06
- Fixed
build.schema.jsongeneration to useallOffor user and base type properties
8.1.3 / 2024-11-05
- Fixed naming from
NukeBuild.IsSucessfultoIsSucceeding - Fixed
NukeBuild.IsSucceedingto negateIsFailing - Fixed NJsonSchema reference version
- Fixed
:secretscommand to find secret parameters - Fixed argument format in
DotNetTasks - Fixed definite argument in
EntityFrameworkTasks - Fixed deprecated argument in
MinVerTasks
8.1.2 / 2024-10-13
- Fixed exclusion of skipped target from lookup for skippable dependencies
- Fixed resolution of empty environment variables to false
- Fixed parallel execution to prefer logger from settings
8.1.1 / 2024-10-05
- Fixed nested solution folders in
StronglyTypedSolutionGenerator - Fixed whitespace arguments in
ArgumentStringHandler - Fixed output logging in parallel execution
- Fixed exclusion of invoked targets from skipping
- Fixed definite argument in
EntityFrameworkTasks
8.1.0 / 2024-09-10
- Added schema generation with references for
build.schema.json - Added deserialization of full objects from
parameters.json - Added
AbsolutePathextension methods forAddUnixSymlink,Copy*,Move*,Rename* - Added support for preprocessor directives in solution parsing
- Added
Patternin favor of property inLatestGitHubReleaseAttribute - Added
ConcurrencyGroup,ConcurrencyCancelInProgress,EnvironmentName,EnvironmentUrlinGitHubActionsAttribute - Added
DotnetPackagingTasks - Fixed invoked targets to not be excluded from skipping
- Fixed stripping of hyphens in skipped target names
- Fixed empty environment variables to be resolved as empty arrays
- Fixed
EnableUnsafeBinaryFormatterSerializationto be set throughAppContext - Fixed unquoting of multiple quoted arguments in
ArgumentStringHandler - Fixed using logger from settings in parallel execution
- Fixed handling of duplicated NuGet package files
- Fixed inclusion of original NuGet packages in requirements
- Fixed GitHubActions to use latest action versions
- Fixed
DotCoverTasksandEntityFrameworkTaskstool path resolution - Fixed missing members in
GitHubActionsImage - Fixed missing properties in
GitLab - Fixed missing parameters in
AzurePipelines.SetVariables - Fixed missing arguments in
DotNetTasks - Fixed tool path in
CodecovTasks
8.0.0 / 2024-01-18
- Changed string parameters to violate requirement when empty or whitespace
- Added on-demand value injection using
OnDemandAttributeandOnDemandValueInjectionAttribute - Added
AbsolutePathdivision operator for..range expression - Added
DOTNET_NOLOGOto bootstrapping files - Fixed
BinaryFormatterSerializationwarning by suppression - Fixed .NET SDK discovery in bootstrapping files
- Fixed quotation for bootstrapping script invocation
- Fixed filtering on
FileAttributes - Fixed quoting in
AppVeyorgeneration - Fixed members in
AzurePipelinesImage - Fixed members in
GitHubActionsImage - Fixed lower-case naming in
DotNetVerbositymembers - Fixed missing
DotNetTaskscommands - Fixed missing
EntityFrameworkTaskscommand - Fixed logging in
NpmTasks - Fixed argument type in
OctopusTasks - Fixed missing argument in
SonarScannerTasks - Fixed value formatting in
SonarScannerTasks - Fixed members in
NUnitLabelType - Fixed deprecated argument in
NUnitTasks - Fixed members in
ReportGeneratorReportTypes
7.0.6 / 2023-09-24
- Fixed logging of Docker target execution to fall back to debug messages
7.0.5 / 2023-09-05
- Fixed filtering environment variables with newlines in Docker target execution
- Fixed logging in Docker target execution
- Fixed update of version summary in
ChangelogTasks - Fixed missing
DockerTaskscommand
7.0.4 / 2023-08-31
- Fixed check on nullable parameter type
- Fixed telemetry check on home repository
- Fixed missing environment variables for AppVeyor
- Fixed
ICreateGitHubReleaseto work with existing releases - Fixed
ICreateGitHubReleaseto setGitHubTokenunconditionally - Fixed
SetBuildTargetandSetTestPlatformoverloads inUnityTasks - Fixed
UnityRunTestsSettingsbase type
7.0.3 / 2023-08-21
- Fixed enumeration value sets to exclude non-public fields
- Fixed check for
NUKE_ENTERPRISE_TOKENinbuild.shbootstrapping script - Fixed default warnings with suppression
- Fixed telemetry to treat types as common when their assembly points to home repository
- Fixed filtering of secrets in CLT
Outputcollection - Fixed handling of
AbsolutePathcollections inArgumentStringHandler - Fixed handling of
IAbsolutePathHolderinArgumentStringHandler - Fixed handling of
relativePathforSolutionAttributeinStronglyTypedSolutionGenerator - Fixed error reporting in
StronglyTypedSolutionGenerator - Fixed TeamCity
pom.xmltemplate to use HTTPS - Fixed duplicated payload serialization in
TeamsTasks - Fixed missing arguments in
OctopusTasks - Fixed missing command in
UnityTasks - Fixed missing members in
UnitBuildTarget - Fixed argument formatting in
MSpecTasks - Fixed assertion in
UnityTasks
7.0.2 / 2023-05-19
- Fixed string-based command-line tool tasks to not require interpolated strings
- Fixed secret filtering
7.0.1 / 2023-05-15
- Fixed system console colors to fall back to current colors
- Fixed trimming of
OnlyWhenconditions - Fixed lightweight tool API to expose exit handler
- Fixed
Tooldelegate withArgumentStringHandler - Fixed AzureKeyVault attributes to print shorter warning and fall back to parameters
- Fixed resolution of absolute paths from
parameters.json - Fixed
Solution.GetProjectandGetSolutionFolderto only consider root children - Fixed
ChangelogTasksfor empty lines - Fixed serialization for
HelmTasks,KubernetesTasks,NSwagTasks, andReSharperTasks - Fixed
DockerTasks.DockerStackDeploy - Fixed
CoverallsNetSettings.Job
7.0.0 / 2023-05-06
- Refactored out multiple projects
- Renamed
ProcessCustomLoggertoProcessLogger - Renamed
LocalExecutableAttributetoLocalPathAttribute - Renamed
NpmExecutableAttributetoNpmPackageAttribute - Renamed
PackageExecutableAttributetoNuGetPackageAttribute - Renamed
PathExecutableAttributetoPathVariableAttribute - Changed bootstrapping scripts to use
STSinstead ofCurrentchannel - Changed
Targetconditions to use regular delegates captured usingCallerArgumentExpressionAttribute - Changed
AbsolutePathto implicit cast tostring - Changed
HandleSIngleFileExecutionAttributeto be opt-in - Changed string-based command-line tool tasks to use
ArgumentStringHandler - Changed
LatestMavenVersionAttributeto exclude previously hardcodedm2suffix - Changed
OctoVersionTasksto use replacement package - Removed legacy project setup
- Removed YAML shell completion
- Removed
ExternalFilesTask - Removed
CheckBuildProjectConfigurationsAttribute - Removed obsolete members in
OctoVersionAttribute - Removed
Nuke.MSBuildLocatorpackage - Updated package dependencies
- Updated AzureKeyVault integration
- Added assertion against
Targetself-dependence - Added support for tool requirements and automatic installation
- Added
ProcessExitHandlerfor CLT tasks - Added auto-resolution of appropriate framework in
NuGetToolPathResolver - Added
windowsPathandunixPathtoLocalPathAttribute - Added
LatestMavenVersionAttribute.IncludePrerelease - Added
DelegateDisposable.SetAndRestore - Added
Solutionimplicit cast toAbsolutePath - Added
AbsolutePathextension methods forTextTasks,FileSystemTasks,CompressionTasks,SerializationTasks - Added
AbsolutePathplus operator - Added
EnvironmentInfo.Paths - Added
IFormattabletoAbsolutePath - Added properties for permissions in GitHubActions generation
- Added support for job timeout and concurrency configuration in GitHubActions generation
- Added
PublishConditionandLFSproperty in GitHubActions generation - Added
Directory.Packages.propsto default cache key files in GitHubActions generation - Added names for actions in GitHubActions generation
- Added display names for tasks in AzurePipelines generation
- Added resolution of GitHub token in
GitHubTasksthroughGITHUB_TOKENenvironment variable - Added
StaticWebAppsTasks - Added
PwshTasks - Fixed linking of
Directory.Buildfiles in build project view - Fixed skipping of trigger dependencies when original target is skipped
- Fixed
continueparameter to retry previously skipped targets - Fixed missing
Log.CloseAndFlush()for logging - Fixed newlines in bootstrapping scripts
- Fixed log-level check for
ProcessException - Fixed case-sensitivity in
nuget.configdiscovery - Fixed
ProcessExceptionto retain exit code - Fixed
StronglyTypedSolutionGeneratorto add auto-generated XML header - Fixed NPM integration
- Fixed
Repository.IsGitHubRepositoryto consider nullableEndpoint - Fixed casing for
PublishBuildArtifactsin AzurePipelines generation - Fixed missing environment variables for SpaceAutomation
- Fixed missing environment variables for GitHubActions
- Fixed escaping of GitHubActions workflow values
- Fixed missing arguments in
KubernetesTasks
6.3.0 / 2022-12-12
- Added new version of
Octokit - Added
OptionalAttributeto suppress auto-injection warnings - Added ability to override
ProcessCustomLoggerinToolSettings - Added ability to exclude auto-linked files in build project
- Added
DiscordTasks - Added
MastodonTasks - Added
JavaScriptProjectproject type - Added
MakeNSISTasks - Fixed wording for static and dynamic conditions in build summary
- Fixed waiting for confirmation when input is redirected
- Fixed recursion into symlink directories
- Fixed
ProcessExceptionto output standard output - Fixed
MinimalOutputinUnityTasks - Fixed missing
AzurePipelinesBuildReason - Fixed missing arguments in
DotNetTasks - Fixed argument formatting in
HelmTasks - Fixed missing command in
DotNetTasks
6.2.1 / 2022-08-19
- Fixed logging configuration
6.2.0 / 2022-08-19
- Added support for intercepted targets
- Added target interception for Docker
- Added support for context components
- Added
DisableDefaultOutputAttribute - Added
InstallNpmToolsAttributeandNpmExecutableAttribute - Added
EnvironmentInfo.IsArm64 - Added
SetProcessExecutionTimeoutoverload forTimeSpan - Added
DotNetRuntimeIdentifiers - Fixed telemetry
- Fixed
GetPathExecutableto manually searchPATHenvironment variable if locator executable is not available - Fixed resolution of surrogate arguments in Visual Studio
- Fixed performance of
NuGetPackageResolver - Fixed
GitTasks.GitIsDetached - Fixed missing members in
GitHubActionsImage - Fixed missing members in
AzurePipelinesRepositoryType - Fixed detection for Bamboo
- Fixed missing arguments in
KubernetesTasks - Fixed missing arguments in
DockerTasks
6.1.2 / 2022-07-02
- Removed
Newtonsoft.Json.Schemadependency - Fixed
Nuke.GlobalToolto targetnet6.0 - Fixed telemetry to calculate properties only on demand
- Fixed missing
FrameworkinMinVerTasksandMinVerAttribute - Fixed missing arguments in
DotNetTasks
6.1.1 / 2022-06-21
- Fixed output encoding in
Nuke.GlobalToolto be UTF-8 - Fixed telemetry to handle Git repositories without remote
- Fixed
GitRepository.HttpsUrlandSshUrlwhenEndpointis null - Fixed
ShutdownDotNetServerBuildAttributeto timeout after 15 seconds
6.1.0 / 2022-06-14
- Removed extended setup wizard
- Changed
Nuke.GlobalToolto useSpectre.Console - Deprecated
CheckBuildProjectConfigurationsAttribute - Added single-file packaging and execution
- Added output customization via
NukeBuild.WriteLogo,WriteTarget, andWriteSummary - Added second-chance registration for MSBuild from .NET CLI
- Added submodule support in GitHub Actions, Space Automation, and AppVeyor
- Added
NukeBuild.BuildAssemblyFileproperty - Added generic
EnvironmentInfo.SetVariable - Added support for Bitbucket
- Added GitHub Actions support for
fetch-depth - Fixed
default_targetreplacement in help text - Fixed parameter padding and line breaks in help text
- Fixed
Assertmethods to acceptIReadOnlyCollection - Fixed fatal failure of
MSBuildLocator - Fixed missing MSBuild registration when using
ProjectExtensions - Fixed
NuGetPackageResolverperformance by reading metadata from.nuspecfiles - Fixed
GitRepositoryinitialization when remote is not set - Fixed exception for duplicated keys in TeamCity property files
- Fixed missing arguments for
DotNetTasks
6.0.3 / 2022-05-02
- Fixed exception handling in various places
- Fixed shell-completion file to be written after parameter resolution
- Fixed
SpecialFolders.UserProfileon Docker - Fixed
SolutionSerializerto work on sanitized content - Fixed
GitRepositorybranch extensions to consider plurals - Fixed handling of spaces in GitHub Actions and Azure Pipeline generation
- Fixed resolution of MSBuild for Visual Studio Build Tools edition
6.0.2 / 2022-04-13
- Fixed
Updatecommand to usenet6.0 - Fixed handling of common errors
- Fixed assertion messages to only include argument expression when message is
null - Fixed log file pattern to use
-instead of:for time - Fixed padding of target names in logging
- Fixed logging to use
ExecutingTargetinstead ofTargetto reduce clashing - Fixed concurrent writing of shell-completion files
- Fixed telemetry to check for interactive console
- Fixed passing build instance for value injection in components
- Fixed
ValueInjectionAttributeBase.GetMemberValueto consider members from components - Fixed resolution of members from parameter files
- Fixed reporting of exceptions in summary when not thrown from targets
- Fixed naming for .NET SDK in bootstrapping scripts
- Fixed GitHub Actions to use
GITHUB_TOKENinstead ofGITHUB_CONTEXT - Fixed GitHub Actions assertion messages
- Fixed missing output types for
ReportGeneratorTasks - Fixed missing arguments for
HelmTasks - Fixed missing arguments for
SonarScannerTasks - Fixed missing command for
KubernetesTasks - Fixed path resolution in
PowerShellTasksto use PowerShell Core on non-Windows systems - Fixed missing runtime types in
NSwagTasks
6.0.1 / 2022-01-10
- Fixed invisible output for
SystemConsoleHostTheme - Fixed
GetRelativePathfor same parts in different places
6.0.0 / 2022-01-07
- Removed
ToolSettings.ProcessLogFileandProcessLogTimestamp - Removed
GitHubprefix forGitHubActionsenvironment variables - Deprecated
Loggerin favor ofSerilog.Log - Deprecated
ControlFlowasserts in favor ofAssertclass - Changed
Nuke.GlobalToolto enableRollForwardwithLatestMajor - Changed default serialization settings for JSON and YAML in
SerializationTasks - Changed GitHub Actions generation to use default
GitHubActions.TokenthroughEnableGitHubContext - Changed Azure Pipelines generation to use default
AzurePipelines.AccessTokenthroughEnableAccessToken - Added shell-completion support for global tool builds
- Added
NukeBuild.ExecutionPlanto public API - Added
Partition.PartandTotalto public API - Added
MSBuildToolPathResolversupport for Visual Studio 2022 - Added
XmlTasksvariants forstringobjects - Added
AbsolutePath.NameandNameWithoutExtensionproperties - Added
AbsolutePath.Exists,FileExists, andDirectoryExistsextension methods - Added
Project.HasPackageReferenceandGetPackageReferenceVersion - Added
UpdateFilevariants inSerializationTasks - Added
StdToTextandStdToJsonextension methods forIEnumerable<Output> - Added newest worker images for Azure Pipelines, GitHub Actions, and AppVeyor generation
- Added Azure Pipelines generation for pull-request triggers, fetch depth, and clean checkout
- Added Space Automation support for secrets
- Added TeamCity support for GUID tokens
- Added
AzurePipelinesCachePathsfor common cache paths - Added
AzurePipelines.PhaseNameproperty - Added
GitHub.CreateCommentfor issue and pull-request comments - Added
TeamCity.AuthUserIdandAuthPasswordproperties - Added
AppVeyorSecretAttributefor generation of secret value entries - Added
HttpClient,HttpRequest, andHttpResponseextensions - Added
XNodeextensions - Added
LatestMavenVersionAttribute - Added
MauiCheckTasks - Added
MinVerTasksandMinVerAttribute - Added
PowerShellTasks - Added
BootsTasks - Added
NetlifyTasks - Fixed check for executables compiled with
PublishSingleFile - Fixed
MSBuildlocalization usingMSBuildLocator - Fixed missing assertion for successful status code in
HttpTasks - Fixed Azure Pipelines caching
- Fixed
IBuildServer.BranchforAzurePipelines - Fixed
OctoVersionTasksandOctoVersionAttributefor latest version - Fixed
AzureSignToolTasksto invokesigncommand - Fixed missing
Filesproperty inAzureSignTool - Fixed missing
Blame*properties inDotNetTasks - Fixed property types in
ILRepackTasks - Fixed
UnityTasksto auto-detect version - Fixed quoting for
UnityTasks.LogFile
5.3.0 / 2021-08-04
- Added LFS and Submodule settings in AzurePipelines configuration
- Added
OctoVersionTasksandOctoVersionAttribute - Added
AzureSignToolTasks - Added
ChocolateyTasks - Fixed invocations for PowerShell bootstrapping script
- Fixed retrieval of
version_dotnet_sdkin telemetry - Fixed solution serialization to show information about duplicated entries
- Fixed path construction to be lazy for in-memory solutions that get saved
- Fixed
GitHubTasks.GetGitHubBrowseUrlto trim trailing slash - Fixed
GitVersionAttribute.Frameworkdefault value tonet5.0 - Fixed URLs in
ChangeLogTasks - Fixed
DotNetTestSettings.Loggersproperty to accept multiple values - Fixed default value emission for
DotCoverTasks - Fixed missing properties for
GitVersionTasks - Fixed missing secret attributes in
SonarScannerTasks - Fixed
NerdbankGitVersioningFormatenumeration to use lower-case
5.2.1 / 2021-06-18
- Fixed telemetry
- Fixed humanized string concatenation
5.2.0 / 2021-06-18
- Added telemetry data collection
- Added unified
NukeBuild.Partitionproperty - Added
Rider,VisualStudio,VSCodeasHostimplementations - Added
GitRepository.IsOnMainBranchandIsOnMainOrMasterBranch - Added
AbsolutePathequality operators - Fixed SpaceAutomation to generate default
refSpec - Changed
Microsoft.CodeAnalysis.CSharppackage version to3.9.0 - Removed
Refitreference andITeamCityRestClientinterface - Removed
Colorful.Consolereference and embedded figlet fonts
5.1.4 / 2021-06-01
- Fixed
StronglyTypedSolutionGeneratorto resolve root directory only on demand - Fixed
JetBrains.Annotationsto be packed with source generators - Fixed missing SpaceAutomation configuration link
5.1.3 / 2021-05-31
- Fixed filtering explicitly overridden targets in build components
5.1.2 / 2021-05-18
- Fixed target duration to be measured immediately after execution
- Fixed build script invocation from global tool
- Fixed
AddPackagecommand to allow explicit version parameter - Fixed navigation methods to not be included in command list
- Fixed
StronglyTypedSolutionGeneratorto resolve root directory only on demand - Fixed
EnvironmentInfo.Frameworkto use entry assembly - Fixed parsing of
GitRepositoryremote - Fixed missing pull-request properties in TeamCity
- Fixed
RunNumberandRunIdinGitHubActionsto be of typelong - Fixed
GitVersionAttributeto automatically populateGit_Branchon TeamCity
5.1.1 / 2021-04-23
- Fixed parameter loading with missing default parameters file
- Fixed visibility of
Directory.Buildfiles - Fixed
ArgumentsFromCommitMessageAttributeto require manual application - Fixed summary reporting for exceptions to only include first line of message
- Fixed update notification
- Fixed PowerShell invocation from
build.cmd - Fixed
UpdateandSetupcommand to not stage parameters file - Fixed
Updatecommand for absent bootstrapping scripts - Fixed skipping unhandled syntax fragments in Cake conversion
- Fixed missing
Instanceproperties forIBuildServerimplementations - Fixed GitHubActions default cache path
- Fixed missing property for GitHubActions workflow inputs
- Fixed quoting in GitHubActions for included/excluded paths
- Fixed
XmlPoketo allow specifying encoding - Fixed
ExternalFilesTaskfor single file browse-URL - Fixed
ICompile,IPack,ITestcomponents to check againstSucceededTargets - Fixed setting
RepositoryUrlinIPackcomponent
5.1.0 / 2021-04-07
- Removed
:Fixcommand from global tool (superseded by:AddPackage) - Changed
.nukeconfiguration file to.nukedirectory - Changed shell-completion to rely on
build.schema.jsonfile - Changed default
DependencyBehaviortoSkip - Changed
HostTypetoHostbase class - Changed
ExecutionStatusmembersExecutedtoSucceeded, andExecutingtoRunning - Changed
IBuildExtensioninstances to be cached - Changed
IOnBeforeLogoandIOnAfterLogoextensions toIOnBuildCreatedandIOnBuildInitialized - Changed
IsSuccessfulto check for succeeded, skipped and collective targets - Changed
ParameterAttributeto allow external value providers withValueProviderTypeandValueProviderMember - Changed GitHubActions secret names to split on camel-humps
- Added support for parameter files (profiles)
- Added source generator for strong-typed solutions
- Added shorthand dependencies for build components
- Added
ReportSummaryfor summary extension toNukeBuildandINukeBuild - Added exception reporting in summary
- Added
ParameterPrefixAttributefor build components - Added build extensions for
OnTargetSkipped,OnTargetRunning,OnTargetSucceeded, andOnTargetFailed - Added styling for unlisted targets in execution plan HTML
- Added
:Secretscommand to global tool andSecretAttributefor encryption in parameters files - Added
:AddPackagecommand to global tool - Added
:GetConfigurationcommand to global tool - Added
:Updatecommand to global tool - Added
:CakeConvertand:CakeCleancommands to global tool - Added generation of
Directory.Build.propsandDirectory.Build.targetsfiles - Added parameter resolution for root directory in global tool
- Added shell-navigation aliases
nuke/andnuke- - Added
ScheduledTargets,RunningTargets,AbortedTargets,FailedTargets,SucceededTargetscollections toNukeBuildandINukeBuild - Added
ArgumentsFromCommitMessageAttributeand:Triggercommand to global tool - Added
ExitCodetoINukeBuild - Added
IsFinishedandIsFailingtoNukeBuildandINukeBuild - Added caching for
ValueInjectionUtility.TryGetValue - Added equality operators and implicit conversion to string for Enumeration
- Added
GetProject,GetSolutionFolder,Projects, andSolutionFolderstoSolutionFolder - Added
GetRuntimeIdentiferstoProjectExtensions - Added string-escape extension for MSBuild in
DotNetTasksandMSBuildTasks - Added
EnsureExistingDirectoryandEnsureExistingParentDirectoryoverloads forAbsolutePath - Added
XmlPeekElementstoXmlTasks - Added
GitRepositorypropertiesRemoteNameandRemoteBranch - Added support for
NerdbankGitVersioning - Added
NoCacheproperty toGitVersionAttributewith default valuetrue - Added
SendOrUpdateSlackMessagetoSlackTasks - Added support for JetBrains SpaceAutomation
- Added support for GitHub Actions dispatch workflows
- Added support for GitLab CI
- Added support for multiple AppVeyor configurations
- Added support for AppVeyor secrets
- Added support for platform-independent TeamCity configurations
- Added TeamCity parameter to replace run-button caption
- Added
AddTeamCityLoggerforDotNetTesttask - Added
IsPersonalBuildproperty toTeamCity - Added caching for
AzurePipelinesAttributeandGitHubActionsAttribute - Added
SetVariabletoAzurePipelines - Added
CodeMetricsTasks - Added
PulumiTasks - Added
CodecovTasks - Added
CorFlagsTasks - Added
FixieTasks - Added
ILRepackTasks - Fixed skip reason for targets skipped from
--skipparameter - Fixed execution plan legend
- Fixed execution plan highlighting for multiple default targets
- Fixed
ConsoleUtilityto allow full deletion of secret - Fixed exception reporting for
ExecutableTargetFactory - Fixed handling of value types in
ValueInjectionUtility.TryGetValue - Fixed calculation of value sets for collection parameters
- Fixed compilation of legacy template
- Fixed
IsDescendantPathto split path parts - Fixed
MoveDirectorywith additionaldeleteRemainingFilesparameter - Fixed
SwitchWorkingDirectoryto respectallowCreateparameter - Fixed
ResponseArchiveinISignPackagesbuild component - Fixed MSBuild path resolution to fallback to using
dotnet --list-sdks - Fixed client usage in
GitHubTasks - Fixed token ordering in
TemplateUtility - Fixed default value for collections in TeamCity configurations
- Fixed TeamCity composite configurations to propagate failures
- Fixed
TeamCityandAzurePipelinesto update build numbers in environment variables - Fixed
TriggerBatchin AzurePipelines generation - Fixed condition in AppVeyor generation
- Fixed
FileFiltersproperty inReportGeneratorTasks - Fixed logger for
DocFXTasks - Fixed
Severityproperty inReSharperTasks - Fixed missing
MSBuildandToolRestoretask inDotNetTasks - Fixed missing
Buildxtask inDockerTasks - Fixed missing
CoverDotNettask inDotCoverTasks - Fixed missing
GenericCoveragePathsproperty inSonarScannerTasks - Fixed missing properties in
ReSharperTasks - Fixed missing properties in
TeamCity,GitHubActions, andAzurePipelines - Fixed missing
SignToolDigestAlgorithmenumeration inSignToolTasks
5.0.2 / 2020-12-07
- Fixed
ChangelogTasksto use HTTPS links in history - Fixed
DotNetRunandDotNetTestrun settings - Fixed conditions for informational text
5.0.1 / 2020-12-06
- Fixed configuration generation to wait for user input after file changes
- Fixed build summary for durations smaller than 1 second
- Fixed build summary and
IBuildExtensioninstances to be skipped if no targets were started - Fixed build summary to hide irrelevant durations
- Fixed setting of
EmbeddedPackagesDirectoryfor global tools - Fixed
PackPackageToolsTaskto use lower-case package ids - Fixed
ParameterAttribute.ValueProviderto allow members of typeIEnumerable<string> - Fixed
Loggerto removeControlFlowfrom stacktrace - Fixed assertion messages for warnings
- Fixed path and quoting in
build.cmd - Fixed
GitVersion.Toolversion in project templates - Fixed
LatestMyGetVersionAttributeto handle new RSS feed format - Fixed missing arguments
PublishReadyToRun,PublishSingleFile,PublishTrimmed,PublishProfile,NoLogoforDotNetPublish - Fixed parameter name
VerbosityinDotNetPack - Fixed enumeration value
lcovinCoverletTasks - Fixed
ReSharperTasksto use correct tool path - Fixed
ChangelogTasksto respect additional markdown-linting rules - Fixed TeamCity generator to consider artifact products from all relevant targets
- Fixed condition for skipping lines in TeamCity parameter files
5.0.0 / 2020-11-12
- Fixed version number
0.25.0 / 2020-10-26
- Removed
ConfigurationfromNuke.Commonand moved it to template - Changed
InjectionAttributeto catch exceptions and report as warnings - Changed
ToolPathResolverto ignore casing - Changed
ToolSettingsto prefix common properties withProcess - Changed property names in
Nuke.Common.targets - Changed
GitRepositoryto trimrefs/heads/andorigin/from branch names - Changed
ShutdownDotNetBuildServerOnFinishto not log by default - Changed
ShutdownDotNetBuildServerOnFinishto only shutdown on server build - Added support for interface default implementations
- Added
NukeBuild.ExitCodefor custom exit codes - Added
ProcessTasks.StartShellto invoke shell commands - Added
ToolSettings.Applyfor fluent configurator invocation - Added
ToolSettings.LogFileandLogTimestamp - Added
nuke :fixcommand toNuke.GlobalToolfor adding missing package downloads - Added
nuke :GetRootDirectoryandnuke :GetParentRootDirectoryinNuke.GlobalTool - Added
LatestNuGetVersionAttribute,LatestGitHubReleaseAttribute,LatestMyGetVersionAttribute - Added
GitRepository.Protocol,Commit, andTagsproperties - Added logger delegate to
ControlFlow.ExecuteWithRetry - Added
BuildExtensionAttributeBasewithPriorityproperty - Added
UnsetVisualStudioEnvironmentVariablesby default - Added
TeamCity.BuildVcsNumberproperty - Added AzurePipelines variable groups, secret and access token import
- Added
AppVeyor.UrlandPushArtifactmembers - Added warning when
GitVersionis used with SSH endpoint andNoFetchis disabled - Added consolidated
ReSharperTasksforCleanupCode,InspectCode, andDupFinder - Added
TeamsTasks - Added
SignPathTasks - Added
SignClientTasks - Added
BenchmarkDotNetTasks - Added
CleanupCodeTasks - Added
DotNetTasks.DotNetNuGetAddSourcetask - Added
OctopusTasks.OctopusBuildInformationtask - Added missing properties in
SonarScannerTasks - Added verbosity mapping attributes for
NUnit,OpenCover, andReportGenerator - Fixed version check in bootstrapping scripts to rely on dotnet CLI exit code
- Fixed deactivation of multi-level lookup in bootstrapping scripts
- Fixed deactivation of shared compilation in bootstrapping scripts
- Fixed
ToolPathResolverto consider all package executable names - Fixed
ToolPathResolverto choose executable based on operating system - Fixed output/input encoding to use
UTF-8 - Fixed
NukeBuild.BuildProjectFileproperty - Fixed AppVeyor generation for Unix images
- Fixed
AzurePipelinensAttributeto allow multiple use - Fixed AzurePipelines to replace dots in stage name with underscore
- Fixed
AppVeyor.UpdateBuildVersionto set environment variable - Fixed
DupFinderTasks.DiscardCostproperty - Fixed
DotCoverTasksto use double-dashes instead of slashes - Fixed
NpmTasks.CustomLoggerto detect warnings in error output
0.24.11 / 2020-05-18
- Fixed transitive artifacts in configuration generation
- Fixed
StackOverflowExceptionin configuration generation - Fixed
IsPackableproperty default - Fixed missing colon in GitHubActions triggers
- Fixed assertion message for finding Git directory
- Fixed assertion message for
teamcity.dotCover.home
0.24.10 / 2020-04-24
- Fixed MSBuild targets to switch on
MSBuildRuntimeTypeagain - Fixed default includes for
NukeSpecificationFilesandNukeExternalFiles - Fixed indentation for GitHubActions scheduled triggers
- Fixed assertion message for GitHubActions trigger definitions
- Fixed default
RootNamespace
0.24.9 / 2020-04-16
- Fixed MSBuild targets directories
0.24.8 / 2020-04-12
- Fixed publishing of global tool for
netcoreapp3.1 - Fixed .NET Core SDK install script URL
- Fixed trap error output in PowerShell bootstrapping
- Fixed AzurePipelines push triggers
- Fixed AzurePipelines configuration to allow overriding configuration directory
- Fixed previous constructor usages for
AzurePipelinesAttribute - Fixed PowerShell downloads to use TLS 1.2 security protocol
- Fixed unrecognized
Visibleattribute forPackageDownloaditem group
0.24.7 / 2020-03-26
- Fixed MSBuild targets for .NET Core
- Fixed
GitRepository.GetGitHubMilestoneto retrieve milestone independent of state
0.24.6 / 2020-03-25
- Fixed NuGet package resolution performance
- Fixed MSBuild integration
- Fixed TeamCity trace output to be dark gray
- Fixed missing using statement for
Nuke.Common.IO
0.24.5 / 2020-03-24
- Fixed TeamCity configuration to use Bash script on Unix
0.24.4 / 2020-03-05
- Fixed Refit version
- Fixed conversion of
GitHubActionsTrigger - Fixed project default includes to check existence of files
- Fixed projects to target
netcoreapp2.1 - Fixed configuration generation to allow multiple configurations per host type
- Fixed
AzurePipelinesAttributeto allow setting a configuration suffix - Fixed CI server detection to ignore empty environment variables
- Fixed
TeamCityOutputSinkto not report errors as build problems - Fixed custom logger for
NpmTasks - Fixed custom logger for
DockerTasks - Fixed missing NuGet install task
- Fixed missing
Frameworkproperty inOctopusTasks - Fixed missing
ReportTypeinDotCoverTasks - Fixed missing properties in
DotNetTasks - Fixed Glob version
- Fixed
GitVersionAttributeto avoid duplicated version numbers - Fixed
System.ValueTupleversion
0.24.2 / 2020-02-15
- Fixed extension methods for settings with base type
- Fixed
SonarScannerTasksto haveFrameworkproperty - Fixed generation of
shell-completion.ymlto exclude unlisted targets for invocation
0.24.1 / 2020-02-07
- Fixed
NuGetPackageResolverto include dependencies during tool path resolution - Fixed parsing of TeamCity environment variables
- Fixed execution flags for
build.shandbuild.cmdscripts during setup - Fixed assertion message in
UnityTasks - Fixed
build.cmdto have newline at end-of-file - Fixed logo spacing
0.24.0 / 2020-02-02
- Removed
NuGetPackagetasks and AutoMapper package reference - Removed TeamCity definitions for
VcsRootand trigger timezones - Changed
AbsolutePath,RelativePath,WinRelativePathandUnixRelativePathto outer scope - Changed default package for
DotCoverTaskstoJetBrains.dotCover.DotNetCliTool - Changed default includes to be provided via
Nuke.Common.targets - Changed
ConfigurationGenerationAttributeBasetoConfigurationAttributeBase - Changed manually invoked targets to be TeamCity deployment configurations
- Changed
AzurePipelinesinterface to use enumerations for test result type and code coverage tool type - Changed package version for
Glob,Microsoft.IdentityModel.Clients.ActiveDirectory,Newtonsoft.Json,NuGet.Packaging,Refit,YamlDotNet - Added cross-platform
build.cmdbootstrapping script - Added build emotions
- Added update of build number for TeamCity, AppVeyor, and Azure Pipelines from
GitVersionAttribute - Added
AzureKeyVaultβ previously available as addon - Added
DocFXTasks,DockerTasks,HelmTasks,KubernetesTasks, andNSwagTasksβ previously available as addons - Added TeamCity logger extension method for
DotNetBuildSettings - Added support for checkboxes in TeamCity configuration
- Added
GitHubTasks - Added
ProjectModelTasks.CreateSolution - Added
Solution.GetProjectandGetSolutionFolderoverloads viaGuid - Added
TeamCity.NightlyBuildAlwaysproperty - Added detailed null-check for
teamcity.build.branchconfiguration property - Added Coverlet extension methods for
DotNetTesttask - Added
AzurePipelines.PublishCodeCoverage - Added setters for
Projectproperties - Added
Solution.AddSolutionandProjectModelTask.CreateSolutionoverload for creating global solutions - Added path extension methods for
Get(Win|Unix)RelativePathTo,Contains, andTo(Win|Unix)RelativePath - Added
NoFetch,Framework, andUpdateBuildNumberproperties toGitVersionAttribute - Fixed directory creation in bootstrapping scripts
- Fixed artifact paths for TeamCity and Azure Pipelines
- Fixed path separators for AppVeyor and GitHubActions configurations
- Fixed
NSwagto quote tool path - Fixed
SolutionSerializerto handle inconsistent whitespaces - Fixed
NpmCitask to include definite argument - Fixed
VSTestSettings.TestCaseFiltersto be list of strings - Fixed
EnvironmentInfo.FrameworkName - Fixed
cleanCheckoutDirectoryto be set for all TeamCity build types - Fixed
AddTeamCityLoggerextension method - Fixed
buildTypereference in TeamCity build-finished triggers - Fixed
ReportGeneratortask to resolveReportGenerator.dll - Fixed sharing of artifacts between agents
- Fixed
GitVersionSettings.UpdateAssemblyInfoFileNamesto be an array
0.23.7 / 2020-01-28
- Fixed summary alignment for hosts that trim whitespaces
0.23.6 / 2020-01-12
- Fixed
InspectCodeTasksto use new plugin endpoint for downloading - Fixed
AppVeyorOutputSinkto issue a warning when exceeding the default limit of 500 messages
0.23.5 / 2020-01-10
- Fixed CI integrations to use correct warning/error reporting infrastructure
- Fixed TeamCity configuration to use
UTF-8encoding - Fixed process encoding by setting
StandardOutputEncodingandStandardErrorEncodingtoUTF-8 - Fixed solution deserialization for missing configuration section
- Fixed logo spacing
0.23.4 / 2019-11-16
- Fixed assignment for
NuGetAssetsConfigFilewhenBuildProjectDirectoryis null - Fixed
ToolPathResolverto not require framework when only one file matches
0.23.3 / 2019-11-02
- Fixed separator in Azure Pipelines service messages
0.23.2 / 2019-11-02
- Fixed ensuring of existing directory for generation of configuration files
- Fixed packaging of
MSBuildTaskRunnerinNuke.Common
0.23.1 / 2019-11-02
- Fixed checking hashes for non-existing configuration files
- Fixed null-reference exception for commands without message
0.23.0 / 2019-10-31
- Changed target frameworks to
netcoreapp3.0andnet472 - Changed
AzureDevOpstoAzurePipelines - Changed
CheckBuildProjectConfigurationsAttributeto skip dot-prefixed directories - Removed
ProjectFromAttribute - Removed
MSBuildTasks.MSBuildParseProject - Removed
GitVersion.GetNormalizedAssemblyVersionandGetNormalizedFileVersion - Added NuGet package resolution from
project.assets.jsonfile - Added CI interface resolution via
CIAttribute - Added
Bamboointerface - Added
TeamCityImportDotCoverPathAttributeto address version mismatch - Added
GitHubActionsAttributefor configuration generation - Added
AzurePipelinesAttributefor configuration generation - Added
AppVeyorAttributefor configuration generation - Added execution of
dotnet build-server shutdownwhen build has finished - Added
NpmCitask - Fixed
TeamCityparameter dictionaries to use original keys - Fixed NuGet package resolution for project files without
PackageReferenceitems - Fixed code inspections in PowerShell script
- Fixed resolution for legacy package directories
- Fixed generation of
Partitionparameter and script paths - Fixed
ToolPathResolverto support global tool packages - Fixed
ReportGeneratorTasksandGitVersionTasksby providingFrameworkproperty
0.22.2 / 2019-09-29
- Fixed SourceLink integration
0.22.1 / 2019-09-21
- Fixed assertion message for missing packages
0.22.0 / 2019-09-17
- Changed
UnlistedAttributetoListproperty onParameterAttribute - Changed summary to show aborted and not-run targets as warning
- Changed
TeamServicestoAzureDevOps - Changed namespace
Nuke.Common.BuildServerstoNuke.Common.CI.* - Added support for multiple default targets
- Added support for
PackageDownloaditem group - Added support for hyphens in target names
- Added support for absolute paths in
LocalExecutableAttribute - Added support for
GitHubActions - Added TeamCity configuration generation via
TeamCityAttribute - Added XML serialization for .NET Core
- Added reporting of TeamCity statistical values
- Added additional methods for
CloudFoundryTasks - Added
ProjectTypefor Docker and SQL projects - Added implicit cast operator for generated enumerations
- Added
InnoSetupTasks - Added
TwitterTasks - Added
IOnBuildFinishedbuild extension - Added missing arguments for
CoverletTasks - Fixed
--bootin setup for .NET Framework/Mono support - Fixed XML documentation for generated CLI tasks
- Fixed
MSBuildToolPathResolverto consider preview editions - Fixed
NuGetPackageResolverto allow multiple versions of the same package - Fixed
TeamCity.SetParameterandTeamCity.ImportData - Fixed
SolutionSerializerto fall back toProjectConfigurationsection - Fixed
MSBuildLocatorpackage to havevswhere.exeembedded
0.21.2 / 2019-07-28
- Fixed validation to exclude requirements of skipped targets
- Fixed solution serialization to include malicious project GUID in error message
0.21.1 / 2019-07-19
- Fixed logging of warnings
0.21.0 / 2019-07-15
- Changed
ProjectModelTasks.ParseProjectto revertMSBUILD_EXE_PATHenvironment variable - Added
CloudFoundryTasks - Added missing arguments for
SonarScannerTasks - Added missing arguments for
OctopusTasks - Added
Jenkins.BranchNameandJenkins.ChangeId
0.20.1 / 2019-06-02
- Fixed MSBuild evaluation issues by updating NuGet.Packaging to v4.9.2
0.20.0 / 2019-05-29
- Changed
Solution.GetProjectto allow resolution from full path - Changed HTML execution plan to be shown left-to-right
- Added
Whenoverload for combinatorial settings - Added
Project.GetOutputTypemethod for convenience - Added
GlobbingOptionsAttributefor configuration of case-sensitivity - Fixed casing of
NuGet.exe - Fixed
TeamServicesto resolveBuildNumberasstring
0.19.2 / 2019-05-10
- Fixed
ProjectModelTasksto use existingMSBUILD_EXE_PATHvalue - Fixed
ParameterServiceto consider nullable enum types in value set calculation - Fixed compile errors in build template
0.19.1 / 2019-05-03
- Fixed
RequirementServiceto check forInjectionAttributeBase
0.19.0 / 2019-05-03
- Changed MSBuild targets to be invoked with
Exectask - Changed
ProcessTasksto avoid Mono when using WSL - Added output for non-default working directories
- Added
GitVersion.VersionSourceSha - Added
ReportTypes.TeamCitySummary - Fixed parameter resolution to handle hyphens
- Fixed MSBuild resolution for Visual Studio 2019
- Fixed issues when build has no default target defined
0.18.0 / 2019-03-24
- Changed
ParameterServiceto strip dashes when resolving value - Changed formatting of skip reason
- Added
CompressionTasks - Added
EntityFrameworkTasks - Fixed
UnityTasks.UnityPathfor Windows - Fixed
SystemColorOutputSinkto print warning and error details - Fixed
SonarScannerTasksto also resolve from netstandard package
0.17.7 / 2019-03-12
- Fixed
SystemColorOutputSinkto setForegroundColor
0.17.6 / 2019-03-04
- Fixed
RequirementServiceto check forParameterAttributewhen injecting values interactively
0.17.5 / 2019-03-03
- Fixed
GlobDirectoriesandGlobFilesto not collect items lazily
0.17.4 / 2019-03-02
- Fixed bootstrapping script to not set
NUGET_XMLDOC_MODE
0.17.3 / 2019-02-27
- Fixed documentation file generation
- Fixed
CheckBuildProjectConfigurationsAttribute.Timeoutto be settable
0.17.2 / 2019-02-24
- Fixed parsing of changelog
0.17.1 / 2019-02-23
- Fixed attributes in build tasks
0.17.0 / 2019-02-23
- Removed collection-based tasks in
FileSystemTasks - Changed
ContinueOnFailuretoProceedAfterFailure - Changed summary output to not include collective targets
- Added
logInvocationparameter andToolSettings.LogInvocationproperty - Added interactive parameter resolution
- Added
RequiredAttributefor globally required parameters - Added skip reason to summary
- Added
FileGlobbingAttributeandDirectoryGlobbingAttribute - Added
GetProperty<T>,GetItems<T>, andGetItemMetadata<T>asProjectExtensions - Added
Unlistedfor target declarations - Added
ToolResolverfor custom delegate resolution - Added
DotNetToolInstall,DotNetToolUninstall, andDotNetToolUpdate - Added
UnsetVisualStudioEnvironmentVariablesAttribute - Added universal log methods with severity as parameter
- Fixed parameter resolution for value types
- Fixed
AbsolutePathto be serializable - Fixed output for parallel task execution
- Fixed exit code for failing targets using
ProceedAfterFailure - Fixed exception message for circular dependencies
0.16.0 / 2019-01-30
- Changed setting of default working directory for process invocations
- Changed
Logger.LogtoLogger.Normal - Added
NukeBuild.Executeoverload without default target - Added
ContinueOnFailureandAssuredAfterFailureas target definition methods - Added
AbsolutePathextensions forGlobDirectories/Files - Added
AggregateExceptionhandling to show number as prefix when flattening - Added
AnsiColorOutputSinkfor Bitrise, TeamCity, Travis, TeamServices - Added
ProjectModelTasks.ParseProjectbased onMicrosoft.Buildpackages - Added
LocalExecutableAttribute - Added
degreeOfParallelismandcompleteOnFailurefor combinatorial invocations - Added
[Tool]Tasks.[Tool]Loggeras settable field for custom logging - Added
VerbosityMappingAttribute - Added format-property map for CLI tasks
- Fixed
EnsureCleanDirectoryto only clean instead of delete and recreate - Fixed
TeamCityOutputSinkto not report errors as build problems - Fixed
SolutionAttributeto resolve first by constructor argument - Fixed
Xunit2ParallelOptionto use lower-case text
0.15.0 / 2019-01-16
- Changed
OnlyWhentoOnlyWhenStaticandOnlyWhenDynamic - Changed
graphparameter toplan - Added
DependentFor,TriggersandTriggeredByfor target declarations - Added
ToolSettings.CombineWithfor combinatorial invocations - Added several
FileSystemTasksmethods - Added
TemplateUtility.FillTemplateDirectoryandFillTemplateFile - Added highlighting of execution plans in HTML representation
- Added process cancellation handler to always show summary
- Added
NuGetTasksto add, remove, update, enable, disable and list sources - Added
TravisOutputSink - Added path resolution for
VSTestTasks - Added caching of
MSBuildpath inGetMSBuidProject - Fixed
GitRepository.IsOnDevelopBranchto recognizedevelopanddevelopment - Fixed shell-completion for PowerShell
0.14.1 / 2018-12-31
- Fixed package reference versions
- Fixed
SolutionSerializerto handle empty lines
0.14.0 / 2018-12-31
- Removed named target dependencies
- Removed choice of target framework in setup
- Changed setup to write solution file reference to configuration file again
- Added extended solution parsing with integration for
Microsoft.Build - Added
Configurationtype - Added
continueparameter - Added checking for active build project configurations in solution files
- Added highlighting for default target in HTML graph
- Added
SonarScannerTasks - Added
EnvironmentInfo.SwitchWorkingDirectory - Added
SymbolPackageFormatproperty forDotNetTasks,MSBuildTasks, andNuGetTasks - Fixed bootstrapping scripts not to leave DotNet processes behind
- Fixed bootstrapping scripts to correctly quote arguments
- Fixed overload of tool path for .NET Core executables
- Fixed default value not to be hidden by cursor
- Fixed
ToolSettingsExtensions.Whento have generic constraint onToolSettings - Fixed
InspectCodeTasksto use deterministic hashing - Fixed
ChangelogTasksto correctly parse empty sections at end of file - Fixed
InjectionAttributeBaseto express implicit assignment only - Fixed
ExternalFilesTaskto be executed beforeRestoretarget
0.13.0 / 2018-12-10
- Changed verification of PATH environment variable to be executed only with
Tracelog level - Added
ToolSettings.Whenfor conditional fluent modifications - Added
.editorconfigfile in setup to avoid formatting issues - Added
DotMemoryUnitTasks - Added missing properties in
DotNetCleanSettings,DotNetRestoreSettingsandMSBuildSettings.Restore
0.12.4 / 2018-12-02
- Fixed
SolutionAttributeto handle empty configuration file
0.12.3 / 2018-11-29
- Fixed
EnvironmentInfo.Variablesnot to be cached - Fixed
Globpackage reference in legacy template - Fixed error message for unresolvable root directory
- Fixed global tool setup to hide choice of bootstrapping by default
- Fixed
NuGetPackageResolverassertion for dependency resolution
0.12.2 / 2018-11-27
- Fixed globbing related issues
- Fixed shell-completion to not split common names
- Fixed bootstrapping scripts to guard extraction of SDK version
- Fixed help text to be printed before value injection
0.12.1 / 2018-11-24
- Fixed bootstrapping scripts to exit without closing PowerShell
- Fixed expansion for Unix environment variables
- Fixed separator for target parameters
- Fixed
ToolPathResolverto resolve decidedly - Fixed
GitVersionTasksto resolve based onGitVersion.CommandLine.DotNetCorepackage - Fixed
InjectionAttributeBaseto pass build instance - Fixed
ReflectionServiceto be public to allow usage in addons - Fixed
DotNetTasksto exposerestorerelated parameters fortest,build,publish,pack,run
0.12.0 / 2018-11-15
- Changed
NukeBuildproperties to be static - Changed
NukeBuild.RootDirectoryto allow resolution from parameter - Added package resolution for Paket
- Added shell-completion for global tool
- Added parameter resolution for
Enumerationsubclasses - Added
PathExecutableAttributeandPackageExecutableAttributeforTooldelegate resolution - Added
PackPackageToolsTaskfor global tool packaging - Added
MSpecTasks - Fixed bootstrapping scripts to install by channel instead of latest version
- Fixed Glob package version to 0.3.2
- Fixed
Argumentspassing ofsecretparameter
0.11.1 / 2018-10-17
- Security: Updated YamlDotNet version
0.11.0 / 2018-10-11
- Removed deprecated APIs
- Added event methods
OnBuildCreated,OnBuildInitialized,OnBuildFinished,OnTargetStart,OnTargetAbsent,OnTargetSkipped,OnTargetExecutedandOnTargetFailed
0.10.5 / 2018-10-10
- Fixed
--sourceparameter forDotNetRestoreto be collection
0.10.4 / 2018-10-10
- Fixed
GitRepositorywhen origin URL uses SSH without username
0.10.3 / 2018-10-05
- Fixed
WinRelativePathandUnixRelativePathto use correct separator
0.10.2 / 2018-10-04
- Fixed
RequirementServiceto also support shorthand for properties
0.10.1 / 2018-10-02
- Fixed wizard to pass definitions for project file template
- Fixed wizard to create source and tests directory if selected
- Fixed wizard to be disabled for legacy format
0.10.0 / 2018-10-02
- Removed
PathConstruction.GetRootRelativePath - Removed
Licensefrom specification files - Deprecated
NukeBuild.Configurationwhich should belong to user-code - Deprecated plus operator in
PathConstruction.AbsolutePathandRelativePath - Changed
SolutionAttributeto resolve solution file via parameter - Changed CLI wrapper tasks to attempt to resolve tool paths from
[TOOL]_EXEenvironment variable - Added
AbsolutePath.Parentand equality members - Added
TypeConverterforAbsolutePathwhich allows passing paths as parameter - Fixed detection of value types in specification files
- Fixed path variable check to split by specific separator
0.9.1 / 2018-09-26
- Fixed wrong assertions in global tool
0.9.0 / 2018-09-22
- Deprecated properties in
NukeBuildwhich should belong to user-code - Deprecated default settings which should belong to user-code
- Deprecated
DocFxTaskswhich is moved to own package - Added
SpecFlowTasks - Added
NukeBuild.OutputSinkproperty for custom logger implementation - Fixed
MSBuildLocatorandMSBuildToolPathResolverto also consider/usr/local/bin/msbuild
0.8.0 / 2018-09-07
- Changed
ProcessTasksto automatically invoke .NET Core DLLs withdotnet.exe - Added
CoverletTask - Fixed exception in
ChangelogTasks.ReadChangelogwhenvNextsection was empty - Fixed console output to use ASCII instead of Unicode
- Fixed
MSBuildLocatorto use fallbacks when no VS instance with .NET Core is installed
0.7.0 / 2018-08-29
- Changed assertion of
DataClassproperties print out value on failure - Added
SquirrelTasks - Added
UnityTasks - Added tasks to update the changelog and get the latest version to
ChangeLogTasks - Fixed global tool to order solutions descending
- Fixed global tool setup to use correct definitions and error about broken solution
- Fixed validation of requirements of skipped targets
- Fixed double evaluation of conditions with
DependencyBehavior.Skip
0.6.2 / 2018-08-18
- Fixed
MSBuildLocatorto not useSystem.ValueTuple - Fixed typo in
OctopusCreateReleaseSettings - Fixed adaptation of solution file in global tool
- Fixed output of global tool on Windows
0.6.1 / 2018-08-09
- Fixed global tool to have 'same as global tool' as fallback version
- Fixed PowerShell invocation to use
-ExecutionPolicy ByPassand-NoProfile
0.6.0 / 2018-08-05
- Removed setup scripts in favor of
:setupcommand in global tool - Removed
ProcessSettingsin favor of integrating related properties intoToolSettings - Removed deprecated APIs
- Changed tasks with return type to return value tuple
- Changed tasks to redirect output by default
- Added
ITargetDefinition.WhenSkippedto specify dependency behavior for skipped targets - Added
SlackTasksandVSWhereTasks - Added namespace support in
XmlTasks - Added
FileSystemTasksfor deleting, moving, copying and hash calculation - Added support for loading external files
- Fixed various build server properties
- Fixed output color for
Logger.Infoto beConsole.ForegroundColor - Fixed naming of
VSTestTasks - Fixed build script to use VSWhere for locating MSBuild
- Fixed
NuGetPackageResolverto determineglobalPackagesFolderfrom config files - Fixed
Xunit2Settingsto specify framework of console executable - Fixed
DotNetRunSettingsto not quoteApplicationArguments
0.5.3 / 2018-06-12
- Fixed global tool to search build scripts also in current directory
- Fixed generic tasks to not redirect output by default
0.5.2 / 2018-06-11
- Changed build summary to log skipped and absent targets unconditionally
- Added
HttpTasksandFtpTasksfornetstandardtarget framework - Fixed global tool to simply exit if script execution returns non-zero exit codes
- Fixed global tool to search build scripts only within 2-level non-system sub-directories
- Fixed build summary to treat
NotRunas a failure
0.5.0 / 2018-06-05
- Changed build scripts to download .NET Core SDK only if local installation is missing or doesn't match expected version
- Added global tool for setup and build invocation
- Added version logging for PowerShell, Bash, NuGet and DotNet
- Added error output for CLT tasks when redirect output is enabled
- Added
[Tool]Tasks.[Tool](string arguments)for all CLTs - Added support for double-dashed arguments
- Fixed resolution of
Skipparameter when using separators - Fixed font resource resolution for deprecated namespace
- Fixed saving location of build scripts
0.4.0 / 2018-05-02
- Deprecated
Nuke.Corenamespace. All types have been moved toNuke.Common - Changed parameter binding to allow lisp-cased arguments (dashes for camel-humps)
- Changed build execution to automatically unwrap
AggregateExceptionandTargetInvocationException - Changed build server instances to access variables in non-ensured way
- Changed
GitRepository.FromLocalDirectoryto not return null but fail instead - Changed reference from
NuGet.ClienttoNuGet.Packaging - Changed summary output to use
Trace,Error,Successmethods ofLogger - Added integration infrastructure for ReSharper plugin
- Added typo-checking for arguments that should be bound via
ParameterAttribute - Added automatic retrieval of
GitRepositoryAttribute.BranchNamefrom build server instances - Added
Logger.Successmethod - Fixed
GitRepository.ParseUrlto strip username and password - Fixed nullable properties in
TeamServicesandBitrise - Fixed host simulation
- Fixed environment variable parsing when case-insensitive duplicates are found
0.3.1 / 2018-03-26
- Deprecated
Actionusages inDotCoverTasksandOpenCoverTasksin favor ofSetTargetSettings - Added
ProjectModelTaskswith matchingSolutionAttributefor auto-injection - Added
[Tool]Tasks.[Tool]Pathproperty for better accessibility - Added
DotCoverTasksaliases forcover,delete,merge,reportandzip - Added
ArrayExtensionsfor deconstruction - Changed
NukeBuild.Configurationto be overridable but still injectable - Fixed
ProcessManagerto resolvetoolPathfrom environment - Fixed
ProcessManagerto filter executable based on operating system and file extensions - Fixed
DeleteDirectoryfor non-existent sub-directories at time of deletion - Fixed line-endings in setup scripts
0.2.10 / 2018-03-05
- Fixed handling of
Graphswitch - Fixed logging in Nuke.CodeGenerator
- Fixed temporary directory path in setup and bootstrapping scripts
- Fixed
NuGetSettingsto resolve tool path fromNuGet.CommandLinepackage - Fixed
Invoke-WebRequestwhen InternetExplorer's first-launch configuration was not completed - Fixed resolution of relative paths to be minimal
- Fixed
PathConstruction.GetRelativePathto work with Unix paths - Fixed argument formatting for boolean values
- Fixed enumeration of modified collection
0.2.0 / 2018-02-26
- Deprecated
Targetparameter in favor of passing targets as first argument to the bootstrapping scripts - Deprecated
NoDepsparameter in favor of newSkipparameter that takes a separated list - Deprecated
DefaultSettingswhich are now exposed in each task class individually - Changed default values for
AssemblyVersionto{major}.{minor}.0andFileVersionto{major}.{minor}.{patch} - Added possibility to use
ParameterAttributein other injection attributes - Added
GitVersionAttribute.Bumpparameter for bumping major/minor versions - Added
GitVersionAttribute.DisableOnUnixproperty since GitVersion is not working consistently - Added
ChangelogTasks.FinalizeChangelogfor finalizing unpublished changes to a certain version - Added
ChangelogTasks.ExtractChangelogSectionNotesfor extracting release data for a specified tag - Added
NukeBuild.InvokedTargetswhich exposes targets passed from command-line - Added
NukeBuild.ExecutingTargetswhich exposes targets that will be executed - Added
NukeBuild.SkippedTargetswhich exposes targets that will be skipped - Added
GitRepository.IsGitHubRepositoryextension method - Added
GitRepositoryAttribute.BranchandGitRepositoryAttribute.Remoteproperties for pass-through - Added
build.cmdin setup for easier invocation on Windows - Added CLT tasks for Git
- Fixed background color in console output