Recent Releases of markdown
markdown - Release 3.9.0
Changed
- Footnotes are now ordered by the occurrence of their references in the
document. A new configuration option for the footnotes extension,
USE_DEFINITION_ORDER, has been added to support restoring the previous behavior of ordering footnotes by the occurrence of definitions (#1367).
Fixed
- Ensure inline processing iterates through elements in document order (#1546).
- Fix handling of incomplete HTML tags in code spans in Python 3.14 (#1547).
- Python
Published by github-actions[bot] 6 months ago
markdown - Release 3.8.2
Fixed
- Fix
codecsdeprecation in Python 3.14. - Fix issue with unclosed comment parsing in Python 3.14.
- Fix issue with unclosed declarations in Python 3.14.
- Fix issue with unclosed HTML tag
<fooand Python 3.14.
- Python
Published by github-actions[bot] 8 months ago
markdown - Release 3.8.1
Fixed
- Ensure incomplete markup declaration in raw HTML doesn't crash parser (#1534).
- Fixed dropped content in
md_in_html(#1526). - Fixed HTML handling corner case that prevented some content from not being rendered (#1528).
- Python
Published by github-actions[bot] 8 months ago
markdown - Release 3.8
Changed
- DRY fix in
abbrextension by introducing methodcreate_element(#1483). - Clean up test directory by removing some redundant tests and port non-redundant cases to the newer test framework.
- Improved performance of the raw HTML post-processor (#1510).
Fixed
- Backslash Unescape IDs set via
attr_listontoc(#1493). - Ensure
md_in_htmlprocesses content inside "markdown" blocks as they are parsed outside of "markdown" blocks to keep things more consistent for third-party extensions (#1503). md_in_htmlhandle tags within inline code blocks better (#1075).md_in_htmlfix handling of one-liner block HTML handling (#1074).- Ensure
<center>is treated like a block-level element (#1481). - Ensure that
abbrextension respectsAtomicStringand does not process perceived abbreviations in these strings (#1512). - Ensure
smartyextension correctly renders nested closing quotes (#1514).
- Python
Published by waylan 11 months ago
markdown - Release 3.7
Changed
Refactor abbr Extension
A new AbbrTreeprocessor has been introduced, which replaces the now deprecated
AbbrInlineProcessor. Abbreviation processing now happens after Attribute Lists,
avoiding a conflict between the two extensions (#1460).
The AbbrPreprocessor class has been renamed to AbbrBlockprocessor, which
better reflects what it is. AbbrPreprocessor has been deprecated.
A call to Markdown.reset() now clears all previously defined abbreviations.
Abbreviations are now sorted by length before executing AbbrTreeprocessor
to ensure that multi-word abbreviations are implemented even if an abbreviation
exists for one of those component words. (#1465)
Abbreviations without a definition are now ignored. This avoids applying abbr tags to text without a title value.
Added an optional glossary configuration option to the abbreviations extension.
This provides a simple and efficient way to apply a dictionary of abbreviations
to every page.
Abbreviations can now be disabled by setting their definition to "" or ''.
This can be useful when using the glossary option.
Fixed
- Fixed links to source code on GitHub from the documentation (#1453).
- Python
Published by waylan over 1 year ago
markdown - Release 3.6
Changed
Refactor TOC Sanitation
- All postprocessors are now run on heading content.
- Footnote references are now stripped from heading content. Fixes #660.
- A more robust
striptagsis provided to convert headings to plain text. Unlike, themarkupsafeimplementation, HTML entities are not unescaped. - The plain text
name, richhtml, and unescaped rawdata-toc-labelare saved totoc_tokens, allowing users to access the full rich text content of the headings directly fromtoc_tokens. - The value of
data-toc-labelis sanitized separate from heading content before being written toname. This fixes a bug which allowed markup through in certain circumstances. To access the raw unsanitized data, retrieve the value fromtoken['data-toc-label']directly. - An
html.unescapecall is made just prior to callingslugifyso thatslugifyonly operates on Unicode characters. Note thathtml.unescapeis not run onname,html, ordata-toc-label. - The functions
get_nameandstashedHTML2textdefined in thetocextension are both deprecated. Instead, third party extensions should use some combination of the new functionsrun_postprocessors,render_inner_htmlandstriptags.
Fixed
- Include
scripts/*.pyin the generated source tarballs (#1430). - Ensure lines after heading in loose list are properly detabbed (#1443).
- Give smarty tree processor higher priority than toc (#1440).
- Permit carets (
^) and square brackets (]) but explicitly exclude backslashes (\) from abbreviations (#1444). - In attribute lists (
attr_list,fenced_code), quoted attribute values are now allowed to contain curly braces (}) (#1414).
- Python
Published by waylan almost 2 years ago
markdown - Release 3.5.2
Fixed
- Fix type annotations for
convertFile- it accepts only bytes-based buffers. Also remove legacy checks from Python 2 (#1400) - Remove legacy import needed only in Python 2 (#1403)
- Fix typo that left the attribute
AdmonitionProcessor.content_indentunset (#1404) - Fix edge-case crash in
InlineProcessorwithAtomicString(#1406). - Fix edge-case crash in
codehilitewith an emptycodetag (#1405). - Improve and expand type annotations in the code base (#1401).
- Fix handling of bogus comments (#1425).
- Python
Published by github-actions[bot] about 2 years ago
markdown - Release 3.5.1
Fixed
- Fix a performance problem with HTML extraction where large HTML input could trigger quadratic line counting behavior (#1392).
- Improve and expand type annotations in the code base (#1394).
- Python
Published by github-actions[bot] over 2 years ago