Blog

Cake v0.33.0 released

Published
Monday, April 1, 2019
Category
Release Notes
Author
gep13

Version 0.33.0 of Cake has been released.

In this version we had contributions from 21 contributors outside of the core Cake Team members! This is an amazing number, and we thank everyone for their contributions!

During this release, all the Cake Team Members were in the same place at the same time (at the Microsoft MVP Summit), and we were able to sit together around the same table and discuss a number of the outstanding PR's that we had on the repository. We were able to get down from 26 open PR's to just 5 (which has now increased again to 7). It was great to meet all the team members (some for the first time), and discuss the future of Cake. We have lots of plans for the future, and are all looking forward to continuing to contribute to the project.

This release see a number of long waited features being added, including the ability to use a globbing pattern within the #load directive. As well as this, a number of improvements were included, and a number of bugs squashed. All of these are detailed below in the release notes section.

If you have ever been interested in peeking behind the scenes at "how" we do a Cake Release, I actually did a live stream of the Cake 0.33.0 version. This is now published to my YouTube Channel, and you can watch it back here, if you are interested. We are aware that there are some steps in our release process that can be further automated, and this is one of the areas that you are likely to see some change in 2019. Watch this space!

If you mind any problems with this latest release, then please feel free to reach out via the normal channels, Gitter, GitHub, Stack Overflow, and Twitter.

Known Issue

  • If you are using GitVersion 3.x.x you may run into issues as a result of the changes that were made in this issue. Version 4 of GitVersion introduced changes to the verbosity setting that it uses, and Cake has been updated to use this setting, in line with the current verbosity that Cake is executing with. As a result of this change, users of GitVersion 3.x.x will see an error when it attempts to parse the verbosity setting. The current recommendation is to update to version 4.x.x of GitVersion.

Contributions were included from:

NOTE: When a GitHub Profile hasn't been configured properly, the automated tool we use to generate the above list isn't able to find a GitHub profile to link to, that is why they appear as text only.

Full details of everything that was included in this release can be seen below.

Issues

As part of this release we had 44 issues closed.

Breaking change

  • #2514 Add additional report types for ReportGenerator.
  • #2130 Add exceptions thrown to TaskTeardownContext.
  • #2141 Add Verbosity property to GitVersionSettings.

Feature

  • #2456 Add logging aliases to override the log verbosity.
  • #2453 Unify pull request status across providers.
  • #2440 Add EnvironmentVariable alias.
  • #2400 Add globber pattern support to the #load directive.

Improvement

  • #2507 Cake.CoreCLR can't handle whitespace in path.
  • #2491 Add additional Azure DevOps (TFBuild) properties.
  • #2484 Octopus Deploy 2019.1 and Spaces feature.
  • #2478 Lock file arguments for NuGet and dotnet restore.
  • #2474 TeamCityProvider.BuildProblem method should conform to TeamCity API .
  • #2472 Expose ICakeConfiguration (or specific values like tools path) on context.
  • #2465 Roundhouse dotnet tool does not run.
  • #2463 DoesForEach don't support data context for items functions.
  • #2462 Added unit tests for Cake.Core.
  • #2459 Add MSBuildPath to NuGetRestoreSettings.
  • #2449 ARM64 missing from MSBuild target platform.
  • #2445 Add OnError.
  • #2433 NugetRestore still using msbuild 15.
  • #2429 Add provider name to BuildSystem.
  • #2415 Add support for MSBuild options to enable RestoreLockedMode.
  • #2393 MethodAliasGenerator doesn't generate parameter attributes.
  • #2345 Allow NuGetRestoreSettings to opt out of setting -NonInteractive.
  • #2270 Allow to listen and modify redirected standard output of a process.
  • #2124 Add Support for IEnumerable tokens on TextTransformationExtensions.
  • #2087 Include more detailed exception information when Exception is AggregateException.
  • #2026 Support for additional SignTool flags.
  • #2019 Clean up some parser tests.
  • #1384 Enhancement: Add support for filtering files in Globbing alias.
  • #820 Log tools command-line at higher log level (preferably default).

Documentation

  • #2512 TFBuildPublishCodeCoverageData xml comments minor typo.
  • #2025 The tool path for MSpec needs to be changed in the documentation .

Bug

  • #2504 Update .NET Core SDK 2.1.505.
  • #2487 Warn and skip code gen for duplicate aliases.
  • #2481 FilePath and DirectoryPath implicit conversions should return null when passed null.
  • #2473 ParseAssemblyInfo does not support .NET Core generated assembly info .
  • #2468 DotNet commands do not respect the verbosity.
  • #2439 HtmlInline_AzurePipelines and MHtml shares the same numeric value.
  • #2432 Azure Pipelines build system not recognized with non-Windows jobs.
  • #2088 VSWhere -requires and -products argument values are quoted but VSWhere doesn't support multiple values in quotes.

Build

  • #2503 Fix T4 integration test.
  • #2501 Don't explicitly exclude GitVersion from executing on non-windows systems.
  • #2423 (build) Switch to GitReleaseManager Global Tool.

Cake v0.32.0 released

Published
Friday, January 4, 2019
Category
Release Notes
Author
devlead

Version 0.32.0 of Cake has been released.

This is the first release for 2019, but before we focus on the new, a short retrospect of 2018. In 2018 we had 11 releases of Cake, hundreds of PRs from over fifty individual contributors, hundreds of issues raised and closed, and millions of downloads. All in all, it sums up to an active and healthy community – which we’re very grateful for, thank you!

A trend we saw in 2018 was that more and more tools start to come as .NET Global tools (including Cake itself) and most of these have been added to Cake tool resolution, allowing you with minimal changes run in a pure .NET Core environment.

This release has several improvements and fixes, to note a few, Cake’s Zip archive functionality has been greatly improved, initial support for VS2019 / MSBuild 16 has been added, a complete list of changes can be found below.

Happy New Year!

Known issue

Contributions were included from:

Full details of everything that was included in this release can be seen below.

Read more...

Cake v0.32.1 released

Published
Friday, January 4, 2019
Category
Release Notes
Author
devlead

Version 0.32.1 of Cake has been released.

This is a hotfix release for 0.32.0, to fix a bug with Chocolatey pack.

Contributions were included from:

Full details of everything that was included in this release can be seen below.

Read more...

Cake v0.31.0 released

Published
Thursday, December 13, 2018
Category
Release Notes
Author
devlead

Version 0.31.0 of Cake has been released.

In this version we've got quite a few new features, improvements and fixes. A full list of changes is at end of this post, but first there's a few we would like to highlight.

Cake's built-in globber has gone through a major overhaul, with several improvements. A few notable ones are:

Example usage:

Full .NET Framework tools will usually execute fine on Windows even if running under .NET Core, but they'll fail on Unix systems. They don't know what to do with .NET Framework executables. With this release, Cake will inspect if tools with .exe extension have a proper .NET Framework PE header and then try to execute it with Mono if available.

This means that you'll be able to use .NET Framework tools even if you're using Cake.CoreCLR or Cake.Tool running under .NET Core, if you have Mono installed.

The --version argument has changed to only output the Semantic Version of Cake i.e. 0.31.0, or 0.31.0-alpha0095, for a pre release. This will make it easier to check and verify available Cake version in scripts and bootstrappers.

You can still get the previous output by using the --info argument.

Cake has been updated to use version 4.9.2 of the NuGet client libraries, which has several fixes, especially around performance and signed packages.

Contributions were included from:

Full details of everything that was included in this release can be seen below.

Read more...

Cake v0.30.0 released

Published
Wednesday, August 22, 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.

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.

Once installed, you can launch cake from anywhere using the .NET CLI

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:

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.

Setting classes collection properties have been overhauled and refactored to enable initializer syntax. Might seem small, but it's really convenient, it makes

become

Contributions were included from:

Full details of everything that was included in this release can be seen below.

Read more...