python / python/cpython

http.client.HTTPConnection and HTTPResponse are missing __repr__

Offen
#145,651 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

stdlib type-feature
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
35.9k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

http.client.HTTPConnection and HTTPResponse lack repr implementations, producing the default unhelpful object repr:

>>> import http.client
>>> http.client.HTTPConnection('example.com')
<http.client.HTTPConnection object at 0x...>

These should show useful state at a glance:

>>> http.client.HTTPConnection('example.com')
<HTTPConnection example.com:80>
>>> http.client.HTTPSConnection('example.com')
<HTTPSConnection example.com:443>

And for responses:

>>> r = conn.getresponse()
>>> r
<HTTPResponse [200 OK]>

The module already has a repr on IncompleteRead, so there's precedent. This would help when debugging HTTP code in the REPL or debugger.

Linked PRs
  • gh-145653

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 im Modul http.client und prüfe die vorhandene IncompleteRead repr als Referenz. Füge nützliche Repräsentationen für HTTPConnection, HTTPSConnection und HTTPResponse hinzu, die den Beispielen entsprechen, und überprüfe anschließend die Ausgabe von Verbindung und Antwort in den relevanten Tests; der verknüpfte PR gh-145653 zeigt an, dass die Arbeit bereits im Gange ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
networking
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
20/100

Neue Issues direkt in Ihr Postfach

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