chore(deps): update dependency myst-parser to ^0.17.0 || ^0.19.0
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
myst-parser | dev-dependencies | minor |
^0.17.0 -> ^0.17.0 || ^0.19.0
|
Release Notes
executablebooks/MyST-Parser
v0.19.2
Setting the following config, for example:
extensions = ["myst_parser", "sphinxcontrib.mermaid"]
myst_fence_as_directive = ["mermaid"]
v0.19.1
NoURI
error in doc reference resolution, for texinfo builds (gh-pr:734)
v0.19.0
This release brings a number of exciting new features, improvements, and upgrades
Full Changelog: v0.18.1...v0.19.0
📚 Rewritten documentation
The documentation has been almost completely rewritten,
with a clearer structure, many more examples, rich hover tips, and a new live preview page
The code base API is also now fully documented by sphinx-autodoc2, which even allows for MyST docstrings! (gh-pr:704).
⬆ ️ Add Sphinx 6 support, drop Sphinx 4
The code base has been updated to support sphinx v6, and is no longer tested against sphinx v4 (gh-pr:664)
📄 Extended docutils (single-page) support
The docutils
parser now supports many more features, and improvements to support live previews:
-
myst_suppress_warnings
option added, mirroring Sphinx, to suppress MyST warnings (gh-pr:655) -
myst_meta_html
andmyst_substitutions
options are now supported (gh-pr:672) -
myst_heading_anchors
option is now supported (gh-pr:678) - Math block labels syntax is now supported (gh-pr:668)
- Missing directive/role errors errors are now suppressable warnings (gh-pr:687)
- Non-fatal directive parsing errors are now suppressable warnings (gh-pr:682)
- Most of the extended markdown syntax below is also supported
🔗 Extended Markdown links
See the Extended Markdown links section for the full guide.
You can now use standard Markdown link syntax to reference many different types of targets, in a more consistent way.
-
[text](relative/path/myfile.md)
work as previously, to link to files, but they can also be relative to source directory:[text](/path/from/srcdir/myfile.md)
. You can also use<project:file.md>
-
<path:myfile.txt>
will link specifically to a downloadable file -
[text](#target)
or<project:#target>
will link (in order of priority) to any local target, local heading anchor, target in the same project, or intersphinx (inventory) target -
[text](inv:name:domain:type#target)
will link specifically to a Sphinx inventory target, or to any inventory<inv:#target>
, and can even use*
wildcards like<inv:*:*:*#*.target>
- This can even be used in docutils, with the new
myst_inventories
config option - The
myst-inv
CLI makes it easy to find the correct inventory target
- This can even be used in docutils, with the new
:::{tip}
It is advised (although not immediately necessary) to prefix all internal references with #
.
For example, [...](my-reference)
, should be changed to [...](#my-reference)
.
:::
{}
Attributes syntax
The attrs_inline
and attrs_block
extensions allow for common Markdown syntaxes to be extended with greater control over the output.
For example, you can now add classes, ids, and other attributes to inline code, images, and links, as well as to code blocks and directives.
- Inline code:
`a = 1`{#id .class l=python}
- Images:
![image](image.png){#id .class width=100px}
- Text spans:
[some text]{#id .class}
A paragraph block can have attributes too:
{#id .class}
This is a paragraph with an id and class
A code fence can be given line numbers and line emphasis:
{#id .class lineno-start=1 emphasize-lines="2,3"}
```python
a = 1
b = 2
c = 3
```
A definition list can be turned into a glossary, with referenceable terms:
{.glossary}
term name
: Definition of the term
Quote blocks can be given an attribution:
{attribution="Chris Sewell"}
> My quote
👌 Miscellaneous improvements
- Nested headings (e.g. inside directives) are now allowed in MyST and are correctly rendered in HTML (gh-pr:711)
- The
colon_fence
extension now renders internal content as MyST, rather than as a code block (gh-pr:713) - The
include
directive in MyST documents now supports a:heading-offset:
option, to offset the heading levels in the included document - The
myst_heading_slug_func
option now supports setting astr
which points to a fully qualified function name, e.g."module.path.func"
(gh-pr:696) - The
myst_enable_checkboxes
option allows for task list checkboxes to be enabled/disabled (gh-pr:686)
Additional contributions
-
🐛 FIX: Remove unnecessary assert in gh-pr:659, thanks to gh-user:n-peugnet -
🔧 ci(deps): setup dependabot (gh-pr:669), thanks to gh-user:mmorel-35 -
🔧 : Depend on typing_extensions only onPython<3.8
in gh-pr:642, thanks to gh-user:hukkin
v0.18.1
Full Changelog: v0.18.0...v0.18.1
-
⬆ ️ UPGRADE: docutils 0.19 support in gh-pr:611 -
✨ NEW: Addattrs_image
(experimental) extension in gh-pr:620- e.g.
![image](image.png){#id .class width=100px}
- See: Optional syntax section
- Important: This is an experimental extension, and may change in future releases
- e.g.
v0.18.0
Full Changelog: v0.17.2...v0.18.0
This release adds support for Sphinx v5 (dropping v3), restructures the code base into modules, and also restructures the documentation, to make it easier for developers/users to follow.
It also introduces document-level configuration via the Markdown front-matter, under the myst
key.
See the Local configuration section for more information.
Breaking changes
This should not be breaking, for general users of the sphinx extension (with sphinx>3
),
but will be for anyone directly using the Python API, mainly just requiring changes in import module paths.
The to_docutils
, to_html
, to_tokens
(from myst_parser/main.py
) and mock_sphinx_env
/parse
(from myst_parser.sphinx_renderer.py
) functions have been removed, since these were primarily for internal testing.
Instead, for single page builds, users should use the docutils parser API/CLI (see ),
and for testing, functionality has been moved to https://github.com/chrisjsewell/sphinx-pytest.
The top-level html_meta
and substitutions
front-matter keys have also been deprecated (i.e. they will still work but will emit a warning), as they now form part of the myst
config, e.g.
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.