Skip to content

Commit de31423

Browse files
committed
🚀 RELEASE v0.19.0
1 parent 2cbb184 commit de31423

File tree

3 files changed

+108
-1
lines changed

3 files changed

+108
-1
lines changed

CHANGELOG.md

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,111 @@
11
# Changelog
22

3+
## 0.19.0 - 2023-03-01
4+
5+
This release brings a number of exciting new features, improvements, and upgrades 🎉
6+
7+
Full Changelog: [v0.18.1...v0.19.0](https://github.com/executablebooks/MyST-Parser/compare/v0.18.1...v0.19.0)
8+
9+
### 📚 Rewritten documentation
10+
11+
The documentation has been almost completely rewritten,
12+
with a clearer structure, many more examples, rich hover tips, and a new live preview page ⚡️ (powered by [pyscript](https://pyscript.readthedocs.io/), <gh-pr:717>).
13+
14+
The code base API is also now fully documented by [sphinx-autodoc2](https://sphinx-autodoc2.readthedocs.io/), which even allows for MyST docstrings! (<gh-pr:704>).
15+
16+
### ⬆️ Add Sphinx 6 support, drop Sphinx 4
17+
18+
The code base has been updated to support sphinx v6, and is no longer tested against sphinx v4 (<gh-pr:664>)
19+
20+
### 📄 Extended docutils (single-page) support
21+
22+
The `docutils` parser now supports many more features, and improvements to support live previews:
23+
24+
- `myst_suppress_warnings` option added, mirroring Sphinx, to suppress MyST warnings (<gh-pr:655>)
25+
- `myst_meta_html` and `myst_substitutions` options are now supported (<gh-pr:672>)
26+
- `myst_heading_anchors` option is now supported (<gh-pr:678>)
27+
- Math block labels syntax is now supported (<gh-pr:668>)
28+
- Missing directive/role errors errors are now suppressable warnings (<gh-pr:687>)
29+
- Non-fatal directive parsing errors are now suppressable warnings (<gh-pr:682>)
30+
- Most of the extended markdown syntax below is also supported
31+
32+
### 🔗 Extended Markdown links
33+
34+
See the [Extended Markdown links](docs/syntax/cross-referencing.md) section for the full guide.
35+
36+
You can now use standard Markdown link syntax to reference many different types of targets, in a more consistent way.
37+
38+
- `[text](relative/path/myfile.md)` work as previously, to link to files,
39+
but they can also be relative to source directory: `[text](/path/from/srcdir/myfile.md)`.
40+
You can also use `<project:file.md>`
41+
- `<path:myfile.txt>` will link specifically to a downloadable file
42+
- `[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
43+
- `[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>`
44+
- This can even be used in docutils, with the new `myst_inventories` config option
45+
- The `myst-inv` CLI makes it easy to find the correct inventory target
46+
47+
:::{tip}
48+
It is advised (although not immediately necessary) to prefix all internal references with `#`.
49+
For example, `[...](my-reference)`, should be changed to `[...](#my-reference)`.
50+
:::
51+
52+
### `{}` Attributes syntax
53+
54+
The [`attrs_inline` and `attrs_block`](docs/syntax/optional.md#attributes) extensions allow for common Markdown syntaxes to be extended with greater control over the output.
55+
56+
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.
57+
58+
- Inline code: `` `a = 1`{#id .class l=python} ``
59+
- Images: `![image](image.png){#id .class width=100px}`
60+
- Text spans: `[some text]{#id .class}`
61+
62+
A paragraph block can have attributes too:
63+
64+
```markdown
65+
{#id .class}
66+
This is a paragraph with an id and class
67+
```
68+
69+
A code fence can be given line numbers and line emphasis:
70+
71+
````markdown
72+
{#id .class lineno-start=1 emphasize-lines="2,3"}
73+
```python
74+
a = 1
75+
b = 2
76+
c = 3
77+
```
78+
````
79+
80+
A definition list can be turned into a glossary, with referenceable terms:
81+
82+
```markdown
83+
{.glossary}
84+
term name
85+
: Definition of the term
86+
```
87+
88+
Quote blocks can be given an attribution:
89+
90+
```markdown
91+
{attribution="Chris Sewell"}
92+
> My quote
93+
```
94+
95+
### 👌 Miscellaneous improvements
96+
97+
- Nested headings (e.g. inside directives) are now allowed in MyST and are correctly rendered in HTML (<gh-pr:711>)
98+
- The `colon_fence` extension now renders internal content as MyST, rather than as a code block (<gh-pr:713>)
99+
- The `include` directive in MyST documents now supports a `:heading-offset:` option, to offset the heading levels in the included document
100+
- The `myst_heading_slug_func` option now supports setting a `str` which points to a fully qualified function name, e.g. `"module.path.func"` (<gh-pr:696>)
101+
- The `myst_enable_checkboxes` option allows for task list checkboxes to be enabled/disabled (<gh-pr:686>)
102+
103+
### Additional contributions
104+
105+
- 🐛 FIX: Remove unnecessary assert in <gh-pr:659>, thanks to <gh-user:n-peugnet>
106+
- 🔧 ci(deps): setup dependabot (<gh-pr:669>), thanks to <gh-user:mmorel-35>
107+
- 🔧: Depend on typing_extensions only on `Python<3.8` in <gh-pr:642>, thanks to <gh-user:hukkin>
108+
3109
## 0.18.1 - 2022-27-09
4110

5111
Full Changelog: [v0.18.0...v0.18.1](https://github.com/executablebooks/MyST-Parser/compare/v0.18.0...v0.18.1)

docs/conf.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@
159159
"use_repository_button": True,
160160
"use_edit_page_button": True,
161161
"use_issues_button": True,
162+
"announcement": "<p><b>v0.19</b> is now out! See the Changelog for details</p>",
162163
}
163164
# OpenGraph metadata
164165
ogp_site_url = "https://myst-parser.readthedocs.io/en/latest"

myst_parser/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
with bridges to [docutils](https://docutils.sourceforge.io/)
33
and [Sphinx](https://github.com/sphinx-doc/sphinx).
44
"""
5-
__version__ = "0.18.1"
5+
__version__ = "0.19.0"
66

77

88
def setup(app):

0 commit comments

Comments
 (0)