Cake v1.0.0-rc0002 released

Published
20 December 2020
Category
Release Notes
Author
devlead

Version 1.0.0-rc0002 of Cake has been released.

This is the second, and probably last, pre-release version of Cake 1.0. Focus in this release has been to bring Cake Frosting up to speed, align it with the Cake script runners and bug fixes.

Major new features

  • Frosting NuGet tool resolution
  • Align Cake Frosting CLI with Cake script runners
  • Bug fixes
  • Addin recommended Cake version set to 1.0

Why Release Candidate?

We've chosen to release 1.0 as a pre-release to NuGet and Chocolatey, so we and the community can more easily test and ensure that our 1.0 release will be as stable as possible. It will also enable us to see if there are any steps you need to take to adapt your scripts for 1.0, and for us to see if there're any unintended breaking changes, by testing as many addins, modules, and recipes as possible.

Breaking changes in Cake Frosting

CakeHostBuilder has been removed. With Cake.Frosting 1.0 CakeHost can be used directly to create the CakeHost object.

With Cake.Frosting 0.38.x:

// Create the host.
var host =
    new CakeHostBuilder()
       .WithArguments(args)
       .UseStartup<Program>()
       .Build();

// Run the host.
return host.Run();

With Cake.Frosting 1.0:

// Create and run the host.
return
    new CakeHost()
        .UseContext<BuildContext>()
        .Run(args);

In preparation for the 1.0 release, we've now set the recommended version of Cake.Core for addins to target to 1.0.

This won't break the build but you might see warnings like below when Addins/Modules are loaded.

The assembly 'Cake.DotNetTool.Module, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null'
is referencing an older version of Cake.Core (0.33.0).

Addin authors can start preparing for the 1.0 release by starting to build against Cake.Core version 1.0.0-rc0002.

Upgrading

See Upgrade instructions for documentation about breaking changes in this release.

Contributors

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.

Breaking change

  • #2930 Increase potential breaking change property.
  • #2904 (Frosting) Tool installer should respect configuration.

Feature

  • #2933 Enable NuGet provider in Frosting.

Improvement

  • #2838 Add MakeRelative alias to DirectoryPath and FilePath.
  • #2886 (Frosting) Support all commands that Cake does.
  • #2893 (Frosting) Align command line parsing with Cake.
  • #2892 (Frosting) Add ANSI console.

Documentation

  • #2962 Document breaking changes in 1.0 CLI.

Build

  • #2980 Update to .NET 5 SDK 5.0.101.
  • #2929 GitReleaseManager milestone should use SemVersion.
  • #2928 Cake.Frosting and Cake.Frosting.Template not pushed to NuGet.
  • #2900 Update to .NET 5 SDK "RTM".

Bug

  • #2963 EndOfStreamException thrown when using loaddependencies=true.
  • #2956 Wrong Cake version in build.config.