Versions follow Semantic Versioning (<major>.<minor>.<patch>
).
- Can turn off the addition of documented objects to the TOC tree.
- Added support for Python 3.11.
- `#330 <#330>`: (Python) Render tuple values as tuples, not lists.
- `#341 <#341>`: (Python) Fix module level assignments to class attributes being documented as module level attributes.
- (Python) Fix "bysource" sort order showing items in alphabetical order.
- (Python) Use the correct directives for a variable type and value.
- Removed some autogenerated test data from the repository.
- Dropped support for Sphinx <4.
- `#352 <#352>: (Python) Properties are rendered with the property directive, fixing support for Sphinx 5.2. A new PythonPythonMapper object (PythonProperty) has been created to support this change. This object can be passed to templates, filters, and hooks. A new property.rst` template has also been created to support this change.
- Use https links where possible in documentation.
- Pass correct argument types to
status_iterator
.
- Dropped support for Python 3.6.
- Added support for Python 3.10.
- `#222 <#222>`: Marked extension as parallel read safe.
- `#324 <#324>`: (Python) Fail elegantly when no source files are found.
- (Python) Stop calling
autodoc-process-docstring
when docstring is empty. Works around sphinx-doc/sphinx#10701. - `#318 <#318>`: (Python) Fixed misaligned argument types on methods/classmethods when using type comments.
- `#278 <#278>`: (Python) Limit signatures to 60 characters in summaries.
- Fix keyerror when using markdown sources.
- `#328 <#328>`: (Python) Fix kw-only marker getting ignored if first in the signature.
- Fixed tests in Sphinx 5.
- Fixed many typos throughout the documentation.
- `#301 <#301>`: (Python) Fixed compatibility with astroid 2.7+.
- `#299 <#299>`: (Python) Fixed incorrect indentation in generated documentation when a class with no constructor has a summary line spanning multiple lines.
- Fixed broken link to Jinja objects.inv.
- Fixed error when parsing a class with no constructor.
- `#293 <#293>`: Fixed failure to build out of source conf.py files. Configuration values using relative values are now relative to the source directory instead of relative to the conf.py file.
- `#289 <#289>`: (Python) Fixed AttributeError using inheritance diagrams on a module with plain imports.
- `#292 <#292>`: Explicitly use the domain for generated directives.
- `#273 <#273>`: Fixed type annotations being shown for only a single module.
- Expandable value for multi-line string attributes.
- `#265 <#265>`: Can resolve the qualified paths of parameters to generics.
- `#275 <#275>: Warnings have been categorised and can be suppressed through suppress_warnings`.
- `#280 <#280>`: Data attributes are documented in module summaries.
- `#273 <#273>: Fixed setting autodoc_typehints to none or description not turning off signature type hints. autodoc_typehints` integration is considered experimental until the extension properly supports overload functions.
- `#261 <#261>`: Fixed data annotations causing pickle or deepcopy errors.
- Documentation can be generated when multiple source directories share a single
conf.py
file.
- Fixed
DeprecationWarning
for invalid escape sequence\s
in tests. - Fixed
FutureWarning
forNode.traverse()
becoming an iterator instead of list. - New example implementation of
autoapi-skip-member
Sphinx event. - Can run tests with tox 4.
- Updated packaging to use PEP-517.
- All unittest style tests have been converted to pytest style tests.
- An exception raised by docfx is raised directly instead of wrapping it.
- Started using Github Actions for continuous integration.
- The fully qualified path of objects are included type annotations so that Sphinx can link to them.
- Added support for Sphinx 3.3. and 3.4.
- `#240 <#240>: The docstrings of object.__init__, object.__new__, type.__init__, and type.__new__` are not inherited.
- `#260 <#260>: The overload signatures of __init__` methods are documented.
- Dropped support for Python 2 and Sphinx 1.x/2.x. Python 2 source code can still be parsed.
- (Python) Added support for using type hints as parameter types and return types via the
sphinx.ext.autodoc.typehints
extension. - `#191 <#191>: Basic incremental build support is enabled autoapi_keep_files` is enabled. Providing none of the source files have changed, AutoAPI will skip parsing the source code and regenerating the API documentation.
- `#200 <#200>`: Can pass a callback that edits the Jinja Environment object before template rendering begins. This allows custom filters, tests, and globals to be added to the environment.
- Added support for Python 3.9.
- `#246 <#246>: (Python) Fixed TypeError when parsing a class that inherits from type`.
- `#244 <#244>`: Fixed an unnecessary deprecation warning being raised when running sphinx-build from the same directory as conf.py.
- (Python) Fixed properties documented by Autodoc directives getting documented as methods.
- Fixed AttributeError when generating an inheritance diagram for a module.
This will be the last minor version to support Python 2 and Sphinx 1.x/2.x.
- `#222 <#222>`: Declare the extension as parallel unsafe.
- `#217 <#217>`: (Python) All overload signatures are documented.
- `#243 <#243>: Files are found in order of preference according to autoapi_file_patterns`.
- Added support for Sphinx 3.2.
- `#219 <#219>`: (Python) Fixed return types not showing for methods.
- (Python) Fixed incorrect formatting of properties on generated method directives.
- Fixed every toctree entry getting added as a new list.
- `#234 <#234>`: Fixed only some entries getting added to the toctree.
- autoapisummary directive inherits from autosummary for future stability.
- `#197 <#197>: Added autoapi.__version__ and autoapi.__version_info__` attributes for accessing version information.
- `#201 <#201>: (Python) Added the autoapi_member_order` option to allow the order that members are documented to be configurable.
- `#203 <#203>`: (Python) A class without a docstring inherits one from its parent. A methods without a docstring inherits one from the method that it overrides.
- `#204 <#204>: (Python) Added the imported-members` AutoAPI option to be able to enable or disable documenting objects imported from the same top-level package or module without needing to override templates.
- `#198 <#198>`: Documentation describes the required layout for template override directories.
- `#195 <#195>: (Python) Fixed incorrect formatting when show-inheritance-diagram and private-members` are turned on.
- #193 <#193> and `#208 <#208>`: (Python) Inheritance diagrams can follow imports to find classes to document.
- `#213 <#213>`: (Python) Fixed module summary never showing.
- black shows diffs by default
- `#207 <#207>`: Fixed a typo in the code of the golang tutorial.
- Dropped support for Python 3.4 and 3.5.
- `#151 <#151>: (Python) Added the autoapi_python_use_implicit_namespaces` option to allow AutoAPI to search for implicit namespace packages.
- Added support for Sphinx 2.2 and 2.3.
- Added support for Python 3.8.
- `#140 <#140>: (Python) Added the autoapi-inheritance-diagram directive to create inheritance diagrams without importing modules. Enable the show-inheritance-diagram` AutoAPI option to turn the diagrams on in generated documentation.
- `#183 <#183>: (Python) Added the show-inheritance AutoAPI option to be able to enable or disable the display of a list of base classes in generated documentation about a class. Added the inherited-members` AutoAPI option to be able to enable or disable the display of members inherited from a base class in generated documentation about a class.
- The
autoapi_include_summaries
option has been replaced with theshow-module-summary
AutoAPI option.autoapi_include_summaries
will stop working in the next major version. - Added support for Sphinx 2.4 and 3.0
- `#186 <#186>`: (Python) Fixed an exception when there are too many argument type annotations in a type comment.
- (Python) args and kwargs type annotations can be read from the function type comment.
- Tests are now included in the sdist.
- (Python) "Invalid desc node" warning no longer raised for autodoc-style directives.
- (Python) Can read per argument type comments with astroid > 2.2.5.
- (Python) Added autoapidecorator directive with Sphinx >= 2.0.
- (Python) Can use autodoc_docstring_signature with Autodoc-style directives.
- (Python) Added autoapi-skip-member event.
- Made it more clear which file causes an error, when an error occurs.
- Sphinx language domains are now optional dependencies.
- (Python) Forward reference annotations are no longer rendered as strings.
- (Python) autoapifunction directive no longer documents async functions as a normal function.
- (Python) Fixed unicode decode errors in some Python 3 situations.
- Documentation more accurately describes what configuration accepts relative paths and where they are relative to.
- (Python) Can override ignoring local imports in modules by using __all__.
- (Python) Fixed incorrect formatting of functions and methods.
- Added support for Sphinx 2.1.
- Fixed some dead links in the README.
- Fixed lint virtualenv.
- `#100 <#100>: (Python) Added support for documenting C extensions via .pyi` stub files.
- Added support for Sphinx 2.0.
- Toned down the API reference index page.
- (Go) Patterns configured in
autoapi_ignore
are passed to godocjson. - New and improved documentation.
- No longer need to set
autoapi_add_toctree_entry
to False whenautoapi_generate_api_docs
is False. - #139 <#139> Added support for basic type annotations in documentation generation and autodoc-style directives.
- `#159 <#159>: (Python) Fixed UnicodeDecodeError` on Python 2 when a documenting an attribute that contains binary data.
- (Python) Fixed private submodules displaying when
private-members
is turned off. - Templates no longer produce excessive whitespace.
- (Python) Fixed an error when giving an invalid object to an autodoc-style directive.
- No longer pin the version of black.
- Added missing test environments to travis.
- (Python) Fixed a false warning when importing a local module.
- Dropped support for Sphinx<1.6.
- Added debug messages about what AutoAPI is doing.
`#156 <#156>`: (Python) Made import resolution more stable.
Also capable of giving more detailed warnings.
- Code is now formatted using black.
- Removed references to old css and js files.
- Replaced usage of deprecated Sphinx features.
- Reorganised tests to be more pytest-like.
- (Python) Fixed some import chains failing to resolve depending on resolution order.
- (Python) Fixed unicode decoding on Python 3.7.
- (Python) Fixed autodoc directives not documenting anything in submodules or subpackages.
- (Python) Fixed error parsing files with unicode docstrings.
- (Python) Fixed error when documenting something that's imported in more than one place.
- (Python) Added Python 3.7 testing.
- Started testing against stable version of Sphinx 1.8.
- Fixed all "no title" warnings during tests.
`#152 <#152>: Removed the autoapi_add_api_root_toctree` option.
This has been replaced with the
autoapi_add_toctree_entry
option.- `#25 <#25>`: Removed distutils support.
- Removed redundant
package_dir
andpackage_data
options.
- (Python) Added viewcode support for imported members.
- `#146 <#146>: (Python) No longer documents __init__()` attributes without a docstring.
- `#153 <#153>`: (Python) Can document a public python API.
- `#111 <#111>`: (Python) Can opt to write manual documentation through new autodoc-style directives.
`#152 <#152>`: Made it easier to remove default index page.
Also removed autoapi_add_api_root_toctree config option
- `#150 <#150>: (Python) private-members` also controls private subpackages and submodules.
- (Python) Added support for static and class methods.
(Python) Methods include
self
in their arguments.This more closely matches autodoc behaviour.
- `#145 <#145>`: (Python) Added support for detecting Python exceptions.
- (Python) Can control how __init__ docstring is displayed.
- (Python) Added support for viewcode.
- (Python) Source files no longer need to be in
sys.path
.
- (Python) Fixed linking to builtin bases.
- (Python) Fixed properties being documented more than once when set in
__init__()
. - (Python) Fixed nested classes not getting displayed.
- `#148 <#148>`: (Python) Fixed astroid 2.0 compatibility.
- (Python) Fixed filtered classes and attributes getting displayed.
- (Python) Fixed incorrect display of long lists.
- `#125 <#125>`: (Javascript) Fixed running incorrect jsdoc command on Windows.
- `#125 <#125>: (Python) Support specifying package directories in autoapi_dirs`.