Skip to content

v3.0.0

Compare
Choose a tag to compare
@xzyfer xzyfer released this 06 May 13:51
· 805 commits to master since this release

The node-sass team is excited to release the long awaited v3.0.0!

This release has been a massive undertaking by the node-sass team and our many contributors!

News

This release marks two major events for node-sass.

Firstly, this the most significant release to date, and includes the largest Libsass release to date. Do yourself a favour and check out the massive Libsass 3.2.0 changelog.

Secondly, @xzyfer has been promoted to project lead. We all owe @am11 a "thank-you" for all his hard work making node-sass an incredible success. I can only hope to do as good of a job - You can read more in #864.

Changelog

Breaking Changes

  • Use node-style callbacks rather than object properties - @jakobo
  • API throws Error object instead of Strings - @am11, @sindresorhus
    Old:
require('node-sass').render({
  /* options */,
  success: function (result) { },
  error: function(err) {
    assert(typeof err === 'string');
  }
});

New:

require('node-sass').render({
  /* options */
}, function (err, result) { 
  if (err) {
    assert(err instanceof Error);
  }
});
  • API returns Buffer output as opposed to String - @am11
  • Remove image path options which are no longer supported by Libsass - @am11
  • SourceMap path configurations resolved against cwd - @am11
  • CLI defaults to stdout - @am11, @xzyfer
  • CLI --watch flag is now boolean - @wesleytodd

Features

  • Update to Libsass 3.2.2 - @xzyfer
  • Add sourceMapRoot option - @am11
  • Configurable linefeed - @am11, @matryo
  • Default --recursive flag to true - @wesleytodd
  • Improved watcher - @xzyfer
  • Expose this.options to importer and render callbacks - @jakobo
  • Binaries downloadable from custom URL - @am11, @johnrc, @saper
  • Binaries are now uploaded as release assets via SASS_BINARY_SITE- @am11, @nschonni
  • Set User-Agent HTTP header when fetching binaries - @saper
  • Improved support for git-backed installation - @xzyfer

Experimental features

  • Add support for custom importers - @am11
  • Add support for custom functions - @matryo

Documentation

Fixes

  • Better support for io.js rapid release cycle - @am11, @xzyfer
  • More reliable installation and Libsass compilation - @saper, @am11
  • Kill watcher processes during test - @saper
  • Improved error handling when fetching binaries - @saper

Known issues

  • Custom importer hangs the process if too many files are imported (#857)

Thanks!

This release wouldn't be possible without the hard work of @am11, @andyshora, @danielstjules, @jakobo, @kevva, @matryo, @paulcpederson, @saper, @tomfuertes, @wesleytodd and @xzyfer.