Skip to content

Releases: pulldown-cmark/pulldown-cmark

v0.10.3

23 Apr 07:37
Compare
Choose a tag to compare

The main change of this release is the simd feature was not being used in the escape functions since the version 0.10 due to a mistake during the separation of the crate pulldown-cmark-escape.

The crate pulldown-cmark-escape has been updated to the version 0.10.1.

What's Changed

Full Changelog: v0.10.2...v0.10.3

v0.10.2

02 Apr 15:09
Compare
Choose a tag to compare

New release with some fixes and improvements. Note the 0.10.1 is missing (yanked from crates.io) due to a conflict with the clap version and the Rust minimum version (1.74 now instead of 1.70).

Thanks to all people that contributed to this release!

What's Changed

  • Limit link def expansion by @notriddle in #845
  • Do not look for HTML tags that start with backslash by @notriddle in #849
  • Count a blank line at end of indented code block towards list by @notriddle in #851
  • Use same limit for refdef as inline links by @notriddle in #854
  • Don't exit scan_attribute with the ix pointing at block quote by @notriddle in #858
  • Check indentation on the closing fence relative to the line by @notriddle in #862
  • Adjust strikethrough flanking rule to better fit Rustdoc Crater run by @notriddle in #864
  • perf: cargo-wizard default recommendations for runtime perf by @Martin1887 in #868

New Contributors

Full Changelog: v0.10.0...v0.10.2

v0.10.0

03 Feb 18:40
Compare
Choose a tag to compare

This is a huge release after a a long time without a major release, with many bugfixes and several new features. Thanks to all people involved!

Breaking Changes

New Features

Bugfixes

  • Fix parser bug where link label gets broken by ] in code span by @lukas-code in #643
  • fix: strikethrough can be intra-word by @Martin1887 in #648
  • fix: shift right overflow panic in debug mode in rare cases by @Martin1887 in #652
  • fix: tables can interrupt paragraphs by @Martin1887 in #653
  • fix(parse): rare error searching in the emphasis stack by @Martin1887 in #650
  • Skip leading space on leading pipe in scan_table_head by @notriddle in #665
  • Fix index out of bounds when parsing GFM footnote by @mgeisler in #667
  • Allow lowercase letters in HTML declarations by @notriddle in #668
  • Fix fuzzing empty list items by @mgeisler in #669
  • Fix, and document, some table/paragraph interrupt corner cases by @notriddle in #672
  • Include trailing backslash at all break points in paragraph by @notriddle in #676
  • Block quotes interrupt paragraphs even with no space at start by @notriddle in #675
  • Fix table/paragraph interruption when nested by @notriddle in #679
  • Use correct both flag when pushing remaining delimiters to stack by @notriddle in #682
  • Fix #684 by @Martin1887 in #685
  • Fix spec violation on empty-list-item-cannot-interrupt-paragrph rule by @notriddle in #681
  • fix: empty text events in ATX headings with trailing # by @Martin1887 in #683
  • Fix incorrect scan of bad email address by @raphlinus in #688
  • Fix infinite loop with metadata blocks with indented lines by @Martin1887 in #690
  • Add special handling for backslashed table pipes by @notriddle in #699
  • Fixes rustdoc::bare_urls lint by @GuillaumeGomez in #719
  • Fix elided lifetimes and unused lifetimes errors by @GuillaumeGomez in #723
  • Allow arbitrary blank lines within list by @notriddle in #728
  • Single pipes alone on lines are not tables by @notriddle in #732
  • Use original run lengths to judge multiples of three by @notriddle in #730
  • Fix oversight in table escape parsing by @notriddle in #736
  • Check that parens in link def are nested by @notriddle in #738
  • Fix emphasis stack truncation bug by @notriddle in #740
  • Fix emphasis run length delimiter lower limit bug by @notriddle in #742
  • fix: compilation error in utils.rs after merge 701 by @Martin1887 in #746
  • Track underscore lower bound by % 3 modulo by @notriddle in #748
  • Parse [^] as a link by @notriddle in #750
  • Do not subtract list item indent if it has more than one blank line by @notriddle in #752
  • Do not parse hard line breaks when doing link label blocks by @notriddle in #754
  • Ignore block synstax when determining emphasis can_open/close by @notriddle in #756
  • Allow up to three spaces indentation before footnote definition by @notriddle in #759
  • Do not accept footnote definitions with line breaks by @notriddle in #761
  • Apply laziness rules to link definition by @notriddle in #765
  • When popping a list, clear begin_list_item state by @notriddle in #763
  • Parse footnote definitions below the first line of nested blocks by @notriddle in #767
  • Parse settext headers with higher priority than linkdefs by @notriddle in #769
  • Clean up some more gratuitous differences in footnote parsing by @notriddle in #773
  • Parse inline nested footnote definitions by @notriddle in #771
  • Do not treat backslash at end of block as hard break by @notriddle in #775
  • Correct instructions for running specs by @ollpu in #777
  • Read lazy paragraph continuations off of refdefs by @notriddle in #782
  • Allow setext headers to interrupt link definitions by @notriddle in #780
  • Fix incorrect space handling at paragraph/linkref boundary by @notriddle in #783
  • Fix handling of newlines in nested inline link by @notriddle in #784
  • Allow setext headers to interrupt link def insides by @notriddle in #790
  • Avoid updating linkdef when title isn't followed by NL by @notriddle in #792
  • Trim spaces off start and end of link reference by @notriddle in #794
  • Don't eat blank line when parsing unclosed fenced code by @notriddle in #796
  • Do not allow inlines to cross over block structures by @notriddle in #798
  • Fix parsing of spaces in code by @notriddle in #786
  • Include last of line of link title by @notriddle in #809
  • Calculate correct list indent for ordered lists by @notriddle in #811
  • Do not treat zero-cell rows as valid by @notriddle in #812
  • Trim spaces off end of parsed lines by @notriddle in #785
  • Fix up corner cases in table and code unescaping by @notriddle in #776
  • Reject table delimiter row with unexpecte...
Read more

0.9.6

29 Jan 08:49
Compare
Choose a tag to compare

cargo build fails when --locked is passed for 0.9.4 and 0.9.5 #833

0.9.5

28 Jan 10:22
Compare
Choose a tag to compare

Set range end to Paragraph if returned early because of footnote definition #831

0.9.4

27 Jan 16:27
Compare
Choose a tag to compare
  • Allow footnote definitions to not be separated by blank lines #825
  • chore: Update bitflags from 1.3.x to 2.x #694

0.9.3

21 May 15:19
3da63d5
Compare
Choose a tag to compare

This patch prepares the release of the minor version 0.9.3. It's forked off 5c7881c and includes a cherry-pick of 48b5931.

Changelog

Parser

Even though this is a minor release, it changes changes how some inputs are parsed. These changes are made to comply with the CommonMark and GitHub Flavored Markdown specifications.

First, pulldown-cmark now supports strikethrough with a pair of single tildes in addition to double tildes, if the strikethrough option is enabled. For example, ~this~ is now equal to ~~this~~ and will be parsed like this.

The second change fixes a bug in the parser where a specific edge case with brackets and inline code ([`]`]) was incorrectly parsed as a link. This change should not affect most users of pulldown-cmark.

impl Debug for Everything

All public types in the pulldown-cmark library now implement the Debug trait.

PRs included in this release

New Contributors

Full Changelog: v0.9.2...v0.9.3

v0.9.2

26 Jul 18:23
Compare
Choose a tag to compare

This release includes fixes for a few panics and other minor bugs.

0.9.1

17 Jan 19:04
Compare
Choose a tag to compare

Fixes minor parsing bug in nested lists.

0.9.0

22 Dec 14:49
Compare
Choose a tag to compare

This release brings a number of changes.

New features

  • Thanks to @lo48576, pulldown now optionally supports custom header ids and classes for headers. Set ENABLE_HEADING_ATTRIBUTES in the options to enable.
  • Users can now access reference definitions, information that was previously only exposed internally.
  • Pulldown is now CommonMark 0.30 compliant.

Changes

  • The function signature for the broken link callback has changed slightly to allow for FnMut functions.

There have also been a number of (small) parsing bug fixes.