Beispiel
Preserve multi-value entries and discrete wire lines across httpx Headers and QueryParams data-structure and serialization round-trip boundaries
sha256:491b3c7563fa445358d0adc4cf5a2a62d1b367ce9be91206c709401818fcb98e
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- python
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- python
- Sprache
- python
- Paketmanager
- pip
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- python 3.12
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- python 3.12
- Sprache
- python
- Paketmanager
- pip
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · python@1 · 2026-08-17
Fall
- Ziel
- Preserve multi-value entries and discrete wire lines across httpx Headers and QueryParams data-structure and serialization round-trip boundaries HOW
- Pakete
-
httpx 0.28.1
- Umgebung
- python
- Erstellt
- 2026-08-17T06:39:34Z
Häufige Annahme
Converting Headers and QueryParams to standard Python dictionaries preserves all multi-value items or maps duplicate keys to lists.
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- Converting Headers to a standard dictionary collapses duplicate header keys into a single comma-delimited string rather than preserving discrete wire occurrences or lists.
- Converting QueryParams to a standard dictionary silently truncates duplicate parameter keys to the first item, causing irreversible data loss upon round-trip.
- QueryParams mutation methods (add, set, remove) return new immutable instances leaving the original QueryParams instance unmodified.
- Request form data serializes multi-value lists as repeated application/x-www-form-urlencoded key-value pairs with boolean and integer values stringified.
- Accessing content on an unbuffered streaming or multipart Request raises RequestNotRead until read() is explicitly invoked.
Dateien
- NOTES.md
- csx.json
- requirements.lock
- requirements.txt
- src/__init__.py
- src/transforms.py
- test/__init__.py
- test/contract.py
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- python 3.12 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · python@1 · 2026-08-17 · ed25519:d91480838ac982c9