- Published
- Wednesday, 22 August 2018
- Category
- Release Notes
- Author
- devlead
Version 0.30.0 of Cake has been released.
With this release we've got several improvements and bug fixes contributed from the community, so firstly big thanks to all for your continued support! In this post we would like to highlight a few of those.
Global Tool
Cake is now available as a global .NET CLI tool.
This means you can easily install Cake and have it globally available in your environment using the dotnet tool
command.
dotnet tool install -g Cake.Tool --version 0.30.0
Once installed, you can launch cake
from anywhere using the .NET CLI
dotnet cake build.cake
Which means you can now easily bootstrap the installation of Cake, if you have .NET Core SDK version 2.1.400 or newer installed. Existing boostrappers will still work as we created a new NuGet package for the tool, which means we now have the following packages for Cake:
- Cake - compiled for .NET 4.6.1 / Mono
- Cake.CoreCLR - compiled for .NET Core 2.0
- Cake.Tool - .NET tool compiled for .NET Core 2.1
Updated NuGet client
NuGet client assemblies have been updated to latest stable, this resolves issues with signed NuGet packages which could cause Cake to hang while acquiring tools and addins from NuGet.org.
Collection initializers
Setting classes collection properties have been overhauled and refactored to enable initializer syntax. Might seem small, but it's really convenient, it makes
new FooToolSettings
{
EnvironmentVariables = new Dictionary<string, string> { ["FOO"] = "foo" }
}
become
new FooToolSettings
{
EnvironmentVariables = { ["FOO"] = "foo" }
}
Contributions were included from:
Full details of everything that was included in this release can be seen below.
Issues
As part of this release we had 14 issues closed.
Feature
- #2067 Publish as .NET Core Global Tool.
Improvement
- #2238 Add repository metadata to NuGet packages.
- #2234 Remove mono argument from Argument Parser.
- #2211 DotNetCorePublishSettings doesn't contain
--no-build
flag support introduced in .NET Core SDK 2.1. - #2146 Enabling initializer syntax for all collection properties.
- #1401 Support for dotCover configuration file.
Documentation
- #2233 Add bootstrap argument to Help Command.
- #2232 Add exclusive argument to Help Command.
- #2220 Incorrect documentation for InnoSetup Alias.
Bug
- #2228 CakeTaskExtensions are no longer accessible.
- #2224 Add option for ProcessSettings to opt out of working directory magic.
- #2214 Cake.CoreCLR can't handle whitespace in path.
- #2208 WithCriteria
does not work with 'DryRun' (WhatIf flag). - #2207 NuGet hang due to bug in NuGet 4.6.0.