March, 2017

VSWhere and Visual Studio 2017 Support

Published
Monday, 27 March 2017
Category
How To's
Author
phillipsj

Since version 0.18.0 of Cake, there has been support created for Visual Studio 2017. The support was added to the MSBuild tool to search for the default installation locations of the various flavors of MSBuild. The default locations did not require an external dependency on the Microsoft.VisualStudio.Setup.Configuration.Interop package that was created by Microsoft to help locate Visual Studio 2017 installations.

Shortly after the release of version 0.18.0, Microsoft released a tool called vswhere to help locate Visual Studio and other products in the family. This tool was released with Cake version 0.19.1 to allow everyone that moved to Visual Studio 2017 to get their builds up and running.

This post is going to walk through the different pieces of functionality supported by the VSWhere tool.

Read more...

Cake v0.19.1 released

Published
Friday, 24 March 2017
Category
Release Notes
Author
devlead

Version 0.19.1 of Cake has been released.

This is a minor hotfix release for 0.19.0, which fixes an issue discovered in the new VSWhere aliases.

So what is VSWhere? One issue with Visual Studio 2017 is that it can be installed anywhere, and you can have multiple versions side by side. As a result the registry keys, and standard paths previously used to identify where Visual Studio was installed, no longer apply.

This is where VSWhere comes in. It's a utility that can identify and list current installations of Visual Studio, as well as other developer products.

VSWhere is available on NuGet (and Chocolatey) which means you can fetch it using the tool pre-processor directive like this:

There are a couple of VSWhere aliases available in Cake. If you just want to use the latest Visual Studio version available - then there's the VSWhereLatest alias. A complete example of fetching the VSWhere tool and using it to find path to MSBuild is shown below:

Contributions were included from:

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

Read more...

Cake v0.19.0 released

Published
Thursday, 23 March 2017
Category
Release Notes
Author
devlead

Version 0.19.0 of Cake has been released.

This release of Cake is a smaller release in preparation for upgrading Cake itself to utilize latest RTM .NET SDK and Visual Studio 2017. The goal for v0.20.0 is also to unify around one scripting engine - Roslyn version 2.0 and depreciating the Mono scripting engine, this will likely result in raising the minimum supported version of .NET and Mono. We will before next release document and communicate exact versions.

We strongly recommend you pin the current version of Cake your using to avoid any unplanned interruption in your builds as the result of any potential future breaking changes. The Pinning Cake Version under the tutorials section of our website describes how to achieve this with the default bootstrappers.

Please let us know if you run into any issues with this latest release.

Once again, the Cake Team have been overwhelmed by the number of contributions from our Community Members. Simply put... THANK YOU!

Contributions were included from:

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

Read more...

Cake v0.18.0 released

Published
Tuesday, 7 March 2017
Category
Release Notes
Author
devlead

Version 0.18.0 of Cake has been released.

This release of Cake sees a number of new features added, as well as some bug fixes, however, most importantly, there's a couple of breaking changes.

The minor breaking changes involve the old obsoleted DNU alias have been removed and WiXHeat had an incorrect signature which have been corrected.

The bigger breaking change is that with this release addins must target at least Cake.Core version 0.16.2 or later, addins targeting older versions will abort script execution. Many addins have already been updated and the many of those who have not yet upgraded, have pull requests ready for them. If any of the addins you use should be affected by this, please raise an issue in that addins repository. We've tried to reach out to all authors, but with hundreds of addins we've surely missed one or two. We do recommend you pin your builds to the version of Cake you using, that way you reduce the risk of builds failing because breaking changes. Instead you can do a controlled upgrade and take your time to sort any issues.

Amongst the more notable new features is MSBuild / Visual Studio 2017 support and support for loading scripts from NuGet.

We're also pleased to announce that from this release and forward all official Cake binaries will be signed with a .NET Foundation certificate, this isn't strong naming, so it won't affect addins in any way, just ensure the authenticity of the binaries. image

Worth noting in a near future release we will update to and unify around latest stable version Roslyn scripting - this means Mono scripting engine will be removed, we will still run on Mono, but we will require a newer version of Mono than we do today. This will bring a lot of benefit for Cake as we will be able to support the latest C# features and reduce the maintenance burden and error process of maintaining multiple scripting engines.

Please let us know if you run into any issues with this latest release.

Once again, the Cake Team have been overwhelmed by the number of contributions from our Community Members. Simply put... THANK YOU!

Contributions were included from:

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

Read more...