- Consider if syntax error caused an unexpected variable instead of end (#58)
- Parse error once and not twice if there's more than one available (#57)
- Avoid including demo gif in built gem (#53)
- Add compatibility with zeitwerk (#52)
- Namespace Kernel method aliases (#51)
- Safer NoMethodError annotation (#48)
- Annotate NoMethodError in non-production environments (#46)
- Do not count trailing if/unless as a keyword (#44)
- Fix bug where empty lines were interpreted to have a zero indentation (#39)
- Better results when missing "end" comes at the end of a capturing block (such as a class or module definition) (#32)
- Fix performance issue when evaluating multiple block combinations (#35)
- Gem name changed from
syntax_search
todead_end
(#30) - Moved
syntax_search/auto
behavior to top level require (#30) - Error banner now indicates when missing a
|
or}
in addition toend
(#29) - Trailing slashes are now handled (joined) before the code search (#28)
- Simplify large file output so minimal context around the invalid section is shown (#26)
- Block expansion is now lexically aware of keywords (def/do/end etc.) (#24)
- Fix bug where not all of a source is lexed which is used in heredoc detection/removal (#23)
- Strip out heredocs in documents first (#19)
- Parser gem replaced with Ripper (#17)
- Internal refactor (#13)
- Codeblocks in output are now indented with 4 spaces and "code fences" are removed (#11)
- "Unmatched end" and "missing end" not generate different error text instructions (#10)
- Fire search on both unexpected end-of-input and unexected end (#8)
- Initial release