rable 0.1.13

A Rust implementation of the Parable bash parser — complete GNU Bash 5.3-compatible parsing with Python bindings
Documentation
# Parser bugs discovered during audit

=== empty heredoc delimiter
cat <<''
line

---
(command (word "cat") (redirect "<<" "line
"))
---


=== empty for list
for x in; do :; done
---
(for (word "x") (in) (command (word ":")))
---


=== extglob in word
# @extglob
echo @(a|b)
---
(command (word "echo") (word "@(a|b)"))
---


=== standalone fi is syntax error
fi
---
<error>
---


=== unbalanced paren in cmdsub is syntax error
x=$(foo(:bar))
---
<error>
---