AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO

[docs] Docstring Extraction has a Python-side Clang dependency - CI Workflow?

Offen
#1,073 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Documentation Needs Discussion
Vorherrschende Sprache
C++
Sterne
2.1k
Forks
503
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

@michdolan after pushing my branch for a PR (https://github.com/scoopxyz/OpenColorIO/tree/feature/python_docstrings)
I realized that the Python script that extracts the docstrings from the headers and creates the string-literals that get referenced in the PyBind11 bindings requires Python Clang in order to traverse the source headers.

First off, that would make the `Clang` (https://pypi.org/project/clang/) Python package a dependency of the Python bindings. Are we ok with that? If not then we'd have to replicate the `mkdoc.py` behavior without the Clang package. Which I'd definitely ask for help with...

Looking at the CI GitHub workflow, I don't see a place where we control Python dependencies of our CI. I see that the bash scripts are run for the `analysis_workflow.yml` to install things like numpy for this setup, but there is no equivalent step in `ci_workflow.yml`

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit mkdoc.py und der Abhängigkeitskonfiguration in analysis_workflow.yml und ci_workflow.yml; verfolge, wie die Docstring-Extraktion aufgerufen wird. Die noch offene Entscheidung ist, ob das Python clang package unterstützt wird oder ob der Extraktionsansatz geändert werden muss. Erledigt ist die Aufgabe, wenn die Abhängigkeit oder der Ersatz festgelegt ist und der CI-Workflow dies reproduzierbar handhabt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
github-actions, python
Bereich
build-system, ci-cd
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.