]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-46415: Use f-string for ValueError in ipaddress.ip_{address,network,interface...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Tue, 3 May 2022 12:34:50 +0000 (05:34 -0700)
committerGitHub <noreply@github.com>
Tue, 3 May 2022 12:34:50 +0000 (05:34 -0700)
commit020f5c47d8137802d0f058ab2ed2dcb939a2eb8f
treef04bfc8272fb54234bc98ca8eeb5ca37af13f34e
parent92d2615d00ce8035cc9e64c1fb87dabf1d7071de
bpo-46415: Use f-string for ValueError in ipaddress.ip_{address,network,interface} helper functions (GH-30642)

`IPv*Network` and `IPv*Interface` constructors accept a 2-tuple of
(address description, netmask) as the address parameter.
When the tuple-based address is used errors are not propagated
correctly through the `ipaddress.ip_*` helper because of the %-formatting now expecting several arguments:

In [7]: ipaddress.ip_network(("192.168.100.0", "fooo"))
        ...
TypeError: not all arguments converted during string formatting

Compared to:

In [8]: ipaddress.IPv4Network(("192.168.100.0", "foo"))
        ...
NetmaskValueError: 'foo' is not a valid netmask

Use an f-string to make sure the error is always properly formatted.

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
(cherry picked from commit 52dc9c3066bcdc67a7a45d41cf158ecb1434d5f3)

Co-authored-by: Thomas Cellerier <thomascellerier@gmail.com>
Lib/ipaddress.py
Lib/test/test_ipaddress.py
Misc/NEWS.d/next/Library/2022-01-17-16-53-30.bpo-46415.6wSYg-.rst [new file with mode: 0644]