Hawkmoth

Latest version: v0.18.0

Safety actively analyzes 624845 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.18.0

------------------

:Date: 2024-04-14

Added
~~~~~

* Added support for documenting C++ alias type definitions
* Added support variadic macros with named variable argument

Changed
~~~~~~~

* Bumped Python dependency requirement to v3.8, as the earlier versions have
reached end of life

Fixed
~~~~~

* Fixed C++ ``extern "C"`` block parsing for Clang 18 and later

0.17.0

------------------

:Date: 2023-12-10

Added
~~~~~

* Considerably improved Javadoc/Doxygen support
* Started making GitHub releases
* Support for adding automated source links
* Tips and tricks documentation
* ``hawkmoth --version`` option to CLI
* ``hawkmoth --process-docstring={javadoc,napoleon}`` option to CLI

Changed
~~~~~~~

* Switched from CRITICAL to ERROR level for Sphinx errors
* Internally, refactored cursor handling

Fixed
~~~~~

* Clang language option to handle headers better
* Line number references in error messages
* Referencing typedefed anonymous structs, unions, and enums on Clang 15 and earlier

0.16.0

------------------

:Date: 2023-10-22

Added
~~~~~

* Normalization of _Bool to bool
* Symbolic dimensions to array documentation
* Dockerfiles for running tests in more distros

Changed
~~~~~~~

* Naming of typedef anonymous struct/union/enum to use typedef name instead of
generated ``anonymous_*``

Fixed
~~~~~

* setup.cfg license_file deprecation warning
* Documentation intersphinx references to Sphinx documentation
* Test suite docutils warnings
* Test suite system include path for e.g. Fedora
* Handling of anonymous struct/union/enum with libclang v16 and later
* Workaround libclang tokenization issue
* Running test suite with plain ``pytest`` in root directory

0.15.0

------------------

:Date: 2023-08-17

Added
~~~~~

* ``autosection`` directive to include generic documentation comments
* ``.readthedocs.yaml`` config file
* Documentation on how to use Hawkmoth on Read the Docs more reliably
* Values in enumerator documentation when explicitly initialized in source code

Changed
~~~~~~~

* The ``:file:`` option is optional for files that have been previously parsed
* Test case yaml schema

Removed
~~~~~~~

* Development dependency on the deprecated ``sphinx_testing`` package
* Docker containers

Fixed
~~~~~

* Handling of empty documentation comments
* Parser error propagation

0.14.0

------------------

:Date: 2023-04-01

Added
~~~~~

* Build and deploy stable and development documentation at GitHub pages

Changed
~~~~~~~

* Switch the project to src/ hierarchy
* Test the installed package instead of source to detect packaging issues
* Require functional hawkmoth to build documentation

Removed
~~~~~~~

* Sunset the mailing list as contact

Fixed
~~~~~

* Fix packaging of hawkmoth.ext.* sub-packages

0.13.0

------------------

:Date: 2023-03-21

Added
~~~~~

* Early support for documenting C++ (contributions courtesy of `Critical Software`_)
* Support for extending documentation comment parsing and transformations via
``hawkmoth-process-docstring`` event
* ``hawkmoth_transform_default`` configuration option for the
``hawkmoth-process-docstring`` event
* ``hawkmoth_root`` configuration option to replace ``cautodoc_root``
* ``hawkmoth_clang`` configuration option to replace ``cautodoc_clang``
* Built-in extensions for Javadoc and Napoleon comment handling

.. _Critical Software: https://www.criticalsoftware.com/

Changed
~~~~~~~

* Typedefed anonymous struct, union, and enum parsing to be more explicit
* ``cautodoc_transformations`` handling moved to a built-in extension
* Lots of test suite refactoring and cleanups

Deprecated
~~~~~~~~~~

* ``cautodoc_root`` configuration option in favour of ``hawkmoth_root``
* ``cautodoc_clang`` configuration option in favour of ``hawkmoth_clang``

Removed
~~~~~~~

* ``cautodoc_compat`` configuration option
* ``compat`` directive option

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.