Fix SIP URI support for `urllib.parse.url{parse,split}` (RFC 3261)
Offen
Dieses Issue hat noch niemand übernommen.
stdlib
type-bug
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 35.9k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Bug report
Bug description:
urllib.parse currently supports the SIP URI scheme. However, it mislabels the netloc as the path.
>>> import urllib.parse
>>> urllib.parse.urlparse('sip:user:password@host:port;uri-parameters?headers')
ParseResult(scheme='sip', netloc='', path='user:password@host:port', params='uri-parameters', query='headers', fragment='')
RFC 3261 defines the sip URI without slashes, like so:
sip:user:password@host:port;uri-parameters?headers
The correct ParseResult would be:
>>> urllib.parse.urlparse('sip:user:password@host:port;uri-parameters?headers')
ParseResult(scheme='sip', netloc='user:password@host:port', path='', params='uri-parameters', query='headers', fragment='')
CPython versions tested on:
3.14
Operating systems tested on:
macOS
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die Einstiegspunkte urllib.parse.urlparse und urlsplit zu lokalisieren, und stelle das SIP-URI-Beispiel aus dem Issue nach. Überprüfe das vorhandene Parsing-Verhalten und die Tests für schemespezifische URLs. Stelle anschließend sicher, dass beide Funktionen die SIP authority als netloc behandeln und die im erwarteten Ergebnis gezeigten parameters und query beibehalten.
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
- Klar beschrieben
- Anfängerfreundlichkeit
- 45/100