Skip to content

Commit 746e4ba

Browse files
committed
Touch up the CHANGELOG.
1 parent bac536d commit 746e4ba

File tree

1 file changed

+23
-15
lines changed

1 file changed

+23
-15
lines changed

CHANGELOG.md

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,41 @@
11
# 5.0.0-rc.0
22

3-
This release has **BREAKING CHANGES** that were required to fix regressions in 4.0.0. Please read carefully.
3+
This release has **BREAKING CHANGES** that were required to fix regressions
4+
in 4.0.0 and to make the Combinator Node API consistent for all combinator
5+
types. Please read carefully.
46

57
## Summary of Changes
68

79
* The way a descendent combinator that isn't a single space character (E.g. `.a .b`) is stored in the AST has changed.
810
* Named Combinators (E.g. `.a /for/ .b`) are now properly parsed as a combinator.
911
* It is now possible to look up a node based on the source location of a character in that node and to query nodes if they contain some character.
1012
* Several bug fixes that caused the parser to hang and run out of memory when a `/` was encountered have been fixed.
11-
* The minimum supported version of Node is now v6.0.
13+
* The minimum supported version of Node is now `v6.0.0`.
1214

1315
### Changes to the Descendent Combinator
1416

1517
In prior releases, the value of a descendant combinator with multiple spaces included all the spaces.
1618

1719
* `.a .b`: Extra spaces are now stored as space before.
18-
- 3.x: `combinator.value === " "`
19-
- 4.0: `combinator.value === " " && combinator.spaces.before === " "`
20+
- Old & Busted:
21+
- `combinator.value === " "`
22+
- New hotness:
23+
- `combinator.value === " " && combinator.spaces.before === " "`
2024
* `.a /*comment*/.b`: A comment at the end of the combinator causes extra space to become after space.
21-
- 3.x: `combinator.value === " "`
22-
- 3.x: `combinator.raws.value === " /*comment/"`
23-
- 4.0: `combinator.value === " "`
24-
- 4.0: `combinator.spaces.after === " "`
25-
- 4.0: `combinator.raws.spaces.after === " /*comment*/"`
25+
- Old & Busted:
26+
- `combinator.value === " "`
27+
- `combinator.raws.value === " /*comment/"`
28+
- New hotness:
29+
- `combinator.value === " "`
30+
- `combinator.spaces.after === " "`
31+
- `combinator.raws.spaces.after === " /*comment*/"`
2632
* `.a<newline>.b`: whitespace that doesn't start or end with a single space character is stored as a raw value.
27-
- 3.x: `combinator.value === "\n"`
28-
- 3.x: `combinator.raws.value === undefined`
29-
- 4.0: `combinator.value === " "`
30-
- 3.x: `combinator.raws.value === "\n"`
33+
- Old & Busted:
34+
- `combinator.value === "\n"`
35+
- `combinator.raws.value === undefined`
36+
- New hotness:
37+
- `combinator.value === " "`
38+
- `combinator.raws.value === "\n"`
3139

3240
### Support for "Named Combinators"
3341

@@ -38,14 +46,14 @@ Because they've been taken off the standardization track, there is no spec-offic
3846
Before this release such named combinators were parsed without intention and generated three nodes of type `"tag"` where the first and last nodes had a value of `"/"`.
3947

4048
* `.a /for/ .b` is parsed as a combinator.
41-
- In prior releases:
49+
- Old & Busted:
4250
- `root.nodes[0].nodes[1].type === "tag"`
4351
- `root.nodes[0].nodes[1].value === "/"`
4452
- New hotness:
4553
- `root.nodes[0].nodes[1].type === "combinator"`
4654
- `root.nodes[0].nodes[1].value === "/for/"`
4755
* `.a /F\6fR/ .b` escapes are handled and uppercase is normalized.
48-
- In prior releases:
56+
- Old & Busted:
4957
- `root.nodes[0].nodes[2].type === "tag"`
5058
- `root.nodes[0].nodes[2].value === "F\\6fR"`
5159
- New hotness:

0 commit comments

Comments
 (0)