python / python/cpython

Documentation for os.environ should say that os.environ caching behavior is undefined if other threads are setting environment values

Abierto
#120,513 3 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

docs topic-free-threading
Lenguaje dominante
Python
Estrellas
77.2k
Forks
35.9k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

Documentation

It says here:

This mapping is captured the first time the os module is imported, typically during Python startup as part of processing site.py. Changes to the environment made after this time are not reflected in os.environ, except for changes made by modifying os.environ directly.

It should mention the caveat that such cashing would cause undefined behavior or/and crashes when other threads would be setting environment values. This would be true at least on Linux and FreeBSD.

The same should be mentioned in the documentation of the function that initializes the Python interpreter and caches environment.

These functions are not thread-safe.

Linked PRs
  • gh-152979

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Revisa la documentación de os.environ enlazada en el issue y la documentación de la función de inicialización del intérprete que almacena en caché el entorno. Compara la advertencia solicitada sobre la seguridad de los hilos con el PR enlazado gh-152979. Se considera completado cuando ambas áreas relevantes de la documentación describen con precisión el comportamiento cuando otros hilos modifican los valores del entorno.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
documentation, operating-systems
Tipo de issue
Documentación
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.