Skip to main content

Create documentation from python modules and other objects.

Project description

Create documentation from python modules and other objects.

Latest release 20250426:

  • module_doc: new doc_item inner function to format an item, now using a list instead of a heading - more compact and readable.
  • module_doc: restore mangled command usage.
  • module_doc: provide a short summary of every module top level name before the full docs.

Short summary:

  • is_dunder: Test whether a name is a dunder name (__foo__).
  • module_doc: Fetch the docstrings from a module and assemble a MarkDown document.
  • obj_docstring: Return a docstring for obj which has been passed through stripped_dedent.

Module contents:

  • is_dunder(name): Test whether a name is a dunder name (__foo__).

  • module_doc(module, *, sort_key=<function <lambda> at 0x10a7ec220>, filter_key=<function <lambda> at 0x10a7ec720>, method_names=None): Fetch the docstrings from a module and assemble a MarkDown document.

    Parameters:

    • module: the module or module name to inspect
    • sort_key: optional key for sorting names in the documentation; default: name
    • filter_key`: optional test for a key used to select or reject keys to appear in the documentation
    • method_names: optional list of method names to document; the default is to document __init__, then CONSTANTS, the dunders, then other public names
  • obj_docstring(obj): Return a docstring for obj which has been passed through stripped_dedent.

    This function uses obj.__doc__ if it is not None, otherwise getcomments(obj) if that is not None, otherwise ''. The chosen string is passed through stripped_dedent before return.

Release Log

Release 20250426:

  • module_doc: new doc_item inner function to format an item, now using a list instead of a heading - more compact and readable.
  • module_doc: restore mangled command usage.
  • module_doc: provide a short summary of every module top level name before the full docs.

Release 20241007:

  • module_doc: for subclasses of cs.fsm.FSM embed an SVG state transition diagram.
  • module_doc: put HTML named anchors on the headings.
  • module_doc: use BaseCommand.extract_usage() with BaseCOmmand subclasses.

Release 20240709: module_doc: do not insert a BaseCommand usage into the docs, the BaseCommand.init_subclass will be doing that for us.

Release 20240630.1: module_doc: build the usage message from an instance of the baseCommand, needed since the last cs.cmdutils release.

Release 20240630: module_doc: insert the class usage message for subclasses of BaseCommand.

Release 20240422: module_doc: only list things in all if provided.

Release 20240412: module_doc: classes: MRO: suppress classes which are not immediate superclasses.

Release 20220311: module_doc: class members no longer rendered as headings, too verbose.

Release 20210306: Drop noise leaked into output.

Release 20210123:

  • module_doc: include properties/descriptors.
  • DISTINFO: this is not Python 2 compatible, drop tag.

Release 20200718:

  • New is_dunder(name) function to test whether name is a dunder name.
  • module_doc: new method_names parameter to report only specific attributes from a class - default is all public names and most dunder methods - things without docs are not reported.
  • Assorted small changes.

Release 20200521: Initial PyPI release.

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

cs_py_doc-20250426.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cs_py_doc-20250426-py2.py3-none-any.whl (5.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file cs_py_doc-20250426.tar.gz.

File metadata

  • Download URL: cs_py_doc-20250426.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for cs_py_doc-20250426.tar.gz
Algorithm Hash digest
SHA256 0c02fa66690d5470b2226f87d2a89e02dcd369264703c33b6128b92a83079635
MD5 348060b9af88c4a3ab6e5c6134c91e1f
BLAKE2b-256 af6878454c8d6362dadf59274043c3c526bb1e6610770733008cb20b4b549bf8

See more details on using hashes here.

File details

Details for the file cs_py_doc-20250426-py2.py3-none-any.whl.

File metadata

  • Download URL: cs_py_doc-20250426-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for cs_py_doc-20250426-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 61aadc9b380d3d12d79688391cae6ced672b51876488c23f6af5ff44573753ae
MD5 ca3a25994eedd12d21cd60a126a381ce
BLAKE2b-256 ed444479a967196677dbd8bfe94bc4d9a2a1078d9d5460a8a2cb48e06c8c7f04

See more details on using hashes here.

Supported by

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