Release Notes

Cake v0.22.1 and v0.22.2 released

Published
Sunday, September 17, 2017
Category
Release Notes
Author
devlead

Version 0.22.1 and 0.22.2 of Cake have been released.

Following the release of Cake 0.22.0 the 13th of September, an issue with the GitVersion alias and deserializing certain integer properties the tools output was uncovered, and the decision was taken to quickly correct it.

A little too quickly, but fortunately David Driscoll caught, reported and supplied a pull request quickly, so huge thanks for that!

In these releases it's corrected in a non breaking way and for the next release these properties will be corrected from integer to nullable integers, which potentially will be a breaking change for anyone using those properties.

And as always thanks to all Cake contributors and users, Cake wouldn't have been possible without you!

Contributions were included from:

Full details of everything that was included in these releases can be seen below.

Read more...

Cake v0.22.0 released

Published
Wednesday, September 13, 2017
Category
Release Notes
Author
mholo65

Version 0.22.0 of Cake has been released.

So, let's be clear, this release will break things - but it is all intentional!

This release was initially about updating Roslyn, unifying scripting engines, and targeting .NET 4.6. But one thing led to another which resulted in better support for tool and addin versioning when using preprocessor directives, and an optional in-process NuGet client.

Updating Roslyn and unifying scripting engines has been a long-awaited improvement for many of you. This brings you C# 7 features (without need for --experimental switch), debugging with Mono (as we completely removed the old Mono scripting engine), and much, much more. It also allows us to ship Roslyn with Cake, so there's no need for Cake to actually download Roslyn anymore. In order for us to update Roslyn, we also needed to change target framework to .NET 4.6.

Tool and addin versioning when using preprocessor directives has been an issue, which has caused many questions. E.g. you may have noted that when changing version for a tool or addin, the old version was still used. Prior to this release, the only solution was to delete the tool/addin from the tools folder. This is now fixed as Cake supports side-by-side downloading of different versions of tools and addins.

Due to unpredictable results when downloading packages using nuget.exe, tool/addin versioning was solved by adding a intermediate directory containing the version number. This intermediate directory can however cause MAX_PATH issues when downloading some specific packages. To address this issue, we implemented functionality in Cake.NuGet to allow Cake to download tools and addins without the need for nuget.exe. This functionality is currently optional through configuration, and is the first step towards removing need for nuget.exe in Cake. Example usage to opt-in for the in-process NuGet client:

The in-process NuGet client also gives the possibility to load assemblies from NuGet dependencies. This behaviour can be enabled either via configuration or directive. Example usage for loading dependencies:

or

As 0.22.0 has several breaking changes, it will require addins to reference Cake.Core 0.22.0 or newer to be loaded, there's a "you're on your own anything can happen" setting to skip verification but we recommend to start targeting the newer version as soon as possible. Example usage to skip verification:

We have said it before, but here it comes again. Regardless of intentional or unintentional breaking changes, the possibility of new releases breaking something is why we always recommend you pin the version of Cake you're running, thus avoiding any unplanned broken builds. You can read more about pinning Cake version here. We always try to avoid breaking changes, but we think these new features and improvements justify the friction, and we hope you will too!

And as always thanks to all Cake contributors and users, Cake wouldn't have been possible without you!

Contributions were included from:

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

Read more...

Cake v0.21.1 released

Published
Saturday, July 15, 2017
Category
Release Notes
Author
gep13

Version 0.21.1 of Cake has been released.

Following the release of Cake 0.21.0 yesterday, a couple of issues were uncovered, and the decision was taken to correct them immediately. These are minor issues, and are not expected to cause any major problems. Please let us know if you have any issues.

And as always thanks to all Cake contributors and users, Cake wouldn't have been possible without you!

Contributions were included from:

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

Read more...

Cake v0.21.0 released

Published
Friday, July 14, 2017
Category
Release Notes
Author
devlead

Version 0.21.0 of Cake has been released.

So, let's be clear, this release will break things - but it is all intentional!

This release is mostly about bringing the .NET Core aliases up-to-date with .NET Core SDK 1.0.4, which is the latest RTM/stable version. The shift to using MSBuild and from project.json to csproj project system has resulted in many breaking changes and additions to the .NET CLI.

Regardless of intentional or unintentional breaking changes, the possibility of new releases breaking something is why we always recommend you pin the version of Cake you're running, thus avoiding any unplanned broken builds. You can read more about pinning Cake version here.

Huge thanks to Jonathan Kuleff, who has done a brilliant job and epic effort in methodically going through the .NET CLI and Cake aliases identifying what's been changed, removed or added! It's been great working with you through these pull-requests.

image

And as always thanks to all Cake contributors and users, Cake wouldn't have been possible without you!

Contributions were included from:

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

Read more...

Cake v0.20.0 released

Published
Monday, June 12, 2017
Category
Release Notes
Author
devlead

Version 0.20.0 of Cake has been released.

This release hopefully contains no new features!

But nevertheless it's the result of a great team effort. With this release we've finally migrated from VS2015 and .NET Core preview bits and project.json to VS2017 / .NET Core SDK 1.0.4 and csproj. This release also contains a few documentation improvements.

It's been a little more work than expected to get everything to compile and test successfully cross platform using the new SDK, but now the yak if finally shaved and we have an release out!

Our goal is for there to be no breaking changes with this build, but there's certainly a risk of that as changing underlying SDK and build tooling is a substantial move of cheese.

This is why we always recommend you pin the version of Cake you're running to avoid any unplanned broken builds. You can read more about pinning Cake version here.

Huge thanks to all Cake contributors and users, Cake wouldn't have been possible without you!

Contributions were included from:

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

Read more...