Releases: ehwan/RustyLR
Release list
v4.4.0
What's Changed
-
Integrate RustyLR LSP into the rustylr executable and publish VSCode extension support by @ehwan in #82
-
Improve LSP conflict diagnostics with direct rule details by @ehwan in #83
-
Improve LSP Hover and Completion for Reduce Action Bindings by @ehwan in #84
-
Filter the suggestion list by cursor's position by @ehwan in #85
-
Removed inner Context wrapping & add generic based start extractor by @ehwan in #86
-
fixed
in_rule_line,in_reduce_actionbool combination intoLocationTypeenum by @ehwan in #87 -
Bump the Rust edition to 2024 and workspace resolver to "3"
Full Changelog: v4.3.0...v4.4.0
v4.3.0
What's Changed
- Improve grammar parser error recovery around malformed productions by @ehwan in #79
- Support Multiple Start Symbols (
%start) with Type-Safe Context Wrappers and Duplicate Validation by @ehwan in #80 - Implement language server protocol (LSP) and VS Code extension client by @ehwan in #81
Full Changelog: v4.2.0...v4.3.0
v4.1.0
v4.0.0
What's Changed
- add
boxprefix support for auto-boxing stack types inDataEnumby @ehwan in #54 - Variable substitution by @ehwan in #55
- Support
boxKeyword in%tokentypeand NonTerminalRuleTypes by @ehwan in #56 - Optimize parser reduction stack popping logic by @ehwan in #57
- Refactor Parser Trait to Static Methods and Parameterize Context with Parser Generic by @ehwan in #58
- Optimize Generated Parser Code Size via Table Serialization by @ehwan in #59
- Remove %trace directive and runtime tracing functionality by @ehwan in #60
- remove unused
%filterdirectives and update token matching documentation by @ehwan in #61 - Remove parser Context backtrace APIs and docs by @ehwan in #62
- Moved userdata to branch local data and removed from feed() argument by @ehwan in #63
- Hide internal grammar knobs and simplify precedence directives by @ehwan in #64
- Remove lookahead pattern syntax and forced rule lookaheads by @ehwan in #65
- Remove
%erralias and demote advanced parser controls by @ehwan in #66
Full Changelog: v3.37.0...v4.0.0
v3.37.0
What's Changed
- Fixed panic mode error recovery logics by @ehwan in #43
- add rustfmt::skip option to the generated parser table codes by @ehwan in #44
- New location tracking
Location,SpanManagerby @ehwan in #46 - optimize generated parser code via ZST, static slices, and direct vec! initialization by @ehwan in #47
- Support Bison-like positional variables ($1, $2, ...) and locations (@1, @2, @0) in reduce actions by @ehwan in #48
- Support '_' type placeholder and type inference for NonTerminals by @ehwan in #49
- DataStack to use a single unified enum stack & document memory optimizations by @ehwan in #50
- Refactor Core Documentation (README, SYNTAX, GLR) and Sync API Signatures by @ehwan in #52
- implement version bumping script by @ehwan in #53
Full Changelog: v3.34.0...v3.37.0
v3.34.0
What's Changed
- Add
--stateoption for state machine inspection in #34 - Add state field to ParseError in #35
- Use ArrayVec for multiple reduce rules container in #36
- Add more test cases in #37
- Optimization for unused data in #38 #39 #40 #41
- Use static memory for parser table generation in #42
Full Changelog: v3.32.0...v3.34.0
v3.32.0
v3.31.0
What's Changed
- fixed number of tags mismatch in
split_offin #24 - fixed eof was not popped on
pop_start()in #25 - Removed %runtime directive in #26
- Optimized out unused states and production rules, reduces runtime by 30% in #27
Full Changelog: v3.30.0...v3.31.0
v3.30.0
v3.29.0
What's Changed
- fix command line arguments for note diagnostics in #19
- split location stack for reduce action, optimizing the stack management in #20
- replacing the enum-based TokenData approach with separate Vec stacks for each rule type by #21
Full Changelog: v3.28.0...v3.29.0