python / python/cpython

Documentation of os.exec*() provides confusing information about "flushing file descriptors"

Offen
#133,102 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

docs
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
35.9k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Documentation

The documentation of os.exec*() says:

The current process is replaced immediately. Open file objects and descriptors are not flushed, so if there may be data buffered on these open files, you should flush them using sys.stdout.flush() or os.fsync() before calling an exec* function.

However, os.fsync() flushs OS buffers to disk, and has nothing to with flushing userspace buffer to OS.

Linked PRs
  • gh-133333

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginnen Sie mit der im Issue zitierten Dokumentation zu os.exec*() und vergleichen Sie die Rollen von sys.stdout.flush() und os.fsync(). Stellen Sie sicher, dass die Formulierung korrekt zwischen Puffern im Userspace und OS-Puffern unterscheidet, und überprüfen Sie anschließend, dass die überarbeitete Dokumentation klar erklärt, was vor exec*() geleert werden sollte.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
1/5
Geschätzter Aufwand
Unter einer Stunde
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.