From f62bbd1b1b32ff9a795c1dc00c24b9be3e8db77f532fe1fb1628c506a50f7c4c Mon Sep 17 00:00:00 2001 From: Daniel Garcia Date: Thu, 23 Nov 2023 07:28:03 +0000 Subject: [PATCH] - Update to version 3.0.0: * drop python 3.7 support * Update from upstream markdown-it 12.2.0 to 13.0.0 - A key change is the addition of a new Token type, text_special, which is used to represent HTML entities and backslash escaped characters. - This ensures that (core) typographic transformation rules are not incorrectly applied to these texts. - The final core rule is now the new text_join rule, which joins adjacent text/text_special tokens, and so no text_special tokens should be present in the final token stream. - Any custom typographic rules should be inserted before text_join. - A new linkify rule has also been added to the inline chain, which will linkify full URLs (e.g. https://example.com), and fixes collision of emphasis and linkifier (so http://example.org/foo._bar_-_baz is now a single link, not emphasized). - Emails and fuzzy links are not affected by this. * REFACTOR: Replace most character code use with strings - The use of StateBase.srcCharCode is deprecated (with backward-compatibility), and all core uses are replaced by StateBase.src. - Conversion of source string characters to an integer representing the Unicode character is prevalent in the upstream JavaScript implementation, to improve performance. However, it is unnecessary in Python and leads to harder to read code and performance deprecations (during the conversion in the StateBase initialisation). * Centralise indented code block tests - For CommonMark, the presence of indented code blocks prevent any OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-markdown-it-py?expand=0&rev=9 --- python-markdown-it-py-2.2.0.tar.gz | 3 -- python-markdown-it-py-3.0.0.tar.gz | 3 ++ python-markdown-it-py.changes | 50 ++++++++++++++++++++++++++++++ python-markdown-it-py.spec | 7 +++-- 4 files changed, 57 insertions(+), 6 deletions(-) delete mode 100644 python-markdown-it-py-2.2.0.tar.gz create mode 100644 python-markdown-it-py-3.0.0.tar.gz diff --git a/python-markdown-it-py-2.2.0.tar.gz b/python-markdown-it-py-2.2.0.tar.gz deleted file mode 100644 index fb0c5ca..0000000 --- a/python-markdown-it-py-2.2.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a201c93c023d0c810023b38f3e9ad48be433095c5437d5410af04a73665c8ff1 -size 266808 diff --git a/python-markdown-it-py-3.0.0.tar.gz b/python-markdown-it-py-3.0.0.tar.gz new file mode 100644 index 0000000..1c5df5c --- /dev/null +++ b/python-markdown-it-py-3.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60dffc950e61a2b4ec980087d79352293f138f7b41bf3d7f8e1907160986c886 +size 275478 diff --git a/python-markdown-it-py.changes b/python-markdown-it-py.changes index 02f1779..cf27ea9 100644 --- a/python-markdown-it-py.changes +++ b/python-markdown-it-py.changes @@ -1,3 +1,53 @@ +------------------------------------------------------------------- +Thu Nov 23 07:22:11 UTC 2023 - Daniel Garcia + +- Update to version 3.0.0: + * drop python 3.7 support + * Update from upstream markdown-it 12.2.0 to 13.0.0 + - A key change is the addition of a new Token type, text_special, + which is used to represent HTML entities and backslash escaped + characters. + - This ensures that (core) typographic transformation rules are not + incorrectly applied to these texts. + - The final core rule is now the new text_join rule, which joins + adjacent text/text_special tokens, and so no text_special tokens + should be present in the final token stream. + - Any custom typographic rules should be inserted before text_join. + - A new linkify rule has also been added to the inline chain, which + will linkify full URLs (e.g. https://example.com), and fixes + collision of emphasis and linkifier (so + http://example.org/foo._bar_-_baz is now a single link, not + emphasized). + - Emails and fuzzy links are not affected by this. + * REFACTOR: Replace most character code use with strings + - The use of StateBase.srcCharCode is deprecated (with + backward-compatibility), and all core uses are replaced by + StateBase.src. + - Conversion of source string characters to an integer + representing the Unicode character is prevalent in the upstream + JavaScript implementation, to improve performance. However, it + is unnecessary in Python and leads to harder to read code and + performance deprecations (during the conversion in the StateBase + initialisation). + * Centralise indented code block tests + - For CommonMark, the presence of indented code blocks prevent any + other block element from having an indent of greater than 4 + spaces. + - Certain Markdown flavors and derivatives, such as mdx and djot, + disable these code blocks though, since it is more common to use + code fences and/or arbitrary indenting is desirable. + - Previously, disabling code blocks did not remove the indent + limitation, since most block elements had the 3 space limitation + hard-coded. + - This change centralised the logic of applying this limitation + (in StateBlock.is_code_block), and only applies it when indented + code blocks are enabled. + * Maintenance changes + - Strict type annotation checking has been applied to the whole + code base, ruff is now used for linting, and fuzzing tests have + been added to the CI, to integrate with Google OSS-Fuzz testing, + thanks to @DavidKorczynski. + ------------------------------------------------------------------- Fri May 5 11:57:21 UTC 2023 - Johannes Kastl diff --git a/python-markdown-it-py.spec b/python-markdown-it-py.spec index 10d7d26..ce7b40c 100644 --- a/python-markdown-it-py.spec +++ b/python-markdown-it-py.spec @@ -18,7 +18,7 @@ %{?sle15_python_module_pythons} Name: python-markdown-it-py -Version: 2.2.0 +Version: 3.0.0 Release: 0 Summary: Python port of markdown-it Markdown parsing License: MIT @@ -26,9 +26,10 @@ URL: https://github.com/executablebooks/markdown-it-py/ Source: https://github.com/executablebooks/markdown-it-py/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz #Source: https://files.pythonhosted.org/packages/source/m/markdown-it-py/markdown-it-py-%%{version}.tar.gz BuildRequires: python-rpm-macros -BuildRequires: %{python_module flit} +BuildRequires: %{python_module flit-core} BuildRequires: %{python_module mdurl} BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} # SECTION tests BuildRequires: %{python_module linkify-it-py} BuildRequires: %{python_module pytest-regressions} @@ -48,7 +49,7 @@ This is a Python port of [markdown-it], and some of its associated plugins. It follows the CommonMark spec for baseline parsing, has a configurable syntax and is pluggable. %prep -%setup -q -n markdown-it-py-%{version} +%autosetup -p1 -n markdown-it-py-%{version} sed -i '1{/\/usr\/bin\/env python*/d;}' markdown_it/cli/parse.py %build