All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Entries describe changes a user of mado can observe: rules, the command line,
the configuration file, and the ways mado is distributed. Dependency updates,
CI, packaging internals, refactors and tests are left to the commit history —
except for the Markdown parser, whose version determines how documents are
parsed and therefore what gets reported.
- MD030: derive the marker width from the item's own ordinal, so ordered items numbered 10 or higher are no longer reported when a single space already follows the marker (#363)
- MD004, MD005, MD029 and MD030: descend into containers other than lists, so lists nested inside a blockquote are checked (#368)
- MD007: measure indentation from the end of the blockquote prefix instead of the start of the line (#369)
0.3.1 - 2026-07-22
- Support for use as a pre-commit hook (#162)
- Print errors to stderr instead of stdout (#247)
- Update the Markdown parser (
comrak) from 0.38.0 to 0.54.0 (#161, #184, #192, #244, #337)
- Normalize a leading
./before matching--excludepatterns (#344)
0.3.0 - 2025-04-12
- Rule tags, so groups of rules can be selected at once (#92)
- Shell completion generation (#125)
- Breaking: update the Markdown parser (
comrak) from 0.35.0 to 0.38.0, which changes how some documents are parsed (#139, #148) - Require a subcommand, so running
madowithout one prints a usage error instead of exiting silently (#149)
0.2.2 - 2025-02-16
subliststyle for[lint.md004](#107)respect-gitignoreoption for[lint](#109)excludeoption for[lint](#115)
- Speed up file discovery by filtering on file type while walking (#113)
0.2.1 - 2025-02-04
allow-different-nestingoption for[lint.md024](#104)
0.2.0 - 2025-01-30
- Read from stdin in
check(#89) - JSON schema for the configuration file (#88)
- Breaking: rename the config keys in
[lint.md030](#86) - Breaking: change the style format for
[lint.md035](#91) - Update the Markdown parser (
comrak) from 0.33.0 to 0.35.0 (#95)
checkno longer fails on empty stdin (#96)
0.1.5 - 2025-01-22
- winget package (#74)
--quietflag (#78)
- Respect the configuration file when
--quietis given (#80)
0.1.4 - 2025-01-17
- Homebrew formula (#51, #52, #54, #55, #56, #57, #62)
- Scoop manifest (#53, #58)
- Nix flake (#60, #61)
0.1.3 - 2025-01-13
- Update the Markdown parser (
comrak) from 0.32.0 to 0.33.0 (#24)
0.1.2 - 2025-01-05
- MD013 now honours
code-blocks = falseandtables = false, and skips a whole table rather than only its rows (#14)
0.1.1 - 2025-01-05
- GitHub Action (#7, #8)
code-blocksandtablesoptions for MD013 (#9)
- Loading of the global configuration file (#10)
0.1.0 - 2024-12-31
- Initial release