-
Added
"open"and"close"fields to single and double quotedstrings (#139). -
Fixed an issue related to closing brackets in raw strings (#162).
-
Binary exponents are now supported in hexadecimal constants (#159).
-
NULLis now allowed as a function call argument name (#164). -
...and..1are now supported in more places, such asx$...andx@..1(#148). -
fn(a b)is now correctly parsed as an error rather than as two sequential arguments (#140). -
Fixed another issue where the
programnode didn't start at(0, 0)if there was leading whitespace before the first token (#151). -
Newlines after
functionbut before the()are again allowed (#145). -
Newlines are now allowed after an
elsebut before thealternative(#141). -
parenthesized_expressionhas been simplified to better align with R's parser. Specifically, it now expects exactly 1 requiredbodyexpression, rather than allowing zero or more optional expressions (#144). -
highlights.scmnow includes!as an@operator. -
tags.scmnow tags function definitions with a string name as@definition.function(#147, @MichaelChirico). -
Removed an unnecessary
optional()from_parameter_with_default(#161). -
The internal
_hex_literalrule was simplified slightly (#138). -
Changed a number of internal files to match tree-sitter v0.24.7 recommendations (#169).
-
Switched to using
tree-sitter-languagein the Rust bindings to remove a dependency on a specifictree-sittercrate version (#133). -
Fixed an issue where the
programnode didn't always start at(0, 0)(#134). -
To align better with the R grammar and to greatly simplify the possible states in the tree-sitter grammar, some fields are no longer optional (#132).
- The
"body"field offunction_definition,for_statement,while_statement, andrepeat_statement. - The
"close"field ofbraced_expressionandparenthesized_expression.
- The
- Changed tree-sitter dependency from
0.22.6to>=0.21.0to match other grammars and be less restrictive.
-
This release incorporates a complete rewrite of the grammar which has been incubating on the
nextbranch for the past two years. It contains many bug fixes and improvements. If you still need to use the previous version, you can pin to themain-oldbranch, which is the commit just before thenextbranch was merged in. -
Added a
CHANGELOG.mdto track changes.