@@ -5,6 +5,46 @@ All notable changes to this project are documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.1.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ## [ 0.3.2] - 2026-07-25
9+
10+ ### Added
11+ - Shebang (` #! ` ) line support ([ #213 ] ).
12+ - Dedicated query files for the ` fsharp_signature ` grammar: ` .fsi ` files now
13+ get syntax highlighting and tags — the shared query files reference
14+ expression-layer nodes the signature grammar does not have, so every query
15+ file except injections previously failed to load ([ #218 ] ).
16+ - Parser edge case tests ([ #215 ] ).
17+
18+ ### Fixed
19+ - ` #if/#else/#endif ` handling: directives at positions the grammar has no
20+ preproc rule for are consumed as trivia, root-level ` #endif ` , branches
21+ starting with continuation tokens, and static resolution of the
22+ module/expression ambiguity ([ #204 ] , [ #205 ] , [ #207 ] , [ #208 ] ).
23+ - Offside/indentation: mixed separators and de-indentation rules ([ #216 ] ),
24+ INDENT no longer anchors to a block comment trailing the line ([ #206 ] ),
25+ trailing back-pipe (` <| ` ) continuations, and property accessors as the last
26+ member before ` and ` ([ #217 ] ).
27+ - Tokenization: ` (*) ` is the multiplication operator, not a comment opener —
28+ including the GLR fork that could derail whole files; match arms glued to
29+ patterns (` |"A" ` , ` |(p, q) ` ); attributes between ` type ` and the name;
30+ trailing ` ;; ` ; ` #indent "off" ` consumed as trivia ([ #217 ] ).
31+ - Literals and operators: uppercase ` F ` float32 suffix (` 1.0F ` ); ` , ` is no
32+ longer accepted as an operator character (` (,) ` ); removed a bogus
33+ backslash line-continuation from ` extras ` ([ #218 ] ).
34+ - More syntax fixes: ` use mutable ` , generic ` new ` , dotted operators,
35+ multi-line ` else if ` , trailing semicolons ([ #200 ] ), classes ([ #199 ] ),
36+ tuple and measure expressions ([ #198 ] ), whitespace in attributes ([ #197 ] ),
37+ and other fixes ([ #212 ] ).
38+ - Queries: bare/static members are now tagged; the wildcard-parameter
39+ highlight no longer matches every parameter under vim regex ([ #218 ] ).
40+ - Packaging: the ` tree-sitter ` peer dependency is correctly marked optional
41+ ([ #218 ] ).
42+
43+ ### Changed
44+ - Scanner performance improvement: state restores no longer free and
45+ reallocate per step (~ 30% faster parsing) ([ #209 ] ).
46+ - Dependency bumps ([ #210 ] ).
47+
848## [ 0.3.1] - 2026-07-01
949
1050### Added
@@ -29,9 +69,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2969
3070Initial ` 0.3.x ` release.
3171
72+ [ 0.3.2 ] : https://github.com/ionide/tree-sitter-fsharp/compare/0.3.1...0.3.2
3273[ 0.3.1 ] : https://github.com/ionide/tree-sitter-fsharp/compare/0.3.0...0.3.1
3374[ 0.3.0 ] : https://github.com/ionide/tree-sitter-fsharp/releases/tag/0.3.0
3475
76+ [ #197 ] : https://github.com/ionide/tree-sitter-fsharp/pull/197
77+ [ #198 ] : https://github.com/ionide/tree-sitter-fsharp/pull/198
78+ [ #199 ] : https://github.com/ionide/tree-sitter-fsharp/pull/199
79+ [ #200 ] : https://github.com/ionide/tree-sitter-fsharp/pull/200
80+ [ #204 ] : https://github.com/ionide/tree-sitter-fsharp/pull/204
81+ [ #205 ] : https://github.com/ionide/tree-sitter-fsharp/pull/205
82+ [ #206 ] : https://github.com/ionide/tree-sitter-fsharp/pull/206
83+ [ #207 ] : https://github.com/ionide/tree-sitter-fsharp/pull/207
84+ [ #208 ] : https://github.com/ionide/tree-sitter-fsharp/pull/208
85+ [ #209 ] : https://github.com/ionide/tree-sitter-fsharp/pull/209
86+ [ #210 ] : https://github.com/ionide/tree-sitter-fsharp/pull/210
87+ [ #212 ] : https://github.com/ionide/tree-sitter-fsharp/pull/212
88+ [ #213 ] : https://github.com/ionide/tree-sitter-fsharp/pull/213
89+ [ #215 ] : https://github.com/ionide/tree-sitter-fsharp/pull/215
90+ [ #216 ] : https://github.com/ionide/tree-sitter-fsharp/pull/216
91+ [ #217 ] : https://github.com/ionide/tree-sitter-fsharp/pull/217
92+ [ #218 ] : https://github.com/ionide/tree-sitter-fsharp/pull/218
93+
3594[ #174 ] : https://github.com/ionide/tree-sitter-fsharp/pull/174
3695[ #177 ] : https://github.com/ionide/tree-sitter-fsharp/pull/177
3796[ #178 ] : https://github.com/ionide/tree-sitter-fsharp/pull/178
0 commit comments