16 KiB
Changelog
Legend:
👹 — be afraid of this change because it breaks the way
things worked before.
⭐ — some new thing has been added.
🍏 — some bad thing has been fixed.
30.03.2020, version 4.3.0
⭐ Added support for interpolation of custom properties in Sass. 🍏 Updated minimist version to 1.2.5. 🍏 Updated playground link to https.
22.03.2019, version 4.2.4
⭐ Renamed prepublish
script to
prepublishOnly
.
⭐ Updated link to playground.
🍏 Fixed badges.
🍏 Fixed content
guard in
node.contains()
.
28.09.2017, version 4.2.3
🍏 Fixed parsing of empty url()
in Sass and
SCSS.
30.08.2017, version 4.2.2
🍏 Fixed parsing of /deep/
in CSS, LESS, Sass
and SCSS.
29.08.2017, version 4.2.1
🍏 Fixed parsing of pseudo-element
in CSS,
LESS, Sass and SCSS.
29.08.2017, version 4.2.0
⭐ Add support for custom property syntax in CSS, Sass and
SCSS.
⭐ Add support for deep combinator syntax in CSS, LESS, Sass and
SCSS.
⭐ Add support for alternative descendant >>
syntax in CSS, LESS, Sass and SCSS.
⭐ Add support for ::slotted()
syntax in CSS, LESS,
Sass and SCSS.
🍏 Fixed parsing of non-lowercase keyframes at-rule in CSS,
LESS, Sass and SCSS.
🍏 Fixed parsing of multiline selectors within keyframes in
Sass.
🍏 Fixed parsing of !important
within maps in
Sass and SCSS.
🍏 Fixed parsing of ...
following a function in
Sass and SCSS.
23.08.2017, version 4.1.1
⭐ Unified codebase style across syntaxes.
🍏 Fixed parsing of URLs in Sass and SCSS.
🍏 Fixed parsing of placeholders in Sass and SCSS.
🍏 Fixed parsing of interpolated values within type selectors
in Sass and SCSS.
🍏 Fixed parsing of spacing within pseudo class arguments in
all syntaxes.
🍏 Fixed parsing of parent selectors within parentheses in
Sass and SCSS.
⭐ Abstracted attribute tests for CSS, LESS, Sass and SCSS.
🍏 Fixed parsing of pseudo classes within keyframes in Sass
and SCSS.
🍏 Fixed parsing of dimensions in LESS.
20.11.2016, version 4.0.3
🍏 Fixed parsing of interpolations inside URI nodes in SCSS and Sass.
18.11.2016, version 4.0.2
🍏 Fixed parsing of trailing newlines.
18.11.2016, version 4.0.1
👹 Removed postinstall
script.
17.11.2016, version 4.0.0
👹 Dropped support for Node < 4.
👹 Brought back postinstall
script that should
allow installing from GitHub.
👹 Made multiline comments in Sass consistent with other
syntaxes by removing closing */
from node’s content.
👹 Implemented new node type,
universalSelector
, which represents *
. See docs
for more details. 🍏 Fixed parsing of comments in Sass.
🍏 Fixed parsing of keyframes inside includes in Sass.
🍏 Fixed parsing of flags in arguments in Sass and
SCSS.
🍏 Fixed parsing of multiple declarations within arguments in
SCSS and Sass.
🍏 Improved parsing of interpolations in SCSS and Sass.
🍏 Adjust parsing priority of declarations & atrule in
Less.
22.10.2016, version 3.4.7
🍏 Included forgotten test for #226.
🍏 Fixed issue when !important
was not parsed as
function argument.
22.10.2016, version 3.4.6
🍏 Changed parsing of ident
nodes which fixed
issue with asterisks being parsed as idents instead of operators.
🍏 Fixed capitalisation in Changelog.
20.10.2016, version 3.4.5
🍏 Change parser to strip DOS newlines from
comments.
⭐ Add links to README.md.
12.08.2016, version 3.4.4
🍏 Fixed parsing of numbers following interpolation in class selectors in Sass and SCSS.
08.08.2016, version 3.4.3
🍏 Fixed parsing of unicode ranges.
04.08.2016, version 3.4.2
🍏 Disable Google Closure Compiler due to some errors in parsing.
27.07.2016, version 3.4.1
⭐ Added publich script.
🍏 Fixed post-refactor error in Node#last method.
27.07.2016, version 3.4.0
⭐ Added unicode-range
and urange
node
types in CSS, Less, Sass and SCSS.
🍏 Fixed parsing of trailing interpolation in compound
selector in Sass and SCSS.
🍏 Fix parsing of hyphens after interpolation with
parentSelectors in Sass and SCSS.
🍏 Added ESLint and moved linters to a separate script.
🍏 Fixed incorrect dimension wrap of unicode-ranges in CSS,
Sass and SCSS.
🍏 Fixed parsing of hyphens in interpolated idents in Sass
and SCSS.
🍏 Added compilation of JS using Google Closure.
01.07.2016, version 3.3.6
🍏 Fixed parsing of nth selector without numbers before
n
.
21.06.2016, version 3.3.5
🍏 Fixed issue with content at-rule and keyframes in Sass
and SCSS.
🍏 Fixed namespace attribute selector in CSS, Sass and
SCSS.
🍏 Fixed issue with modulo operator in values in Sass.
🍏 Fixed usage of @content with keyframes in Sass and
SCSS.
🍏 Fixed namespace attribute selector issue in CSS, Sass and
SCSS.
🍏 Fixed parsing of interpolations in pseudo-classes in Sass
and SCSS.
🍏 Fixed interpolated percentage keyframe selector issue in
Sass and SCSS.
🍏 Updated Travis config to not include environment
variables.
18.05.2016, version 3.3.4
🍏 Fixed mistake from @3.3.2
version when
parent selector was “correctly” parsed as property instead of value.
18.05.2016, version 3.3.3
🍏 Fixed prepublish script to build lib.
18.05.2016, version 3.3.2
⭐ Added AppVeyor badge.
🍏 Fixed build file to glue multiple syntaxes into one
file.
🍏 Fixed parsing of functions inside urls in Sass.
🍏 Fixed parsing of mulitple keyframe selectors in CSS, Sass
and SCSS.
🍏 Fixed parsing of parent selector as property in Sass and
SCSS.
🍏 Fixed parsing of parent selector inside interpolations in
Sass and SCSS.
29.04.2016, version 3.3.1
⭐ Added config for AppVeyor to run automated tests on
Windows.
🍏 Fix installation for Windows.
28.04.2016, version 3.3.0
⭐ Added browser support. build.sh
now build a
script that can be used in browsers.
28.04.2016, version 3.2.7
🍏 Fixed typos and example in documentation.
🍏 Fixed parsing of functions inside urls in SCSS.
🍏 Fixed parsing of selectors starting with combinators in
Sass, SCSS and Less.
🍏 Fixed incorrect CRLF line numbers.
🍏 Fixed parsing of extends that sometimes were incorrectly
parsed as atrules.
07.02.2016, version 3.2.6
🍏 Fixed the issue with installation of the package with npm@3.
07.02.2016, version 3.2.5
🍏 Fixed parsing of nested multiline selectors group.
07.02.2016, version 3.2.4
⭐ Added support for !global
in Sass.
07.02.2016, version 3.2.3
⭐ Modified npm test
to remove
.DS_Store
files before running tests.
⭐ Updated Travis config to use Node@5.0.
⭐ Updated Travis config to include compiler info.
⭐ Made it possible to build files if module is installed from
github.
🍏 Fixed parsing of interpolation content in Sass and
SCSS.
🍏 Fixed parsing of interpolation as part of parent selector
extension in Sass and SCSS.
🍏 Fixed issue with keyframeSelector in includes in SCSS.
17.01.2016, version 3.2.2
🍏 Made ParsingError#message
property
writeable.
19.10.2015, version 3.2.1
Parsing rules
🍏 Fixed the issue when selectors inside extends were not
wrapped in selector
nodes in Sass and SCSS.
🍏 Fixed parsing of multiple selectors in extends in Sass and
SCSS.
19.10.2015, version 3.2.0
Node types
⭐ Added new node type: parentSelectorExtension
.
Parsing rules
🍏 Fixed parsing of parent selectors with extensions, like
&__element
or &--modifier
.
19.10.2015, version 3.1.1
Parsing rules
🍏 Fixed parsing of selectors starting or ending with a combinator in Less, Sass and SCSS.
18.10.2015, version 3.1.0
CLI
🍏 Fixed passing a --context
argument.
🍏 Fixed printing of a simplified tree.
Node types
⭐ Added new node type: keyframesSelector
.
Parsing rules
🍏 Fixed parsing of keyframes in all syntaxes.
18.10.2015, version 3.0.3
Parsing rules
🍏 Fixed parsing of spaces inside interpolations in Sass and SCSS.
18.10.2015, version 3.0.2
Parsing rules
🍏 Fixed the issue when operators were parsed as idents inside parentheses in Sass and SCSS.
18.10.2015, version 3.0.1
Parsing rules
🍏 Fixed parsing of parent selectors in SCSS and
Less.
🍏 Fixed parsing of placeholders inside selectors in
SCSS.
18.10.2015, version 3.0.0
CLI
👹 Made cli process stdin only if -
argument is passed.
⭐ Added help message.
API
👹 Renamed parseTree.remove
to
parseTree.removeChild()
.
👹 Unwraped callback parameters for
traverse...
methods.
👹 Made first()
, last()
and
get()
methods return null
if no child nodes
were found.
👹 Made node.length
return a number of child
nodes.
👹 Renamed rule
to context
.
⭐ Made parseTree.removeChild()
return a removed
node.
⭐ Added traverseBy...
methods to all nodes, not only
root ones.
⭐ Added support for specifying a tab size in spaces.
Parsing rules
🍏 Fixed parsing of single-line comments after
url
token.
🍏 Fixed parsing of interpolations inside id selectors in
Less.
🍏 Fixed parsing of selectors according to spec.
🍏 Fixed parsing of placeholders as selectors in SCSS.
Misc
⭐ Added Travis badge to Readme page.
⭐ Added init script to build sources.
⭐ Added commit message template.
05.10.2015, version 3.0.0-beta
CLI
⭐ Added --simple
flag for printing a simplified
tree structure.
🍏 CLI now prints parse tree to stdout.
API
👹 Parse tree is now represented as objects, not
arrays.
👹 Renamed gonzales.srcToAST()
to
gonzales.parse()
. See Readme.
👹 Renamed gonzales.astToSrc()
to
parseTree.toString()
. See Readme.
👹 Renamed gonzales.astToString()
to
parseTree.toJson()
. See Readme.
⭐ Added information about column number to nodes.
⭐ Added information about end position to nodes.
🍏 Made empty strings to be parsed as empty nodes.
Node types
👹 In Sass renamed interpolatedVariable
to
interpolation
.
👹 Separated include
and extend
nodes.
👹 Replaced filter
with
declaration
.
👹 Replaced braces
with brackets
and parentheses
.
👹 Replaced atrulers
with
block
.
👹 Renamed nthSelector
to
pseudoClass
.
👹 Renamed atrules
, atruler
and
atruleb
to atrule
.
👹 Renamed functionBody
to
arguments
.
👹 Renamed functionExpression
to
expression
.
👹 Renamed attrib
to
attributeSelector
.
👹 Renamed attrselector
to
attributeMatch
.
👹 Renamed commentSL
to
singlelineComment
.
👹 Renamed commentML
to
multilineComment
.
👹 Renamed declDelim
to
declarationDelimiter
.
👹 Renamed delim
to
delimiter
.
👹 Renamed propertyDelim
to
propertyDelimiter
.
👹 Renamed pseudoc
to
pseudoClass
.
👹 Renamed pseudoe
to
pseudoElement
.
👹 Renamed s
to space
.
👹 Renamed shash
to color
.
👹 Renamed vhash
to id
.
👹 Removed atrulerq
, unary
and
unknown
.
⭐ Added attributeFlags
.
⭐ Added attributeName
.
⭐ Added attributeValue
.
⭐ Added conditionalStatement
.
⭐ Added namePrefix
.
⭐ Added namespacePrefix
.
⭐ Added namespaceSeparator
.
⭐ Added typeSelector
.
Parsing rules
👹 Spaces that separate two nodes are now put between
those nodes in parse tree.
⭐ Added support for extend
nodes in Less.
⭐ Added support for equality and inequality signs in Sass and
SCSS.
⭐ Added support for /deep/
combinator.
⭐ Added support for !optional
and !global
in Sass and SCSS.
🍏 Fixed parsing of interpolations in Sass and SCSS.
🍏 Fixed parsing of arguments in Sass, SCSS and Less.
🍏 Fixed parsing of declaration delimiters in Sass.
🍏 Fixed the issue when pseudo-classes were parsed like
declarations.
🍏 Fixed parsing of selectors on multiple lines in
Sass.
🍏 Fixed parsing of percent sign as operator in SCSS.
🍏 Fixed parsing of pseudo-elements as selectors in Sass.
Misc
⭐ Added Babel to build source files.
⭐ Used mocha for tests.
⭐ Added helper scripts.
⭐ Added Travis config.
🚀 Improved tests structure.
🚀 Separated log and test scripts.
🚀 Improved error messages.
🚀 Removed benchmark tests.
🚀 Moved source files from lib
to src
directory.
🚀 Made package availbale for install from GitHub.
29.12.2013, version 2.0.2
- Sass includes can have both arguments list and content block,
i.e.
@include nani() { color: tomato }
is valid syntax.
18.11.2013, version 2.0.1
- Bring back lost whitespaces and comments
11.11.2013, version 2.0.0
- Support preprocessors: Sass (both SCSS and indented syntax), LESS.
- New node types:
arguments
(less and sass only)commentML
commentSL
(less and sass only)condition
(sass only)default
(sass only)escapedString
(less only)include
(less and sass only)loop
(sass only)mixin
(less and sass only)parentselector
(less and sass only)placeholder
(sass only)propertyDelim
variable
(less and sass only)varialeList
(less and sass only)
- Rename methods:
srcToCSSP
->cssToAST
csspToSrc
->astToCSS
csspToTree
->astToTree
- Pass all arguments as one object:
gonzales.cssToAST({css: a, syntax: b, rule: c, needInfo: d})
gonzales.astToCSS({ast: ast, syntax: syntax})
- Remove built files from VCS
- Move test command from
make
tonpm
- Build files before running tests
- Divide tests into groups according to syntax
- Add script to test one specific css string
- Add token’s index number to info object
11.02.2013, version 1.0.7
- Identifiers like
_0
are identifiers now. - Throw error instead of console.error: https://github.com/css/csso/issues/109
25.11.2012, version 1.0.6
- Typo fix (global variable leak): https://github.com/css/csso/pull/110
- Attribute selectors extended by
|
. not(..)
pseudo-class special support: https://github.com/css/csso/issues/111
28.10.2012, version 1.0.5
- Better error line numbering: https://github.com/css/gonzales/issues/2
11.10.2012, version 1.0.4
- CSSO issue (@page inside @media error): https://github.com/css/csso/issues/90
10.10.2012, version 1.0.3
- Both .t-1 and .t-01 should be idents: https://github.com/css/gonzales/issues/1
08.10.2012, version 1.0.2
- CSSO issue (filter + important breaks csso v1.3.1): https://github.com/css/csso/issues/87
08.10.2012, version 1.0.1
- CSSO issue (“filter” IE property breaks CSSO v1.3.0): https://github.com/css/csso/issues/86
03.10.2012, version 1.0.0
- First revision.