Skip to content
Prev Previous commit
Next Next commit
Ensure query is always dict[str, str]
  • Loading branch information
DanielNoord committed Oct 29, 2024
commit ea9cb59d5a8b79e7e6f92d5e09042da70165b1aa
10 changes: 6 additions & 4 deletions asyncpg/connect_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -325,10 +325,12 @@ def _parse_connect_dsn_and_args(*, dsn, host, port, user,
password = urllib.parse.unquote(dsn_password)

if parsed.query:
query = urllib.parse.parse_qs(parsed.query, strict_parsing=True)
for key, val in query.items():
if isinstance(val, list):
query[key] = val[-1]
query = {
key: val[-1]
for key, val in urllib.parse.parse_qs(
parsed.query, strict_parsing=True
).items()
}

if 'port' in query:
val = query.pop('port')
Expand Down