AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO
Improve handling of Windows path change in Python 3.8+
- Lenguaje dominante
- C++
- Estrellas
- 2.1k
- Forks
- 505
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
In PR #1759 we made a fix to try and solve problems caused by the change in library path behavior of Python >= 3.8 on Windows. Following the solution used in OIIO, we basically defaulted to adopting the previous Python behavior. However, based on feedback in PR #1668, this should be improved.
There is not agreement that the solution is simply to make the existing env var default to the Python 3.8+ behavior since the people most likely to be affected by the problem are users with limited development expertise.
Based on TSC discussion, we will investigate building the Python binding statically, similar to the wheels. At that point we would remove the OCIO_PYTHON_LOAD_DLLS_FROM_PATH env var option. Users would need to manage the paths on their own.
Another solution would be to add only the path(s) where the OCIO required libraries are, although initial discussion suggested this might be more difficult to get right.
We're open to feedback on the best approach. The recommended solution might be something that should be coordinated among ASWF projects, as it's likely that many of them are experiencing this issue.
For reference, here was the OIIO discussion on this topic:
https://github.com/OpenImageIO/oiio/pull/3470
And here was the USD approach:
https://github.com/PixarAnimationStudios/USD/commit/2a6c08f921bc8e58bd3fb9d8cda30a68f76b758a
Guía de contribución
Línea de trabajo
Revisa primero PR #1759 y los comentarios de PR #1668; después, compara la discusión de OIIO y el commit de USD referenciados. El trabajo estará completo cuando se haya acordado e implementado un enfoque concreto para la carga de bibliotecas en Windows con Python 3.8+, y se haya abordado el comportamiento de OCIO_PYTHON_LOAD_DLLS_FROM_PATH según lo decidido.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp, python
- Área
- api, operating-systems
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 20/100