Path to this page:
./
textproc/rumdl,
Markdown Linter
Branch: CURRENT,
Version: 0.2.55,
Package name: rumdl-0.2.55,
Maintainer: pkgsrc-usersA high-performance Markdown linter, written in Rust.
rumdl is a high-performance Markdown linter and formatter that helps
ensure consistency and best practices in your Markdown files.
Inspired by ruff 's approach to Python linting, rumdl brings similar
speed and developer experience improvements to the Markdown ecosystem.
Master sites:
Filesize: 3238.108 KB
Version history: (Expand)
- (2026-08-16) Updated to version: rumdl-0.2.55
- (2026-08-11) Updated to version: rumdl-0.2.54
- (2026-08-09) Updated to version: rumdl-0.2.52
- (2026-08-03) Updated to version: rumdl-0.2.49
- (2026-07-27) Updated to version: rumdl-0.2.43
- (2026-07-23) Updated to version: rumdl-0.2.40
CVS history: (Expand)
2026-08-16 17:01:15 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.55.
Fixed
lsp: honor per-directory config across workspace features (2c7670f)
core: align path-aware document processing across adapters (7285b7a)
Performance
lsp: construct workspace index rules directly (864e42a)
|
2026-08-11 15:35:34 by Thomas Klausner | Files touched by this commit (3) |  |
Log message:
rumdl: update to 0.2.54.
0.2.54
Added
action: add a command input to run rumdl fmt (9b59bff)
action: add install-only input to skip linting (aa0c604)
MD010: add ignore-code-languages to exempt fence languages from tab checks \
(21b56d0)
Fixed
config: honor the markdown attribute on every block-level element (6f88d71)
links: stop parsing reference links and images inside HTML blocks (8829f6b)
html-blocks: keep a nested raw-text element from opening its own block (27d96bb)
code-block-tools: stop a linter in a format slot from overwriting the block \
(a40d7da)
code-block-tools: report findings at the line they belong to (31cc6cb)
code-block-tools: bound a hanging tool by its timeout and stop respawning it \
(6ce8a1d)
action: add rumdl to PATH so later workflow steps can call it (98baf60)
0.2.53
Fixed
tables: find a table's extent in the document's flavor (ad139af)
tables: quoted brackets and a blank target are not a wikilink (a8aed70)
lsp: a rescan keeps an open buffer only where a file still is (8e16303)
lsp: keep an open document indexed from its buffer (ea30cca)
lsp: index what an editor is showing when the workspace is rescanned (0d8eacc)
lsp: stop an evicted file from being put back by a waiting disk read (5644516)
md075: ignore Obsidian wikilink aliases in prose after tables (dda35d5)
md084: stop deleting line endings as invisible characters (e6ca26e)
rules: report a multi-line link's range on the line it ends on (2e1fde5)
config: break "did you mean" ties by name instead of by key order \
(23fafd9)
lsp: keep a pending edit when a file is only evicted from the index (1e34c47)
lsp: drop a pending edit when its file is deleted (f718eca)
md038: include the closing backtick in the reported range (128b9a1)
md038: stop deleting a line when trimming a multi-line code span (e2e27ac)
md018: recognize tags that start with a digit (6237384)
lsp: stop publishing diagnostics for files that were never opened (8b89584)
lsp: refresh cross-file diagnostics when the workspace index changes (eecda03)
|
2026-08-09 19:40:29 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.52.
0.2.52
Fixed
md012: report blank lines before a code block that ends the document (#791) \
(e897556)
rules: treat a template shortcode tag as opaque markup (6962184)
cli: report a piped document's findings on stdout like every other run (47f8a50)
0.2.51
Added
md088: normalize quotes and dashes to ASCII (#763) (52e9844)
Fixed
config: keep a file's per-file-ignores out of the workspace index it feeds \
(2bb0ce7)
md051: validate cross-file link fragments for a document read from stdin \
(e215c65)
md051: report a broken fragment on a query-string destination once (7c8390f)
md088: leave modifier letters and math notation alone (56dbf0f)
config: report the effective rule lists from config get global.* (5db8f0c)
config: answer config get for every key rumdl accepts (ecce820)
md035: publish the horizontal rule style the rule enforces (77c8c65)
config: accept every config key a rule actually reads (8ec7bba)
lsp: identify documents by the same resolved path as the index (78f4aa0)
lsp: keep frontmatter values out of find-references results (499b005)
md051: index cross-file links independently of frontmatter config (ca7b93e)
lsp: build the workspace index from the rules the CLI uses (b7a293c)
md051,md080: resolve the anchor style per file, not once from the global \
flavor (8e09304)
0.2.50
Added
md077: support fixed continuation indent config (#786) (fea6322)
Fixed
md065: leave markers alone inside a block that hides its content (2654364)
md065: report thematic breaks written with spaces between markers (1d29236)
md076: ask the parser whether a list item's block is really fenced (fd616c2)
md022: require a blank line below a heading above a spaced thematic break \
(27120f2)
MD076: preserve fenced list item spacing (#788) (2d60067)
md022: use the same list test below a heading in check and fix (#790) (ef926b7)
md040: locate the fence a list marker holds instead of assuming the indent \
(6099a6c)
md077: keep the strict-flavor minimum as a floor under a configured indent \
(cfaad2e)
md077: reject a configured indent of 0 (1ac97a3)
md077: accept the indent option instead of reporting it as unknown (cba175c)
md013: stop exempting a complete link followed by a parenthesized aside (722fad6)
md013: keep nested links intact when reflowing emphasis spans (#779) (cb65237)
md013: exempt standalone links with nested markup or unresolved references \
(#781) (2c52283)
|
2026-08-03 20:07:05 by Thomas Klausner | Files touched by this commit (3) |  |
Log message:
rumdl: update to 0.2.49.
0.2.49 - 2026-08-02
Security
config: keep an extends target's path and contents out of messages about it \
(72bcb49)
An extends value is expanded from the environment before it is resolved, so \
naming the resolved path in an error or warning printed environment variable \
values wherever that message went, which under CI is the build log. extends also \
points at an arbitrary path, so a target that is not valid TOML had its \
offending line quoted back. A file reached through extends is now named by the \
reference as written, and its own text is never repeated. A config you name \
yourself is unchanged, and rumdl config, the language server's report to its \
editor, and RUST_LOG=debug still show resolved paths.
Reported privately by Shuvam Kumar.
Fixed
md072: keep every trailing newline when sorting frontmatter keys (a5e7c40)
fix-utils: measure fix ranges against the content the rule read (2ed4238)
md044: read a wikilink's display text, not the page name it hides (51d584e)
md039: keep wikilinks and nested images intact when trimming link text (aabd859)
md045,md057,md044: stop reporting wiki embeds as images (1147d17)
md058,md065: preserve the trailing newline when inserting blank lines (#783) \
(0ba54ce)
md013: track line numbers in BlockBuilder for list reflow (#780) (56e2b3f)
mkdocs: read an indented code block inside a container body as code (9439134)
md087,inline-config: judge directives in indented container bodies (9285de1)
Performance
md038: judge nested backticks against the outermost spans on a line (b02ea88)
0.2.48 - 2026-08-01
Added
md087: report inline disable comments that suppress nothing (40fc37d)
md051,md057: check path-shaped frontmatter values behind an option (98a0ff0)
md033: add allowed-inside and a no-markdown-equivalent allowlist value (cb0ba51)
name rules by their readable name in generated output (3b196d8)
md082: add allow-parent-headings to accept a heading with subsections (662d570)
md040: add custom-languages for fence labels Linguist does not know (1eda9f4)
md086: add rule for unclosed comment delimiters (6cbd27f)
md057: report relative links that point at their own file (7fd85fe)
lsp: report inline config problems as diagnostics (20acc02)
Fixed
md063: name the documented style spellings when a style is invalid (5476db8)
md013: exempt an HTML-only line in a blockquote inside a list item (98e5d34)
md013: exempt nested standalone links (3be374e)
md013: adjust paragraph reflow limit for common indent (2f7c68e)
md032: avoid warning on pseudo-list markers after recognized lists (71e6ff5)
md062: preserve parentheses in link destinations (8ec2eea)
md051: resolve cross-file links whose path carries a query string (8876d46)
md051,md057: read frontmatter in documents that hold no body links (5f35562)
md040: take disabled fences out of the label vote by the shared state (dd7011d)
md040: honor a rule alias in a disable comment (7b86267)
md040: reject custom-languages entries containing whitespace (651a7ec)
md040: stop normalizing fence labels to an invalid preferred alias (7c10626)
config: apply map-valued rule options set in rumdl.toml (a8ff5b6)
inline-config: ignore directives inside indented code blocks (fee4d6f)
config: warn when an inline enable targets a per-file-ignored rule (3c3837f)
lsp: measure diagnostic positions in UTF-16 code units (3cb34b4)
comments: read an unclosed comment in a container body, not in code (85bd3f8)
comments: hide the block an unclosed <!-- opens from every rule (27c247c)
md086: keep reporting an Obsidian opener below an unclosed HTML one (a05dff9)
md086: don't report a comment opener the other syntax hides (4d589a1)
comments: ignore Obsidian comment delimiters inside front matter (441a0a4)
comments: ignore comment delimiters inside front matter (dded694)
comments: end an HTML comment at the first --> after the opener (274166a)
md057: keep search paths a fallback when matching a link to its own file \
(26e88cc)
md057: anchor reference definition fixes to the link destination (b930b71)
lsp: use defaults when a workspace root's own scope cannot be resolved (d1777ce)
cli: count fixes a document enables with an inline configure-file comment \
(f17a5eb)
lsp: resolve a secondary workspace root's own configuration (41b9a22)
cli: count an unloadable subdirectory config as a config warning (648aa72)
md041: report the fix capability its opt-in fix enables (ed30c9a)
lsp: resolve workspace configuration from the workspace root (8e0fcee)
Performance
md062,lint-context: scan link escapes in one forward pass (8fff82b)
0.2.47 - 2026-07-31
Added
md084: flag deprecated and markup-unsuitable Unicode code points (bac271b)
md013: measure reflowed lines with the check's length exemptions (2063a81)
Fixed
md013: take the space before an inline span from the source (038dc39)
md084: report invisible characters orphaned mid-line by an annotation \
delimiter (a3e6152)
md084: keep orphaned selectors visible beside an annotation delimiter (4a2dec0)
md084: keep the removal fix for invisible deprecated code points (ab37e5d)
md013: keep protecting an element a reflow break carried forward (d86470b)
md013: break semantic lines only where the source has whitespace (3fd88b7)
0.2.46 - 2026-07-29
Fixed
discovery: stop reading gitignores above the repository root (2ff6e98)
cli: lint markdown files whose extension is capitalized (baece97)
cli: report why a run checked no markdown files (f0a0c61)
md013: keep a quoted question inside its sentence when splitting (2cef5ec)
|
2026-07-27 17:21:12 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.43.
## [0.2.43]
### Added
- **invisiblechars**: new rule MD084 for detecting invisible characters (#758) \
([0a6354a]
### Fixed
- **md084**: treat a zero width joiner between visible characters as \
presentation ([4fbb1cc]
- **md084**: keep attached variation selectors in consecutive-character \
detection ([f4e9fd3]
- **md084**: don't flag variation selectors attached to a base character ([14941bb]
## [0.2.42]
### Added
- **mojibake**: new rule MD083 for mojibake detection (#753) ([552842b]
### Fixed
- **lint_context**: prevent panic when HTML tag window splits a UTF-8 char ([d14b252]
## [0.2.41]
### Added
- **flavor**: add Hugo flavor and skip block attribute lists in blanks-around \
rules ([e6bb033]
### Fixed
- **md044**: recognize indented HTML comments so links and code escape the rule \
([3d6191c]
- **md013**: keep an attr list whole inside a wrapped span ([e06f03d]
- **md013**: keep a reference-style link whole inside a wrapped span ([de42709]
- **md013**: wrap an over-long span whose whole content is another span ([f6c7c9c]
|
2026-07-23 11:29:38 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.40.
0.2.40
Fixed
md003: consume the setext underline when converting a heading to ATX. \
Converting a setext heading left the underline behind, where a following blank \
line turned it into a thematic break, so rumdl fmt added a horizontal rule the \
document never had (7363c34)
md077: stop scoping list items inside blockquotes, which made a lazy \
continuation line gain indentation on every pass so the formatter never \
converged (58fb25b)
reflow: keep wiki links, shortcodes and math whole inside a wrapped span \
(db12c2c)
config: honor the documented MD033 table_allowed alias, which silently \
dropped the configured value (db2c204)
config: stop reporting MD013's documented semantic-link-understanding alias \
as an unknown option (1539a64)
parity: make the markdownlint comparison harness actually run (182763c)
Documentation
md013: document that ignore-link-urls affects reporting only. Reflow \
measures the markdown as written, matching prettier and mdformat (c4f8bad)
0.2.39
Added
config: expand ~ to the home directory in path settings (70f91aa)
Fixed
md013: wrap over-long emphasis spans that contain nested markup (ddc73f4)
discovery: strip Windows verbatim prefix from canonicalized paths (a85ab87)
discovery: apply absolute exclude patterns during directory discovery (0d20fc8)
|
2026-07-21 10:47:43 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.38.
Added
md044: add ignore-frontmatter-fields option (b664e5a)
config: warn when an inline enable cannot re-enable a config-disabled rule \
(a74a923)
Fixed
md044: stop flagging proper names inside frontmatter file paths (35649d9)
md022: stop panicking when one blank-line requirement is unlimited (8a25eb2)
config: report unknown option keys in inline configure-file comments (8f4c0ea)
config: apply markdownlint-configure-file when the comment spans lines (7a023a5)
config: honor booleans and alias keys in markdownlint-configure-file (#745) \
(acefc19)
|
2026-07-20 11:47:37 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
rumdl: update to 0.2.37.
Added
reflow: add atomic_spans configuration and refactor inline wrapping (#742) \
(aeabec1)
Changed
BREAKING: the MD013 emphasis-spans option is renamed to atomic-spans \
(default true), with inverted meaning (emphasis-spans = true is now atomic-spans \
= false). Configs setting the old key should migrate; it is no longer recognized
Fixed
reflow: keep code spans atomic when wrapping would collapse whitespace (d43618b)
|