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.1.1.tar.gz (94.6 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for pydoctor-16.1.1.tar.gz
Algorithm Hash digest
SHA256 02707e139e7291c29973ae43c0cf12330920db60407a93e841f762ea739553d9
MD5 223e474a82f2625d38cc94475878743c
BLAKE2b-256 53e6ad0430b06fc1eba4c71e8f863515d1ab9aa83530ad0cd808640b57da9419

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