Message ID | 20240416090913.2028475-1-amorenoz@redhat.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 3fde60afe1f84746c1177861bd27b3ebb00cb8f5 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net-next] selftests: openvswitch: Fix escape chars in regexp. | expand |
Adrian Moreno <amorenoz@redhat.com> writes: > Character sequences starting with `\` are interpreted by python as > escaped Unicode characters. However, they have other meaning in > regular expressions (e.g: "\d"). > > It seems Python >= 3.12 starts emitting a SyntaxWarning when these > escaped sequences are not recognized as valid Unicode characters. > > An example of these warnings: > > tools/testing/selftests/net/openvswitch/ovs-dpctl.py:505: > SyntaxWarning: invalid escape sequence '\d' > > Fix all the warnings by flagging literals as raw strings. > > Signed-off-by: Adrian Moreno <amorenoz@redhat.com> > --- Thanks, Adrian. Reviewed-by: Aaron Conole <aconole@redhat.com>
Hello: This patch was applied to netdev/net-next.git (main) by Jakub Kicinski <kuba@kernel.org>: On Tue, 16 Apr 2024 11:09:13 +0200 you wrote: > Character sequences starting with `\` are interpreted by python as > escaped Unicode characters. However, they have other meaning in > regular expressions (e.g: "\d"). > > It seems Python >= 3.12 starts emitting a SyntaxWarning when these > escaped sequences are not recognized as valid Unicode characters. > > [...] Here is the summary with links: - [net-next] selftests: openvswitch: Fix escape chars in regexp. https://git.kernel.org/netdev/net-next/c/3fde60afe1f8 You are awesome, thank you!
diff --git a/tools/testing/selftests/net/openvswitch/ovs-dpctl.py b/tools/testing/selftests/net/openvswitch/ovs-dpctl.py index 5e0e539a323d..1dd057afd3fb 100644 --- a/tools/testing/selftests/net/openvswitch/ovs-dpctl.py +++ b/tools/testing/selftests/net/openvswitch/ovs-dpctl.py @@ -489,7 +489,7 @@ class ovsactions(nla): actstr, reason = parse_extract_field( actstr, "drop(", - "([0-9]+)", + r"([0-9]+)", lambda x: int(x, 0), False, None, @@ -502,9 +502,9 @@ class ovsactions(nla): actstr = actstr[len("drop"): ] return (totallen - len(actstr)) - elif parse_starts_block(actstr, "^(\d+)", False, True): + elif parse_starts_block(actstr, r"^(\d+)", False, True): actstr, output = parse_extract_field( - actstr, None, "(\d+)", lambda x: int(x), False, "0" + actstr, None, r"(\d+)", lambda x: int(x), False, "0" ) self["attrs"].append(["OVS_ACTION_ATTR_OUTPUT", output]) parsed = True @@ -512,7 +512,7 @@ class ovsactions(nla): actstr, recircid = parse_extract_field( actstr, "recirc(", - "([0-9a-fA-Fx]+)", + r"([0-9a-fA-Fx]+)", lambda x: int(x, 0), False, 0, @@ -588,17 +588,17 @@ class ovsactions(nla): actstr = actstr[3:] actstr, ip_block_min = parse_extract_field( - actstr, "=", "([0-9a-fA-F\.]+)", str, False + actstr, "=", r"([0-9a-fA-F\.]+)", str, False ) actstr, ip_block_max = parse_extract_field( - actstr, "-", "([0-9a-fA-F\.]+)", str, False + actstr, "-", r"([0-9a-fA-F\.]+)", str, False ) actstr, proto_min = parse_extract_field( - actstr, ":", "(\d+)", int, False + actstr, ":", r"(\d+)", int, False ) actstr, proto_max = parse_extract_field( - actstr, "-", "(\d+)", int, False + actstr, "-", r"(\d+)", int, False ) if t is not None:
Character sequences starting with `\` are interpreted by python as escaped Unicode characters. However, they have other meaning in regular expressions (e.g: "\d"). It seems Python >= 3.12 starts emitting a SyntaxWarning when these escaped sequences are not recognized as valid Unicode characters. An example of these warnings: tools/testing/selftests/net/openvswitch/ovs-dpctl.py:505: SyntaxWarning: invalid escape sequence '\d' Fix all the warnings by flagging literals as raw strings. Signed-off-by: Adrian Moreno <amorenoz@redhat.com> --- .../selftests/net/openvswitch/ovs-dpctl.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-)