Subject: CVS commit: pkgsrc/devel/py-doctor
From: Thomas Klausner
Date: 2022-09-11 19:52:22
Message id: 20220911175223.01DE6FA90@cvs.NetBSD.org

Log Message:
py-doctor: update to 22.7.0.

pydoctor 22.7.0
^^^^^^^^^^^^^^^
* Add support for generics in class hierarchies.
* Fix long standing bugs in ``Class`` method resolution order.
* Improve the extensibility of pydoctor (`more infos on extensions \ 
<https://pydoctor.readthedocs.io/en/latest/customize.html#use-a-custom-system-class>`_)
* Fix line numbers in reStructuredText xref warnings.
* Add support for `twisted.python.deprecated` (this was originally part of \ 
Twisted's customizations).
* Add support for re-exporting names imported from a wildcard import.

pydoctor 22.5.1
^^^^^^^^^^^^^^^
* ``docutils>=0.17`` is now the minimum supported version. This was done to \ 
fix crashing with ``AttributeError`` when processing type fields.

pydoctor 22.5.0
^^^^^^^^^^^^^^^
* Add Read The Docs theme, enable it with option ``--theme=readthedocs``.
* Add a sidebar. Configure it with options ``--sidebar-expand-depth`` and \ 
``--sidebar-toc-depth``. Disable with ``--no-sidebar``.
* Highlight the active function or attribute.
* Packages and modules are now listed together.
* Docstring summaries are now generated from docutils nodes:

  - fixes a bug in restructuredtext references in summary.
  - still display summary when the first paragraph is long instead of "No \ 
summary".

* The module index now uses a more compact presentation for modules with more \ 
than 50 submodules and no subsubmodules.
* Fix source links for code hosted on Bitbucket or SourceForge.
* The ``--html-viewsource-template`` option was added to allow for custom URL \ 
scheme when linking to the source code pages and lines.

pydoctor 22.4.0
^^^^^^^^^^^^^^^
* Add option ``--privacy`` to set the privacy of specific objects when default \ 
rules doesn't fit the use case.
* Option ``--docformat=plaintext`` overrides any assignments to ``__docformat__``
  module variable in order to focus on potential python code parsing errors.
* Switch to ``configargparse`` to handle argument and configuration file parsing \ 
(`more infos <https://pydoctor.readthedocs.io/en/latest/help.html>`_).
* Improved performances with caching of docstring summaries.

pydoctor 22.3.0
^^^^^^^^^^^^^^^
* Add client side search system based on lunr.js.
* Fix broken links in docstring summaries.
* Add cache for the xref linker, reduces the number of identical warnings.
* Fix crash when reparenting objects with duplicate names.

pydoctor 22.2.2
^^^^^^^^^^^^^^^
* Fix resolving names re-exported in ``__all__`` variable.

pydoctor 22.2.1
^^^^^^^^^^^^^^^
* Fix crash of pydoctor when processing a reparented module.

pydoctor 22.2.0
^^^^^^^^^^^^^^^
* Improve the name resolving algo such that it checks in super classes for \ 
inherited attributes.
* C-modules wins over regular modules when there is a name clash.
* Packages wins over modules when there is a name clash.
* Fixed that modules were processed in a random order leading to several hard to \ 
reproduce bugs.
* Intersphinx links have now dedicated markup.
  With the default theme,
  this allows to have the external intershinx links blue while the internal \ 
links are red.
* Smarter line wrapping in summary and parameters tables.
* Any code inside of ``if __name__ == '__main__'`` is now excluded from the \ 
documentation.
* Fix variables named like the current module not being documented.
* The Module Index now only shows module names instead of their full name. You \ 
can hover over a module link to see the full name.
* If there is only a single root module, `index.html` now documents that module \ 
(previously it only linked the module page).
* Fix introspection of functions comming from C-extensions.
* Fix that the colorizer might make Twisted's flatten function crash with \ 
surrogates unicode strings.

pydoctor 21.12.1
^^^^^^^^^^^^^^^^
* Include module ``sre_parse36.py`` within ``pydoctor.epydoc`` to avoid an extra \ 
PyPi dependency.

pydoctor 21.12.0
^^^^^^^^^^^^^^^^

* Add support for reStructuredText directives ``.. deprecated::``, ``.. \ 
versionchanged::`` and ``.. versionadded::``.
* Add syntax highlight for constant values, decorators and parameter defaults.
* Embedded documentation links inside the value of constants, decorators and \ 
parameter defaults.
* Provide option ``--pyval-repr-maxlines`` and ``--pyval-repr-linelen`` to \ 
control the size of a constant value representation.
* Provide option ``--process-types`` to automatically link types in docstring \ 
fields (`more info \ 
<https://pydoctor.readthedocs.io/en/latest/codedoc.html#type-fields>`_).
* Forked Napoleon Sphinx extension to provide google-style and numpy-style \ 
docstring parsing.
* Introduced fields ``warns``,  ``yields`` and ``yieldtype``.
* Following google style guide, ``*args`` and ``**kwargs`` are now rendered with \ 
asterisks in the parameters table.
* Mark variables as constants when their names is all caps or if using `Final` \ 
annotation.

pydoctor 21.9.2
^^^^^^^^^^^^^^^

* Fix ``AttributeError`` raised when parsing reStructuredText consolidated \ 
fields, caused by a change in ``docutils`` 0.18.
* Fix ``DeprecationWarning``, use newer APIs of ``importlib_resources`` module.

pydoctor 21.9.1
^^^^^^^^^^^^^^^

* Fix deprecation warning and officially support Python 3.10.
* Fix the literals style (use same style as before).

pydoctor 21.9.0
^^^^^^^^^^^^^^^

* Add support for multiple themes, selectable with ``--theme`` option.
* Support selecting a different docstring format for a module using the \ 
``__docformat__`` variable.
* HTML templates are now customizable with ``--template-dir`` option.
* Change the fields layout to display the arguments type right after their name. \ 
Same goes for variables.

pydoctor 21.2.2
^^^^^^^^^^^^^^^

* Fix positioning of anchors, such that following a link to a member of a module \ 
or class will scroll its documentation to a visible spot at the top of the page.

pydoctor 21.2.1
^^^^^^^^^^^^^^^

* Fix presentation of the project name and URL in the navigation bars, such that \ 
it works as expected on all generated HTML pages.

pydoctor 21.2.0
^^^^^^^^^^^^^^^

* Removed the ``--html-write-function-pages`` option. As a replacement, you can \ 
use the generated Intersphinx inventory (``objects.inv``) for deep-linking your \ 
documentation.
* Fixed project version in the generated Intersphinx inventory. This used to be \ 
hardcoded to 2.0 (we mistook it for a format version), now it is unversioned by \ 
default and a version can be specified using the new ``--project-version`` \ 
option.
* Fixed multiple bugs in Python name resolution, which could lead to for example \ 
missing "implemented by" links.
* Fixed bug where class docstring fields such as ``cvar`` and ``ivar`` are \ 
ignored when they override inherited attribute docstrings.
* Property decorators containing one or more dots (such as \ 
``@abc.abstractproperty``) are now recognized by the custom properties support.
* Improvements to `attrs`__ support:

  - Attributes are now marked as instance variables.
  - Type comments are given precedence over types inferred from ``attr.ib``.
  - Support positional arguments in ``attr.ib`` definitions. Please use keyword \ 
arguments instead though, both for clarity and to be compatible with future \ 
``attrs`` releases.

* Improvements in the treatment of the ``__all__`` module variable:

  - Assigning an empty sequence is interpreted as exporting nothing instead of \ 
being ignored.
  - Better error reporting when the value assigned is either invalid or pydoctor \ 
cannot make sense of it.

* Added ``except`` field as a synonym of ``raises``, to be compatible with \ 
epydoc and to fix handling of the ``:Exceptions:`` consolidated field in \ 
reStructuredText.
* Exception types and external base classes are hyperlinked to their class \ 
documentation.
* Formatting of ``def func():`` and ``class Class:`` lines was made consistent \ 
with code blocks.
* Changes to the "Show/hide Private API" button:

  - The button was moved to the right hand side of the navigation bar, to avoid \ 
overlapping the content on narrow displays.
  - The show/hide state is now synced with a query argument in the location bar. \ 
This way, if you bookmark the page or send a link to someone else, the show/hide \ 
state will be preserved.
  - A deep link to a private API item will now automatically enable "show \ 
private API" mode.

* Improvements to the ``build_apidocs`` Sphinx extension:

  - API docs are now built before Sphinx docs, such that the rest of the \ 
documentation can link to it via Intersphinx.
  - New configuration variable ``pydoctor_url_path`` that will automatically \ 
update the ``intersphinx_mapping`` variable so that it uses the latest API \ 
inventory.
  - The extension can be configured to build API docs for more than one package.

* ``pydoctor.__version__`` is now a plain ``str`` instead of an \ 
``incremental.Version`` object.

__ https://www.attrs.org/

pydoctor 20.12.1
^^^^^^^^^^^^^^^^

* Reject source directories outside the project base directory (if given), \ 
instead of crashing.
* Fixed bug where source directories containing symbolic links could appear to \ 
be outside of the project base directory, leading to a crash.
* Bring back source link on package pages.

pydoctor 20.12.0
^^^^^^^^^^^^^^^^

* Python 3.6 or higher is required.

* There is now a user manual that can be built with Sphinx or read online on \ 
`Read the Docs`__. This is a work in progress and the online version will be \ 
updated between releases.

* Added support for Python language features:

  - Type annotations of function parameters and return value are used when the \ 
docstring does not document a type.
  - Functions decorated with ``@property`` or any other decorator with a name \ 
ending in "property" are now formatted similar to variables.
  - Coroutine functions (``async def``) are included in the output.
  - Keyword-only and position-only parameters are included in the output.

* Output improvements:

  - Type names in annotations are hyperlinked to the corresponding documentation.
  - Styling changes to make the generated documentation easier to read and navigate.
  - Private API is now hidden by default on the Module Index, Class Hierarchy \ 
and Index of Names pages.
  - The pydoctor version is included in the "generated by" line in the \ 
footer.

* All parents of the HTML output directory are now created by pydoctor; \ 
previously it would create only the deepest directory.

* The ``--add-package`` and ``--add-module`` options have been deprecated; pass \ 
the source paths as positional arguments instead.

* New option ``-W``/``--warnings-as-errors`` to fail your build on documentation \ 
errors.

* Linking to the standard library documentation is more accurate now, but does \ 
require the use of an Intersphinx inventory \ 
(``--intersphinx=https://docs.python.org/3/objects.inv``).

* Caching of Intersphinx inventories is now enabled by default.

* Added a `Sphinx extension`__ for embedding pydoctor's output in a project's \ 
Sphinx documentation.

* Added an extra named ``rst`` for the dependencies needed to process \ 
reStructuredText (``pip install -U pydoctor[rst]``).

* Improved error reporting:

  - More accurate source locations (file + line number) in error messages.
  - Warnings were added for common mistakes when documenting parameters.
  - Clearer error message when a link target is not found.

* Increased reliability:

  - Fixed crash when analyzing ``from package import *``.
  - Fixed crash when the line number for a docstring error is unknown.
  - Better unit test coverage, more system tests, started adding type \ 
annotations to the code.
  - Unit tests are also run on Windows.

__ https://pydoctor.readthedocs.io/
__ \ 
https://pydoctor.readthedocs.io/en/latest/usage.html#building-pydoctor-together-with-sphinx-html-build

pydoctor 20.7.2
^^^^^^^^^^^^^^^

* Fix handling of external links in reStructuredText under Python 3.
* Fix reporting of errors in reStructuredText under Python 3.
* Restore syntax highlighting of Python code blocks.

pydoctor 20.7.1
^^^^^^^^^^^^^^^

* Fix cross-reference links to builtin types in standard library.
* Fix and improve error message printed for unknown fields.

pydoctor 20.7.0
^^^^^^^^^^^^^^^

* Python 3 support.
* Type annotations on attributes are supported when running on Python 3.
* Type comments on attributes are supported when running on Python 3.8+.
* Type annotations on function definitions are not supported yet.
* Undocumented attributes are now included in the output.
* Attribute docstrings: a module, class or instance variable can be documented \ 
by a following it up with a docstring.
* Improved error reporting: more errors are reported, error messages include \ 
file name and line number.
* Dropped support for implicit relative imports.
* Explicit relative imports (using ``from``) no longer cause warnings.
* Dropped support for index terms in epytext (``X{}``). This was never supported \ 
in any meaningful capacity, but now the tag is gone.

This was the last major release to support Python 2.7 and 3.5.

Files:
RevisionActionfile
1.17modifypkgsrc/devel/py-doctor/Makefile
1.4modifypkgsrc/devel/py-doctor/PLIST
1.9modifypkgsrc/devel/py-doctor/distinfo