All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
16.0.7 (2026-02-05)
16.0.6 (2025-10-23)
- cache fs calls for modern API
16.0.5 (2025-02-14)
16.0.4 (2024-12-04)
16.0.3 (2024-11-01)
16.0.2 (2024-09-20)
16.0.1 (2024-08-19)
16.0.0 (2024-07-26)
- use modern Sass JS API by default for
sassandsass-embedded
Warning
The sass options are different for the legacy (before) and modern APIs. Please look at docs how to migrate to the modern options.
Legacy options - https://sass-lang.com/documentation/js-api/interfaces/legacystringoptions/
Modern options - https://sass-lang.com/documentation/js-api/interfaces/options/
To return to the previous logic use:
module.exports = {
module: {
rules: [
{
test: /\.s[ac]ss$/i,
use: [
"style-loader",
"css-loader",
{
loader: "sass-loader",
options: {
api: "legacy",
// Your options
},
},
],
},
],
},
};- use modern Sass JS API by default for
sassandsass-embedded(10be1ba)
15.0.0 (2024-07-23)
- prefer
sass-embeddedoversassby default (#1211)
14.2.1 (2024-04-16)
14.2.0 (2024-04-11)
- added the
modern-compilervalue for API to reuse compiler process (#1195) (cef40a8) - support webpack built-in resolver for
modernandmodern-compilerAPI (#1197) (2265b72)
Notes:
Using the modern-compiler value for the api option together with sass-embedded reduces compilation time by 5-10 times, especially for projects using large files with a lot of @import/@use, for small files the build time reduction will not be significant.
14.1.1 (2024-02-19)
14.1.0 (2024-01-30)
14.0.0 (2024-01-15)
- removed
fiberssupport - minimum supported Node.js version is
18.12.0(627f55d)
13.3.3 (2023-12-25)
13.3.2 (2023-06-09)
13.3.1 (2023-05-28)
13.3.0 (2023-05-22)
13.2.2 (2023-03-27)
13.2.1 (2023-03-18)
- do not crash on a custom scheme in
@import/@usefor the modern API (21966ee)
13.2.0 (2022-11-09)
13.1.0 (2022-10-06)
13.0.2 (2022-06-27)
13.0.1 (2022-06-24)
13.0.0 (2022-05-18)
- minimum supported
Node.jsversion is14.15.0(#1048) - emit
@warnat-rules as webpack warnings by default, if you want to revert behavior please use thewarnRuleAsWarningoption (#1054) (58ffb68)
- do not crash on importers for modern API (#1052) (095814e)
- do not store original sass error in webpack error(#1053) (06d7533)
12.6.0 (2022-02-15)
12.5.0 (2022-02-14)
- added support for
sass-embedded(faster thannode-sass), feel free to feedback - added the
apioption (modernapi is experimental and currently doesn't support built-in webpack resolver) (afbe114)
12.4.0 (2021-12-07)
12.3.0 (2021-10-27)
- added the
warnRuleAsWarningoption, allows to emit a warning on the@warnrule (#992) (c652c79) - use webpack logger to log sass messages (only for
dart-sass), configure it using infrastructureLogging (#991) (bb7cef9)
12.2.0 (2021-10-12)
12.1.0 (2021-06-10)
- allow
Stringvalue for theimplementationoption (382a3ca)
12.0.0 (2021-06-01)
- minimum supported
Node.jsversion is12.13.0
- crash in custom importers with worker threads (#958) (67aa139)
- resolving
_index.import.scss/index.import.scssin packages (#906) (6641a16)
11.1.1 (2021-05-13)
11.1.0 (2021-05-10)
11.0.1 (2021-02-08)
11.0.0 (2021-02-05)
- using
~is deprecated and can be removed from your code (we recommend it), but we still support it for historical reasons.
Why you can removed it?
The loader will first try to resolve @import/@use as relative, if it cannot be resolved, the loader will try to resolve @import/@use inside node_modules.
Using ~ means looking for files in node_modules or resolve.alias or resolve.fallback.
- minimum supported
webpackversion is5
- supported the
resolve.byDependencyoption, you can setup{ resolve: { byDependency: { sass: { mainFiles: ['custom', '...'] } } } }
10.2.0 (2021-05-10)
- support
node-sassv6 (dbbbdde)
10.1.1 (2021-01-11)
10.1.0 (2020-11-11)
10.0.5 (2020-11-02)
10.0.4 (2020-10-22)
10.0.3 (2020-10-09)
- update
schema-utils
10.0.2 (2020-09-03)
10.0.1 (2020-08-25)
- update deps
10.0.0 (2020-08-24)
- handle absolute windows path in source maps
10.0.0-rc.0 (2020-08-24)
- loader generates absolute
sourcesin source maps, also avoids modifyingsasssource maps if thesourceMapoption isfalse
9.0.3 (2020-08-05)
9.0.2 (2020-07-07)
9.0.1 (2020-07-03)
9.0.0 (2020-07-02)
- minimum supported Nodejs version is
10.13 - prefer
sass(dart-sass) by default, it is strongly recommended to migrate onsass(dart-sass) - the
prependDataoption was removed in favor theadditionalDataoption, see docs - when the
sourceMapistrue,sassOptions.sourceMap,sassOptions.sourceMapContents,sassOptions.sourceMapEmbed,sassOptions.sourceMapRootandsassOptions.omitSourceMapUrlwill be ignored.
- pass the loader context to custom importers under the
this.webpackLoaderContextproperty (#853) (d487683) - supports for
process.cwd()resolution logic by default (#837) (0c8d3b3) - supports for
SASS-PATHenv variable resolution logic by default (#836) (8376179) - supports for the
sassproperty for theexportsfield frompackage.json(conditional exports, for more information read docs)
- avoid different content on different os (#832) (68dd278)
- resolution logic when the
includePathsoption used was improved (#827) (cbe5ad4) - resolution logic for
file://scheme was improved (17832fd) - resolution logic for absolute paths and server relative URLs was improved
- source maps generation was improved
8.0.2 (2020-01-13)
8.0.1 (2020-01-10)
8.0.0 (2019-08-29)
- minimum required
webpackversion is4.36.0 - minimum required
node.jsversion is8.9.0 - move all sass (
includePaths,importer,functions,outputStyle) options to thesassOptionsoption. Thefunctionsoption can't be used asFunction, you should usesassOptionasFunctionto achieve this. - the
dataoption was renamed to theprependDataoption - default value of the
sourceMapoption depends on thedevtoolvalue (eval/falsevalues don't enable source map generation)
- automatically use the
fiberspackage if it is possible (#744) (96184e1) - source map generation depends on the
devtooloption (#743) (fcea88e) - validate loader options (#737) (7b543fc)
- reworked error handling from
node-sass/sass - improve resolution for
@import(including support_indexandindexfiles in a directory)
- compatibility with
pnp
7.3.1 (2019-08-20)
7.3.0 (2019-08-20)
- handle module import ending
/as module (#728) (997a255) - resolution algorithm (#720) (0e94940)
- use "compressed" output when mode is "production" (#723) (b2af379)
7.2.0 (2019-08-08)
- better handle stdin in sources (#681) (e279f2a)
- prefer
sass/scss/cssextensions (#711) (6fc9d4e) - relax node engine (#708) (2a51502)
- allow passing
functionsoption as function (#651) (6c9654d) - support
dataasFunction(#648) (aa64e1b) - support
sassandstylefields inpackage.json(#647) (a8709c9) - support auto resolving
dart-sass(ff90dd6)
7.1.0 (2018-08-01)
7.0.3 (2018-06-05)
7.0.2 (2018-06-02)
- Errors being swallowed when trying to load node-sass (#576) (6dfb274), closes #563
- Report error to user for problems loading node-sass (#562) (2529c07)
7.0.1 (2018-04-13)
- Wrong import precedence (#557) (f4eeff1)
7.0.0 (2018-04-13)
- Refactor resolving and simplify webpack config aliases (#479) (e0fde1a)
- Remove
node-sassfrompeerDependencies(#533) (6439cef)
- Drop official node 4 support
- This slightly changes the resolving algorithm. Should not break in normal usage, but might break in complex configurations.
- The sass-loader throws an error at runtime now and refuses to compile if the peer dependency is wrong. This could break applications where npm's peer dependency warning was just ignored.
6.0.7 (2018-03-03)
6.0.6 (2017-06-14)
- Adds Webpack 3.x version range to peerDependencies
6.0.5 (2017-05-10)
6.0.4 (2017-05-09)
- fix: Resolving of scoped npm packages #447
6.0.3 (2017-03-07)
- Fix regression with empty files #398
- Reduce npm package size by using the files property in the
package.json
6.0.2 (2017-02-21)
- Update dependencies #383
6.0.1 (2017-02-17)
- Fix source maps in certain CWDs. #377
6.0.0 (2017-02-13)
- Improve source map support. #374
- This is breaking for the resolve-url-loader
5.0.1 (2017-02-13)
- Fix bug where multiple compilations interfered with each other. #369
5.0.0 (2017-02-13)
- Remove synchronous compilation support #334
- Remove node 0.12 support. 29b30755021a834e622bf4b5bb9db4d6e5913905
- Remove official node-sass@3 and webpack@1 support. 5a6bcb96d8bd7a7a11c33252ba739ffe09ca38c5
- Remove synchronous compilation support. #334
4.1.1 (2016-12-21)
- Update webpack peer dependency to support 2.2.0rc. #330
4.1.0 (2016-12-14)
- Update
node-sass@4.0.0#319
4.0.2 (2016-07-07)
- Fix wrong context in customImporters #281
4.0.1 (2016-07-01)
- Fix custom importers receiving
'stdin'as second argument instead of the actualresourcePath#267
4.0.0 (2016-06-27)
- Fix incorrect source map paths #250
- Release new major version because the previous release was a breaking change in certain scenarios See: #250 (comment)
3.2.2 (2016-06-26)
- Fix incorrect source map paths #250
3.2.1 (2016-06-19)
- Add
webpack@^2.1.0-betaas peer dependency #233
3.2.0 (2016-03-12)
- Append file content instead of overwriting when
data-option is already present #216 - Make
indentedSyntaxoption a bit smarter #196
3.1.2 (2015-11-22)
- Fix loader query not overriding webpack config #189
- Update peer-dependencies #182
node-sass^3.4.2webpack^1.12.6
3.1.1 (2015-10-26)
- Fix missing module
object-assign#178
3.1.0 (2015-10-25)
- Fix a problem where modules with a
.in their names were not resolved #167
3.0.0 (2015-09-29)
- Fix crash when Sass reported an error without
file#158
2.0.1 (2015-08-14)
- Add missing path normalization (fixes #141)
2.0.0 (2015-08-06)
- Add temporary fix for stuck processes (see sass/node-sass#857) #100 #119 #132
- Fix path resolving on Windows #108
- Fix file watchers on Windows #102
- Fix file watchers for files with errors #134
- Refactor import resolving algorithm. (#138) (c8621a1)
- The new algorithm is aligned to libsass' way of resolving files. This yields to different results if two files with the same path and filename but with different extensions are present. Though this change should be no problem for most users, we must flag it as breaking change. #135 #138
1.0.4 (2015-08-03)
1.0.3 (2015-07-22)
1.0.2 (2015-04-15)
- Fix a bug where files could not be imported across language styles #73
- Update peer-dependency
node-sassto3.1.0
1.0.1 (2015-03-31)
- Fix Sass partials not being resolved anymore #68
- Update peer-dependency
node-sassto3.0.0-beta.4
1.0.0 (2015-03-22)
- Moved
node-sass^3.0.0-alpha.0topeerDependencies#28 - Using webpack's module resolver as custom importer #39
- Add synchronous compilation support for usage with enhanced-require #39