Releases: gruke-build/src
Releases Β· gruke-build/src
10.3.1
10.3.0
- Added
KiotaTasks, a NUKE CLI tool wrapper for microsoft/kiota.- Example usage can be found in this very project, as I added this to generate the API client in
GreemDev.Nuke.Components.Forgejo. - usage; generated output
- Example usage can be found in this very project, as I added this to generate the API client in
- Forgejo Actions workflow generation & CI environment support
- Access environment variables defined in their documentation in your C# code in a type-safe manner with documentation for each variable.
- Due to Forgejo Actions' overwhelming similarities to GitHub Actions, I was able to maintain practically 1:1 feature parity with the GitHub Actions generator.
- The only missing feature (as far as I can tell, and only that I could have possibly encountered) is the lack of a
permissionsYAML block.
- The only missing feature (as far as I can tell, and only that I could have possibly encountered) is the lack of a
- Explicit support was added to support the limits of the Codeberg public FJA runners, as well as a class containing constants for them:
CodebergRunners - To provide GitHub Actions familiarity, Forgejo exposes
GITHUB_-prefixed environment variables. However, Forgejo also exposesFORGEJO_-prefixed variables, while GitHub does not.- As a result, Forgejo Actions is no longer treated as being a GitHub Actions environment.
- If you relied on this functionality you will need to replace your usages of
GitHubActionswithForgejoActionswhere relevant.
- Woodpecker CI workflow generation & CI environment support
- Woodpecker has no first-party job artifacts functionality, expecting you to use a plugin to provide that.
- The only plugins I could find require some form of external storage solution, meaning you (the user of Woodpecker) is responsible for managing your own artifacts bin.
- As a result, this is mostly only useful as a linter/tester on its own.
- You have access to Forge-specific APIs in the new
GreemDev.Nuke.Components.{GitHub, Forgejo, GitLab}NuGet packages.- You can use these to create releases. The Woodpecker CI generator has support for importing secrets.
ICreateGitHubReleasehas moved toGreemDev.Nuke.Components.GitHubICreateForgejoReleasehas been added toGreemDev.Nuke.Components.Forgejo, and works identically to GitHub; except where it had GitHub it has Forgejo now, what a surprise.ICreateGitLabReleasehas been added toGreemDev.Nuke.Components.GitLab, and is more complex, expecting aName,Version, andPackageName.- GitLab works differently to GitHub & Forgejo; it does not have a dedicated "release assets" feature.
- The solution we use is to upload to the Generic Package repository, then create a release that links to all the files in the GPR package version.
- Requires your GitLab project to have Releases and Package Registry enabled.
- GitLab works differently to GitHub & Forgejo; it does not have a dedicated "release assets" feature.
- These component interfaces do not need to be used on Woodpecker.
- You can use these to create releases. The Woodpecker CI generator has support for importing secrets.
- Woodpecker has no first-party job artifacts functionality, expecting you to use a plugin to provide that.
- Moved
GitterTasksto the namespaceNuke.Common.Tools.Gitter. SetBranchonGitRepositoryhas been removed; useGitRepository.ModifyCopy(branch: ...)instead.- Removed
ShutdownDotNetAfterServerBuildattribute, it existed due to the .NET CLI's lack of ability for forcibly disabling the use of build servers.- .NET has since added this, as such the attribute has been removed and its behavior has been nativized.
- You can re-enable build servers (not possible before) by setting your
NukeBuild'sDisableDotNetBuildServersproperty totrue.
- Dusted off the old Notifications system that existed in the project and hooked it up to a notifications JSON file I control.
- Probably will use this to notify about breaking changes.
- Notifications display after a build.
- Support has also been added to
DisableDefaultOutputAttributeto fully block displaying notifications at all. This will also skip requesting them.
- Removed Telemetry
- And removed the page on the docs about it.
- nuke-build#1321: fix: Allow UTF-8 console input
- Thanks, @rus-art!
10.2.0
- Removed properties in the
GitVersionrecord that have been removed in newer versions.- Instead of
NuGetVersionV2, useFullSemVer.
- Instead of
- Implemented a basic
.gitlab-ci.ymlgenerator. Currently only generates a single job, for all specified targets.- You can also specify to automatically upload all (known (via
.Produces)) artifacts from the executed targets. - On top of this, you can specify artifacts to exclude; as well as only running the job on specific branch(es) push event.
- You can also specify to automatically upload all (known (via
- Global Tool now generates build projects using .NET 10 and with the
GreemDev.Nukepackage. - Fixed duplicate key error in
GitRepository.GetRemoteNameAndBranch(fixes #1537)- Instead, only the most recent value is retained.
- Refactored the documentation in-repository to work on
mkdocs, hosted by readthedocs:- https://github.com/gruke-build/docs
- View the deployment on nuke.greemdev.net.
- Additionally, a docfx configuration has been made and has been deployed on ReadTheDocs alongside the above documentation for C# API reference documentation specifically.
- Results of the docfx build output are pushed to the
docfxbranch on thegruke-build/docsrepository, via a non-generated GitHub Action workflow. - View the deployment on nuke.greemdev.net/docfx.
- View the deployment on gruke.readthedocs.io.
- Results of the docfx build output are pushed to the
- nuke-build#1523: fix: log
npmwarn messages as a warning- Thanks, @moritz-baecker-integra!
- nuke-build#1572: Added support for XML Solutions into
gruke :setup- Thanks, @lahma!
- nuke-build#1583: Added support for resolving VS2026 MSBuild installations
- Thanks, @Kielek!
- nuke-build#1557: Added support for Windows installations being not on
C:\- Thanks, @Uriel6575!
- nuke-build#1549: Removed deprecated & retired Azure Pipelines OS images
- Thanks, @aneilmac!
- Similarly, I did the same for AppVeyor & GitHub runner images. (nuke-build#1519)
- Fix
StronglyTypedSolutionGeneratorcausing compilation errors when a Solution Folder is prefixed with digits. (nuke-build#1581)- Thanks, @ITaluone!