2018-08-17 22:32:10 +02:00
|
|
|
## 1.13.0
|
|
|
|
|
|
|
|
* Allow `@extend` to be used with multiple comma-separated simple selectors.
|
|
|
|
This is already supported by other implementations, but fell through the
|
|
|
|
cracks for Dart Sass until now.
|
2018-08-17 21:34:31 +02:00
|
|
|
|
|
|
|
* Don't crash when a media rule contains another media rule followed by a style
|
|
|
|
rule.
|
|
|
|
|
2018-08-14 21:58:47 +02:00
|
|
|
## 1.12.0
|
|
|
|
|
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add a `SassException` type that provides information about Sass compilation
|
|
|
|
failures.
|
|
|
|
|
2018-08-15 22:28:02 +02:00
|
|
|
### JS API
|
|
|
|
|
|
|
|
* Remove the source map comment from the compiled JS. We don't ship with the
|
|
|
|
source map, so this pointed to nothing.
|
|
|
|
|
2018-07-26 00:48:24 +02:00
|
|
|
## 1.11.0
|
|
|
|
|
2018-08-11 00:58:15 +02:00
|
|
|
* Add support for importing plain CSS files. They can only be imported *without*
|
|
|
|
an extension—for example, `@import "style"` will import `style.css`. Plain CSS
|
|
|
|
files imported this way only support standard CSS features, not Sass
|
|
|
|
extensions.
|
|
|
|
|
|
|
|
See [the proposal][css-import] for details.
|
|
|
|
|
2018-08-03 21:50:56 +02:00
|
|
|
* Add support for CSS's `min()` and `max()` [math functions][]. A `min()` and
|
|
|
|
`max()` call will continue to be parsed as a Sass function if it involves any
|
|
|
|
Sass-specific features like variables or function calls, but if it's valid
|
|
|
|
plain CSS (optionally with interpolation) it will be emitted as plain CSS instead.
|
|
|
|
|
|
|
|
See [the proposal][css-min-max] for details.
|
|
|
|
|
2018-07-27 01:21:02 +02:00
|
|
|
* Add support for range-format media features like `(10px < width < 100px)`. See
|
|
|
|
[the proposal][media-ranges] for details.
|
|
|
|
|
|
|
|
* Normalize escape codes in identifiers so that, for example, `éclair` and
|
|
|
|
`\E9clair` are parsed to the same value. See
|
|
|
|
[the proposal][identifier-escapes] for details.
|
|
|
|
|
2018-08-11 01:31:15 +02:00
|
|
|
* Don't choke on a [byte-order mark][] at the beginning of a document when
|
|
|
|
running in JavaScript.
|
|
|
|
|
2018-08-03 21:50:56 +02:00
|
|
|
[math functions]: https://drafts.csswg.org/css-values/#math-function
|
2018-08-11 00:58:15 +02:00
|
|
|
[css-import]: https://github.com/sass/language/blob/master/accepted/css-imports.md
|
2018-08-03 21:50:56 +02:00
|
|
|
[css-min-max]: https://github.com/sass/language/blob/master/accepted/min-max.md
|
2018-07-27 01:21:02 +02:00
|
|
|
[media-ranges]: https://github.com/sass/language/blob/master/accepted/media-ranges.md
|
|
|
|
[identifier-escapes]: https://github.com/sass/language/blob/master/accepted/identifier-escapes.md
|
2018-08-11 01:31:15 +02:00
|
|
|
[byte-order mark]: https://en.wikipedia.org/wiki/Byte_order_mark
|
2018-07-26 00:48:24 +02:00
|
|
|
|
2018-08-04 00:38:16 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* The `--watch` command now continues to recompile a file after a syntax error
|
|
|
|
has been detected.
|
|
|
|
|
2018-08-11 00:58:15 +02:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Added a `Syntax` enum to indicate syntaxes for Sass source files.
|
|
|
|
|
|
|
|
* The `compile()` and `compileAsync()` functions now parse files with the `.css`
|
|
|
|
extension as plain CSS.
|
|
|
|
|
|
|
|
* Added a `syntax` parameter to `compileString()` and `compileStringAsync()`.
|
|
|
|
|
|
|
|
* Deprecated the `indented` parameter to `compileString()` and `compileStringAsync()`.
|
|
|
|
|
|
|
|
* Added a `syntax` parameter to `new ImporterResult()` and a
|
|
|
|
`ImporterResult.syntax` getter to set the syntax of the source file.
|
|
|
|
|
|
|
|
* Deprecated the `indented` parameter to `new ImporterResult()` and the
|
|
|
|
`ImporterResult.indented` getter in favor of `syntax`.
|
|
|
|
|
2018-08-09 22:22:09 +02:00
|
|
|
## 1.10.4
|
|
|
|
|
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Fix a Homebrew installation failure.
|
|
|
|
|
2018-08-03 23:24:53 +02:00
|
|
|
## 1.10.3
|
|
|
|
|
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Run the Chocolatey script with the correct arguments so it doesn't crash.
|
|
|
|
|
2018-08-03 01:13:41 +02:00
|
|
|
## 1.10.2
|
|
|
|
|
|
|
|
* No user-visible changes.
|
|
|
|
|
2018-07-24 01:20:06 +02:00
|
|
|
## 1.10.1
|
|
|
|
|
|
|
|
### Node JS API
|
|
|
|
|
|
|
|
* Don't crash when passing both `includePaths` and `importer`.
|
|
|
|
|
2018-07-18 21:12:17 +02:00
|
|
|
## 1.10.0
|
|
|
|
|
|
|
|
* When two `@media` rules' queries can't be merged, leave nested rules in place
|
|
|
|
for browsers that support them.
|
2018-07-18 21:11:24 +02:00
|
|
|
|
|
|
|
* Fix a typo in an error message.
|
|
|
|
|
2018-07-13 04:26:21 +02:00
|
|
|
## 1.9.2
|
|
|
|
|
|
|
|
### Node JS API
|
|
|
|
|
|
|
|
* Produce more readable filesystem errors, such as when a file doesn't exist.
|
|
|
|
|
2018-07-11 00:59:16 +02:00
|
|
|
## 1.9.1
|
|
|
|
|
2018-07-13 04:26:21 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
2018-07-11 00:59:16 +02:00
|
|
|
* Don't emit ANSI codes to Windows terminals that don't support them.
|
|
|
|
|
2018-07-11 22:15:55 +02:00
|
|
|
* Fix a bug where `--watch` crashed on Mac OS.
|
|
|
|
|
2018-07-04 02:09:54 +02:00
|
|
|
## 1.9.0
|
|
|
|
|
|
|
|
### Node API
|
|
|
|
|
|
|
|
* Add support for `new sass.types.Color(argb)` for creating colors from ARGB hex
|
|
|
|
numbers. This was overlooked when initially adding support for Node Sass's
|
|
|
|
JavaScript API.
|
|
|
|
|
2018-06-29 03:20:28 +02:00
|
|
|
## 1.8.0
|
|
|
|
|
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Add a `--poll` flag to make `--watch` mode repeatedly check the filesystem for
|
|
|
|
updates rather than relying on native filesystem notifications.
|
|
|
|
|
2018-06-30 03:12:36 +02:00
|
|
|
* Add a `--stop-on-error` flag to stop compiling additional files once an error
|
|
|
|
is encountered.
|
|
|
|
|
2018-06-28 02:42:07 +02:00
|
|
|
## 1.7.3
|
|
|
|
|
|
|
|
* No user-visible changes.
|
|
|
|
|
2018-06-27 02:11:25 +02:00
|
|
|
## 1.7.2
|
|
|
|
|
|
|
|
* Add a deprecation warning for `@-moz-document`, except for cases where only an
|
|
|
|
empty `url-prefix()` is used. Support is [being removed from Firefox][] and
|
|
|
|
will eventually be removed from Sass as well.
|
|
|
|
|
|
|
|
[being removed from Firefox]: https://www.fxsitecompat.com/en-CA/docs/2018/moz-document-support-has-been-dropped-except-for-empty-url-prefix/
|
|
|
|
|
|
|
|
* Fix a bug where `@-moz-document` functions with string arguments weren't being
|
|
|
|
parsed.
|
2018-06-27 05:10:46 +02:00
|
|
|
|
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Don't crash when a syntax error is added to a watched file.
|
|
|
|
|
2018-06-25 22:14:36 +02:00
|
|
|
## 1.7.1
|
|
|
|
|
|
|
|
* Fix crashes in released binaries.
|
|
|
|
|
2018-06-22 02:47:06 +02:00
|
|
|
## 1.7.0
|
|
|
|
|
|
|
|
* Emit deprecation warnings for tokens such as `#abcd` that are ambiguous
|
|
|
|
between ID strings and hex colors with alpha channels. These will be
|
|
|
|
interpreted as colors in a release on or after 19 September 2018.
|
|
|
|
|
|
|
|
* Parse unambiguous hex colors with alpha channels as colors.
|
2018-06-21 02:43:40 +02:00
|
|
|
|
|
|
|
* Fix a bug where relative imports from files on the load path could look in the
|
|
|
|
incorrect location.
|
|
|
|
|
2018-06-19 22:44:52 +02:00
|
|
|
## 1.6.2
|
|
|
|
|
2018-06-20 02:50:37 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Fix a bug where the source map comment in the generated CSS could refer to the
|
|
|
|
source map file using an incorrect URL.
|
2018-06-19 22:44:52 +02:00
|
|
|
|
2018-06-15 22:42:36 +02:00
|
|
|
## 1.6.1
|
|
|
|
|
|
|
|
* No user-visible changes.
|
|
|
|
|
2018-06-14 02:45:52 +02:00
|
|
|
## 1.6.0
|
2018-06-02 02:56:12 +02:00
|
|
|
|
|
|
|
* Produce better errors when expected tokens are missing before a closing brace.
|
|
|
|
|
2018-06-06 22:00:58 +02:00
|
|
|
* Avoid crashing when compiling a non-partial stylesheet that exists on the
|
|
|
|
filesystem next to a partial with the same name.
|
|
|
|
|
2018-06-06 21:43:20 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
2018-06-14 02:45:52 +02:00
|
|
|
* Add support for the `--watch`, which watches for changes in Sass files on the
|
|
|
|
filesystem and ensures that the compiled CSS is up-to-date.
|
|
|
|
|
2018-06-06 21:43:20 +02:00
|
|
|
* When using `--update`, surface errors when an import doesn't exist even if the
|
|
|
|
file containing the import hasn't been modified.
|
|
|
|
|
|
|
|
* When compilation fails, delete the output file rather than leaving an outdated
|
|
|
|
version.
|
|
|
|
|
2018-06-01 02:38:45 +02:00
|
|
|
## 1.5.1
|
|
|
|
|
|
|
|
* Fix a bug where an absolute Windows path would be considered an `input:output`
|
|
|
|
pair.
|
|
|
|
|
2018-06-01 02:39:33 +02:00
|
|
|
* Forbid custom properties that have no values, like `--foo:;`, since they're
|
|
|
|
forbidden by the CSS spec.
|
|
|
|
|
2018-05-31 01:15:06 +02:00
|
|
|
## 1.5.0
|
2018-05-30 23:47:37 +02:00
|
|
|
|
|
|
|
* Fix a bug where an importer would be passed an incorrectly-resolved URL when
|
|
|
|
handling a relative import.
|
|
|
|
|
2018-05-31 03:03:23 +02:00
|
|
|
* Throw an error when an import is ambiguous due to a partial and a non-partial
|
|
|
|
with the same name, or multiple files with different extensions. This matches
|
|
|
|
the standard Sass behavior.
|
|
|
|
|
2018-05-31 01:15:06 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Add an `--interactive` flag that supports interactively running Sass
|
|
|
|
expressions (thanks to [Jen Thakar][]!).
|
|
|
|
|
|
|
|
[Jen Thakar]: https://github.com/jathak
|
|
|
|
|
2018-05-20 20:43:09 +02:00
|
|
|
## 1.4.0
|
|
|
|
|
2018-05-25 01:15:56 +02:00
|
|
|
* Improve the error message for invalid semicolons in the indented syntax.
|
|
|
|
|
|
|
|
* Properly disallow semicolons after declarations in the indented syntax.
|
|
|
|
|
2018-05-20 20:43:09 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Add support for compiling multiple files at once by writing
|
|
|
|
`sass input.scss:output.css`. Note that unlike Ruby Sass, this *always*
|
|
|
|
compiles files by default regardless of when they were modified.
|
|
|
|
|
2018-05-23 00:06:33 +02:00
|
|
|
This syntax also supports compiling entire directories at once. For example,
|
|
|
|
`sass templates/stylesheets:public/css` compiles all non-partial Sass files
|
|
|
|
in `templates/stylesheets` to CSS files in `public/css`.
|
|
|
|
|
2018-04-28 01:57:37 +02:00
|
|
|
* Add an `--update` flag that tells Sass to compile only stylesheets that have
|
|
|
|
been (transitively) modified since the CSS file was generated.
|
|
|
|
|
2018-05-20 17:23:55 +02:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add `Importer.modificationTime()` and `AsyncImporter.modificationTime()` which
|
|
|
|
report the last time a stylesheet was modified.
|
|
|
|
|
2018-05-25 00:42:16 +02:00
|
|
|
### Node API
|
|
|
|
|
|
|
|
* Generate source maps when the `sourceMaps` option is set to a string and the
|
|
|
|
`outFile` option is not set.
|
|
|
|
|
2018-05-04 02:12:40 +02:00
|
|
|
## 1.3.2
|
|
|
|
|
|
|
|
* Add support for `@elseif` as an alias of `@else if`. This is not an
|
|
|
|
intentional feature, so using it will cause a deprecation warning. It will be
|
|
|
|
removed at some point in the future.
|
|
|
|
|
2018-05-03 02:04:36 +02:00
|
|
|
## 1.3.1
|
|
|
|
|
|
|
|
### Node API
|
|
|
|
|
|
|
|
* Fix loading imports relative to stylesheets that were themselves imported
|
|
|
|
though relative include paths.
|
|
|
|
|
2018-04-20 01:51:20 +02:00
|
|
|
## 1.3.0
|
|
|
|
|
2018-04-26 02:10:02 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Generate source map files by default when writing to disk. This can be
|
|
|
|
disabled by passing `--no-source-map`.
|
|
|
|
|
|
|
|
* Add a `--source-map-urls` option to control whether the source file URLs in
|
|
|
|
the generated source map are relative or absolute.
|
|
|
|
|
|
|
|
* Add an `--embed-sources` option to embed the contents of all source files in
|
|
|
|
the generated source map.
|
|
|
|
|
|
|
|
* Add an `--embed-source-map` option to embed the generated source map as a
|
|
|
|
`data:` URL in the generated CSS.
|
|
|
|
|
2018-04-20 01:51:20 +02:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add a `sourceMap` parameter to `compile()`, `compileString()`,
|
|
|
|
`compileAsync()`, and `compileStringAsync()`. This takes a callback that's
|
|
|
|
called with a [`SingleMapping`][] that contains the source map information for
|
|
|
|
the compiled CSS file.
|
|
|
|
|
|
|
|
[`SingleMapping`]: https://www.dartdocs.org/documentation/source_maps/latest/source_maps.parser/SingleMapping-class.html
|
|
|
|
|
2018-04-21 02:56:00 +02:00
|
|
|
### Node API
|
|
|
|
|
|
|
|
* Added support for the `sourceMap`, `omitSourceMapUrl`, `outFile`,
|
|
|
|
`sourceMapContents`, `sourceMapEmbed`, and `sourceMapRoot` options to
|
|
|
|
`render()` and `renderSync()`.
|
|
|
|
|
2018-04-21 02:55:13 +02:00
|
|
|
* Fix a bug where passing a relative path to `render()` or `renderSync()` would
|
|
|
|
cause relative imports to break.
|
|
|
|
|
2018-04-26 02:47:29 +02:00
|
|
|
* Fix a crash when printing warnings in stylesheets compiled using `render()` or
|
|
|
|
`renderSync()`.
|
|
|
|
|
2018-04-26 02:05:22 +02:00
|
|
|
* Fix a bug where format errors were reported badly on Windows.
|
|
|
|
|
2018-04-20 00:20:17 +02:00
|
|
|
## 1.2.1
|
|
|
|
|
|
|
|
* Always emit units in compressed mode for `0` dimensions other than lengths and
|
|
|
|
angles.
|
|
|
|
|
2018-04-13 01:40:53 +02:00
|
|
|
## 1.2.0
|
2018-04-05 00:49:07 +02:00
|
|
|
|
2018-04-13 01:40:53 +02:00
|
|
|
* The command-line executable will now create the directory for the resulting
|
|
|
|
CSS if that directory doesn't exist.
|
2018-04-05 00:49:07 +02:00
|
|
|
|
2018-04-13 02:41:21 +02:00
|
|
|
* Properly parse `#{$var} -#{$var}` as two separate values in a list rather than
|
|
|
|
one value being subtracted from another.
|
|
|
|
|
2018-04-15 01:02:53 +02:00
|
|
|
* Improve the error message for extending compound selectors.
|
|
|
|
|
2018-03-27 23:20:45 +02:00
|
|
|
## 1.1.1
|
|
|
|
|
|
|
|
* Add a commit that was accidentally left out of 1.1.0.
|
|
|
|
|
2018-03-27 22:45:03 +02:00
|
|
|
## 1.1.0
|
|
|
|
|
|
|
|
* The command-line executable can now be used to write an output file to disk
|
|
|
|
using `sass input.scss output.css`.
|
|
|
|
|
2018-03-27 22:35:10 +02:00
|
|
|
* Use a POSIX-shell-compatible means of finding the location of the `sass` shell
|
|
|
|
script.
|
|
|
|
|
2018-03-26 21:49:52 +02:00
|
|
|
## 1.0.0
|
|
|
|
|
|
|
|
**Initial stable release.**
|
|
|
|
|
|
|
|
### Changes Since 1.0.0-rc.1
|
2018-03-23 01:07:19 +01:00
|
|
|
|
|
|
|
* Allow `!` in custom property values ([#260][]).
|
|
|
|
|
|
|
|
[#260]: https://github.com/sass/dart-sass/issues/260
|
|
|
|
|
2018-03-26 21:49:52 +02:00
|
|
|
#### Dart API
|
2018-03-26 21:45:43 +02:00
|
|
|
|
|
|
|
* Remove the deprecated `render()` function.
|
|
|
|
|
2018-03-26 21:49:52 +02:00
|
|
|
#### Node API
|
2018-03-23 22:22:49 +01:00
|
|
|
|
2018-03-23 22:58:57 +01:00
|
|
|
* Errors are now subtypes of the `Error` type.
|
|
|
|
|
2018-03-23 22:22:49 +01:00
|
|
|
* Allow both the `data` and `file` options to be passed to `render()` and
|
|
|
|
`renderSync()` at once. The `data` option will be used as the contents of the
|
|
|
|
stylesheet, and the `file` option will be used as the path for error reporting
|
|
|
|
and relative imports. This matches Node Sass's behavior.
|
|
|
|
|
2018-03-17 00:23:57 +01:00
|
|
|
## 1.0.0-rc.1
|
2018-03-09 23:46:46 +01:00
|
|
|
|
|
|
|
* Add support for importing an `_index.scss` or `_index.sass` file when
|
|
|
|
importing a directory.
|
|
|
|
|
2018-03-12 04:39:00 +01:00
|
|
|
* Add a `--load-path` command-line option (alias `-I`) for passing additional
|
|
|
|
paths to search for Sass files to import.
|
|
|
|
|
2018-03-12 05:04:46 +01:00
|
|
|
* Add a `--quiet` command-line option (alias `-q`) for silencing warnings.
|
|
|
|
|
2018-03-12 07:07:31 +01:00
|
|
|
* Add an `--indented` command-line option for using the indented syntax with a
|
|
|
|
stylesheet from standard input.
|
|
|
|
|
2018-03-17 00:22:56 +01:00
|
|
|
* Don't merge the media queries `not type` and `(feature)`. We had previously
|
|
|
|
been generating `not type and (feature)`, but that's not actually the
|
|
|
|
intersection of the two queries.
|
|
|
|
|
2018-03-16 21:39:21 +01:00
|
|
|
* Don't crash on `$x % 0`.
|
|
|
|
|
2018-03-16 22:38:46 +01:00
|
|
|
* The standalone executable distributed on GitHub is now named `sass` rather
|
|
|
|
than `dart-sass`. The `dart-sass` executable will remain, with a deprecation
|
|
|
|
message, until 1.0.0 is released.
|
|
|
|
|
2018-03-12 04:38:29 +01:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add a `Logger` class that allows users to control how messages are printed by
|
|
|
|
stylesheets.
|
|
|
|
|
|
|
|
* Add a `logger` parameter to `compile()`, `compileAsync()`, `compileString()`,
|
|
|
|
and `compileStringAsync()`.
|
|
|
|
|
2018-03-11 23:46:59 +01:00
|
|
|
### Node JS API
|
|
|
|
|
|
|
|
* Import URLs passed to importers are no longer normalized. For example, if a
|
|
|
|
stylesheet contains `@import "./foo.scss"`, importers will now receive
|
|
|
|
`"./foo.scss"` rather than `"foo.scss"`.
|
|
|
|
|
2018-02-24 01:29:23 +01:00
|
|
|
## 1.0.0-beta.5.3
|
|
|
|
|
2018-03-02 03:59:58 +01:00
|
|
|
* Support hard tabs in the indented syntax.
|
|
|
|
|
2018-02-24 02:02:22 +01:00
|
|
|
* Improve the formatting of comments that don't start on the same line as the
|
|
|
|
opening `/*`.
|
|
|
|
|
2018-03-02 23:15:38 +01:00
|
|
|
* Preserve whitespace after `and` in media queries in compressed mode.
|
|
|
|
|
2018-03-03 02:49:57 +01:00
|
|
|
### Indented Syntax
|
|
|
|
|
|
|
|
* Properly parse multi-line selectors.
|
|
|
|
|
|
|
|
* Don't deadlock on `/*` comments.
|
|
|
|
|
|
|
|
* Don't add an extra `*/` to comments that already have it.
|
|
|
|
|
|
|
|
* Preserve empty lines in `/*` comments.
|
|
|
|
|
2018-02-04 02:03:05 +01:00
|
|
|
## 1.0.0-beta.5.2
|
2018-02-03 22:24:54 +01:00
|
|
|
|
|
|
|
* Fix a bug where some colors would crash `compressed` mode.
|
|
|
|
|
2018-02-04 02:03:05 +01:00
|
|
|
## 1.0.0-beta.5.1
|
2017-12-16 00:11:32 +01:00
|
|
|
|
2018-01-15 01:45:33 +01:00
|
|
|
* Add a `compressed` output style.
|
|
|
|
|
2018-01-04 04:12:53 +01:00
|
|
|
* Emit a warning when `&&` is used, since it's probably not what the user means.
|
|
|
|
|
2017-12-16 00:11:32 +01:00
|
|
|
* `round()` now returns the correct results for negative numbers that should
|
|
|
|
round down.
|
|
|
|
|
2018-01-12 20:43:36 +01:00
|
|
|
* `var()` may now be passed in place of multiple arguments to `rgb()`, `rgba()`,
|
|
|
|
`hsl()` and `hsla()`.
|
|
|
|
|
2018-01-13 01:07:01 +01:00
|
|
|
* Fix some cases where equivalent numbers wouldn't count as the same keys in
|
|
|
|
maps.
|
|
|
|
|
2018-01-23 21:44:24 +01:00
|
|
|
* Fix a bug where multiplication like `(1/1px) * (1px/1)` wouldn't properly
|
|
|
|
cancel out units.
|
|
|
|
|
2018-01-23 21:51:33 +01:00
|
|
|
* Fix a bug where dividing by a compatible unit would produce an invalid
|
|
|
|
result.
|
|
|
|
|
2018-01-29 23:30:34 +01:00
|
|
|
* Remove a non-`sh`-compatible idiom from the standalone shell script.
|
|
|
|
|
2018-01-06 02:59:40 +01:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add a `functions` parameter to `compile()`, `compleString()`,
|
|
|
|
`compileAsync()`, and `compileStringAsync()`. This allows users to define
|
|
|
|
custom functions in Dart that can be invoked from Sass stylesheets.
|
|
|
|
|
|
|
|
* Expose the `Callable` and `AsyncCallable` types, which represent functions
|
|
|
|
that can be invoked from Sass.
|
|
|
|
|
|
|
|
* Expose the `Value` type and its subclasses, as well as the top-level
|
|
|
|
`sassTrue`, `sassFalse`, and `sassNull` values, which represent Sass values
|
|
|
|
that may be passed into or returned from custom functions.
|
|
|
|
|
2018-01-15 01:45:33 +01:00
|
|
|
* Expose the `OutputStyle` enum, and add a `style` parameter to `compile()`,
|
|
|
|
`compleString()`, `compileAsync()`, and `compileStringAsync()` that allows
|
|
|
|
users to control the output style.
|
|
|
|
|
|
|
|
### Node JS API
|
|
|
|
|
2018-01-21 01:45:17 +01:00
|
|
|
* Support the `functions` option.
|
|
|
|
|
2018-01-15 01:45:33 +01:00
|
|
|
* Support the `"compressed"` value for the `outputStyle` option.
|
|
|
|
|
2017-11-17 01:25:19 +01:00
|
|
|
## 1.0.0-beta.4
|
|
|
|
|
2017-12-09 00:28:48 +01:00
|
|
|
* Support unquoted imports in the indented syntax.
|
|
|
|
|
2017-12-01 23:30:31 +01:00
|
|
|
* Fix a crash when `:not(...)` extends a selector that appears in
|
|
|
|
`:not(:not(...))`.
|
|
|
|
|
|
|
|
### Node JS API
|
|
|
|
|
|
|
|
* Add support for asynchronous importers to `render()` and `renderSync()`.
|
|
|
|
|
|
|
|
### Dart API
|
|
|
|
|
2017-11-11 00:47:25 +01:00
|
|
|
* Add `compileAsync()` and `compileStringAsync()` methods. These run
|
|
|
|
asynchronously, which allows them to take asynchronous importers (see below).
|
|
|
|
|
|
|
|
* Add an `AsyncImporter` class. This allows imports to be resolved
|
|
|
|
asynchronously in case no synchronous APIs are available. `AsyncImporter`s are
|
|
|
|
only compatible with `compileAysnc()` and `compileStringAsync()`.
|
|
|
|
|
2017-09-30 00:31:21 +02:00
|
|
|
## 1.0.0-beta.3
|
|
|
|
|
|
|
|
* Properly parse numbers with exponents.
|
|
|
|
|
2017-10-05 00:20:15 +02:00
|
|
|
* Don't crash when evaluating CSS variables whose names are entirely
|
|
|
|
interpolated (for example, `#{--foo}: ...`).
|
|
|
|
|
2017-11-03 22:55:30 +01:00
|
|
|
### Node JS API
|
|
|
|
|
|
|
|
* Add support for the `importer` option to `render()` and `renderSync()`.
|
|
|
|
Only synchronous importers are currently supported.
|
|
|
|
|
2017-10-06 03:45:26 +02:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Added an `Importer` class. This can be extended by users to provide support
|
|
|
|
for custom resolution for `@import` rules.
|
|
|
|
|
|
|
|
* Added built-in `FilesystemImporter` and `PackageImporter` implementations that
|
|
|
|
support resolving `file:` and `package:` URLs, respectively.
|
|
|
|
|
|
|
|
* Added an `importers` argument to the `compile()` and `compileString()`
|
|
|
|
functions that provides `Importer`s to use when resolving `@import` rules.
|
|
|
|
|
|
|
|
* Added a `loadPaths` argument to the `compile()` and `compileString()`
|
|
|
|
functions that provides paths to search for stylesheets when resolving
|
|
|
|
`@import` rules. This is a shorthand for passing `FilesystemImporter`s to the
|
|
|
|
`importers` argument.
|
|
|
|
|
2017-06-16 00:19:26 +02:00
|
|
|
## 1.0.0-beta.2
|
|
|
|
|
2017-07-06 01:00:20 +02:00
|
|
|
* Add support for the `::slotted()` pseudo-element.
|
|
|
|
|
2017-07-07 02:49:03 +02:00
|
|
|
* Generated transparent colors will now be emitted as `rgba(0, 0, 0, 0)` rather
|
|
|
|
than `transparent`. This works around a bug wherein IE incorrectly handles the
|
|
|
|
latter format.
|
|
|
|
|
2017-07-10 03:28:39 +02:00
|
|
|
### Command-Line Interface
|
|
|
|
|
|
|
|
* Improve the logic for whether to use terminal colors by default.
|
|
|
|
|
2017-06-16 00:19:26 +02:00
|
|
|
### Node JS API
|
|
|
|
|
2017-07-07 23:50:12 +02:00
|
|
|
* Add support for `data`, `includePaths`, `indentedSyntax`, `lineFeed`,
|
|
|
|
`indentWidth`, and `indentType` options to `render()` and `renderSync()`.
|
2017-06-16 00:19:26 +02:00
|
|
|
|
2017-07-10 03:31:05 +02:00
|
|
|
* The result object returned by `render()` and `renderSync()` now includes the
|
|
|
|
`stats` object which provides metadata about the compilation process.
|
|
|
|
|
|
|
|
* The error object thrown by `render()` and `renderSync()` now includes `line`,
|
|
|
|
`column`, `file`, `status`, and `formatted` fields. The `message` field and
|
|
|
|
`toString()` also provide more information.
|
|
|
|
|
2017-07-07 09:57:10 +02:00
|
|
|
### Dart API
|
|
|
|
|
|
|
|
* Add a `renderString()` method for rendering Sass source that's not in a file
|
|
|
|
on disk.
|
|
|
|
|
2017-06-05 21:50:47 +02:00
|
|
|
## 1.0.0-beta.1
|
2017-02-17 03:31:06 +01:00
|
|
|
|
2017-02-23 05:48:56 +01:00
|
|
|
* Drop support for the reference combinator. This has been removed from the
|
|
|
|
spec, and will be deprecated and eventually removed in other implementations.
|
|
|
|
|
2017-02-17 02:04:14 +01:00
|
|
|
* Trust type annotations when compiling to JavaScript, which makes it
|
|
|
|
substantially faster.
|
|
|
|
|
2017-02-17 02:37:31 +01:00
|
|
|
* Compile to minified JavaScript, which decreases the code size substantially
|
|
|
|
and makes startup a little faster.
|
|
|
|
|
2017-05-19 02:39:47 +02:00
|
|
|
* Fix a crash when inspecting a string expression that ended in "\a".
|
|
|
|
|
2017-05-25 21:18:57 +02:00
|
|
|
* Fix a bug where declarations and `@extend` were allowed outside of a style
|
|
|
|
rule in certain circumstances.
|
|
|
|
|
2017-05-19 02:05:58 +02:00
|
|
|
* Fix `not` in parentheses in `@supports` conditions.
|
|
|
|
|
2017-05-19 02:27:43 +02:00
|
|
|
* Allow `url` as an identifier name.
|
|
|
|
|
2017-05-19 02:56:20 +02:00
|
|
|
* Properly parse `/***/` in selectors.
|
|
|
|
|
2017-05-19 03:13:33 +02:00
|
|
|
* Properly parse unary operators immediately after commas.
|
|
|
|
|
2017-05-30 02:07:21 +02:00
|
|
|
* Match Ruby Sass's rounding behavior for all functions.
|
|
|
|
|
2017-06-03 03:04:21 +02:00
|
|
|
* Allow `\` at the beginning of a selector in the indented syntax.
|
|
|
|
|
2017-05-28 02:42:45 +02:00
|
|
|
* Fix a number of `@extend` bugs:
|
|
|
|
|
2017-05-29 01:00:37 +02:00
|
|
|
* `selector-extend()` and `selector-replace()` now allow compound selector
|
|
|
|
extendees.
|
|
|
|
|
2017-05-28 02:42:45 +02:00
|
|
|
* Remove the universal selector `*` when unifying with other selectors.
|
|
|
|
|
|
|
|
* Properly unify the result of multiple simple selectors in the same compound
|
|
|
|
selector being extended.
|
|
|
|
|
|
|
|
* Properly handle extensions being extended.
|
|
|
|
|
|
|
|
* Properly follow the [first law of `@extend`][laws].
|
|
|
|
|
|
|
|
* Fix selector specificity tracking to follow the
|
|
|
|
[second law of `@extend`][laws].
|
|
|
|
|
|
|
|
* Allow extensions that match selectors but fail to unify.
|
|
|
|
|
2017-05-29 00:54:18 +02:00
|
|
|
* Partially-extended selectors are no longer used as parent selectors.
|
|
|
|
|
2017-05-28 02:42:45 +02:00
|
|
|
* Fix an edge case where both the extender and the extended selector
|
|
|
|
have invalid combinator sequences.
|
|
|
|
|
|
|
|
* Don't crash with a "Bad state: no element" error in certain edge cases.
|
|
|
|
|
|
|
|
[laws]: https://github.com/sass/sass/issues/324#issuecomment-4607184
|
|
|
|
|
2017-02-03 23:06:53 +01:00
|
|
|
## 1.0.0-alpha.9
|
2017-01-27 05:12:22 +01:00
|
|
|
|
|
|
|
* Elements without a namespace (such as `div`) are no longer unified with
|
|
|
|
elements with the empty namespace (such as `|div`). This unification didn't
|
|
|
|
match the results returned by `is-superselector()`, and was not guaranteed to
|
|
|
|
be valid.
|
|
|
|
|
2017-01-14 22:27:33 +01:00
|
|
|
* Support `&` within `@at-root`.
|
|
|
|
|
2017-01-14 22:43:40 +01:00
|
|
|
* Properly error when a compound selector is followed immediately by `&`.
|
|
|
|
|
2017-01-14 23:20:44 +01:00
|
|
|
* Properly handle variable scoping in `@at-root` and nested properties.
|
|
|
|
|
2017-01-15 06:26:41 +01:00
|
|
|
* Properly handle placeholder selectors in selector pseudos.
|
|
|
|
|
2017-02-04 02:37:54 +01:00
|
|
|
* Properly short-circuit the `or` and `and` operators.
|
|
|
|
|
2017-01-15 02:38:57 +01:00
|
|
|
* Support `--$variable`.
|
|
|
|
|
2017-01-15 07:17:57 +01:00
|
|
|
* Don't consider unitless numbers equal to numbers with units.
|
|
|
|
|
2017-01-15 21:30:50 +01:00
|
|
|
* Warn about using named colors in interpolation.
|
|
|
|
|
2017-01-15 21:53:48 +01:00
|
|
|
* Don't emit loud comments in functions.
|
|
|
|
|
2017-01-16 00:05:28 +01:00
|
|
|
* Detect import loops.
|
|
|
|
|
2017-01-14 23:56:33 +01:00
|
|
|
* Fix `@import` with a `supports()` clause.
|
|
|
|
|
2017-01-15 00:08:55 +01:00
|
|
|
* Forbid functions named "and", "or", and "not".
|
|
|
|
|
2017-01-15 00:14:57 +01:00
|
|
|
* Fix `type-of()` with a function.
|
|
|
|
|
2017-01-15 00:30:44 +01:00
|
|
|
* Emit a nicer error for invalid tokens in a selector.
|
|
|
|
|
2017-01-15 01:54:19 +01:00
|
|
|
* Fix `invert()` with a `$weight` parameter.
|
|
|
|
|
2017-01-15 02:06:05 +01:00
|
|
|
* Fix a unit-parsing edge-cases.
|
|
|
|
|
2017-01-15 02:53:39 +01:00
|
|
|
* Always parse imports with queries as plain CSS imports.
|
|
|
|
|
2017-01-15 03:27:50 +01:00
|
|
|
* Support `&` followed by a non-identifier.
|
|
|
|
|
2017-01-15 05:09:34 +01:00
|
|
|
* Properly handle split media queries.
|
|
|
|
|
2017-01-15 06:40:56 +01:00
|
|
|
* Properly handle a placeholder selector that isn't at the beginning of a
|
|
|
|
compound selector.
|
|
|
|
|
2017-01-15 07:39:28 +01:00
|
|
|
* Fix more `str-slice()` bugs.
|
|
|
|
|
2017-01-15 07:54:13 +01:00
|
|
|
* Fix the `%` operator.
|
|
|
|
|
2017-01-15 08:01:29 +01:00
|
|
|
* Allow whitespace between `=` and the mixin name in the indented syntax.
|
|
|
|
|
2017-01-16 01:09:27 +01:00
|
|
|
* Fix some slash division edge cases.
|
2017-01-15 22:06:57 +01:00
|
|
|
|
2017-01-15 22:57:50 +01:00
|
|
|
* Fix `not` when used like a function.
|
|
|
|
|
2017-01-15 23:45:05 +01:00
|
|
|
* Fix attribute selectors with single-character values.
|
|
|
|
|
2017-01-16 00:24:35 +01:00
|
|
|
* Fix some bugs with the `call()` function.
|
|
|
|
|
2017-01-16 00:53:19 +01:00
|
|
|
* Properly handle a backslash followed by a CRLF sequence in a quoted string.
|
|
|
|
|
2017-01-27 03:49:05 +01:00
|
|
|
* Fix numbers divided by colors.
|
|
|
|
|
2017-01-27 04:49:28 +01:00
|
|
|
* Support slash-separated numbers in arguments to plain CSS functions.
|
|
|
|
|
2017-01-27 05:09:45 +01:00
|
|
|
* Error out if a function is passed an unknown named parameter.
|
|
|
|
|
2017-02-04 21:20:34 +01:00
|
|
|
* Improve the speed of loading large files on Node.
|
|
|
|
|
2017-02-04 01:15:15 +01:00
|
|
|
* Don't consider browser-prefixed selector pseudos to be superselectors of
|
|
|
|
differently- or non-prefixed selector pseudos with the same base name.
|
|
|
|
|
2017-02-04 01:49:55 +01:00
|
|
|
* Fix an `@extend` edge case involving multiple combinators in a row.
|
|
|
|
|
2017-02-04 21:39:23 +01:00
|
|
|
* Fix a bug where a `@content` block could get incorrectly passed to a mixin.
|
|
|
|
|
2017-02-04 23:16:29 +01:00
|
|
|
* Properly isolate the lexical environments of different calls to the same mixin
|
|
|
|
and function.
|
|
|
|
|
2017-01-08 23:49:26 +01:00
|
|
|
## 1.0.0-alpha.8
|
|
|
|
|
2017-01-09 07:05:23 +01:00
|
|
|
* Add the `content-exists()` function.
|
|
|
|
|
2017-01-09 07:47:05 +01:00
|
|
|
* Support interpolation in loud comments.
|
|
|
|
|
2017-01-09 07:59:58 +01:00
|
|
|
* Fix a bug where even valid semicolons and exclamation marks in custom property
|
|
|
|
values were disallowed.
|
|
|
|
|
2017-01-09 01:18:14 +01:00
|
|
|
* Disallow invalid function names.
|
|
|
|
|
2017-01-13 10:49:41 +01:00
|
|
|
* Disallow extending across media queries.
|
|
|
|
|
2017-01-09 08:28:08 +01:00
|
|
|
* Properly parse whitespace after `...` in argument declaration lists.
|
|
|
|
|
2017-01-09 02:10:15 +01:00
|
|
|
* Support terse mixin syntax in the indented syntax.
|
|
|
|
|
2017-01-08 23:49:26 +01:00
|
|
|
* Fix `@at-root` query parsing.
|
|
|
|
|
2017-01-09 01:04:00 +01:00
|
|
|
* Support special functions in `@-moz-document`.
|
|
|
|
|
2017-01-09 01:25:50 +01:00
|
|
|
* Support `...` after a digit.
|
|
|
|
|
2017-01-09 06:39:30 +01:00
|
|
|
* Fix some bugs when treating a map as a list of pairs.
|
|
|
|
|
2016-12-29 21:30:31 +01:00
|
|
|
## 1.0.0-alpha.7
|
|
|
|
|
2017-01-06 23:43:34 +01:00
|
|
|
* Fix `function-exists()`, `variable-exists()`, and `mixin-exists()` to use the
|
|
|
|
lexical scope rather than always using the global scope.
|
|
|
|
|
2016-12-30 02:14:36 +01:00
|
|
|
* `str-index()` now correctly inserts at negative indices.
|
|
|
|
|
2016-12-30 00:24:45 +01:00
|
|
|
* Properly parse `url()`s that contain comment-like text.
|
|
|
|
|
2016-12-29 21:30:31 +01:00
|
|
|
* Fix a few more small `@extend` bugs.
|
|
|
|
|
2017-01-07 01:51:20 +01:00
|
|
|
* Fix a bug where interpolation in a quoted string was being dropped in some
|
|
|
|
circumstances.
|
|
|
|
|
2017-01-07 02:16:43 +01:00
|
|
|
* Properly handle `@for` rules where each bound has a different unit.
|
|
|
|
|
2017-01-07 02:41:37 +01:00
|
|
|
* Forbid mixins and functions from being defined in control directives.
|
|
|
|
|
2017-01-07 05:11:56 +01:00
|
|
|
* Fix a superselector-computation edge case involving `:not()`.
|
|
|
|
|
2017-01-07 06:05:41 +01:00
|
|
|
* Gracefully handle input files that are invalid UTF-8.
|
|
|
|
|
2017-01-07 06:28:23 +01:00
|
|
|
* Print a Sass stack trace when a file fails to load.
|
|
|
|
|
2016-12-17 03:20:03 +01:00
|
|
|
## 1.0.0-alpha.6
|
|
|
|
|
|
|
|
* Allow `var()` to be passed to `rgb()`, `rgba()`, `hsl()`, and `hsla()`.
|
|
|
|
|
2016-12-17 03:21:54 +01:00
|
|
|
* Fix conversions between numbers with `dpi`, `dpcm`, and `dppx` units.
|
|
|
|
Previously these conversions were inverted.
|
|
|
|
|
2016-12-19 02:54:35 +01:00
|
|
|
* Don't crash when calling `str-slice()` with an `$end-at` index lower than the
|
|
|
|
`$start-at` index.
|
|
|
|
|
|
|
|
* `str-slice()` now correctly returns `""` when `$end-at` is negative and points
|
|
|
|
before the beginning of the string.
|
|
|
|
|
2016-12-19 07:19:50 +01:00
|
|
|
* Interpolation in quoted strings now properly preserves newlines.
|
|
|
|
|
2016-12-19 03:54:48 +01:00
|
|
|
* Don't crash when passing only `$hue` or no keyword arguments to
|
|
|
|
`adjust-color()`, `scale-color()`, or `change-color()`.
|
|
|
|
|
2016-12-19 07:42:11 +01:00
|
|
|
* Preserve escapes in identifiers. This used to only work for identifiers in
|
|
|
|
SassScript.
|
|
|
|
|
2016-12-20 00:23:14 +01:00
|
|
|
* Fix a few small `@extend` bugs.
|
|
|
|
|
2016-11-15 07:46:58 +01:00
|
|
|
## 1.0.0-alpha.5
|
|
|
|
|
|
|
|
* Fix bounds-checking for `opacify()`, `fade-in()`, `transparentize()`, and
|
|
|
|
`fade-out()`.
|
|
|
|
|
2016-11-15 09:01:27 +01:00
|
|
|
* Fix a bug with `@extend` superselector calculations.
|
|
|
|
|
2016-12-10 02:22:53 +01:00
|
|
|
* Fix some cases where `#{...}--` would fail to parse in selectors.
|
|
|
|
|
2016-12-10 01:41:47 +01:00
|
|
|
* Allow a single number to be passed to `saturate()` for use in filter contexts.
|
|
|
|
|
2016-12-09 23:02:26 +01:00
|
|
|
* Fix a bug where `**/` would fail to close a loud comment.
|
|
|
|
|
2016-12-10 02:08:11 +01:00
|
|
|
* Fix a bug where mixin and function calls could set variables incorrectly.
|
|
|
|
|
2016-12-11 00:04:09 +01:00
|
|
|
* Move plain CSS `@import`s to the top of the document.
|
|
|
|
|
2016-11-12 02:47:00 +01:00
|
|
|
## 1.0.0-alpha.4
|
|
|
|
|
2016-11-14 20:17:03 +01:00
|
|
|
* Add support for bracketed lists.
|
|
|
|
|
2016-11-13 22:26:52 +01:00
|
|
|
* Add support for Unicode ranges.
|
|
|
|
|
|
|
|
* Add support for the Microsoft-style `=` operator.
|
|
|
|
|
2016-11-14 20:17:03 +01:00
|
|
|
* Print the filename for `@debug` rules.
|
|
|
|
|
2016-11-12 02:47:00 +01:00
|
|
|
* Fix a bug where `1 + - 2` and similar constructs would crash the parser.
|
|
|
|
|
2016-11-14 20:17:03 +01:00
|
|
|
* Fix a bug where `@extend` produced the wrong result when used with
|
|
|
|
selector combinators.
|
|
|
|
|
|
|
|
* Fix a bug where placeholder selectors were not allowed to be unified.
|
|
|
|
|
|
|
|
* Fix the `mixin-exists()` function.
|
|
|
|
|
2016-11-14 20:11:21 +01:00
|
|
|
* Fix `:nth-child()` and `:nth-last-child()` parsing when they contain `of
|
|
|
|
selector`.
|
|
|
|
|
2016-11-03 00:49:50 +01:00
|
|
|
## 1.0.0-alpha.3
|
|
|
|
|
2016-11-08 03:49:05 +01:00
|
|
|
* Fix a bug where color equality didn't take the alpha channel into account.
|
|
|
|
|
|
|
|
* Fix a bug with converting some RGB colors to HSL.
|
|
|
|
|
|
|
|
* Fix a parent selector resolution bug.
|
|
|
|
|
|
|
|
* Properly declare the arguments for `opacify()` and related functions.
|
|
|
|
|
|
|
|
* Add a missing dependency on the `stack_trace` package.
|
|
|
|
|
|
|
|
* Fix broken Windows archives.
|
|
|
|
|
2016-11-03 00:49:50 +01:00
|
|
|
* Emit colors using their original representation if possible.
|
|
|
|
|
2016-11-03 01:00:03 +01:00
|
|
|
* Emit colors without an original representation as names if possible.
|
|
|
|
|
2016-11-01 21:49:04 +01:00
|
|
|
## 1.0.0-alpha.2
|
|
|
|
|
|
|
|
* Fix a bug where variables, functions, and mixins were broken in imported
|
|
|
|
files.
|
|
|
|
|
2016-10-31 21:18:47 +01:00
|
|
|
## 1.0.0-alpha.1
|
2016-05-21 00:05:38 +02:00
|
|
|
|
2016-10-31 21:18:47 +01:00
|
|
|
* Initial alpha release.
|