Skip to content

Releases: cake-contrib/Cake.Npm

0.13.0-beta.1

06 Mar 21:36
Compare
Choose a tag to compare
0.13.0-beta.1 Pre-release
Pre-release

As part of this release we had 6 issues being closed.

Requirements

  • Cake 0.26.0 or higher

Breaking change

  • #70 Support Cake 0.26.0

Feature

  • #69 Support for npm ci

Improvement

  • #60 Add support for standard error & output redirecting

Documentation

  • #64 Add Wyam documentation
  • #63 Update to default cake-contrib readme
  • #61 Add contributing information

0.12.1

16 Oct 17:40
Compare
Choose a tag to compare

As part of this release we had 3 issues closed.

Requirements

  • Cake 0.22.0 - Cake 0.25.0

Improvements

  • #57 Add the ability to specify --prefer-offline in NpmInstallSettings
  • #56 Add the ability to specify --registry in NpmInstallSettings
  • #54 Add the ability to specify --no-optional in NpmInstallSettings

0.12.0

13 Sep 15:49
0.12.0
Compare
Choose a tag to compare
  • Updated to reference Cake.Core 0.22
  • Removes support for net45
  • updates doc xml to use net46 files

Requirements

  • Cake 0.22.0 - Cake 0.25.0

If you are having trouble running your build with a pinned cake version (https://cakebuild.net/docs/tutorials/pinning-cake-version):

Downloading NuGet.exe...
Installing Cake...
Running build script...
Analyzing build script...
Processing build script...
Installing tools...
Installing addins...
Could not find any assemblies compatible with .NETFramework,Version=v4.5.
Error: Failed to install addin 'Cake.Npm'.

You will need to:

0.11.0

19 Aug 07:27
Compare
Choose a tag to compare

As part of this release we had 2 issues closed.

Requirements

  • Cake 0.18.0 - Cake 0.21.1

Features

  • #48 Add Npm Rebuild Aliases

Improvements

  • #44 Use Cake Contrib icon

0.10.0

19 May 11:25
Compare
Choose a tag to compare

As part of this release we had 4 issues closed.

Requirements

  • Cake 0.18.0 - Cake 0.21.1

Features

  • #20 Add support for npm publish command.

Improvements

  • #19 Return list of created packages from Pack command
  • #39 Add fluent API to settings classes

Documentation

  • #41 NuGet package should contain documentation XML

0.9.2

02 May 14:04
Compare
Choose a tag to compare

re #34 - Ensures that LogLevel is appended to command args after the npm command but before the command args.

Requirements

  • Cake 0.18.0 - Cake 0.21.1

0.9.1

02 May 13:30
Compare
Choose a tag to compare

re #33 - Fix namespace imports for NpmPack and NpmRunScripts (thanks @pascalberger)

Requirements

  • Cake 0.18.0 - Cake 0.21.1

0.9.0

02 May 10:38
Compare
Choose a tag to compare

This release of Cake.Npm comes with some significant breaking changes that alter how the addin is used within your build scripts. This release includes updates for the following issues and pull requests:

  • #25 - Rewrite to have individual aliases for each command (#21, #22)
  • #29 - Updates to Cake.Core 0.18
  • #30 - Updates addin to use new msbuild15 project system and adds support for both net45, net46 and .netstandard1.6
  • #11 - Adds missing log levels (error and http)
  • #13 - Rewrite removes the .WithLogLevel implementation
  • #31 - typo correction in readme.md

Requirements

  • Cake 0.18.0 - Cake 0.21.1

How to migrate

Migrating to the new alias format should be very straight forward, however as the old aliases have been removed you will receive build script compile errors if your build script using the 0.8.0 syntax but downloads addins per build.

The more fluent syntax of previous versions has been removed in favour of a more standard settings object approach:

// 0.8.0
Npm.Install(settings => settings.Package("gulp"));

// 0.9.0
NpmInstall("gulp");
// 0.8.0
Npm.Install(settings => settings.Package("gulp").Globally());

// 0.9.0
var settings = new NpmInstallSettings();
settings.Global = true;
settings.AddPackage("gulp");
NpmInstall(settings);
// 0.8.0
Npm.FromPath("./my-path").Install();

// 0.9.0
var settings = new NpmInstallSettings();
settings.WorkingDirectory = "./my-path";
NpmInstall(settings);

For more examples see the current beta release branch here.

Sticking with 0.8.0

Firstly, I wouldnt recommend this, but if you want or need to then you can specify an addin version in your build script:

#addin nuget:?package=Cake.Npm&version=0.8.0

v0.9.0-beta.11 - Breaking changes

13 Apr 13:40
Compare
Choose a tag to compare
Pre-release

This release of Cake.Npm comes with some significant breaking changes that alter how the addin is used within your build scripts. This release includes updates for the following issues and pull requests:

  • #25 - Rewrite to have individual aliases for each command (#21, #22)
  • #29 - Updates to Cake.Core 0.18
  • #30 - Updates addin to use new msbuild15 project system and adds support for both net45, net46 and .netstandard1.6
  • #11 - Adds missing log levels (error and http)
  • #13 - Rewrite removes the .WithLogLevel implementation

Release timeline

As this is a major set of breaking changes the updates will not be simply released to nuget, instead this represents a beta release of the updated addin that will allow you to test and update your scripts. The timeline I have in mind for pushing a final stable version of 0.9.0 is currently estimated at 2 weeks. Meaning all being well the stable build of 0.9.0 will be pushed via nuget to all clean builds (without a tools/addins/Cake.Npm directory) sometime around the end of April.

I will look at coordinating some form of announcement with the cake team to ensure this information is disseminated as widely as possible.

How to test the beta

You can test your migration by altering your #addin preprocessor directive to specify the prerelease option:

#addin nuget:?package=Cake.Npm&prerelease
Ensure you clear your /tools directory and re-run your build, you should get errors...now move onto the next section for migration information :)

How to migrate

Migrating to the new alias format should be very straight forward, however as the old aliases have been removed you will receive build script compile errors if your build script using the 0.8.0 syntax but downloads addins per build.

The more fluent syntax of previous versions has been removed in favour of a more standard settings object approach:

// 0.8.0
Npm.Install(settings => settings.Package("gulp"));

// 0.9.0
NpmInstall("gulp");
// 0.8.0
Npm.Install(settings => settings.Package("gulp").Globally());

// 0.9.0
var settings = new NpmInstallSettings();
settings.Global = true;
settings.AddPackage("gulp");
NpmInstall(settings);

For more examples see the current beta release branch here.

Sticking with 0.8.0

Firstly, I wouldnt recommend this, but if you want or need to then you can specify an addin version in your build script:

#addin nuget:?package=Cake.Npm&version=0.8.0

v0.8.0

21 Feb 09:58
Compare
Choose a tag to compare

Updates Cake version to 0.17.0 via pull request #17 (thanks @devlead)

Requirements

  • Cake 0.17.0