v0.25.0
- Discord-flavored Markdown by @Meow and @liamwhite in #421
- Three new extensions and two render options are added:
extension.underlineadds support for__underlined__text.extension.spoileradds support for||spoiler||text.extension.greentextadds support for image board-style>greentext, which isn't transformed into a blockquote.render.ignore_setextdisables parsing setext-style headings.render.ignore_empty_linkscauses links with no text (like[](xyz)) to remain in the text as-is.
- Three new extensions and two render options are added:
- nodes: add From impls for AstNode. by @kivikakk in #424
- Back by popular demand:
AstNode::from(NodeValue). - Also added is
AstNode::from(Ast), if you have sourcepos.
- Back by popular demand:
- AST validation by @yannham in #425
- The AST is validated when formatting a document as CommonMark in debug builds.
- Address autolink edge cases. by @kivikakk in #426
- Autolinks had many edge cases where output differed from upstream
cmark-gfm. These have been fixed by following upstream's parser design closely.
- Autolinks had many edge cases where output differed from upstream
- shortcodes: capture all known aliases. by @kivikakk in #427
- We didn't parse shortcodes containing numbers or
+. We do now.
- We didn't parse shortcodes containing numbers or
- Support both upstream CommonMark and GFM's differences in the base spec. by @kivikakk in #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 #429
- Ordered list item numbers are normalised on formatting back to CommonMark.
- arena_tree: panic if iterator invalidation causes trouble. by @kivikakk in #437
arena_treewould 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 #438
- The broken reference link callback has been moved into
ParseOptions(which now takes a lifetime, meaningOptionsdoes 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_callbackhas been marked deprecated.
- The broken reference link callback has been moved into
- Inline sourcepos fixes. by @kivikakk in #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 #421
- @yannham made their first contribution in #425
Diff: v0.24.1...v0.25.0