# Changelog ## [v0.20.0] - 2024-11-24 ### Breaking - Sets the MSRV to Rust 1.74.0 ### Fixes - Removes use of `atty` as it is unmaintained and has a low CVE ### Dependencies - Updates dependencies ### Refactoring - Clippy fixes ## [v0.19.0] - 2023-07-16 ### Breaking - Sets the MSRV to Rust 1.65.0 ### Features - Adds `console.error` output for panics on the Wasm version - Deno no longer requires an init function ### Fixes - Fixes a few edge cases with hyphens and slashes ### Dependencies - Updates dependencies ### Refactoring - Clippy fixes ## [v0.18.1] - 2022-06-25 ### Fixes - Fixes playground link ### Dependencies - Updates dependencies ### Refactoring - Clippy fixes ## [v0.18.0] - 2022-04-24 ### Features - Adds support for unicode categories ### Misc. - Update dependencies ## [v0.17.0] - 2022-04-23 ### Features - Add support for testing matches in a file in the CLI ### Refactoring - Remove `anyhow` in compiler in favor of emitting specific error variants ## [v0.16.0] - 2022-04-13 ### Features - Add support for testing matches in CLI ## [v0.15.0] - 2022-04-13 ### Features - Add shell completions for CLI - Add Deno support ## [v0.14.0] - 2022-04-11 ### Features - Support stdin in CLI - Emit proper exit codes on specific errors ## [v0.13.10] - 2022-03-11 ### Fixes - Fixes unnecessary grouping in quantifiers ## [v0.13.9] - 2022-03-11 ### Misc. - Version bump for documentation update ## [v0.13.8] - 2022-03-11 ### Misc. - Version bump for documentation update ## [v0.13.7] - 2022-03-11 ### Misc. - Version bump for documentation update ## [v0.13.6] - 2022-03-11 ### Fixes - Handles a few possible panics ## [v0.13.5] - 2022-03-11 ### Misc. - Version bump ## [v0.13.4] - 2022-03-11 ### Tooling - Strips binaries ### Dependencies - Updates dependencies ## [v0.13.3] - 2022-03-09 ### Refactoring - Replaces `lazy_static` with `once_cell` ## [v0.13.2] - 2022-03-09 ### Performance - Improves literal parse performance ### Refactoring - Reports a few possible panics with a ParseError ## [v0.13.1] - 2022-03-08 ### Fixes - Fixes an issue with single letter variable identifiers matching a following space - Fixes a clash between REPL commands and variables ## [v0.13.0] - 2022-03-08 ### Breaking - `` is now `` ### Features - Support for lazy quantifiers - All symbols now have negative counterparts - `` symbol added - Adds an experimental implementation of variables ## [v0.12.4] - 2022-03-06 ### Misc. - Version bump ## [v0.12.3] - 2022-03-06 ### Fixes - Fixes an issue with identifying negative char ranges ## [v0.12.2] - 2022-03-05 ### Refactoring - Performance improvements ### Misc. - Adds keywords and categories to cargo.toml files ## [v0.12.1] - 2022-03-04 ### Misc. - CLI documentation update ## [v0.12.0] - 2022-03-04 ### Breaking - Produces clean output (no `//` and new newline after output) ### Features - Adds favicons for documentation and playground - The Melody playground now supports add to homescreen - Adds `#![forbid(unsafe_code)]` ### Benchmarks - Adds benchmarks ## [v0.11.1] - 2022-03-03 ### Fixes - Fixes possible panics ### Tests - Adds tests - Adds tests for CLI ### Refactoring - Removes duplicated code ## [v0.11.0] - 2022-03-02 ### Breaking - `ParseError` now contains only one `message` field, may be changed in the future - Line comments (`//`) may only be used in a separate line - The REPL currently accepts blocks on a single line but not multiple lines - Semicolons are no longer optional ### Features - Uses a Pest grammar and an AST to parse Melody - Adds support for nested groups - Adds support for negative ranges - Adds initial support for negative character classes - Adds support for ``, `` - Adds support for inline comments - Enforces group closing - Supports NO_COLOR in CLI - `-n` removes color from REPL as well ## [v0.10.3] - 2022-02-26 ### Fixes - Removes quantifiers after newlines ## [v0.10.2] - 2022-02-26 ### Fixes - Fixes the handling of some newline issues in the REPL - Adds an error message for a read error in the REPL ## [v0.10.1] - 2022-02-26 ### Fixes - Trims only the end off of REPL input ## [v0.10.0] - 2022-02-26 ### Breaking - Changes the `-f, --file` CLI argument to `-o, --output` ### Features - Adds descriptions to CLI commands ## [v0.9.0] - 2022-02-26 ### Features - Adds `ahead`, `not ahead`, `behind` and `not behind` assertions ## [v0.8.0] - 2022-02-26 ### Features - Changes `` to `` (thanks @amirali #34) - Adds `` and `` (thanks @amirali #34) - Adds long versions for REPL commands - Adds `.s, .source` to print the current source in the REPL - Adds `.c, .clear` to clear REPL history - Adds better error reporting to the playground ### Fixes - Fixes some undo / redo issues in the REPL ### Refactoring - Better error handling in the CLI ## [v0.7.0] - 2022-02-24 ### Features - Adds a REPL for `melody_cli` - Adds better error messages for the playground ## [v0.6.0] - 2022-02-23 ### Features - Adds support for raw sequences (\`...\`) - Allows any word character in `capture` names - Adds auto escaping for literals - Adds the Melody version number to the documentation ### Syntax Changes - Changes `start`, `end`, and `char` to symbols (``, ``, ``) - `either` creates a non capturing group ### Refactoring - `cargo clippy` fixes in `melody_wasm` ### Fixes - Uses the correct `url` in the documentation site config