analogdevicesinc / doctools

Central repository to host tooling for automated documentation builds
Eclipse Public License 2.0
4 stars 3 forks source link

Add new CLI tool to allow custom html/pdf docs generation #22

Closed gastmaier closed 13 hours ago

gastmaier commented 5 days ago

Uses human friendly YAML files, e.g.:

# Custom doc builder template
# ---------------------------

# Add dirs and files to include per repo
doc:
  hdl:
    - user_guide
    - projects/ad3552r_evb
    - projects/ad4110
    - library/spi_engine

  no-OS:
    - contributing.rst
    - projects/eval-adis1657x.rst

  documentation:
    - linux/kuiper

# Per repo configuration
# extra: do steps that require extra software (e.g. vendor sdk)
# branch: clone from a specific branch, overwrites "main"
config:
    hdl:
      branch: "my-branch"
    no-OS:
      extra: true

# Include extra extensions
extensions:
    - sphinx.ext.duration

project: "Custom user guide"

Missing features:

Empty sections remover

After filtering the toctrees, some sections used to add captions to toctrees (e.g. ADCs, Obsolte IPs, etc) are left empty. those could be removed.

Missing caution:

Figure out exactly if the tool works with all Sphinx version supported. (Fixed v1) In particular, it relies on parsing error with the suffix [some.thing] e.g. [ref.ref] and I remember not seeing it on every sphinx output. Is this configurable or something added later/before? (Fixed v1)

Not passing media_print (Fixed v1)

Check if grabbed extensions are installed on the system before calling sphinx, to gracefully fail (Fixed v1)

If a subprocess fail (eg. git clone with no internet/ssh key) gracefully return instead of keep going (Fixed v1)

gastmaier commented 2 days ago

V0 -> V1

Custom-doc

Author-mode

General

gastmaier commented 1 day ago

V1->V2

Remaining caution:

Missing nice to have: