Patch Changes
-
#4302
13cea0dThanks @DylanPiercey! - Keep each comment in its own syntax inoutput: "source", which printed// a noteand/* a note */as<!-- -->HTML comments. The parser records the syntax on a newMarkoComment.kindfield ("html","line"or"block"), which thet.markoComment(value, kind)builder also takes. -
#4300
6c36c96Thanks @DylanPiercey! - Parse a template in time linear in its tag count. Each parsed tag used to re-key every sibling parsed before it, so 16k sibling tags took about 2.9 s to parse instead of 0.35 s. -
#4303
05b06d7Thanks @DylanPiercey! - Expression parse errors no longer name Babel's internalparseExpression()API. An expression that is empty or only comments now reports "Expected an expression, but found only whitespace or comments.", and one followed by more input, such as${a b}, reports "Expected a single expression, but foundbafter it." -
#4302
70451d2Thanks @DylanPiercey! - Strip a tag's type arguments and type parameters withstripTypes, sooutput: "source"prints<foo<T>|x: T|>as<foo|x|>and<foo<string>/>as<foo/>, like every other type annotation in the template. -
#4300
0878583Thanks @DylanPiercey! - Window a compile error's code frame around the error column when a framed line is longer than 160 characters, so a long line (an inlined data URI, generated markup) no longer makes the error message grow with the source. The label still follows the markers, and the reported line and column are unchanged.