./textproc/py-docutils, Python tool to generate documents

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.21.2, Package name: py311-docutils-0.21.2, Maintainer: pkgsrc-users

The purpose of the Docutils project is to create a set of tools
for processing plaintext documentation into useful formats, such
as HTML, XML, and TeX.


Required to run:
[textproc/py-expat] [textproc/py-pygments] [math/py-roman] [lang/python310]

Master sites:

Filesize: 2152.777 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-28 11:55:06 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-docutils: update to 0.21.2.

Release 0.21.2 (2024-04-23)
===========================

* Declare support for languages Georgian and Catalan (Valencian).

* docs/ref/docutils.dtd

  - Remove declaration of element <info>.
  - Remove <decoration> from content declaration of <section> elements.

* Fix test failures.
   2024-04-18 11:01:56 by Thomas Klausner | Files touched by this commit (4) | Package updated
Log message:
py-docutils: update to 0.21.1.

Release 0.21.1 (2024-04-10)
===========================

The sdist in 0.21 was incomplete

- pypi allows no file replacing
- adding a postrelease suffix "post1": docutils-0.21.post1.tar.gz
  works on pypi, but fails with pip because the metadata differs.

  But if the metadata is 0.21.post1 pypi makes it a new release.

  0.21.1 is the same code except for the version number.

Release 0.21 (2024-04-09)
=========================

* General

  - Drop support for Python 3.7 and 3.8.
  - Updated build system to use Flit_ (patch #186 by Adam Turner).
    Removed ``setup.py``.
  - Provide ``rst2*`` "console_scripts" `entry points`_
    (without the ``.py`` extension) instead of installing the
    ``rst2*.py`` front end tools in the binary PATH.

  .. _Flit: https://github.com/pypa/flit/

* docs/ref/docutils.dtd

  - The <image> element accepts a new attribute "loading".

  - Fix definitions (no change to actual behaviour):

    * The <math_block> element uses the attribute "xml:space".
    * The <raw> element may contain text only (no inline elements).
    * The <topic> element uses the "depth" and "local" \ 
attributes to
      store "contents" directive options when used as placeholder for a
      generated table of contents (LaTeX writers with `use_latex_toc`_
      setting).

  - Documentation fix:
    Reference names (``%refname.type`` and ``%refnames.type``)
    are whitespace-normalized but **not** always downcased.

* docutils/frontend.py

  - Allow `validate_*()` functions to be called with just the "value"
    argument but keep the legacy interface for use with optparse.
  - New function `frontend.validate_math_output()`.

* docutils/io.py

  - Simpler and more secure `input encoding`_ default behaviour:

    Do not use the locale encoding as fallback if Python is started in
    `UTF-8 mode`_. Stop using "latin1" as second fallback.

    Remove BOM (U+FEFF ZWNBSP at start of data) only if the \ 
"input_encoding"
    configuration setting is None, '', 'utf-8-sig', 'utf-16', or 'utf-32'.
    Do not remove other ZWNBSPs.

    .. _UTF-8 mode: https://docs.python.org/3/library/os.html#utf8-mode
    .. _input encoding: docs/api/publisher.html#encodings

  - Auto-close `FileInput.source` in case of reading/decoding errors.

* docutils/languages/, docutils/parsers/rst/languages/

  - Mark/Fix mistranslated localizations of the "admonition" directive
    name. In Docutils, "admonition" is used as a generic term for
    "advice"/"advisory"/"remark", not a reprimand.
  - Add support for Georgian language (patch #204 by Temuri Doghonadze).
  - Update/complete Catalan translations (patch #203 by Antoni Bella Pérez).

* docutils/nodes.py

  - Remove compatibility hacks `nodes.reprunicode` and `nodes.ensure_str()`.

* docutils/parsers/rst/directives/images.py

  - New "image" directive option "loading".

* docutils/parsers/rst/directives/tables.py

  - Use the same CSV format for the ``:header:`` option and the main data
    of the "csv-table" directive.

  - Move `parsers.rst.directives.Table.process_header_option()` method
    to `parsers.rst.directives.CSVTable`.

* docutils/parsers/rst/states.py

  - Don't split inside "< >" when parsing "option \ 
groups" (fixes bug #474).

* docutils/parsers/rst/directives/misc.py,
  docutils/parsers/rst/directives/tables.py

  - Consider the new root_prefix_ setting when including files with
    "include", "raw", or "csv-table" directives.

* docutils/utils/math/*

  - Use custom exception `utils.math.MathError` instead of
    abusing `SyntaxError` for LaTeX math syntax errors.
  - Unify interface of LaTeX -> MathML conversion functions.
    Improve error reporting.
  - Sort ℏ (`\hslash`) as "mathord", not "mathalpha".

* docutils/utils/math/latex2mathml.py

  - Generate "MathML Core" to fix rendering with Chromium/Android.

    Use CSS rules instead of the deprecated "columnalign" attribute
    to style <mtable> as "align" environment.

    Use Mathematical Alphanumeric Symbols instead of <mstyle> with
    "mathvariant" attribute.

  - Use <mi> instead of <mo> for character class "mathord".

  - Support "aligned" environment.

  - Eliminate side-effect on later import of "tex2unichar".

* docutils/utils/math/mathml_elements.py

  - New module defining MathML element classes
    (outsourced from latex2mathml.py).
  - Base MathML element classes on `xml.etree.ElementTree`.

* docutils/utils/roman.py

  - Update to version `1.4 <https://pypi.org/project/roman/4.1/>`__.
    Fixes feature-request #95 (license is now ZPL 2.1).

* docutils/utils/smartquotes.py

  - Pre-compile regexps once, not with every call of `educateQuotes()`
    (patch #206 by Chris Sewell).
  - Simplify regexps; skip replacement rules if there is nothing to replace.

* docutils/writers/html4css1/__init__.py

  - Support video inclusion via ``<object>`` tags.

* docutils/writers/html5_polyglot/\*.css

  - Move MathML styles to "minimal.css" (required for correct rendering).
  - Highlight heading of target section also with explicit hyperlink target.
  - No additional margins for line-blocks.

* docutils/writers/_html_base.py

  - Stop setting the "footnote-reference" class value for footnote \ 
references.
    Since 0.18, you can use the CSS selector ``[role="doc-noteref"]``.
  - Support reading/embedding images also with "file:" URI.
  - Warn, if image scaling fails because the image file cannot be read.
  - Support video inclusion via ``<video>`` tags
    (moved here from writers/html5_polyglot/__init__.py).
  - New auxiliary method `HTMLTranslator.uri2imagepath()` ensures the
    image file can also be read when CWD and output directory differ.
  - Consider the root_prefix_ setting when converting an image URI
    to a local filesystem path.
  - New `\<image>`_ attribute "loading" overrides image_loading_ \ 
setting.
  - Embed SVG images as ``<svg>`` instead of data-URI.
    Fixes feature-request #100.
  - Generate system messages for errors/warnings during the writing stage
    (image transformations, math content conversion, ...).
  - Close ``<dt>`` element in `depart_term()` to allow a
    "definition_list_item" with multiple "terms" \ 
(cf. feature-request #60).
  - Link to the document "#top" from the ToC heading
    (unless toc_backlinks_ is False).
  - Transfer `id` attribute from <field> elements to the respective
    <field_name> child element to allow cross-references to field-list items
    (<field>s are skipped in HTML output).

* docutils/writers/latex2e/__init__.py

  - Fix placement of hyperlink target (label) for tables (bug #440).
  - More compact LaTeX source for option-lists and description-lists
    (no change in output).

* docutils/writers/manpage.py

  - Put manual section in .TH in quotes.
  - Skip footer to avoid the link to document source in the manpage.
  - Add multiple definition list term support, see feature #60.
  - Render reference, refid and refuri.
    Use of ``.UR`` and ``.UE`` macros for reference markup is too brittle.
  - Add preprocessor hinting tbl first line, see bug #477.
  - Change tbl-Tables using box option, see bug #475.
  - Apply literal block patch #205. Use ``.EE`` and ``.EX`` macros.
    Thanks to G. Branden Robinson.

* docutils/writers/odf_odt/__init__.py

  - Use context manager for image reading operations.
    Catch `URLError` when `urllib.request.urlopen()` fails.

  - Convert image URI to path if accessing a local file. Fixes bug #153.

* docutils/writers/s5_html/__init__.py

  - Warn if the S5 writer cannot copy the theme files.
  - Programmatic customization of theme_url_ setting no longer
    overridden by the default for theme_.

* tools/buildhtml.py

  - New configuration setting `sources`_.
  - Match `prune`_ values with `fnmatch.fnmatch()`.
   2023-05-21 19:45:36 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-docutils: update to 0.20.1.

Release 0.20.1 (2023-05-17)
===========================

Bugfix release.
   2023-05-17 00:37:29 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-docutils: update to 0.20.

Release 0.20 (2023-05-09)
=========================

* General

  - Docutils 0.20 is the last version supporting Python 3.7 and 3.8.
  - Support Python 3.11 (patch #198 by Hugo van Kemenade).

* docutils/core.py

  - New functions `rst2…()` for use as "console_scripts" `entry points`_.
    (cf. `Future changes` in the RELEASE-NOTES_).

* docutils/frontend.py

  - New configuration setting "output_". Obsoletes the \ 
``<destination>``
    positional argument (cf. `Future changes` in the RELEASE-NOTES_).

* docutils/languages/
  docutils/parsers/rst/languages/

  - Support Ukrainian. Patch by Dmytro Kazanzhy.

* docutils/nodes.py

  - Fix `previous_sibling()` method that led to invalid HTML in some cases
    (cf. patch #195).
  - Fix bug #463. Spurious comma in deprecation warning.

* docutils/parsers/recommonmark_wrapper.py

  - Improved mock Sphinx module.

* docutils/transforms/__init__.py

  - `Transformer.populate_from_components()` now silently ignores
    components that are not instances of `docutils.TransformSpec`.

* docutils/transforms/frontmatter.py

  - Accept author names with initials like ``A. Einstein`` in the "author"
    `bibliographic field`_ instead of rising an error
    (generally, such names are `parsed as enumerated list`__).

    .. _bibliographic field:
        docs/ref/rst/restructuredtext.html#bibliographic-fields
    __ docs/ref/rst/restructuredtext.html#enumerated-lists

* docutils/transforms/references.py

  - `DanglingReferences` ignores `citation_reference` nodes if the
    "use_bibex" setting is active. (In this case, citations are provided
    by LaTeX/BibTeX.) Fixes bug #384.

* docutils/utils/__init__.py

  - New utility function `xml_declaration()`.
  - `DependencyList.add()` accepts `pathlib.Path` instances.
  - `find_file_in_dirs()` now returns a POSIX path also on Windows;
    `get_stylesheet_list()` no longer converts ``\`` to ``/``.

* docutils/utils/math/latex2mathml.py

  - Support "mod" notation for modulo operation / modulus arithmetic.

* docutils/utils/math/tex2mathml_extern.py

  - Support `Pandoc` as alternative LaTeX to MathML converter.
    Patch by Ximin Luo.

* docutils/writers/_html_base.py

  - Refactoring of `HTMLTranslator` initialization and collecting of
    document "parts". Adapt HTML writers importing `_html_base`.

    Changes to the HTML output (no space character before closing tag of
    XML declaration, order of metadata elements)
    don't affect the HTML semantics, styling, and rendering.

  - Wrap definition lists with "details" class argument in a <div>
    with the "id" and "class" values of the list node.

  - Use dpub-ARIA role "doc-footnote__" (instead of ARIA role \ 
"note")
    for footnotes.

    __ https://www.w3.org/TR/dpub-aria-1.1/#doc-footnote

* docutils/writers/latex2e/__init__.py

  - Do not load the `inputenc` package in UTF-8 encoded LaTeX sources.
    (UTF-8 is the default encoding for LaTeX2e since 2018).
  - Fix behaviour of the use_bibtex_ setting.
  - Outsource parts of `depart_document()` to new auxiliary methods
    `make_title()` and `append_bibliography()`.
  - Ensure POSIX paths in stylesheet loading macros.

* docutils/writers/latex2e/titlepage.tex

  - Drop ``\usepackage{fixltx2e}`` from template.
    (Obsolete since 2015 and dropped from other templates in Docutils 0.14.)

* docutils/writers/manpage.py

  - Do not output empty "manual" in ``.TH``.

* docutils/writers/xetex/__init__.py

  - Ignore settings in the [latex2e writer] configuration file section.
    Place common settings in section [latex writers].

* setup.py

  - Fix SetuptoolsDeprecationWarning: ``Installing '' as data is deprecated``
    by adding data directories to package_data.packages list.

* tox.ini

  - Extracted flake8 configuration and moved to ``.flake8``.
  - changedir to directory ``test`` to avoid path problems.

* test/

  - Refactored tests to use common `unittest` idioms.
    Fixes errors when running the test suite with ``python -m unittest``
    or external test frameworks, such as Pytest_.

  .. _pytest: https://pypi.org/project/pytest/

* test/coverage.sh

  - Removed. Use the coverage.py_ project instead,
    ``coverage run test/alltests.py`` and ``coverage report``.

  .. _coverage.py: https://pypi.org/project/coverage/

* tools/

  - Moved ``quicktest.py`` to ``tools/dev/``.
   2023-05-09 12:14:27 by Adam Ciarcinski | Files touched by this commit (3)
Log message:
py-docutils: avoid self-conflict
   2023-05-03 21:07:52 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-docutils: update to 0.19.

Release 0.19 (2022-07-05)
=========================

(Release 0.19b1 (2022-06-21))

* Drop support for Python 2.7, 3.5, and 3.6.

* Output changes:

  HTML5:
    Wrap groups of footnotes in an ``<aside>`` for easier styling.

    The CSS rule ``.footnote-list { display: contents; }`` can be used to
    restore the behaviour of custom CSS styles.

* After package installation, the CLI commands ``python -m docutils`` and
  ``docutils`` start the `generic command line front end tool`__.

  __ docs/user/tools.html#generic-command-line-front-end

* Support parsing "Markdown" input with 3rd party parsers
  myst_, pycmark_, or recommonmark_.

* The default values for the "pep-references", "rfc-base-url",
  and "python-home" `configuration settings`_ now use the \ 
"https:" scheme.
  The PEP-writer template's header is updated to fix links and
  resemble the header of official PEPs.

* Various bugfixes and improvements (see HISTORY_).

.. _myst: https://pypi.org/project/myst-docutils
.. _pycmark: https://pypi.org/project/pycmark/
.. _recommonmark: https://pypi.org/project/recommonmark/
.. _configuration settings: docs/user/config.html

Release 0.18.1 (2021-12-23)
===========================

.. Note::

   Docutils 0.18.x is the last version supporting Python 2.7, 3.5, and 3.6.

* ``nodes.Node.traverse()`` returns a list again to restore backwards
  compatibility (fixes bug #431).
  Use ``nodes.Node.findall()`` to get an iterator.

* re-add module ``parsers.rst.directives.html``
  (stub, emits deprecation warning and loads
  "Meta" directive from ist new place at ``parsers.rst.directives.misc``.)

* Small bugfixes (see HISTORY_).

Release 0.18 (2021-10-26)
=========================

* Output changes:

  Identifiers:
    - During `identifier normalization`_, leading number and hyphen
      characters are no longer stripped from a `reference name`_, if the
      id_prefix_ setting is non-empty.

      Example:
        with ``--id-prefix="DU-"``, a section with title "34. \ 
May"
        currently gets the identifier key ``DU-may`` and after the
        change the identifier key ``DU-34-may``.

    - The default value for the auto_id_prefix_ setting changed to ``%``:
      "use the tag name as prefix for auto-generated IDs".
      Set auto_id_prefix_ to ``id`` for unchanged auto-IDs.

  HTML5:
    - Use the semantic tag <aside> for footnote text and citations, topics
      (except abstract and toc), admonitions, and system messages.
      Use <nav> for the Table of Contents.

    - Make "auto" table column widths the default: Only specify column
      widths, if the `"widths" option`_ is set and not "auto".
      The table-style__ setting "colwidths-grid" restores the current \ 
default.

      .. _"widths" option: __ docs/ref/rst/directives.html#table
      __ docs/user/config.html#table-style

    - Items of a definition list with class argument "details" are
      converted to `details disclosure elements`_. Example::

        ..class:: details

        Summary
          This additional information should be hidden.

    - Do not add "compound-first", "compound-middle", or \ 
"compound-last" to
      elements nested in a compound. Use child selector and ":first-child",
      ":last-child" pseudo classes instead.

    - Use class value "backrefs" instead of "fn-backref" for \ 
a span of
      back-references.

    - Write footnote brackets and field term colons to HTML, so that they
      are present also without CSS and when copying text.

    - Move space character between section number and heading into
      "sectnum" span.

  `math-output`_: html
    - Support more commands, fix mapping of commands to Unicode characters.
    - Scale variable sized operators and big delimiters with CSS.
    - Don't use <tt> element (deprecated in HTML5).
    - Use STIX fonts if available.

  LaTeX:
     `legacy_class_functions`_ setting default changed to "False",
     admonitions are now environments.

* New standard Docutils doctree node: <meta__>.

* New configuration settings:

  - [latex writers] legacy_column_widths_ and
  - [html5 writer] image_loading_.

* Removed files:
  ``iepngfix.htc`` and ``blank.gif`` (IE 6 workaround for `s5_html`).

* Removed sub-module:
  ``parsers.rst.directives.html``
  (reversed in release 0.18.1).

* Removed function: utils.unique_combinations()
  (obsoleted by itertools.combinations()).

* Removed attributes:

  - ``HTMLTranslator.topic_classes``: check ``node.parent.classes`` instead.
  - ``nodes.Text.rawsource``: we store the null-escaped text in Text
    nodes since 0.16 so there is no additional information in the
    rawsource.

* Major refactoring and fixes/additions in
  ``docutils/utils/math/math2html.py`` and
  ``docutils/utils/math/latex2mathml.py``
  (mathematical notation in HTML, cf. `LaTeX syntax for mathematics`_).

* nodes.Node.traverse() returns an iterator instead of a list
  (reversed in release 0.18.1).

* Various bugfixes and improvements (see HISTORY_).

  Fix spelling errors in documentation and docstrings.
  Thanks to Dimitri Papadopoulos.

__ docs/ref/doctree.html#meta
.. _identifier normalization:
   docs/ref/rst/directives.html#identifier-normalization
.. _id_prefix: docs/user/config.html#id-prefix
.. _auto_id_prefix: docs/user/config.html#auto-id-prefix
.. _details disclosure elements:
    https://www.w3.org/TR/html52/interactive-elements.html#the-details-element
.. _LaTeX syntax for mathematics: docs/ref/rst/mathematics.html
.. _legacy_column_widths: docs/user/config.html#legacy-column-widths
   2023-05-02 18:35:15 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-docutils: not for Python 2
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS