Releases: harehare/mq
Releases · harehare/mq
v0.6.1
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ New Features
- feat(playground): add HTML preview tab to playground (#1815)
- feat(playground): add problems panel with diagnostic navigation (#1858)
- feat(markdown): add Obsidian wikilink support (
[[target]]/[[target|text]]) (#1841) - feat(markdown): add Obsidian callout and embed support (#1847)
- feat(mq-lang): add HTTP module resolver with GitHub shorthand and CLI flags (#1856)
- feat(mq-markdown): improve HTML-to-Markdown conversion (#1864)
🐛 Bug Fixes
- fix(table): flush current_row before finalizing table on block boundary (#1840)
- fix(mq-repl): prevent operator pass from re-highlighting tokens inside strings and commands (#1859)
- fix(mq-check): handle f(x)["key"] bracket access on function return values (#1861)
⚡ Performance
- perf(playground): improve performance and add module examples (#1849)
📝 Documentation
- docs: add AUR installation instructions (#1846)
- docs(modules): add extension module catalog — Format Parsers, Diagram & Graph, DevOps & Infrastructure, Terminal & Text, and Interpreters sections
- docs(language_bindings): add .NET binding mqnet — great work by @panuoksala!
👷 CI
- ci(workflows): add typos check, concurrency cancellation, and job timeouts (#1863)
📦 Dependencies
- build(deps): bump tabled 0.20.0 → 0.21.0 (#1850)
- build(deps): bump vscode-languageclient 9.0.1 → 10.0.0 (#1853)
- build(deps): bump dependencies group with 2 updates (#1854)
- build(deps-dev): bump oxlint 1.67.0 → 1.68.0 in
/editors/vscode(#1843) - build(deps-dev): bump oxlint 1.67.0 → 1.68.0 in
/packages/mq-web(#1844) - build(deps-dev): bump shell-quote 1.8.3 → 1.8.4 in
/editors/vscode(#1851) - build(deps-dev): bump esbuild 0.28.0 → 0.28.1 in
/editors/vscode(#1857) - build(deps): bump mq-playground dependencies group with 5 updates (#1845)
🎉 New Contributors
- @mxCynic added AUR installation instructions (#1846)
- @panuoksala created mqnet, a .NET binding for mq
Full Changelog: v0.6.0...v0.6.1
v0.6.0
Immutable
release. Only release title and notes can be modified.
🚀 New Features & Enhancements
- ✨ feat(mq-lang): add dict merge support to add builtin by @harehare in #1796
- ✨ feat(mq-lang): add min_by and max_by builtin functions by @harehare in #1802
- ✨ add selector aliases and related tests by @harehare in #1808
- ✨ feat(builtin): add lines, unlines, pick, and omit functions by @harehare in #1811
- ✨ feat(cli): add --doc flag to query built-in reference document by @harehare in #1814
- ✨ feat(markdown): improve Markdown to HTML conversion with full GFM and math support by @harehare in #1816
- ✨ feat(builtin): add frontmatter() for YAML/TOML frontmatter parsing by @harehare in #1813
- ⚡ perf(mq-lang): add AST optimizer with multi-pass optimization pipeline by @harehare in #1818
- ✨ feat(mq-check): add cross-arm narrowing and dynamic() type by @harehare in #1829
- ✨ feat(mq-lang): add semver module for SemVer 2.0.0 parsing and compaison by @harehare in #1832
- ✨ feat(mq-lang): add WASM support for print and stderr builtins by @harehare in #1834
- ✨ feat(mq-web): export toHtml and htmlToMarkdown from index by @harehare in #1836
🐛 Bug Fixes
- 🐛 fix(mq-check): handle range slice v[start:end] in bracket access type checking by @harehare in #1831
- 🐛 fix(mq-formatter): fix indentation when do block appears in colon-syntax body by @harehare in #1833
- 💄 style(editors): update syntax files for all editors by @harehare in #1837
♻️ Refactoring
- ♻️ refactor(editors): move Zed extension to harehare/zed-mq repository by @harehare in #1803
- ♻️ refactor(debugger): rewrite syntax highlighting with span-based approach by @harehare in #1824
📝 Documentation & Tests
- 📝 docs: update documentation by @harehare in #1804
- 📝 docs: add Sample Projects page with categorized mq examples by @harehare in #1825
- ✅ test: add unit tests by @harehare in #1835
📦 Dependency Updates
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot[bot] in #1791
- build(deps-dev): bump oxlint from 1.65.0 to 1.66.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1792
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 2 updates by @dependabot[bot] in #1793
- build(deps): bump taiki-e/install-action from 2.79.8 to 2.79.9 in the dependencies group by @dependabot[bot] in #1794
- build(deps): bump toon-format from 0.4.5 to 0.4.6 in the dependencies group by @dependabot[bot] in #1795
- build(deps): bump taiki-e/install-action from 2.79.9 to 2.79.10 in the dependencies group by @dependabot[bot] in #1801
- build(deps-dev): bump vite from 8.0.13 to 8.0.14 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1805
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1806
- build(deps): bump serde_json from 1.0.149 to 1.0.150 in the dependencies group by @dependabot[bot] in #1807
- build(deps): bump toon-format from 0.4.6 to 0.5.0 in the dependencies group by @dependabot[bot] in #1809
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1810
- build(deps-dev): bump vitest from 3.2.4 to 4.1.0 in /packages/mq-nodejs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1817
- build(deps-dev): bump oxlint from 1.66.0 to 1.67.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1819
- build(deps-dev): bump oxlint from 1.66.0 to 1.67.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1820
- build(deps-dev): bump oxlint from 1.66.0 to 1.67.0 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1821
- build(deps): bump the dependencies group with 4 updates by @dependabot[bot] in #1822
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1826
- build(deps): bump taiki-e/install-action from 2.81.4 to 2.81.6 in the dependencies group by @dependabot[bot] in #1830
Full Changelog: v0.5.31...v0.6.0
v0.5.31
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ New Features
- ✨ feat(cli): add aliases "arg" and "define" for --args flag by @harehare in #1753
- ✨ feat(lang): add byte string literal syntax b"..." by @harehare in #1755
- ✨ feat(cli): add json/toml/yaml/xml/csv/tsv/psv as explicit -I input formats by @harehare in #1757
- ✨ feat(cli): add --args flag and ARGS dict for jq-compatible argument passing by @harehare in #1768
- ✨ feat(lang): add zip builtin function by @harehare in #1773
- ✨ feat(mq-lang): add path manipulation builtin functions by @harehare in #1774
- ✨ feat(mq-lang): add property selector iterator syntax (."key"[] and "key"[n]) by @harehare in #1778
- ✨ feat(mq-lang): add
value as namevariable binding syntax by @harehare in #1781 - ✨ feat(builtin): add file_exists builtin function by @harehare in #1786
🐛 Bug Fixes
⚡ Performance Improvements
👷 CI & Security
- 👷 ci: harden GitHub Actions workflow permissions and security by @harehare in #1756
- 👷 ci(setup-node): disable package manager cache to prevent cache poisoning by @harehare in #1790
📝 Documentation
📦 Dependency Updates
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 2 updates by @dependabot[bot] in #1760
- build(deps-dev): bump oxlint from 1.63.0 to 1.64.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1759
- build(deps-dev): bump the dependencies group in /editors/vscode with 3 updates by @dependabot[bot] in #1758
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in #1762
- build(deps-dev): bump @vitejs/plugin-react from 6.0.1 to 6.0.2 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1764
- build(deps): bump taiki-e/install-action from 2.79.1 to 2.79.2 in the dependencies group by @dependabot[bot] in #1765
- build(deps-dev): bump oxlint from 1.64.0 to 1.65.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1770
- build(deps-dev): bump the dependencies group across 1 directory with 2 updates by @dependabot[bot] in #1769
- build(deps): bump taiki-e/install-action from 2.79.2 to 2.79.3 in the dependencies group by @dependabot[bot] in #1771
- build(deps): bump the dependencies group across 1 directory with 6 updates by @dependabot[bot] in #1766
- build(deps): bump docker/build-push-action from 7.1.0 to 7.2.0 in the dependencies group by @dependabot[bot] in #1777
- build(deps): bump quick-xml from 0.40.0 to 0.40.1 in the dependencies group by @dependabot[bot] in #1779
- build(deps): bump the dependencies group with 6 updates by @dependabot[bot] in #1780
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1789
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1788
- build(deps-dev): bump @types/node from 25.8.0 to 25.9.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1787
Full Changelog: v0.5.30...v0.5.31
v0.5.30
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ Features & Enhancements
- ✨ feat: add sum function and corresponding tests by @harehare in #1714
- ✨ feat: add mean and geomean functions with corresponding tests by @harehare in #1715
- ✨ feat: add n-gram function with corresponding tests by @harehare in #1716
- ✨ feat: implement paren-free function calls and update documentation by @harehare in #1717
- ✨ feat: update CI workflow and justfile to enhance testing and formatting checks by @harehare in #1718
- ✨ feat(eval): support .[] iterator for arrays and dicts by @harehare in #1719
- ✨ feat(playground): add share all files mode by @harehare in #1721
- ✨ feat(playground): hide sidebar and tab bar in embed mode by @harehare in #1722
- ✨ feat(eval)!: add gmtime/localtime/mktime/strftime and unify time unit to seconds by @harehare in #1735
- ✨ feat(mq-lang): add CBOR and HCL parsing support by @harehare in #1728
- ✨ feat(mq-run): add raw output format (-F raw) by @harehare in #1743
- ✨ feat(mq-lang): add bytes operations by @harehare in #1744
- ✨ feat(mq-run): support dict and nested array flattening in grep output by @harehare in #1748
- ✨ feat(mq-run): auto-parse structured files by extension when no input format is specified by @harehare in #1749
- ✨ feat(cli): add color output support for JSON format by @harehare in #1751
🐛 Bug Fixes
- 🐛 fix(hir,check): fix false type error for replace/gsub with s-string args by @harehare in #1720
- 🐛 fix(eval): prevent stack overflow when user function shadows a builtin by @harehare in #1734
- Fix build error in mq-lang CBOR conversion by @harehare in #1739
- 🐛 fix(mq-run): output proper JSON for non-Markdown values with -F json by @harehare in #1750
⚡ Performance
♻️ Refactoring
💄 Style & Documentation
- 💄 style(docs): update navy syntax highlighting theme by @harehare in #1713
- 📝 docs: update test command from
just testtojust test-allby @harehare in #1730
📦 Dependency Updates
- build(deps-dev): bump baseline-browser-mapping from 2.10.25 to 2.10.27 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1707
- build(deps): bump taiki-e/install-action from 2.77.1 to 2.77.2 in the dependencies group by @dependabot[bot] in #1708
- build(deps): bump the dependencies group with 4 updates by @dependabot[bot] in #1727
- build(deps): bump the dependencies group with 4 updates by @dependabot[bot] in #1726
- build(deps): bump the dependencies group in /packages/mq-playground with 3 updates by @dependabot[bot] in #1725
- build(deps-dev): bump oxlint from 1.62.0 to 1.63.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1724
- build(deps-dev): bump oxlint from 1.62.0 to 1.63.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1723
- build(deps-dev): bump vite from 8.0.10 to 8.0.11 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1732
- build(deps): bump quick-xml from 0.39.3 to 0.39.4 in the dependencies group by @dependabot[bot] in #1737
- build(deps-dev): bump baseline-browser-mapping from 2.10.27 to 2.10.28 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1736
- build(deps): bump the dependencies group across 1 directory with 3 updates by @dependabot[bot] in #1738
- build(deps-dev): bump @types/node from 25.6.0 to 25.6.2 in /editors/vscode in the dependencies group across 1 directory by @dependabot[bot] in #1731
- build(deps-dev): bump baseline-browser-mapping from 2.10.28 to 2.10.29 (via audit fix) in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1740
- build(deps): bump taiki-e/install-action from 2.77.7 to 2.78.0 in the dependencies group by @dependabot[bot] in #1741
- build(deps): bump which from 6.0.1 to 7.0.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1745
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1746
Full Changelog: v0.5.29...v0.5.30
v0.5.29
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ New Features
- feat(playground): add hover provider using mq.hover API by @harehare in #1663
- feat(cli): add
modulessubcommand for built-in module discovery by @harehare in #1672 - feat(playground): integrate vim mode with custom Ex commands for file management by @harehare in #1681
- feat(mq-macros): add proc-macro crate and refactor builtin definitions by @harehare in #1682
- feat(mq-lang): support inline module definitions and module extension by @harehare in #1685
- feat(eval): add partial builtin function for partial application by @harehare in #1686
- feat(selector): add property selector for dict key access by @harehare in #1687
- feat(selector)!: require quoted form for dict property access by @harehare in #1695
- feat: enhance index layout and styling for improved user experience by @harehare in #1696
- feat(mq-formatter): add mq-fmt CLI binary for formatting mq files by @harehare in #1704
🐛 Bug Fixes
- fix(mq-playground): fix theme not being saved due to migration bug by @harehare in #1670
- fix(check): use open records for dict literals and improve dead code detection by @harehare in #1677
- fix(parser): add UnmatchedEnd error for stray end keywords by @harehare in #1680
- fix(playground,wasm): allow empty markdown and fix error display by @harehare in #1683
- fix(parser): allow try expression as function call argument by @harehare in #1684
- Fix: orphaned documentation page and broken links for selectors by @harehare in #1698
♻️ Refactoring & Reverts
- Revert: "✨ feat(cli): add
modulessubcommand for built-in module discovery" by @harehare in #1675 - refactor(cli): remove built-in fmt subcommand in favor of mq-fmt by @harehare in #1676
- refactor: Adding descriptive messages to unreachable!() calls by @harehare in #1697
- refactor(eval): simplify env scope traversal with macros and iterative loops by @harehare in #1705
- refactor(selector): change Property variant from String to Ident by @harehare in #1706
⚡ Performance
- perf(eval): use LazyLock for static Ident values by @harehare in #1701
- perf(eval): wrap function parameters and Markdown in Box for improved memory management by @harehare in #1703
📝 Documentation & CI
- docs(fn): document arrow (->) anonymous function syntax and usage by @harehare in #1671
- ci: add cargo-machete workflow to detect unused dependencies by @harehare in #1679
📦 Build & Dependencies
- build(deps-dev): bump baseline-browser-mapping from 2.10.21 to 2.10.22 in /packages/mq-playground by @dependabot in #1668
- build(deps): bump taiki-e/install-action from 2.75.26 to 2.75.27 by @dependabot in #1669
- build(deps): bump the dependencies group with 3 updates by @dependabot in #1674
- build(deps-dev): bump baseline-browser-mapping from 2.10.22 to 2.10.23 by @dependabot in #1673
- build(deps): bump the dependencies group with 2 updates by @dependabot in #1692
- build(deps): bump the dependencies group with 2 updates by @dependabot in #1691
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 2 updates by @dependabot in #1690
- build(deps-dev): bump oxlint from 1.61.0 to 1.62.0 in /packages/mq-web by @dependabot in #1689
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot in #1688
- build(deps): bump string-interner from 0.19.0 to 0.20.0 by @dependabot in #1693
- build(deps): bump taiki-e/install-action from 2.76.0 to 2.77.1 by @dependabot in #1694
- build(deps-dev): bump baseline-browser-mapping from 2.10.24 to 2.10.25 by @dependabot in #1699
- build(deps): bump CodSpeedHQ/action from 4.15.0 to 4.15.1 by @dependabot in #1700
- build(deps): bump github/codeql-action from 4.35.3 to 4.35.4 by @dependabot in #1702
Full Changelog: v0.5.28...v0.5.29
v0.5.28
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ Features
- ✨ feat: add is_not_regex_match functionality and related token support by @harehare in #1641
- ✨ feat(lang): add selector call syntax for filtered matching by @harehare in #1646
- ✨ feat(repl): add rich completions and improved UX by @harehare in #1647
- ✨ feat(lexer): add \uXXXX four-digit Unicode escape sequence support by @harehare in #1648
- ✨ feat(builtin): add flip function to swap first two arguments by @harehare in #1649
- ✨ feat(lang): support attribute access after selector call (.h(1).level) by @harehare in #1651
- ✨ feat(selector): support variables and expressions in bracket selectors by @harehare in #1657
- ✨ feat(lang): add -> (Arrow) syntax as shorthand for fn by @harehare in #1664
- ✨ feat(lsp): improve hover formatting with structured deprecated notice by @harehare in #1660
- ✨ feat(wasm): add hover function returning symbol Markdown content by @harehare in #1661
- ✨ feat(web): expose hover API in mq-web package by @harehare in #1662
- ✨ feat(playground): add mq branded theme by @harehare in #1667
♻️ Refactoring
- ♻️ refactor(mq-lang): extract regex/range into submodules and optimize eval internals by @harehare in #1640
- ♻️ refactor(mq-test): replace ANSI output with Markdown table format by @harehare in #1650
📦 Build & Dependencies
- build(deps): bump taiki-e/install-action from 2.75.19 to 2.75.20 in the dependencies group by @dependabot[bot] in #1639
- build(deps-dev): bump baseline-browser-mapping from 2.10.19 to 2.10.20 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1638
- build(deps): bump taiki-e/install-action from 2.75.20 to 2.75.21 in the dependencies group by @dependabot[bot] in #1642
- build(deps): bump postcss from 8.5.9 to 8.5.10 in /packages/mq-playground by @dependabot[bot] in #1644
- build(deps): bump postcss from 8.5.9 to 8.5.10 in /packages/mq-nodejs in the npm_and_yarn group across 1 directory by @dependabot[bot] in #1643
- build(deps): bump postcss from 8.5.9 to 8.5.10 in /packages/mq-playground by @dependabot[bot] in #1645
- build(deps-dev): bump oxlint from 1.60.0 to 1.61.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1652
- build(deps-dev): bump oxlint from 1.60.0 to 1.61.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1653
- build(deps): bump taiki-e/install-action from 2.75.21 to 2.75.23 in the dependencies group by @dependabot[bot] in #1655
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 3 updates by @dependabot[bot] in #1654
- build(deps): bump postcss from 8.5.9 to 8.5.10 in /packages/mq-playground by @dependabot[bot] in #1656
- build(deps): bump libc from 0.2.185 to 0.2.186 in the dependencies group by @dependabot[bot] in #1658
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1659
- build(deps): bump taiki-e/install-action from 2.75.25 to 2.75.26 in the dependencies group by @dependabot[bot] in #1665
- build(workspace): fix binstall duplicate source and disable quick-install by @harehare in #1666
Full Changelog: v0.5.27...v0.5.28
v0.5.27
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ Features
- ✨ feat(mq-lang): add math builtin functions ln, log10, sqrt, exp and fix pow by @harehare in #1602
- ✨ feat(mq-web-api): add OpenTelemetry tracing support via otel feature by @harehare in #1601
- ✨ feat(parser): support chained postfix operations by @harehare in #1606
- ✨ feat(mq-run): add table output format support in CLI and dependencies by @harehare in #1612
- ✨ feat(mq-run): enhance table rendering for CLI output format by @harehare in #1614
- ✨ feat(mq-run): enhance table color output with theme and border support by @harehare in #1616
- ✨ feat(mq-run): add grep output format with line numbers and context by @harehare in #1628
- ✨ feat(mq-lang): support selector expressions on Dict values by @harehare in #1631
- ✨ feat(section): add depth parameter to section() function by @harehare in #1632
- ✨ feat(lang): rewrite standalone .attr to self.attr at AST stage by @harehare in #1637
- ✨ feat(mq-markdown): remove serde(skip) from position fields for JSON feature compatibility by @harehare in #1629
✅ Testing
- ✅ test(mq-test): support test discovery inside module nodes by @harehare in #1600
- ✅ test(mq-lang): add integration tests for built-in functions by @harehare in #1615
- ✅ chore: update test command to run multiple test files in a single command by @harehare in #1597
📦 Build & Dependencies
- 📦 build(deps): update Rust toolchain to 1.95.0 by @harehare in #1611
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1599
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 2 updates by @dependabot[bot] in #1598
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1605
- build(deps-dev): bump @types/node from 25.5.2 to 25.6.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1604
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1609
- build(deps-dev): bump baseline-browser-mapping from 2.10.17 to 2.10.18 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1608
- build(deps): bump taiki-e/install-action from 2.75.15 to 2.75.17 in the dependencies group by @dependabot[bot] in #1613
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot[bot] in #1617
- build(deps-dev): bump oxlint from 1.59.0 to 1.60.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1618
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 3 updates by @dependabot[bot] in #1619
- build(deps): bump clap from 4.6.0 to 4.6.1 in the dependencies group by @dependabot[bot] in #1620
- build(deps): bump the dependencies group with 4 updates by @dependabot[bot] in #1621
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1630
- build(deps-dev): bump typescript from 6.0.2 to 6.0.3 in /editors/vscode in the dependencies group by @dependabot[bot] in #1633
- build(deps-dev): bump typescript from 6.0.2 to 6.0.3 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1634
- build(deps-dev): bump typescript from 6.0.2 to 6.0.3 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1635
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1636
- ✨update packages by @harehare in #1603
Full Changelog: v0.5.26...v0.5.27
v0.5.26
Immutable
release. Only release title and notes can be modified.
✨ Features
- ✨ feat(builtin): add from_html builtin function by @harehare in #1556
- ✨ feat(yaml): add to_front_matter function and update YAML tests by @harehare in #1561
- ✨ feat(mq-lang): add _diff builtin and enhance assert_eq with colored diff output by @harehare in #1567
- ✨ feat(mq-test): add standalone test runner binary by @harehare in #1574
- ✨ feat(playground): improve UX with toast notifications, examples modal, and diagnostics by @harehare in #1584
- ✨ feat(mq-node): implement mq-node for Node.js using mq-wasm with tests by @harehare in #1573
- ✨ feat(mq-test): add [test] annotation and refactor tests with rstest by @harehare in #1586
- ✨ feat(mq-playground): enhance mobile UI with icon-only buttons and file tree support by @harehare in #1588
- ✨ feat(builtin): add chunks and chunk_by functions by @harehare in #1591
🐛 Bug Fixes
- 🐛 fix(macro-expand): use call site token ID instead of hardcoded TokenId by @harehare in #1566
- 🐛 fix(mq-check): correct return type of to_markdown and to_mdx to array(Markdown) by @harehare in #1577
- 🐛 fix(playground): fix theme switching not working in production build by @harehare in #1579
- 🐛 fix(mq-run): use binary placeholder in binstall pkg-url template by @harehare in #1585
- 🐛 fix(mq-markdown): prevent GFM autolink literal from nesting links by @harehare in #1589
🛠 Refactoring & Style
- refactor: migrate installation to XDG Base Directory Specification by @minhdqdev in #1569
- style: apply cargo fmt by @harehare in #1576
- Format code using cargo fmt by @harehare in #1575
- 💄 style(playground): add icons to action buttons and improve UI by @harehare in #1578
- 📦 build(mq-nodejs): rename package from mq-node to mq-nodejs by @harehare in #1590
📝 Documentation
- 📝 Update external tools docs by @harehare in #1570
- 📝 docs: add language bindings documentation page by @harehare in #1580
- 📝 Update sitemap.mq by @harehare in #1587
📦 Build & Dependencies
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1554
- build(deps): bump the dependencies group with 3 updates by @dependabot[bot] in #1553
- build(deps-dev): bump the dependencies group in /packages/mq-playground with 2 updates by @dependabot[bot] in #1552
- build(deps-dev): bump oxlint from 1.57.0 to 1.58.0 in /editors/vscode in the dependencies group by @dependabot[bot] in #1551
- build(deps): bump taiki-e/install-action from 2.74.0 to 2.75.0 in the dependencies group by @dependabot[bot] in #1559
- build(deps-dev): bump esbuild from 0.27.4 to 0.27.7 in /editors/vscode in the dependencies group by @dependabot[bot] in #1558
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1565
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1564
- build(deps-dev): bump baseline-browser-mapping from 2.10.13 to 2.10.14 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1563
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot[bot] in #1562
- build(deps): bump taiki-e/install-action from 2.75.1 to 2.75.3 in the dependencies group by @dependabot[bot] in #1568
- build(deps): bump the dependencies group with 4 updates by @dependabot[bot] in #1572
- build(deps-dev): bump baseline-browser-mapping from 2.10.14 to 2.10.15 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1571
- build(deps): bump the dependencies group with 5 updates by @dependabot[bot] in #1595
- build(deps-dev): bump oxlint from 1.58.0 to 1.59.0 in /packages/mq-web in the dependencies group by @dependabot[bot] in #1593
- build(deps): bump the dependencies group in /packages/mq-playground with 5 updates by @dependabot[bot] in #1594
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot[bot] in #1592
- build(deps): bump rand from 0.9.2 to 0.9.4 by @dependabot[bot] in #1596
New Contributors
- @minhdqdev made their first contribution in #1569
Full Changelog: v0.5.25...v0.5.26
v0.5.25
Immutable
release. Only release title and notes can be modified.
What's Changed
✨ New Features
- ✨ feat(toml): replace mq-based TOML parser with native Rust implementation by @harehare in #1524
- ✨ feat(playground): add settings dialog with vim mode and theme support by @harehare in #1528
- ✨ feat(playground): add babel plugin for React compiler support by @harehare in #1529
- ✨ feat(mq-lang): Add task selector by @harehare in #1537
- ✨ feat(selector): add .todo and .done selectors for task list items by @harehare in #1538
- ✨ feat(mq-lang): add md5 and sha256 hash builtin functions by @harehare in #1543
- ✨ feat(mq-lang): add is_callout function by @harehare in #1544
- ✨ feat(resolver): add $HOME/.config/mq to default module search paths by @harehare in #1549
- ✨ feat(mq-lang): add or-pattern support in match expressions by @harehare in #1542
♻ Refactor & Improvements
- ♻ refactor(mq-lang): add opening delimiter location to unclosed bracket errors by @harehare in #1514
- ♻ refactor(mq-run): extract InputFormat::from_extension method by @harehare in #1517
- 👷 ci: pin GitHub Actions to full commit SHAs by @harehare in #1525
- 📦 build(mq-web): migrate from npm to pnpm by @harehare in #1533
- ♻️ refactor(mq-lang): change And/Or AST nodes to n-ary operand lists by @harehare in #1539
🐛 Fixes
- 🐛 fix(mq-markdown): preserve HTML comments in markdown conversion by @harehare in #1530
- 🐛 fix(mq-lang): extract selector parsing into dedicated function by @harehare in #1550
- 🐛 fix(docs): fix logo alignment and button widths in landing page by @harehare in #1523
💄 Style & Documentation
- 💄 style(docs): redesign landing page by @harehare in #1516
- 💄 style(docs): add custom theme to demo and update demo gif by @harehare in #1518
📦 Dependency Updates
- build(deps-dev): bump the dependencies group in /editors/vscode with 2 updates by @dependabot[bot] in #1519
- build(deps): bump proptest from 1.10.0 to 1.11.0 in the dependencies group by @dependabot[bot] in #1520
- build(deps-dev): bump the dependencies group in /packages/mq-web with 2 updates by @dependabot[bot] in #1521
- build(deps-dev): bump typescript from 5.9.3 to 6.0.2 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1522
- build(deps): bump taiki-e/install-action from 2.70.3 to 2.71.1 in the dependencies group by @dependabot[bot] in #1532
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1531
- build(deps): bump the dependencies group with 2 updates by @dependabot[bot] in #1536
- build(deps): bump rustc-hash from 2.1.1 to 2.1.2 in the dependencies group by @dependabot[bot] in #1535
- build(deps-dev): bump baseline-browser-mapping from 2.10.11 to 2.10.12 in /packages/mq-playground in the dependencies group by @dependabot[bot] in #1534
- build(deps): bump minimatch in /editors/vscode by @dependabot[bot] in #1547
- build(deps): bump brace-expansion in /editors/vscode by @dependabot[bot] in #1546
- build(deps-dev): bump picomatch from 2.3.1 to 2.3.2 in /editors/vscode by @dependabot[bot] in #1545
- build(deps): bump glob from 10.4.5 to 10.5.0 in /editors/vscode by @dependabot[bot] in #1548
Full Changelog: v0.5.24...v0.5.25
v0.5.24
Immutable
release. Only release title and notes can be modified.
What's Changed
- ⚡ perf(web-api): offload CPU-bound handlers to blocking thread pool by @harehare in #1495
- ✨ feat(lang): support negative index for get on array, string, and markdown by @harehare in #1496
- ✨ feat(vscode): add GitHub Releases binary download as install option by @harehare in #1508
- ✨ feat(web-api): add API versioning and health check endpoint by @harehare in #1511
- ✨ feat(crawler): add flexible headless wait strategies for SPAs by @harehare in #1499
- ✨ Add exhaustiveness checking for pattern matching expressions by @harehare in #1494
- ✨ feat(cli): add -m option to import modules with namespace prefix by @harehare in #1505
- 🐛 fix(mq-crawler): support parallel headless Chromium by using per-client temp user data dir by @harehare in #1493
- 🐛 fix(playground): add collect() to section extraction example by @harehare in #1498
- ⚡ perf(web-api): add mimalloc, gzip compression, and cache OpenAPI spec by @harehare in #1502
- 📦 build(playground): migrate from npm to pnpm by @harehare in #1503
- ♻️ refactor(web-api): replace libsql rate limiter with in-memory implementation by @harehare in #1509
Full Changelog: v0.5.23...v0.5.24