Add/Build type-hints for python package
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- python
- Área
- developer-experience
Línea de trabajo
Comienza examinando el paquete nativo de Python y la extensión compilada expuesta mediante el proceso de build/deploy del paquete. Compara las sugerencias de tipos inline con la salida de mypy stubgen, después define un enfoque completo para ambas partes y verifica que las sugerencias resultantes o los archivos .pyi estén incluidos en el paquete distribuido.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Feature Request
Add type hints to the python package, for both native python code and compiled code.
Description
Type hints are incredibly value in modern python, particularly for library code that may be unknown to developers! Type hints allow our IDEs to auto-complete, catch errors, and make simplify code discovery. I know not everybody loves type hints, but as a library, I believe OpenTimelineIO would benefit a lot from them in terms of automatic tooling integration and developer onboarding!
This is obviously pretty easy in the native python code, but in the pybind11 code it's slightly more tricky. Theoretically you can use mypy stubgen to do this with compiled modules? Is there a native pybind11 way of doing this? I'm not a C++ developer and have never touched pybind, so unfortunately I don't know for sure what the ideal workflow is here.
At my job, we have a mypy validated package that uses OpenTimelineIO, and I've spent a few hours trying to set up my own stub files for OTIO using mypy stubgen. It works fairly well, but it's not perfect. Possibly good enough for release though!
Perhaps this is a two parter -
- Add type hints to external facing python code (easy)
- At package build/deploy time, use a command like
mypy stubgen -m opentimelineioto generate .pyi files to be included in the package.
Context
Add any other context here, such as simulated output, or screenshots, that might help clarify the request.
- Lenguaje dominante
- C++
- Estrellas
- 2k
- Forks
- 362
- Merge medio
- 2 d 11 h
- PR fusionados (30 d)
- 6
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de AcademySoftwareFoundation/OpenTimelineIO
-
otio_imath.cpp fails to compile with the latest Imath/pybind11Quizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
AcademySoftwareFoundation/OpenTimelineIO#2037 ·
Los mantenedores suelen responder en 1 día
-
Clang warning suppression flag applied to gcc buildsPosiblemente ocupada @dajiaohuang la tomó hace 7 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
AcademySoftwareFoundation/OpenTimelineIO#2036 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Some documentation is missingQuizá libre de nuevo @Iqranawaz-debug la tomó hace 14 días y no hay ningún pull request abierto. Abiertodevdays26 documentation good first issue help wanted
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
AcademySoftwareFoundation/OpenTimelineIO#2042 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
AcademySoftwareFoundation/OpenTimelineIO#2029 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
AcademySoftwareFoundation/OpenTimelineIO#2007 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de AcademySoftwareFoundation/OpenTimelineIO
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
cython/cython#8110 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ROCm/rocm-systems#14923 ·
Los mantenedores suelen responder en 2 días
-
arrays asr pass bug ICE intrinsic medium priority
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Area: World-Readiness
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
microsoft/calculator#2522 ·
-
missing `catch.hpp`Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
microsoft/inflatelib#34 · 1 comentario ·