python / python/cpython

When url and filename are the same, urlretrieve() will wipe out data in the file

Offen
#94,767 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

stdlib
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
36k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

If url and filename points to the same local file, the original file will be replaced by an empty file when executing
tfp = open(filename, 'wb')
and a ContentTooShortError will be raised as the file content is no longer available.
I suppose it should either do nothing or raise an exception during such circumstances.

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

Beginne mit urlretrieve() und reproduziere den Fall, in dem URL und Dateiname auf dieselbe lokale Datei verweisen, wobei der im Bericht beschriebene open(filename, 'wb')-Pfad im Mittelpunkt steht. Definiere und verifiziere ein konsistentes Ergebnis für diesen Fall – die Datei unverändert zu lassen oder eine Ausnahme auszulösen –, ohne ihren ursprünglichen Inhalt zu verlieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
networking
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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