uri_reference.is_valid() accepts invalid hostnames and out-of-range ports
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- networking
Direzione di ricerca
Inizia riproducendo entrambi gli esempi in una REPL Python e traccia come uri_reference(...).is_valid() convalida i nomi host e le porte. Il lavoro è completato quando i nomi host nudi con percorsi e le porte superiori a 65535 vengono rifiutati, con test che coprano entrambi gli input segnalati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The validator returns True for inputs that violate URI rules.
Examples:
In [15]: uri_reference('google.com/path').is_valid()
Out[15]: True
In [27]: uri_reference('http://example.com:99999/').is_valid()
Out[27]: True
Expected behavior:
The validator should reject missing schemes when a hostname is present
and should reject port values greater than 65535.
Actual behavior:
is_valid() returns True for both invalid inputs.
Steps to reproduce:
- Run the two example expressions in a Python REPL.
- Observe that both return True.
Environment:
Library version:
Python version: Python 3.10.14
OS: Windows
Fix? :
- Add port range validation and treat bare hostnames with paths as invalid
- unless explicitly allowed by the spec.
- Lingua principale
- Python
- Stelle
- 189
- Fork
- 43
- Merge medio
- 12h 14m
- PR unite (30g)
- 2
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di python-hyper/rfc3986
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
python-hyper/rfc3986#164 ·
-
ParseResultBytes.unsplit() raises AttributeError for a reference without an authorityForse già presa @mayuriphad l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
python-hyper/rfc3986#163 ·
-
sdist is missing `tox.ini`Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 55/100
python-hyper/rfc3986#129 ·
-
wrong parseAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 38/100
python-hyper/rfc3986#128 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
python-hyper/rfc3986#123 · 2 commenti ·
Tutte le issue di python-hyper/rfc3986
Issue simili
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 85/100
WLAN-Pi/wlanpi-profiler#341 ·
I maintainer di solito rispondono entro 1 giorno
-
Memory leak: the shared `validation_aborted_error` keeps every traceback it is raised throughForse già presa @Fire162 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
graphql-python/graphql-core#287 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
roman-corgi/ctc-dip#160 ·
I maintainer di solito rispondono entro 1 giorno
-
type-bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
render_findings.py reads and writes in the host's default encoding, so findings.html breaks on a cp1252 Windows hostForse già presa @Aaqibhafeezkhan l’ha presa oggi. Apertabug good first issue mentored python size: XS up-for-grabs
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
dheerajjha/mcp-migrate#366 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno