Releases: mpecan/rable
Releases · mpecan/rable
rable: v0.1.9
rable: v0.1.10
rable: v0.1.8
0.1.8 (2026-03-25)
Features
- enrich AST with structured word spans and assignment detection (9163d24)
- enrich AST with structured word spans and assignment detection (#11) (3b58c38)
Bug Fixes
- CTLESC byte doubling for bash-oracle compatibility (179/181) (72bc381)
- heredoc trailing newline at EOF with backslash (180/181) (4af8d91)
- resolve 11 oracle test failures (180/181) (#13) (69d6bc8)
- resolve 3 more oracle failures (177/181) (8aca953)
- resolve 6 oracle test failures (0496222)
- resolve 6 oracle test failures (175/181) (1708884)
Documentation
- comprehensive documentation update (#14) (6abfb20)
- comprehensive documentation update for better DX (61114b0)
Code Refactoring
rable: v0.1.7
rable: v0.1.6
0.1.6 (2026-03-25)
Features
- enrich AST with spans, structured lists, and pipe separators (#7) (53269b7)
- enrich AST with spans, structured lists, pipe separators, and assignments (7eec43e)
- improve Rust developer experience (2ac7654)
Bug Fixes
- trailing list operators in format and assert on Parable compat failures (3a98be1)
rable: v0.1.5
0.1.5 (2026-03-24)
Features
- add differential fuzzer for bash-oracle and Parable comparison (4d18eff)
- bracket subscript tracking in lexer (112/181 oracle) (35016dc)
- generate 186 oracle-derived tests from bash-oracle fuzzing (e7940ce)
- process sub word continuation + continue_word helper (124/181) (2caaf53)
Bug Fixes
- &> and &>> redirects never accept fd number prefix (72/181) (e93a6d4)
- >&- and <&- close-fd as complete lexer operators (136/181) (e5f4f0e)
- $" inside double quotes is bare dollar, not locale string (165/181) (a80b648)
- broaden reformatter gate + trim trailing spaces (94/181) (06d2d93)
- cmdsub in redirect targets + close-fd formatting (131/181) (2d5b8a8)
- escape backslashes in arithmetic S-expression output (64/181) (3e1d41e)
- fd numbers only recognized adjacent to redirect operators (78/181) (f5962e4)
- high-byte ANSI-C replacement chars + locale double-quote gating (83/181) (118cb81)
- improve ANSI-C processing and bash-oracle compat (60/181) (dd28ade)
- improve bash-oracle compatibility (37/181 oracle tests passing) (d1c07fb)
- improve bash-oracle compatibility (48/181 oracle tests passing) (2ee0ea1)
- pipeline time demoting, move-fd quoting, reserved words (144/181) (27a9c94)
- procsub word continuation + double-quote context gating (127/181) (da0eba1)
- single-quoted regions opaque to word segment parser (160/181) (a9ca786)
- time after | in pipelines treated as regular word (139/181) (7e6b592)
- update fuzzer to use --dump-ast flag for bash-oracle (b335332)
- varfd adjacency + digit-only varfd rejection (141/181) (2ba8788)
Code Refactoring
- centralize quote skipping and balanced delimiter reading (dc312ca)
- eliminate code duplication from cargo-dupes audit (974a894)
- extract shared CaseTracker and is_backslash_escaped (3d774e1)
- Token::adjacent_to + depth guard increase to 2 (1b1824d)
- unify process_word_value with parse_word_segments (149/181) (816161b)
- unify redirect word processing, eliminate feature envy (154/181) (b520411)
rable: v0.1.4
rable: v0.1.3
rable: v0.1.2
rable: v0.1.1
0.1.1 (2026-03-24)
Features
- achieve 100% Parable compatibility (1604/1604) (4d8b379)
- implement PyO3 Python bindings (Phase 9) (b22a53e)
- implement WordSegment state machine for word value processing (05b308c)
- initial Rable implementation — Rust bash parser at 93.6% Parable compatibility (b52e0bc)
- line continuation support, heredoc improvements (35479a9)
- push Parable compatibility from 97.3% to 99.6% (1597/1604) (ffd0415)
Bug Fixes
- & precedence, heredoc double-backslash, coproc redirects (1951a2f)
- ANSI-C quoting escapes, control chars, redirect processing (544447b)
- ci: create venv for maturin develop in Python and Benchmark jobs (1b7be5e)
- comment handling in matched parens, escaped $ protection (1fbc396)
- comment handling, line continuation in parens (c74fd2b)
- conditional expressions, cstyle-for defaults, precedence (9f1ff9c)
- conditional formatting in cmdsub, locale/ANSI-C in redirects (b2dc5a1)
- coproc redirects, locale in redirects, arith spacing (574d21f)
- line continuation in matched parens, ANSI-C control chars (0cbb912)
- negation/time nesting, arithmetic $(()), brace/select edge cases (35d52bf)
- revert top-level unwrap (caused 26 regressions), cleanup (df57600)
Documentation
- add README, LICENSE, CONTRIBUTING, justfile, and benchmark (a4fab19)