Build fails with the stable ABI (abi3)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 18/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- build-system
Línea de trabajo
The failure is in thread_is_attached() in src/utils.rs (around line 353), which calls PyThreadState_GetUnchecked, a function the limited API does not provide. Read that function and how the waker uses it, then build with Py_LIMITED_API to reproduce the error. The issue asks the maintainer to choose between a conditional-compilation fallback and dropping abi3, so wait for that decision before changing code. Done means abi3 builds compile under the chosen option.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The crate does not compile with the stable ABI (Py_LIMITED_API). thread_is_attached() (src/utils.rs:353) calls PyThreadState_GetUnchecked, and PyO3 does not provide this function in the limited API.
We can fix this in one of two ways:
- Use conditional compilation: under
Py_LIMITED_API, do not usethread_is_attached(). The waker then always callsPython::attach.- Pro: abi3 builds work, and one wheel can cover many Python versions.
- Con: in abi3 builds, each wake from a Tokio thread acquires the GIL, so they are slower.
- Remove abi3 support.
- Pro: simpler code, and only one code path to test. We do not build abi3 wheels now anyway.
- Con: we must build one wheel for each Python version, which We already do so option 2 sounds reasonable to me.
@Lorak-mmk WDYT?
- Lenguaje dominante
- Rust
- Estrellas
- 6
- Forks
- 8
- Merge medio
- 3 d 8 h
- PR fusionados (30 d)
- 16
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin 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 scylladb/python-rs-driver
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
scylladb/python-rs-driver#224 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
scylladb/python-rs-driver#193 ·
Los mantenedores suelen responder en 1 día
-
Consider adding regex dependencyAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
scylladb/python-rs-driver#248 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
scylladb/python-rs-driver#246 · 7 comentarios ·
Los mantenedores suelen responder en 1 día
-
Optimize callbacksAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
scylladb/python-rs-driver#245 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de scylladb/python-rs-driver
Issues similares
-
documentation priority:p2 type:chore
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
Los mantenedores suelen responder en 1 día
-
dispatch:sol-high documentation
Dificultad 1/5 1-3 horas Aptitud para principiantes 85/100
carrick-sh/carrick#768 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
correctness postgres tursopg
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
tursodatabase/turso#10442 ·
Los mantenedores suelen responder en 1 día
-
Incorrect "Share Decks" linkAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
ankitects/anki#5864 · 1 reacción ·
Los mantenedores suelen responder en 2 días
-
area: config effort: S good first issue P3 type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
ferenyl/azuredevopstui#63 ·