Compatibility with the Array API standard?
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
- 22/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- numpy, pandas, python, pytorch, tensorflow
- Área
- data
Línea de trabajo
The payload names no specific files, so begin by reading the Array API standard docs and choosing a few representative pvlib functions that rely on NumPy and pandas calls. Record which calls would break with other array libraries, then prototype compatibility in those functions. Done means a written cost-benefit summary with a working prototype and tests run against at least one non-NumPy array library.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The Array API standard makes it possible to write generic code that works with many types of arrays (NumPy, Tensorflow, PyTorch, Dask, JAX, CuPy, MXNet, Xarray, ...). In principle, this would enable a pvlib simulation to be run in parallel, or on a GPU, using only code that looks very similar to the numpy-style code we are familiar with.
The Array API standard is gaining some meaningful traction in the community. For example, SciPy is adding support: see their array types tag, progress tracking tables, and developer documentation. scikit-learn is working on it too.
Adopting the standard could be a fairly straightforward way of enabling new use cases for pvlib. However, I don't have any experience with it myself and can't say anything more concrete than it seems worth looking into. So, following discussion with @echedey-ls, a good first step here is to explore the cost and benefit by prototyping compatibility in a small number of representative pvlib functions (I leave it an open question which functions might be considered representative). That would inform decisions about whether and how to pursue broader adoption across pvlib.
For reference, I copy this description from our GSoC 2025 project ideas list:
Project Title: Compatibility with the Array API
Project Description: An exciting development in the Python ecosystem is the Python array API standard, a uniform interface across the various array libraries (NumPy, Xarray, JAX, etc). Historically, pvlib has been written for compatibility with NumPy arrays and Pandas Series, but making use of the Array API to expand compatibility to other array libraries could be very beneficial. A successful proposal for this project will include some investigation about what it would take to adopt the Array API across pvlib.
Expected Outcomes: A plan/roadmap for adopting the Array API, Array API compatibility in several pvlib modules, and automated tests ensuring compatibility across the various array packages.
- Lenguaje dominante
- Python
- Estrellas
- 1.7k
- Forks
- 1.2k
- Merge medio
- 3 d 18 h
- PR fusionados (30 d)
- 13
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 pvlib/pvlib-python
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
pvlib/pvlib-python#2903 · 5 comentarios · 2 reacciones ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
pvlib/pvlib-python#2902 ·
Los mantenedores suelen responder en 1 día
-
Add an example or documentation on using 'bhi' from ERA5Quizá libre de nuevo @anshurajbisoyi98-ctrl la tomó hace 14 días y no hay ningún pull request abierto. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
pvlib/pvlib-python#2880 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Use "long-wave" rather than "infra-red" to refer to thermal radiation.Quizá libre de nuevo @Rahi-padwal la tomó hace 252 días y no hay ningún pull request abierto. Abiertoapi easy
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
pvlib/pvlib-python#2653 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
-
question
Dificultad 1/5 1-3 horas Aptitud para principiantes 72/100
pvlib/pvlib-python#2637 · 10 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de pvlib/pvlib-python
Issues similares
-
documentation good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
drevendev/HungryCrab#273 ·
Los mantenedores suelen responder en 1 día
-
good first issue help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
drevendev/BeautifulRepo#19 ·
Los mantenedores suelen responder en 2 días
-
Moonshot: Kimi K3 always sends `reasoning_effort="max"`, though the API now accepts `low` and `high`Abiertoaccepted
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
UKGovernmentBEIS/inspect_ai#5939 ·
Los mantenedores suelen responder en 1 día
-
bug linux
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Fill paper for Screen2WordsAbiertoarea:data data-quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
reacher-z/Awesome-CUA#1468 ·
Los mantenedores suelen responder en 1 día