release 0.22
engelbert gruber <[email protected]> Tue, 29 Jul 2025 18:22:44 +0200
| Newsgroups | gmane.text.docutils.user,gmane.text.docutils.devel |
|---|---|
| Message-ID | <CAHnbgBN9WXsqszjmBVUVF3omtyvz82sys2ipENAX4KemwuUFcw@mail.gmail.com> |
--===============8276946866504903954==
Content-Type: multipart/alternative; boundary="0000000000001bbe95063b13d2ac"
--0000000000001bbe95063b13d2ac
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Hei everyone,
after one month of rc5
the final 0.22 is in the open
sorry for the long wait
the Release consists of ... maybe see online
https://docutils.sourceforge.io/0.22/RELEASE-NOTES.html
all the best and onto next
e
Release 0.22rc5 (2025-06-24)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
Targets generated from hyperlink references with embedded URI or alias
are no longer "explicit" but "implicit" (i.e. with the same priority as
auto-generated section targets, see `implicit hyperlink targets`__).
__ https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html
#implicit-hyperlink-targets
Don't report an error for duplicate targets with identical refname.
Release 0.22rc4 (2025-06-17)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
Drop the "name" option of the "target-notes" directive.
(Report an error instead of silently ignoring the value.)
New alias "rst-class" for the `"class"`_ directive to improve the
compatibility with Sphinx.
Release 0.22rc3 (2025-06-10)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
New objects
`transforms.references.CitationReferences`
Mark citation_references as resolved if the backend
uses a BibTeX database.
Output changes
manpage:
Do not drop text of internal targets.
Release 0.22rc2 (2025-05-22)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
Fix backwards-compatibility problem:
reStructuredText section parsing no longer requires
`parsers.rst.states.RSTStateMachine.memo.section_parents`
(a cache introduced in Docutils 0.22rc1).
Deprecate `parsers.rst.states.Struct` (obsoleted by
`types.SimpleNamespace`).
Release 0.22rc1 (2025-05-06)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
reStructuredText:
- Support `CSS3 units`_. This adds "ch", "rem", "vw", "vh", "vmin",
"vmax", and "Q" to the `supported length units`__. Note that some
output formats don't support all units.
- New option "figname" for the `"figure"`_ directive.
.. _CSS3 units: https://www.w3.org/TR/css-values-3/#lengths
__ docs/ref/rst/restructuredtext.html#length-units
Document Tree / Docutils DTD
- Allow multiple <term> elements in a `\<definition_list_item>`__
(third-party writers may need adaption).
- The first element in a <figure> may also be a <reference>
(with nested "clickable" <image>).
__ docs/ref/doctree.html#definition-list-item
Configuration changes
- Make MathML the default math_output_ for the "html5" writer.
- Change the default input_encoding_ from ``None`` (auto-detect) to
"utf-8".
- Drop short options ``-i`` and ``-o``.
Use the long equivalents ``--input-encoding`` and ``--output-encoding``=
.
(See `command line interface`_ for the rationale.)
- Rename configuration setting "output" to "output_path_".
- New setting "validate_".
- The manpage writer now recognizes the sections [writers] and
[manpage writer] with the new setting `text_references`_.
Output changes
LaTeX:
Don't wrap references with custom reference_label_ in a ``\hyperref``
command. The "hyperref" package generates hyperlinks for labels by
default, so there is no change in the PDF
(except for the starred forms like ``reference_label =3D \ref*``).
Stop requiring "ifthen.sty". Add "ifthen" to the stylesheet__ setting
or replace use of ``\ifthenelse{\isundefined...`` with the eTeX
primitive ``\ifdefined``.
__ docs/user/config.html#stylesheet-2
HTML5:
Unitless image_ size measures__ are written as <img> "width" and
"hight" values instead of "style" rules. The current behaviour
is kept for values with units, so users may specify, e.g. ``:width:
50px`` instead of ``:width: 50`` to override CSS stylesheet rules.
__ docs/ref/doctree.html#measure
manpage:
Don't UPPERCASE section headings.
Handle hyperlink references (see the text_references_ setting).
null:
The "null" writer output changed from None to the empty string.
`publish_string()` now returns a `bytes` or `str` instance
for all writers (as documented).
New objects
`parsers.docutils_xml`
parser for `Docutils XML`_ (e.g., the output of the "xml" writer).
Provisional.
Try ``docutils --parser=3Dxml test/data/multiple-term-definitions.xml`=
`
or use the :parser: option of the `"include"`_ directive to include
an XML file in a rST document.
`nodes.Element.validate()`
Raise `nodes.ValidationError` if the element does not comply with
the `Docutils Document Model`_.
Provisional.
`writers.DoctreeTranslator`
Generic Docutils document tree translator base class with
`uri2path()` auxiliary method.
Provisional.
Removed objects
`core.Publisher.setup_option_parser()`
internal, obsolete,
`frontend.ConfigParser.get_section()`
obsoleted by the configparser's "Mapping Protocol Access",
`frontend.OptionParser.set_defaults_from_dict()`
obsolete,
`nodes.Element.set_class()`
obsolete, append to Element['classes'] directly,
`parsers.rst.directives.tables.CSVTable.decode_from_csv()`
not required with Python 3,
`parsers.rst.directives.tables.CSVTable.encode_from_csv()`
not required with Python 3,
`transforms.writer_aux.Compound`
not used since Dec 2010,
`utils.error_reporting`
obsolete in Python 3,
`utils.Reporter.set_conditions()`
obsolete, set attributes via configuration settings or directly.
Removed localisations
Mistranslations of the "admonition" directive name:
Use "advies" (af), "varsel" (da), "warnhinweis" (de), "aviso" (es),
"sciigo" (eo), "annonce" (fr), "avviso" (it), "advies" (nl),
"zauwa=C5=BCenie" (pl) (introduced in Docutils 0.21)
or the English name "admonition".
New files
``docutils/parsers/rst/include/html-roles.txt``
`Standard definition file`_ for additional roles matching HTML tags.
Removed files
``tools/rst2odt_prepstyles.py``
Obsoleted by `writers.odf_odt.prepstyles`.
``docutils/utils/roman.py``
Obsoleted by ``docutils/utils/_roman_numerals.py``
Bugfixes and improvements (see
https://docutils.sourceforge.io/0.22/HISTORY.html).
--0000000000001bbe95063b13d2ac
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div>Hei everyone,</div><div><br></div><div>after one mont=
h of rc5 <br></div><div><br></div><div>the final 0.22 is in the open</div><=
div>sorry for the long wait</div><div><br></div><div>the Release consists o=
f ... maybe see online <a href=3D"https://docutils.sourceforge.io/0.22/RELE=
ASE-NOTES.html">https://docutils.sourceforge.io/0.22/RELEASE-NOTES.html</a>=
</div><div><br></div><div>all the best and onto next <br></div><div>=C2=A0e=
<br></div><div><br></div>Release 0.22rc5 (2025-06-24)<br>=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br><div>=
<br></div><div>Targets generated from hyperlink references with embedded UR=
I or alias<br>are no longer "explicit" but "implicit" (=
i.e. with the same priority as<br>auto-generated section targets, see `impl=
icit hyperlink targets`__).<br><br>__ <a href=3D"https://docutils.sourcefor=
ge.io/docs/ref/rst/restructuredtext.html">https://docutils.sourceforge.io/d=
ocs/ref/rst/restructuredtext.html</a><br>=C2=A0 =C2=A0#implicit-hyperlink-t=
argets<br><br>Don't report an error for duplicate targets with identica=
l refname.<br><br>Release 0.22rc4 (2025-06-17)<br>=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br><br>Drop th=
e "name" option of the "target-notes" directive.<br>(Re=
port an error instead of silently ignoring the value.)<br><br>New alias &qu=
ot;rst-class" for the `"class"`_ directive to improve the<br=
>compatibility with Sphinx.<br><br><br>Release 0.22rc3 (2025-06-10)<br>=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D<br><br>New objects<br>=C2=A0 `transforms.references.CitationReferenc=
es`<br>=C2=A0 =C2=A0 =C2=A0Mark citation_references as resolved if the back=
end<br>=C2=A0 =C2=A0 =C2=A0uses a BibTeX database.<br><br>Output changes<br=
><br>=C2=A0 manpage:<br>=C2=A0 =C2=A0 =C2=A0Do not drop text of internal ta=
rgets.<br><br><br>Release 0.22rc2 (2025-05-22)<br>=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br><br>Fix bac=
kwards-compatibility problem:<br>=C2=A0 reStructuredText section parsing no=
longer requires<br>=C2=A0 `parsers.rst.states.RSTStateMachine.memo.section=
_parents`<br>=C2=A0 (a cache introduced in Docutils=C2=A00.22rc1).<br><br>D=
eprecate `parsers.rst.states.Struct` (obsoleted by `types.SimpleNamespace`)=
.<br><br><br>Release 0.22rc1 (2025-05-06)<br>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br><br>reStructuredT=
ext:<br>=C2=A0 - Support `CSS3 units`_. This adds "ch", "rem=
", "vw", "vh", "vmin",<br>=C2=A0 =C2=A0 =
"vmax", and "Q" to the `supported length units`__. Note=
that some<br>=C2=A0 =C2=A0 output formats don't support all units.<br>=
=C2=A0 - New option "figname" for the `"figure"`_ direc=
tive.<br><br>=C2=A0 .. _CSS3 units: <a href=3D"https://www.w3.org/TR/css-va=
lues-3/#lengths">https://www.w3.org/TR/css-values-3/#lengths</a><br>=C2=A0 =
__ docs/ref/rst/restructuredtext.html#length-units<br><br>Document Tree / D=
ocutils DTD<br>=C2=A0 - Allow multiple <term> elements in a `\<def=
inition_list_item>`__<br>=C2=A0 =C2=A0 (third-party writers may need ada=
ption).<br>=C2=A0 - The first element in a <figure> may also be a <=
;reference><br>=C2=A0 =C2=A0 (with nested "clickable" <imag=
e>).<br><br>=C2=A0 __ docs/ref/doctree.html#definition-list-item<br><br>=
Configuration changes<br>=C2=A0 - Make MathML the default math_output_ for =
the "html5" writer.<br>=C2=A0 - Change the default input_encoding=
_ from ``None`` (auto-detect) to "utf-8".<br>=C2=A0 - Drop short =
options ``-i`` and ``-o``.<br>=C2=A0 =C2=A0 Use the long equivalents ``--in=
put-encoding`` and ``--output-encoding``.<br>=C2=A0 =C2=A0 (See `command li=
ne interface`_ for the rationale.)<br>=C2=A0 - Rename configuration setting=
"output" to "output_path_".<br>=C2=A0 - New setting &q=
uot;validate_".<br>=C2=A0 - The manpage writer now recognizes the sect=
ions [writers] and<br>=C2=A0 =C2=A0 [manpage writer] with the new setting `=
text_references`_.<br><br>Output changes<br>=C2=A0 LaTeX:<br>=C2=A0 =C2=A0 =
=C2=A0Don't wrap references with custom reference_label_ in a ``\hyperr=
ef``<br>=C2=A0 =C2=A0 =C2=A0command. The "hyperref" package gener=
ates hyperlinks for labels by<br>=C2=A0 =C2=A0 =C2=A0default, so there is n=
o change in the PDF<br>=C2=A0 =C2=A0 =C2=A0(except for the starred forms li=
ke ``reference_label =3D \ref*``).<br><br>=C2=A0 =C2=A0 =C2=A0Stop requirin=
g "ifthen.sty". Add "ifthen" to the stylesheet__ settin=
g<br>=C2=A0 =C2=A0 =C2=A0or replace use of ``\ifthenelse{\isundefined...`` =
with the eTeX<br>=C2=A0 =C2=A0 =C2=A0primitive ``\ifdefined``.<br><br>=C2=
=A0 =C2=A0 =C2=A0__ docs/user/config.html#stylesheet-2<br><br>=C2=A0 HTML5:=
<br>=C2=A0 =C2=A0 =C2=A0Unitless image_ size measures__ are written as <=
img> "width" and<br>=C2=A0 =C2=A0 =C2=A0"hight" valu=
es instead of "style" rules.=C2=A0 The current behaviour<br>=C2=
=A0 =C2=A0 =C2=A0is kept for values with units, so users may specify, e.g. =
``:width:<br>=C2=A0 =C2=A0 =C2=A050px`` instead of ``:width: 50`` to overri=
de CSS stylesheet rules.<br><br>=C2=A0 =C2=A0 =C2=A0__ docs/ref/doctree.htm=
l#measure<br><br>=C2=A0 manpage:<br>=C2=A0 =C2=A0 =C2=A0Don't UPPERCASE=
section headings.<br><br>=C2=A0 =C2=A0 =C2=A0Handle hyperlink references (=
see the text_references_ setting).<br><br>=C2=A0 null:<br>=C2=A0 =C2=A0 =C2=
=A0The "null" writer output changed from None to the empty string=
.<br><br>=C2=A0 =C2=A0 =C2=A0`publish_string()` now returns a `bytes` or `s=
tr` instance<br>=C2=A0 =C2=A0 =C2=A0for all writers (as documented).<br><br=
>New objects<br>=C2=A0 `parsers.docutils_xml`<br>=C2=A0 =C2=A0 =C2=A0parser=
for `Docutils XML`_ (e.g., the output of the "xml" writer).<br>=
=C2=A0 =C2=A0 =C2=A0Provisional.<br><br>=C2=A0 =C2=A0 =C2=A0Try ``docutils =
--parser=3Dxml test/data/multiple-term-definitions.xml``<br>=C2=A0 =C2=A0 =
=C2=A0or use the :parser: option of the `"include"`_ directive to=
include<br>=C2=A0 =C2=A0 =C2=A0an XML file in a rST document.<br><br>=C2=
=A0 `nodes.Element.validate()`<br>=C2=A0 =C2=A0 =C2=A0Raise `nodes.Validati=
onError` if the element does not comply with<br>=C2=A0 =C2=A0 =C2=A0the `Do=
cutils Document Model`_.<br>=C2=A0 =C2=A0 =C2=A0Provisional.<br><br>=C2=A0 =
`writers.DoctreeTranslator`<br>=C2=A0 =C2=A0 =C2=A0Generic Docutils documen=
t tree translator base class with<br>=C2=A0 =C2=A0 =C2=A0`uri2path()` auxil=
iary method.<br>=C2=A0 =C2=A0 =C2=A0Provisional.<br><br>Removed objects<br>=
=C2=A0 `core.Publisher.setup_option_parser()`<br>=C2=A0 =C2=A0 =C2=A0intern=
al, obsolete,<br>=C2=A0 `frontend.ConfigParser.get_section()`<br>=C2=A0 =C2=
=A0 =C2=A0obsoleted by the configparser's "Mapping Protocol Access=
",<br>=C2=A0 `frontend.OptionParser.set_defaults_from_dict()`<br>=C2=
=A0 =C2=A0 =C2=A0obsolete,<br>=C2=A0 `nodes.Element.set_class()`<br>=C2=A0 =
=C2=A0 =C2=A0obsolete, append to Element['classes'] directly,<br>=
=C2=A0 `parsers.rst.directives.tables.CSVTable.decode_from_csv()`<br>=C2=A0=
=C2=A0 =C2=A0not required with Python=C2=A03,<br>=C2=A0 `parsers.rst.direc=
tives.tables.CSVTable.encode_from_csv()`<br>=C2=A0 =C2=A0 =C2=A0not require=
d with Python=C2=A03,<br>=C2=A0 `transforms.writer_aux.Compound`<br>=C2=A0 =
=C2=A0 =C2=A0not used since Dec 2010,<br>=C2=A0 `utils.error_reporting`<br>=
=C2=A0 =C2=A0 =C2=A0obsolete in Python=C2=A03,<br>=C2=A0 `utils.Reporter.se=
t_conditions()`<br>=C2=A0 =C2=A0 =C2=A0obsolete, set attributes via configu=
ration settings or directly.<br><br>Removed localisations<br>=C2=A0 Mistran=
slations of the "admonition" directive name:<br>=C2=A0 =C2=A0 =C2=
=A0Use "advies"=C2=A0(af), "varsel"=C2=A0(da), "wa=
rnhinweis"=C2=A0(de), "aviso"=C2=A0(es),<br>=C2=A0 =C2=A0 =
=C2=A0"sciigo"=C2=A0(eo), "annonce"=C2=A0(fr), "av=
viso"=C2=A0(it), "advies"=C2=A0(nl),<br>=C2=A0 =C2=A0 =C2=A0=
"zauwa=C5=BCenie"=C2=A0(pl) (introduced in Docutils=C2=A00.21)<br=
>=C2=A0 =C2=A0 =C2=A0or the English name "admonition".<br><br>New=
files<br>=C2=A0 ``docutils/parsers/rst/include/html-roles.txt``<br>=C2=A0 =
=C2=A0 =C2=A0`Standard definition file`_ for additional roles matching HTML=
tags.<br><br>Removed files<br>=C2=A0 ``tools/rst2odt_prepstyles.py``<br>=
=C2=A0 =C2=A0 =C2=A0Obsoleted by `writers.odf_odt.prepstyles`.<br>=C2=A0 ``=
docutils/utils/roman.py``<br>=C2=A0 =C2=A0 =C2=A0Obsoleted by ``docutils/ut=
ils/_roman_numerals.py``<br><br>Bugfixes and improvements (see=C2=A0 <a hre=
f=3D"https://docutils.sourceforge.io/0.22/HISTORY.html">https://docutils.so=
urceforge.io/0.22/HISTORY.html</a>).</div></div>
--0000000000001bbe95063b13d2ac--
--===============8276946866504903954==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
--===============8276946866504903954==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline