Skip to main content

API doc generator.

Project description

pydoctor
========

.. image:: https://travis-ci.org/twisted/pydoctor.svg?branch=tox-travis-2
:target: https://travis-ci.org/twisted/pydoctor

.. image:: https://codecov.io/gh/twisted/pydoctor/branch/master/graph/badge.svg
:target: https://codecov.io/gh/twisted/pydoctor

This is 'pydoctor', an API documentation generator that works by
static analysis.

It was written primarily to replace epydoc for the purposes of the
Twisted project as epydoc has difficulties with zope.interface. If it
happens to work for your code too, that's a nice bonus :)

pydoctor puts a fair bit of effort into resolving imports and
computing inheritance hierarchies and, as it aims at documenting
Twisted, knows about zope.interface's declaration API and can present
information about which classes implement which interface, and vice
versa.

The default HTML generator requires Twisted.

There are some more notes in the doc/ subdirectory.


Tox development environment
---------------------------

Since Python 3 is not yet supported, you the case in which your default
tox runs with Python 3, call the tox as::

python2 -m tox -e pyflakes


Sphinx Integration
------------------

HTML generator will also generate a Sphinx objects inventory using the
following mapping:

* packages, modules -> py:mod:
* classes -> py:class:
* functions -> py:func:
* methods -> py:meth:
* attributes -> py:attr:

Configure Sphinx intersphinx extension:

intersphinx_mapping = {
'pydoctor': ('http://domain.tld/api', None),
}

Use external references::

:py:func:`External API <pydoctor:pydoctor.model.Documentable.reparent>`

:py:mod:`pydoctor:pydoctor`
:py:mod:`pydoctor:pydoctor.model`
:py:func:`pydoctor:pydoctor.driver.getparser`
:py:class:`pydoctor:pydoctor.model.Documentable`
:py:meth:`pydoctor:pydoctor.model.Documentable.reparent`
:py:attr:`pydoctor:pydoctor.model.Documentable.kind`

It can link to external API documentation using Sphinx objects inventory using
the following cumulative configuration option::

--intersphinx=http://sphinx-doc.org/objects.inv


Releasing a new package
-----------------------

Releasing a new version is done via Travis-CI.
First commit the version update to master and wait for tests to pass.
Create a tag on local branch and then push it::

git tag 1.2.3
git push --tags

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydoctor-16.2.1.tar.gz (94.7 kB view details)

Uploaded Source

File details

Details for the file pydoctor-16.2.1.tar.gz.

File metadata

  • Download URL: pydoctor-16.2.1.tar.gz
  • Upload date:
  • Size: 94.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pydoctor-16.2.1.tar.gz
Algorithm Hash digest
SHA256 e6e1dee81d19d9058c0206064cfa15f6eeedaded74354cfc12f0449e70a733cb
MD5 f08ceaa51b2e1c2264f1c6f41d696906
BLAKE2b-256 b9c5ea3393d1663deadbec4d4a99e03be2fa3bd32b93ad01078ffe2cf9ec6367

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page