commit 7bc89e30d9d7c61c8589d0aa14a514fa1ddb48ec6b65ca122426dd00ce7e200e Author: Markéta Machová Date: Wed Jul 16 08:59:48 2025 +0000 - Convert to libalternatives OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-myst-parser?expand=0&rev=12 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/python-myst-parser-3.0.1.tar.gz b/python-myst-parser-3.0.1.tar.gz new file mode 100644 index 0000000..2fb3ebc --- /dev/null +++ b/python-myst-parser-3.0.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1686c63164d55db5f3e7ebea9a2c3a541f973f89b33a4e49390ef69ee89bd6a5 +size 823769 diff --git a/python-myst-parser.changes b/python-myst-parser.changes new file mode 100644 index 0000000..8a07c4e --- /dev/null +++ b/python-myst-parser.changes @@ -0,0 +1,122 @@ +------------------------------------------------------------------- +Wed Jul 16 08:50:54 UTC 2025 - Markéta Machová + +- Convert to libalternatives + +------------------------------------------------------------------- +Thu May 9 08:37:35 UTC 2024 - Dirk Müller + +- update to 3.0.1: + * Account for the final directive option having an empty value + * Re-allow indented directive option blocks + * Add support for Python 3.12 + * Update docutils requirement from >=0.16,<0.21 to + >=0.18,<0.22 + * Allow for use of the `line-block` directive + * Emits sphinx include-read event + * Nested parse attribution in `attr_block` + * Directive option parsing + * Improve directive parsing warnings + * Allow for opening external links in new tabs (#856) + * Replace black, isort, pyupgrade with ruff formatter + * remove redundant mypy config + * Add additional Ruff lints (and fix issues) + * mypy- disallow 'any generics' + * Fix docutils deprecation in option parsing + +------------------------------------------------------------------- +Thu Nov 23 07:46:00 UTC 2023 - Daniel Garcia + +- Update to version 2.0.0: + - This release primarily updates core myst-parser dependencies, with + some minor changes to parsing behaviour: + - UPGRADE: markdown-it-py to v3 (#773) + - This is mainly a non-breaking change, fixing some edge cases in parsing + - See: https://github.com/executablebooks/markdown-it-py/releases/tag/v3.0.0 + - and https://github.com/executablebooks/mdit-py-plugins/releases/tag/v0.4.0 + - UPGRADE: linkify-it-py to v2 (#675) + - Also fixes some edge cases in parsing + - See: https://github.com/tsutsu3/linkify-it-py/blob/main/CHANGELOG.md + - UPGRADE: Add support for docutils v0.20 (#775) + - No significant changes, see https://docutils.sourceforge.io/RELEASE-NOTES.html#release-0-20-2023-05-04 + - UPGRADE: Add support for sphinx v7, and remove v5 support (#776) + - No significant changes, see https://www.sphinx-doc.org/en/master/changes.html + - UPGRADE: Remove Python 3.7 support and add testing for Python + 3.11 (#772) + - Improve default slug generation for heading anchors, thanks to + @Cimbali (#777) + - This change makes the slug generation closer to GitHub, in + that, starting/ending whitespace will not be stripped. + - For example, # ` a` b `c ` will now correctly create the slug + -a-b-c- and not a-b-c + - IMPROVE: Substitution extension (#777) + - Allow any value type (including dict, list, datetime) and emit + a myst.substitution warning for errors in resolving the + substitution content. + - Introduce a gate/check GHA job, thanks to @webknjaz (#635) + +- v1.0.0: + - This changes absolutely nothing in the code, or about the + maintenance/release policy of this project. But it does feel + about time :D +- v0.19.2: + - NEW: Add myst_fence_as_directive config by @chrisjsewell in #742 + - Fix the sphinx-design example by @recfab in #738 + - Add html_last_updated_fmt = "" to conf.py by @jeanas in #691 +- v0.19.1: + - FIX NoURI error in doc reference resolution, for texinfo builds by + @chrisjsewell in #734 +- v0.19.0: + - This release brings a number of exciting new features, + improvements + - Rewritten documentation, with a clearer structure, many more + examples, rich hover tips, and a new live preview page (powered + by pyscript) + - The code base API is also now fully documented by + https://sphinx-autodoc2.readthedocs.io/, which even allows for + MyST docstrings! + - Add Sphinx 6 support + - Extended docutils (single-page) support + - Extended Markdown links, including intersphinx support, e.g. + [text](inv:name#target) + - {} New attributes syntax, to extend common Markdown syntaxes, + e.g. ![image](image.png){#id .class width=100px} +- v0.18.1: + - MAINTAIN: Minor fixes by @chrisjsewell in #585 + - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #586 + - DOCS: redundant trailing ) by @Ab2nour in #588 + - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #595 + - DOCS: Fix typos in syntax.md by @StefanBrand in #596 + - DOCS: Fix sphinxcontrib.mermaid typo by @bskinn in #599 + - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #598 + - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #603 + - DOCS: Fix gallery link by @chrisjsewell in #605 + - FIX: set myst-anchor read/write encoding as utf8 by @chrisjsewell in #610 + - UPGRADE: docutils 0.19 support by @chrisjsewell in #611 + - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #608 + - Update MySTyc URL by @astrojuanlu in #616 + - NEW: Add attrs_image (experimental) extension by @chrisjsewell in #620 + - RELEASE: 0.18.1 by @chrisjsewell in #621 +- v0.18.0: + - IMPROVE: Do not let sphinx check the config type by @chrisjsewell in #559 + - Restructure code base and documentation by @chrisjsewell in #566 + - FIX: floor table column widths to integers by @Jean-Abou-Samra in #568 + - Drop Sphinx 3, add Sphinx 5 by @chrisjsewell in #579 + - FIX: parse_directive_text when body followed by options by @chrisjsewell in #580 + - RELEASE: 0.18.0 by @chrisjsewell in #581 + +------------------------------------------------------------------- +Fri Jun 9 12:40:04 UTC 2023 - ecsos + +- Add %{?sle15_python_module_pythons} + +------------------------------------------------------------------- +Mon May 2 11:28:37 UTC 2022 - Sebastian Wagner + +- activate tests +- fix requires + +------------------------------------------------------------------- +Mon Apr 25 08:52:20 UTC 2022 - Sebastian Wagner + +- initial package for version 0.17.2. diff --git a/python-myst-parser.spec b/python-myst-parser.spec new file mode 100644 index 0000000..812c299 --- /dev/null +++ b/python-myst-parser.spec @@ -0,0 +1,128 @@ +# +# spec file for package python-myst-parser +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +%bcond_without libalternatives +Name: python-myst-parser +Version: 3.0.1 +Release: 0 +Summary: An extended commonmark compliant parser, with bridges to docutils & sphinx +License: MIT +URL: https://myst-parser.readthedocs.io/ +Source: https://github.com/executablebooks/MyST-Parser/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +# PyPI tarball does not contain tests +#Source: https://files.pythonhosted.org/packages/source/m/myst-parser/myst-parser-%%{version}.tar.gz +BuildRequires: %{python_module Jinja2} +BuildRequires: %{python_module PyYAML} +BuildRequires: %{python_module Sphinx} +BuildRequires: %{python_module docutils >= 0.18 with %python-docutils < 0.22} +BuildRequires: %{python_module flit-core} +BuildRequires: %{python_module markdown-it-py} +BuildRequires: %{python_module mdit-py-plugins} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} +BuildRequires: alts +BuildRequires: fdupes +BuildRequires: python-rpm-macros +# SECTION tests +BuildRequires: %{python_module beautifulsoup4} +BuildRequires: %{python_module pygments} +BuildRequires: %{python_module pytest-regressions} +BuildRequires: %{python_module pytest} +# /SECTION +# SECTION docs +#BuildRequires: python3-Sphinx +#BuildRequires: python3-Jinja2 +#BuildRequires: python3-PyYAML +#BuildRequires: python3-Sphinx >= 3.1 +#BuildRequires: python3-docutils >= 0.15 +#BuildRequires: python3-markdown-it-py >= 1 +#BuildRequires: python3-mdit-py-plugins < 0.4 +# /SECTION +Requires: alts +Requires: python-Jinja2 +Requires: python-PyYAML +Requires: python-Sphinx +Requires: python-docutils >= 0.18 +Requires: python-markdown-it-py +Requires: python-mdit-py-plugins +BuildArch: noarch +%python_subpackages + +%description +MyST is a flavor of markdown that is designed for simplicity, flexibility, and extensibility. +This is the reference implementation of MyST Markdown, as well as a collection of tools to support working with MyST in Python and Sphinx. +It contains an extended CommonMark (https://commonmark.org)-compliant parser using markdown-it-py (https://markdown-it-py.readthedocs.io/), as well as a Sphinx (https://www.sphinx-doc.org) extension that allows to write MyST Markdown in Sphinx. + +%prep +%setup -q -n MyST-Parser-%{version} +rm docs/.gitignore + +%build +%pyproject_wheel +# docs require unavailable sphinxcontrib-bibtex +#pushd docs +#PYTHONPATH=.. make html +#rm _build/html/.buildinfo +#popd + +%install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/myst-anchors +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-html +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-html5 +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-latex +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-pseudoxml +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-xml +%python_clone -a %{buildroot}%{_bindir}/myst-docutils-demo +%python_clone -a %{buildroot}%{_bindir}/myst-inv +%python_group_libalternatives myst-anchors myst-docutils-html myst-docutils-html5 myst-docutils-latex myst-docutils-pseudoxml myst-docutils-xml myst-docutils-demo myst-inv +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +# no python-sphinx-pytest package +ignore="--ignore=tests/test_renderers/test_fixtures_sphinx.py" +ignore+=" --ignore=tests/test_renderers/test_myst_refs.py" +ignore+=" --ignore=tests/test_sphinx/test_sphinx_builds.py" +# no python-pytest-param-files package +ignore+=" --ignore=tests/test_renderers/test_myst_config.py" + +# no python-pytest-param-files package +donttest="test_parsing or test_errors or test_render or test_html_to_nodes or test_html_ast or test_html_round_trip" + +%pytest $ignore -k "not ($donttest)" + +%pre +%python_libalternatives_reset_alternative myst-anchors + +%files %{python_files} +%{python_sitelib}/myst_parser/ +%{python_sitelib}/myst_parser-%{version}*-info +%license LICENSE +%doc CHANGELOG.md README.md +%python_alternative %{_bindir}/myst-anchors +%python_alternative %{_bindir}/myst-docutils-html +%python_alternative %{_bindir}/myst-docutils-html5 +%python_alternative %{_bindir}/myst-docutils-latex +%python_alternative %{_bindir}/myst-docutils-pseudoxml +%python_alternative %{_bindir}/myst-docutils-xml +%python_alternative %{_bindir}/myst-docutils-demo +%python_alternative %{_bindir}/myst-inv +%doc docs + +%changelog