Py_DEPRECATED should account for Py_Limited_API
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 77.2k
- Forks
- 36k
- Métricas de merge de PR
- Métricas de PR pendientes
Descripción
Feature or enhancement
Proposal:
Take the example of Py_SetPythonHome().
It has been deprecated in 3.11, and we should now do things with PyConfig (added in 3.8).
But it is also part of the limited API. So it should not actually disappear, and someone building with Py_Limited_API<3.8 does not have the available symbols to use the non deprecated variant.
So every developer building with the limited API that cares about the warning will have to study each deprecated function, and if the non deprecated vairant is not in the stable API, add local deprecation warning disable code.
The proposal:
When Py_LimitedAPI is defined, Py_Deprecated should not trigger a warning if The deprecation version is greater than the limited API version selected by the macro (3.2 if the macro is empty, otherwise, the version value in Py_Limited_API), since we are really compiling for a lower version of python
I can probably do the PR myself if it is accepted
Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
No response
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.
Línea de trabajo
Comienza localizando las definiciones y los usos de Py_DEPRECATED y Py_Limited_API en las cabeceras de CPython, y luego sigue la declaración de Py_SetPythonHome como ejemplo concreto. Comprueba cómo afecta la versión seleccionada de limited-API a las advertencias de obsolescencia y verifica que las advertencias solo se supriman cuando el reemplazo no esté disponible en esa versión de la API.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- api
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 38/100