AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO
Add .none(false) for arguments of python exposed functions expecting strings
- 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
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