Sphinx-c-autodoc

Latest version: v1.3.0

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

Scan your dependencies

Page 2 of 3

1.1.0

==========================

Added
-----

* Support for Sphinx 5

1.0.0

==========================

Added
-----

* Dual licensing with MIT license.

* Support for global compilation args.
Compilation args can now be specified with the
``c_autodoc_compilation_args`` configuration value.

Fixes
-----

* Fix parsing of multi-paragraph function documentation that used doxygen style
markup. Previously multi-paragraph function documentation which used doxygen
style markup would get merged in to one paragraph. Now the multi-paragraph
nature is preserved.

0.4.0

==========================

Changed
-------

* Undocumented constructs are no longer added to the documentation by default.
To maintain previous behavior add `:undoc-members:` to the project's
`autodoc_default_options`_.

Added
-----

* `:undoc-members:` and `:no-undoc-members:` option for the autocmodule
directive. This option set allows for controlling the listing of undocumented
constructs. The default is to not list undocumented constructs.

Fixes
-----

* Fix file level variables with unknown types. Previously variables with
unknown types would cause an error in Sphinx processing.
* Fix documentation of members that are arrays. Previously struct members that
were array types would cause an error as the array size was put between the
type and the member name.
* Fix viewcode processing of empty files. Previously an exception would be
raised when the viewcode extension tried to process empty files.
* Call out Sphinx 3.1 as minimum version in ``setup.py``. Previously the Sphinx
version in setup.py called out 3.0 or greater. This was incorrect as features
from Sphinx 3.1 are being utilized.

0.3.1

==========================

Added
-----

* The ``sphinx-c-apidoc`` command. This command provides users the ability to quickly
build up a set of documentation files for a C directory.

* Support for compile flags via a
`compilation database <https://clang.llvm.org/docs/JSONCompilationDatabase.html>`_.
A compilation database can now be specified with the
``c_autodoc_compilation_database`` configuration value.

Fixes
-----

* No longer passing `typedef` to auto documentation of types.
Previously the `typedef` keyword was being provided to sphinx as part of the
signature. This resulted in losing the ability to link to the type in html
documentation.

* Display of function arguments with unknown array types.
Previously when a function had an argument that was an array and an unknown type, it
would result in being empty in the output documentation. Now the full function
signature is provided token by token, with the exception of comments.

0.3.0

==========================

Changed
-------

* Changed to support sphinx version 3. Due to significant changes between
sphinx 2 and 3, sphinx 2 is no longer supported.

Fixes
-----

* typedef function and function pointers with unknown return types were not
being properly handled. These now get handled, but the unknown types are
whatever clang provides, which is usually ``int``.
* typedef unions with unknown member types caused in index error. This has been
fixed and these unknown member types are evaluated by clang to be ``int``.
* Fix comments in function declarations showing up in documentation. When
comments were placed inbetween parameter types and the parameter names, and
the type was unknown to clang, the fallback parsing would take the
declaration character for character (consolidating whitespace). This
resulted in comments being pulled in to the documentation verbatim. Now
comments will explicitly be skipped over when the fall back parsing for
function declarations happens.

0.2.0

==========================

Added
-----

* Viewcode functionality which allows for listing the source C files and
providing links between the documentation and the C source listings.
* `:private-members:` and `:no-private-members:` option for the autocmodule
directive. This option set allows for controlling the documentation of
constructs based on what is visible outside of the module. For header
files this means everything will still be documented. For standard source
files only non static functions and non static variables will be auto
documented if the :private-members: is not specified, or the
:no-private-members: is specified.

Fixes
-----

* Anonymous enumerations which were contained in a typedef were being documented twice.
Once as the typedef and once as anonymous. Now they are only documnted as
part of the typedef.

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.