Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-mistune for openSUSE:Factory checked in at 2025-09-20 22:03:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-mistune (Old) and /work/SRC/openSUSE:Factory/.python-mistune.new.27445 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-mistune" Sat Sep 20 22:03:51 2025 rev:25 rq:1305956 version:3.1.4 Changes: -------- --- /work/SRC/openSUSE:Factory/python-mistune/python-mistune.changes 2025-04-08 17:52:06.936719934 +0200 +++ /work/SRC/openSUSE:Factory/.python-mistune.new.27445/python-mistune.changes 2025-09-20 22:03:57.818377060 +0200 @@ -1,0 +2,7 @@ +Thu Sep 18 12:57:41 UTC 2025 - John Paul Adrian Glaubitz <[email protected]> + +- Update to 3.1.4 + * Add fenced directive break rule in list parser, #412 - by @lepture in #412 (ea3ec) + * Prevent remove unicode whitespace when parsing atx heading - by @lepture (9e720) + +------------------------------------------------------------------- Old: ---- mistune-3.1.3.tar.gz New: ---- mistune-3.1.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-mistune.spec ++++++ --- /var/tmp/diff_new_pack.0XBIcq/_old 2025-09-20 22:03:58.394401221 +0200 +++ /var/tmp/diff_new_pack.0XBIcq/_new 2025-09-20 22:03:58.394401221 +0200 @@ -19,7 +19,7 @@ %define modname mistune %{?sle15_python_module_pythons} Name: python-%{modname} -Version: 3.1.3 +Version: 3.1.4 Release: 0 Summary: Python Markdown parser with renderers and plugins License: BSD-3-Clause ++++++ mistune-3.1.3.tar.gz -> mistune-3.1.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/README.md new/mistune-3.1.4/README.md --- old/mistune-3.1.3/README.md 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/README.md 2025-08-29 09:19:20.000000000 +0200 @@ -1,17 +1,21 @@ -# Mistune v3 +<div align="center"> -A fast yet powerful Python Markdown parser with renderers and plugins. - -<a href="https://github.com/lepture/mistune/actions"><img src="https://github.com/lepture/mistune/actions/workflows/tests.yml/badge.svg" /></a> -<a href="https://codecov.io/gh/lepture/mistune"><img src="https://codecov.io/gh/lepture/mistune/graph/badge.svg?token=mcpitD54Tx" alt="Coverage"></a> +<picture> + <source media="(prefers-color-scheme: dark)" srcset="docs/_static/logo-white.svg" /> + <img alt="Mistune v3" src="docs/_static/logo-black.svg" height="68" /> +</picture> +A fast yet powerful Python Markdown parser with renderers and plugins. -**NOTE: This is the re-designed v3 of mistune.** - -Looking for old Mistune? Switch branch to: +[](https://github.com/lepture/mistune/actions) +[](https://pypi.org/project/mistune) +[](https://anaconda.org/conda-forge/mistune) +[](https://pepy.tech/projects/mistune) +[](https://codecov.io/gh/lepture/mistune) +[](https://sonarcloud.io/summary/new_code?id=lepture_mistune) +[](https://sonarcloud.io/summary/new_code?id=lepture_mistune) -- v1 -- v2 +</div> ## Paid plugins diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/benchmark/bench.py new/mistune-3.1.4/benchmark/bench.py --- old/mistune-3.1.3/benchmark/bench.py 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/benchmark/bench.py 2025-08-29 09:19:20.000000000 +0200 @@ -48,8 +48,8 @@ ) parsers[f"mistune ({mistune.__version__})"] = mistune.html - parsers[f"mistune (slow)"] = mistune.create_markdown(escape=False) - parsers[f"mistune (fast)"] = mistune.create_markdown(escape=False, plugins=["speedup"]) + parsers["mistune (slow)"] = mistune.create_markdown(escape=False) + parsers["mistune (fast)"] = mistune.create_markdown(escape=False, plugins=["speedup"]) parsers["mistune (full)"] = mistune.create_markdown( escape=False, plugins=[ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/docs/changes.rst new/mistune-3.1.4/docs/changes.rst --- old/mistune-3.1.3/docs/changes.rst 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/docs/changes.rst 2025-08-29 09:19:20.000000000 +0200 @@ -3,6 +3,21 @@ Here is the full history of mistune v3. +Version 3.1.4 +------------- + +**Released on Aug 29, 2025** + +* Add fenced directive break rule in list parser. +* Prevent removing unicode whitespace when parsing atx heading. + +Version 3.1.3 +------------- + +**Released on Mar 19, 2025** + +* Announce supports for python 3.12 and 3.13 + Version 3.1.2 ------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/docs/community.rst new/mistune-3.1.4/docs/community.rst --- old/mistune-3.1.3/docs/community.rst 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/docs/community.rst 2025-08-29 09:19:20.000000000 +0200 @@ -4,3 +4,4 @@ Here is the list of plugins and directives created by the community. * `mistune-telegram <https://github.com/impocode/mistune-telegram>`_ - Plugin mistune for converting Markdown into Telegram format. +* `mistune-json <https://github.com/fernandonino/mistune-json>`_ - Plugin for converting Markdown into HTML-based JSON objects. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/src/mistune/__init__.py new/mistune-3.1.4/src/mistune/__init__.py --- old/mistune-3.1.3/src/mistune/__init__.py 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/src/mistune/__init__.py 2025-08-29 09:19:20.000000000 +0200 @@ -97,5 +97,5 @@ "markdown", ] -__version__ = "3.1.3" +__version__ = "3.1.4" __homepage__ = "https://mistune.lepture.com/" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/src/mistune/block_parser.py new/mistune-3.1.4/src/mistune/block_parser.py --- old/mistune-3.1.3/src/mistune/block_parser.py 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/src/mistune/block_parser.py 2025-08-29 09:19:20.000000000 +0200 @@ -1,5 +1,6 @@ import re from typing import Optional, List, Tuple, Match, Pattern +import string from .util import ( unikey, escape_url, @@ -185,7 +186,7 @@ """Parse token for ATX heading. An ATX heading is started with 1 to 6 symbol of ``#``.""" level = len(m.group("atx_1")) - text = m.group("atx_2").strip() + text = m.group("atx_2").strip(string.whitespace) # remove last # if text: text = _ATX_HEADING_TRIM.sub("", text) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/src/mistune/list_parser.py new/mistune-3.1.4/src/mistune/list_parser.py --- old/mistune-3.1.3/src/mistune/list_parser.py 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/src/mistune/list_parser.py 2025-08-29 09:19:20.000000000 +0200 @@ -98,14 +98,18 @@ leading_width = len(spaces) + len(marker) text, continue_width = _compile_continue_width(text, leading_width) item_pattern = _compile_list_item_pattern(bullet, leading_width) - pairs = [ - ("thematic_break", block.specification["thematic_break"]), - ("fenced_code", block.specification["fenced_code"]), - ("atx_heading", block.specification["atx_heading"]), - ("block_quote", block.specification["block_quote"]), - ("block_html", block.specification["block_html"]), - ("list", block.specification["list"]), + list_item_breaks = [ + "thematic_break", + "fenced_code", + "atx_heading", + "block_quote", + "block_html", + "list", ] + if "fenced_directive" in block.specification: + list_item_breaks.insert(1, "fenced_directive") + + pairs = [(name, block.specification[name]) for name in list_item_breaks] if leading_width < 3: _repl_w = str(leading_width) pairs = [(n, p.replace("3", _repl_w, 1)) for n, p in pairs] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mistune-3.1.3/tests/test_misc.py new/mistune-3.1.4/tests/test_misc.py --- old/mistune-3.1.3/tests/test_misc.py 2025-03-19 15:26:24.000000000 +0100 +++ new/mistune-3.1.4/tests/test_misc.py 2025-08-29 09:19:20.000000000 +0200 @@ -130,6 +130,12 @@ expected = "<p>\u2003\u2003foo<br />\nbar</p>\n<p>\u2003\u2003foobar</p>" self.assertEqual(result.strip(), expected) + def test_unicode_whitespace(self): + text = "# \u3000\u3000abc" + result = mistune.html(text) + expected = "<h1>\u3000\u3000abc</h1>\n" + self.assertEqual(result, expected) + def test_html_tag_text_following_list(self): md = mistune.create_markdown(escape=False, hard_wrap=True) result = md("foo\n- bar\n\ntable")
