Sourced from comrak's releases.
v0.25.0
- Discord-flavored Markdown by
@liamwhite
in kivikakk/comrak#421
- Three new extensions and two render options are added:
extension.underline
adds support for__underlined__
text.extension.spoiler
adds support for||spoiler||
text.extension.greentext
adds support for image board-style>greentext
, which isn't transformed into a blockquote.render.ignore_setext
disables parsing setext-style headings.render.ignore_empty_links
causes links with no text (like[](https://github.com/kivikakk/comrak/blob/HEAD/xyz)
) to remain in the text as-is.- nodes: add From impls for AstNode. by
@kivikakk
in kivikakk/comrak#424
- Back by popular demand:
AstNode::from(NodeValue)
.- Also added is
AstNode::from(Ast)
, if you have sourcepos.- AST validation by
@yannham
in kivikakk/comrak#425
- The AST is validated when formatting a document as CommonMark in debug builds.
- Address autolink edge cases. by
@kivikakk
in kivikakk/comrak#426
- Autolinks had many edge cases where output differed from upstream
cmark-gfm
. These have been fixed by following upstream's parser design closely.- shortcodes: capture all known aliases. by
@kivikakk
in kivikakk/comrak#427
- We didn't parse shortcodes containing numbers or
+
. We do now.- Support both upstream CommonMark and GFM's differences in the base spec. by
@kivikakk
in kivikakk/comrak#428
- GFM modifies even base CommonMark output somewhat. We now support and validate against both.
- cm: count ol items from start of each list. by
@kivikakk
in kivikakk/comrak#429
- Ordered list item numbers are normalised on formatting back to CommonMark.
- arena_tree: panic if iterator invalidation causes trouble. by
@kivikakk
in kivikakk/comrak#437
arena_tree
would silently stop iteration when trying to proceed from a child that had lost its parent. It now panics instead, as the old behaviour is incorrect and impossible to notice.- broken reflink callback updates & big cleanup. by
@kivikakk
in kivikakk/comrak#438
- The broken reference link callback has been moved into
ParseOptions
(which now takes a lifetime, meaningOptions
does too).- The callback now takes a struct containing both the normalised reference, and the original text, and the return value has changed from a 2-tuple to a struct for clarity.
parse_document_with_broken_link_callback
has been marked deprecated.- Inline sourcepos fixes. by
@kivikakk
in kivikakk/comrak#439
- Inline sourcepos was provided on a best-effort basis, but there are multiple correctness issues which can't be fixed without significant work.
- Inline sourcepos is no longer reported in HTML output. It remains in the AST and in XML output, but it is not reliable. See the PR for details.
- Link sourcepos is slightly better than it was when it spans multiple lines.
New Contributors
@liamwhite
made their first contribution in kivikakk/comrak#421@yannham
made their first contribution in kivikakk/comrak#425Diff: https://github.com/kivikakk/comrak/compare/v0.24.1...v0.25.0
Sourced from comrak's changelog.
[v0.25.0] - 12-07-2024
- Discord-flavored Markdown by
@liamwhite
in kivikakk/comrak#421
- Three new extensions and two render options are added:
extension.underline
adds support for__underlined__
text.extension.spoiler
adds support for||spoiler||
text.extension.greentext
adds support for image board-style>greentext
, which isn't transformed into a blockquote.render.ignore_setext
disables parsing setext-style headings.render.ignore_empty_links
causes links with no text (like[](https://github.com/kivikakk/comrak/blob/main/xyz)
) to remain in the text as-is.- nodes: add From impls for AstNode. by
@kivikakk
in kivikakk/comrak#424
- Back by popular demand:
AstNode::from(NodeValue)
.- Also added is
AstNode::from(Ast)
, if you have sourcepos.- AST validation by
@yannham
in kivikakk/comrak#425
- The AST is validated when formatting a document as CommonMark in debug builds.
- Address autolink edge cases. by
@kivikakk
in kivikakk/comrak#426
- Autolinks had many edge cases where output differed from upstream
cmark-gfm
. These have been fixed by following upstream's parser design closely.- shortcodes: capture all known aliases. by
@kivikakk
in kivikakk/comrak#427
- We didn't parse shortcodes containing numbers or
+
. We do now.- Support both upstream CommonMark and GFM's differences in the base spec. by
@kivikakk
in kivikakk/comrak#428
- GFM modifies even base CommonMark output somewhat. We now support and validate against both.
- cm: count ol items from start of each list. by
@kivikakk
in kivikakk/comrak#429
- Ordered list item numbers are normalised on formatting back to CommonMark.
- arena_tree: panic if iterator invalidation causes trouble. by
@kivikakk
in kivikakk/comrak#437
arena_tree
would silently stop iteration when trying to proceed from a child that had lost its parent. It now panics instead, as the old behaviour is incorrect and impossible to notice.- broken reflink callback updates & big cleanup. by
@kivikakk
in kivikakk/comrak#438
- The broken reference link callback has been moved into
ParseOptions
(which now takes a lifetime, meaningOptions
does too).- The callback now takes a struct containing both the normalised reference, and the original text, and the return value has changed from a 2-tuple to a struct for clarity.
parse_document_with_broken_link_callback
has been marked deprecated.- Inline sourcepos fixes. by
@kivikakk
in kivikakk/comrak#439
- Inline sourcepos was provided on a best-effort basis, but there are multiple correctness issues which can't be fixed without significant work.
- Inline sourcepos is no longer reported in HTML output. It remains in the AST and in XML output, but it is not reliable. See the PR for details.
- Link sourcepos is slightly better than it was when it spans multiple lines.
New Contributors
@liamwhite
made their first contribution in kivikakk/comrak#421@yannham
made their first contribution in kivikakk/comrak#425
... (truncated)
ae113bf
Merge pull request #440
from kivikakk/release/v0.25.083e90b2
changelog.txt: elaborate on 0.25.0, and clean up.17c02a2
[skip test] update changelog5515ad2
Cargo.toml: v0.25.0.a38b4e3
Merge pull request #439
from kivikakk/inline-sourcepos983180b
parser: document sourcepos reliability.cc17182
html: don't report sourcepos on inlines.21d97fe
tests: ignore some failures.69ebedd
tests: another case which misses.c271949
tests: note this works and must remain.