AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO
Remove Imath and Pystring from nanoColor
- Lenguaje dominante
- C++
- Estrellas
- 2.1k
- Forks
- 503
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
One of the requirements for nanoColor is that it have no external dependencies. Most of the dependencies have already been removed, via optional CMake flags. However, code from Imath and Pystring was temporarily moved to the ext folder (i.e. the required code from those projects was copied in, strictly as a temporary prototyping measure).
For Pystring, the proposal is to reimplement any functions currently needed by OCIO (there are not many).
For Imath, the only thing that is used by OCIO is the half class. The proposal is that a half class be created specifically for OCIO, based on the Imath code but with some simplifications. Given that most hardware these days has specific instructions for half-floats, those would be used if available. For other machines, the code from Imath that does not use the LUT would be used.
For simplicity, these changes would apply to both nanoColor and full OCIO. If people would like to continue to be able to use the full Imath or Pystring as an optional dependency with full OCIO, please note that as a comment below.
Guía de contribución
Línea de trabajo
Comienza inspeccionando la carpeta ext y los flags de CMake que actualmente hacen que Imath y Pystring sean opcionales o estén integrados. Rastrea qué funciones de Pystring y qué clase half de Imath utilizan nanoColor y el OCIO completo; se considera terminado cuando ambas compilaciones funcionan sin dependencias externas y se han abordado las dependencias opcionales de la biblioteca completa según sea necesario.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cmake, cpp
- Área
- build-system, tooling
- Tipo de issue
- Refactorización
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 25/100