Changelog

This is the changelog for susy-sass3, a maintained continuation of Susy 3. For the complete history — including all the Susy 1 and Susy 2 releases — see the full CHANGELOG on GitHub.

3.1.0 - Sep 1 2026

Forked and republished as susy-sass3. No grid-API changes — span, gutter, slice, and the svg-grid functions behave exactly as in 3.0.8.

  • NEW: Dart Sass support. Replaced the deprecated node-sass (LibSass) toolchain with Dart Sass (sass). Fixed the svg-grid plugin to handle Dart Sass calc() calculations (previously treated as strings under LibSass).

  • NEW: ``susy-sass3`` package name. Published under a new npm name; the eyeglass module name and Sache entry are updated to match.

  • INTERNAL: Removed the slash-div division deprecations (@use 'sass:math' + math.div()).

  • INTERNAL: Migrated tests to sass-true v10 and Mocha 10; updated expectations for Dart Sass output (real calculations, decimal precision, hsl / hsla color notation). All 156 tests pass.

  • INTERNAL: Replaced the deprecated sass-lint with stylelint + stylelint-scss.

  • INTERNAL: Added a GitHub Actions CI workflow (tests on Node 20 and 22).

3.0.8 - Dec 14 2022

  • INTERNAL: Remove documentation from the npm package.

3.0.7 - Mar 5 2021

  • DOCS: Fix some typos.

3.0.6 - Jul 15 2020

  • Susy was deprecated upstream and stopped receiving updates (susy-sass3 picks it back up).

  • DOCS: Fix some typos.

3.0.5 - Apr 30 2018

  • BUGFIX: Update the gutter alias default $context.

3.0.4 - Apr 30 2018

  • BUGFIX: Gutter function works when the default columns setting is not parser-friendly (e.g. 150px susy-repeat(2)).

3.0.1 - Aug 27 2017

  • NEW: susy-version() function for accessing the active version number.

3.0.0 - Jun 29 2017

The release that introduced the functions-only API. For the reasoning behind the redesign, see Why susy-sass3 Is Just Functions; for the spread model, see Understanding Spread.

  • BREAKING: No more mixins. span, container, gutters, last, gallery, bleed, isolate, show-grid, susy-breakpoint, and the rest were all removed.

  • BREAKING: Distribute on npm only (RubyGems and Bower removed).

  • BREAKING: Trimmed down to the core math plus a thin layer of API functions:

    • susy-span() (aliased span) — a column-spanning width.

    • susy-gutter() (aliased gutter) — a gutter width.

    • susy-slice() (aliased slice) — a slice of an asymmetrical grid.

  • BREAKING: Simplified to four settings — columns, gutters, spread, and container-spread.

  • BREAKING: Added calc() output, so mixed-unit grids are possible. The old inside-static solution is replaced by calc() output.

  • BREAKING: New shorthand syntax for on-the-fly spans and settings.

  • NEW: susy-repeat() function to generate repeating column lists.

  • NEW: SVG Grid plugin (susy/plugins/svg-grid) for grid debugging, adding the svg-grid-colors setting and susy-svg-grid() function.

  • NEW: susy-compile() and su-call() plugin helpers, for building susy-sass3 extensions and mixins.

  • NEW: Prefixed and un-prefixed versions of all major API functions — import susy-prefix instead of susy to drop the un-prefixed aliases.