AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO

Add .none(false) for arguments of python exposed functions expecting strings

Offen
#1,202 8 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
good first issue help wanted
Vorherrschende Sprache
C++
Sterne
2.1k
Forks
503
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Several API functions are taking const char * parameters. They are often exposed to Python with:
.def("function", &Class::function, "parameter"_a)
This is working fine, when used in python, the parameter type is checked, but when used with None a segfault occurs.
To handle that .none(false) can be added to the parameter:
.def("function", &Class::function, "parameter"_a.none(false))

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Es ist keine Datei oder kein Test genannt. Beginne damit, die C++-Python-Exposure-Bindings zu finden, die .def-Aufrufe für Funktionen mit const char*-Parametern enthalten, und reproduziere dann den None-Fall, um die betroffenen APIs zu identifizieren. Fertig ist die Aufgabe, wenn diese exponierten String-Parameter None ohne einen segfault ablehnen und eine Testabdeckung für die betroffenen Bindings vorhanden ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, python
Bereich
api
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

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