nuke

🏗 The AKEless Build System for C#/.NET

MIT License

Stars
2.5K
Committers
152

Bot releases are hidden (Show)

nuke - 8.0.0 Latest Release

Published by matkoch 9 months ago

  • Changed string parameters to violate requirement when empty or whitespace
  • Added on-demand value injection using OnDemandAttribute and OnDemandValueInjectionAttribute
  • Added AbsolutePath division operator for .. range expression
  • Added DOTNET_NOLOGO to bootstrapping files
  • Fixed BinaryFormatterSerialization warning by suppression
  • Fixed .NET SDK discovery in bootstrapping files
  • Fixed quotation for bootstrapping script invocation
  • Fixed filtering on FileAttributes
  • Fixed quoting in AppVeyor generation
  • Fixed members in AzurePipelinesImage
  • Fixed members in GitHubActionsImage
  • Fixed lower-case naming in DotNetVerbosity members
  • Fixed missing DotNetTasks commands
  • Fixed missing EntityFrameworkTasks command
  • 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
nuke - 7.0.6

Published by matkoch about 1 year ago

  • Fixed logging of Docker target execution to fall back to debug messages
nuke - 7.0.5

Published by matkoch about 1 year ago

  • 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 DockerTasks command
nuke - 7.0.4

Published by matkoch about 1 year ago

  • Fixed check on nullable parameter type
  • Fixed telemetry check on home repository
  • Fixed missing environment variables for AppVeyor
  • Fixed ICreateGitHubRelease to work with existing releases
  • Fixed ICreateGitHubRelease to set GitHubToken unconditionally
  • Fixed SetBuildTarget and SetTestPlatform overloads in UnityTasks
  • Fixed UnityRunTestsSettings base type
nuke - 7.0.3

Published by matkoch about 1 year ago

  • Fixed enumeration value sets to exclude non-public fields
  • Fixed check for NUKE_ENTERPRISE_TOKEN in build.sh bootstrapping 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 Output collection
  • Fixed handling of AbsolutePath collections in ArgumentStringHandler
  • Fixed handling of IAbsolutePathHolder in ArgumentStringHandler
  • Fixed handling of relativePath for SolutionAttribute in StronglyTypedSolutionGenerator
  • Fixed error reporting in StronglyTypedSolutionGenerator
  • Fixed TeamCity pom.xml template 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
nuke - 7.0.0

Published by matkoch over 1 year ago

  • Refactored out multiple projects
  • Renamed ProcessCustomLogger to ProcessLogger
  • Renamed LocalExecutableAttribute to LocalPathAttribute
  • Renamed NpmExecutableAttribute to NpmPackageAttribute
  • Renamed PackageExecutableAttribute to NuGetPackageAttribute
  • Renamed PathExecutableAttribute to PathVariableAttribute
  • Changed bootstrapping scripts to use STS instead of Current channel
  • Changed Target conditions to use regular delegates captured using CallerArgumentExpressionAttribute
  • Changed AbsolutePath to implicit cast to string
  • Changed HandleSIngleFileExecutionAttribute to be opt-in
  • Changed string-based command-line tool tasks to use ArgumentStringHandler
  • Changed LatestMavenVersionAttribute to exclude previously hardcoded m2 suffix
  • Changed OctoVersionTasks to use replacement package
  • Removed legacy project setup
  • Removed YAML shell completion
  • Removed ExternalFilesTask
  • Removed CheckBuildProjectConfigurationsAttribute
  • Removed obsolete members in OctoVersionAttribute
  • Removed Nuke.MSBuildLocator package
  • Updated package dependencies
  • Updated AzureKeyVault integration
  • Added assertion against Target self-dependence
  • Added support for tool requirements and automatic installation
  • Added ProcessExitHandler for CLT tasks
  • Added auto-resolution of appropriate framework in NuGetToolPathResolver
  • Added windowsPath and unixPath to LocalPathAttribute
  • Added LatestMavenVersionAttribute.IncludePrerelease
  • Added DelegateDisposable.SetAndRestore
  • Added Solution implicit cast to AbsolutePath
  • Added AbsolutePath extension methods for TextTasks, FileSystemTasks, CompressionTasks, SerializationTasks
  • Added AbsolutePath plus operator
  • Added EnvironmentInfo.Paths
  • Added IFormattable to AbsolutePath
  • Added properties for permissions in GitHubActions generation
  • Added support for job timeout and concurrency configuration in GitHubActions generation
  • Added PublishCondition and LFS property in GitHubActions generation
  • Added Directory.Packages.props to 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 GitHubTasks through GITHUB_TOKEN environment variable
  • Added StaticWebAppsTasks
  • Added PwshTasks
  • Fixed linking of Directory.Build files in build project view
  • Fixed skipping of trigger dependencies when original target is skipped
  • Fixed continue parameter 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.config discovery
  • Fixed ProcessException to retain exit code
  • Fixed StronglyTypedSolutionGenerator to add auto-generated XML header
  • Fixed NPM integration
  • Fixed Repository.IsGitHubRepository to consider nullable Endpoint
  • Fixed casing for PublishBuildArtifacts in 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
nuke - v6.3.0

Published by matkoch over 1 year ago

  • Added new version of Octokit
  • Added OptionalAttribute to suppress auto-injection warnings
  • Added ability to override ProcessCustomLogger in ToolSettings
  • Added ability to exclude auto-linked files in build project
  • Added DiscordTasks
  • Added MastodonTasks
  • Added JavaScriptProject project 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 ProcessException to output standard output
  • Fixed MinimalOutput in UnityTasks
  • Fixed missing AzurePipelinesBuildReason
  • Fixed missing arguments in DotNetTasks
  • Fixed argument formatting in HelmTasks
  • Fixed missing command in DotNetTasks
nuke - v6.2.1

Published by matkoch over 1 year ago

  • Fixed logging configuration
nuke - v6.2.0

Published by matkoch over 1 year ago

  • Added support for intercepted targets
  • Added target interception for Docker
  • Added support for context components
  • Added DisableDefaultOutputAttribute
  • Added InstallNpmToolsAttribute and NpmExecutableAttribute
  • Added EnvironmentInfo.IsArm64
  • Added SetProcessExecutionTimeout overload for TimeSpan
  • Added DotNetRuntimeIdentifiers
  • Fixed telemetry
  • Fixed GetPathExecutable to manually search PATH environment 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
nuke - v6.1.2

Published by matkoch over 1 year ago

  • Removed Newtonsoft.Json.Schema dependency
  • Fixed Nuke.GlobalTool to target net6.0
  • Fixed telemetry to calculate properties only on demand
  • Fixed missing Framework in MinVerTasks and MinVerAttribute
  • Fixed missing arguments in DotNetTasks
nuke - v6.1.0

Published by matkoch over 1 year ago

  • Removed extended setup wizard
  • Changed Nuke.GlobalTool to use Spectre.Console
  • Deprecated CheckBuildProjectConfigurationsAttribute
  • Added single-file packaging and execution
  • Added output customization via NukeBuild.WriteLogo, WriteTarget, and WriteSummary
  • Added second-chance registration for MSBuild from .NET CLI
  • Added submodule support in GitHub Actions, Space Automation, and AppVeyor
  • Added NukeBuild.BuildAssemblyFile property
  • Added generic EnvironmentInfo.SetVariable
  • Added support for Bitbucket
  • Added GitHub Actions support for fetch-depth
  • Fixed default_target replacement in help text
  • Fixed parameter padding and line breaks in help text
  • Fixed Assert methods to accept IReadOnlyCollection
  • Fixed fatal failure of MSBuildLocator
  • Fixed missing MSBuild registration when using ProjectExtensions
  • Fixed NuGetPackageResolver performance by reading metadata from .nuspec files
  • Fixed GitRepository initialization when remote is not set
  • Fixed exception for duplicated keys in TeamCity property files
  • Fixed missing arguments for DotNetTasks
nuke - v6.0.3

Published by matkoch over 1 year ago

  • Fixed exception handling in various places
  • Fixed shell-completion file to be written after parameter resolution
  • Fixed SpecialFolders.UserProfile on Docker
  • Fixed SolutionSerializer to work on sanitized content
  • Fixed GitRepository branch 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
nuke - v6.0.2

Published by matkoch over 1 year ago

  • Fixed Update command to use net6.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 ExecutingTarget instead of Target to 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.GetMemberValue to 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_TOKEN instead of GITHUB_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 PowerShellTasks to use PowerShell Core on non-Windows systems
  • Fixed missing runtime types in NSwagTasks
nuke - v6.0.1

Published by matkoch almost 3 years ago

  • Fixed invisible output for SystemConsoleHostTheme
  • Fixed GetRelativePath for same parts in different places
nuke - v6.0.0

Published by matkoch almost 3 years ago

  • Removed ToolSettings.ProcessLogFile and ProcessLogTimestamp
  • Removed GitHub prefix for GitHubActions environment variables
  • Deprecated Logger in favor of Serilog.Log
  • Deprecated ControlFlow asserts in favor of Assert class
  • Changed Nuke.GlobalTool to enable RollForward with LatestMajor
  • Changed default serialization settings for JSON and YAML in SerializationTasks
  • Changed GitHub Actions generation to use default GitHubActions.Token through EnableGitHubContext
  • Changed Azure Pipelines generation to use default AzurePipelines.AccessToken through EnableAccessToken
  • Added shell-completion support for global tool builds
  • Added NukeBuild.ExecutionPlan to public API
  • Added Partition.Part and Total to public API
  • Added MSBuildToolPathResolver support for Visual Studio 2022
  • Added XmlTasks variants for string objects
  • Added AbsolutePath.Name and NameWithoutExtension properties
  • Added AbsolutePath.Exists, FileExists, and DirectoryExists extension methods
  • Added Project.HasPackageReference and GetPackageReferenceVersion
  • Added UpdateFile variants in SerializationTasks
  • Added StdToText and StdToJson extension methods for IEnumerable<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 AzurePipelinesCachePaths for common cache paths
  • Added AzurePipelines.PhaseName property
  • Added GitHub.CreateComment for issue and pull-request comments
  • Added TeamCity.AuthUserId and AuthPassword properties
  • Added AppVeyorSecretAttribute for generation of secret value entries
  • Added HttpClient, HttpRequest, and HttpResponse extensions
  • Added XNode extensions
  • Added LatestMavenVersionAttribute
  • Added MauiCheckTasks
  • Added MinVerTasks and MinVerAttribute
  • Added PowerShellTasks
  • Added BootsTasks
  • Added NetlifyTasks
  • Fixed check for executables compiled with PublishSingleFile
  • Fixed MSBuild localization using MSBuildLocator
  • Fixed missing assertion for successful status code in HttpTasks
  • Fixed Azure Pipelines caching
  • Fixed IBuildServer.Branch for AzurePipelines
  • Fixed OctoVersionTasks and OctoVersionAttribute for latest version
  • Fixed AzureSignToolTasks to invoke sign command
  • Fixed missing Files property in AzureSignTool
  • Fixed missing Blame* properties in DotNetTasks
  • Fixed property types in ILRepackTasks
  • Fixed UnityTasks to auto-detect version
  • Fixed quoting for UnityTasks.LogFile
nuke - v5.3.0

Published by matkoch almost 3 years ago

  • Added LFS and Submodule settings in AzurePipelines configuration
  • Added OctoVersionTasks and OctoVersionAttribute
  • Added AzureSignToolTasks
  • Added ChocolateyTasks
  • Fixed invocations for PowerShell bootstrapping script
  • Fixed retrieval of version_dotnet_sdk in 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.GetGitHubBrowseUrl to trim trailing slash
  • Fixed GitVersionAttribute.Framework default value to net5.0
  • Fixed URLs in ChangeLogTasks
  • Fixed DotNetTestSettings.Loggers property to accept multiple values
  • Fixed default value emission for DotCoverTasks
  • Fixed missing properties for GitVersionTasks
  • Fixed missing secret attributes in SonarScannerTasks
  • Fixed NerdbankGitVersioningFormat enumeration to use lower-case
nuke - v5.2.1

Published by matkoch almost 3 years ago

  • Fixed telemetry
  • Fixed humanized string concatenation
nuke - v5.2.0

Published by matkoch almost 3 years ago

  • Added telemetry data collection
  • Added unified NukeBuild.Partition property
  • Added Rider, VisualStudio, VSCode as Host implementations
  • Added GitRepository.IsOnMainBranch and IsOnMainOrMasterBranch
  • Added AbsolutePath equality operators
  • Fixed SpaceAutomation to generate default refSpec
  • Changed Microsoft.CodeAnalysis.CSharp package version to 3.9.0
  • Removed Refit reference and ITeamCityRestClient interface
  • Removed Colorful.Console reference and embedded figlet fonts
nuke - v5.1.4

Published by matkoch almost 3 years ago

  • Fixed StronglyTypedSolutionGenerator to resolve root directory only on demand
  • Fixed JetBrains.Annotations to be packed with source generators
  • Fixed missing SpaceAutomation configuration link
nuke - v5.1.3

Published by matkoch almost 3 years ago

  • Fixed filtering explicitly overridden targets in build components