From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alex Myczko <tar@debian.org>
Date: May, 31 2026 20:23:40 +0200
Subject: [PATCH] <short summary of the patch>

TODO: Put a short summary on the line above and replace this paragraph
with a longer explanation of this change. Complete the meta-information
with other relevant fields (see below for details). To make it easier, the
information below has been extracted from the changelog. Adjust it or drop
it.

Bug-Debian: https://bugs.debian.org/1085739
Bug-Debian: https://bugs.debian.org/1091216
---
The information above should follow the Patch Tagging Guidelines, please
checkout https://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: (upstream|backport|vendor|other), (<patch-url>|commit:<commit-id>)
Bug: <upstream-bugtracker-url>
Bug-<Vendor>: <vendor-bugtracker-url>
Forwarded: (no|not-needed|<patch-forwarded-url>)
Applied-Upstream: <version>, (<commit-url>|commit:<commid-id>)
Reviewed-By: <name and email of someone who approved/reviewed the patch>

--- nfstest-3.2.orig/baseobj.py
+++ nfstest-3.2/baseobj.py
@@ -461,7 +461,7 @@ class BaseObj(object):
         if isinstance(level, str):
             # Convert named verbose levels to a number
             # -- Get a list of all named verbose levels
-            for item in sorted(set(re.split('\W+', level))):
+            for item in sorted(set(re.split(r'\W+', level))):
                 if len(item) > 0:
                     if item in _debug_map:
                         # Replace all occurrences of named verbose level
--- nfstest-3.2.orig/formatstr.py
+++ nfstest-3.2/formatstr.py
@@ -258,7 +258,7 @@ class FormatStr(Formatter):
            out = x.format("{0:?tuple({0}, {1})}", 1, 2)    # out = "tuple(1, 2)"
            out = x.format("{0:?tuple({0}, {1})}", None, 2) # out = ""
            # Using 'else' format (including the escaping of else character):
-           out = x.format("{0:?sid\:{0}:NONE}", 5)    # out = "sid:5"
+           out = x.format(r"{0:?sid\:{0}:NONE}", 5)    # out = "sid:5"
            out = x.format("{0:?sid\:{0}:NONE}", None) # out = "NONE"
 
            # Nested formatting for strings, where processing is done in
--- nfstest-3.2.orig/nfstest/file_io.py
+++ nfstest-3.2/nfstest/file_io.py
@@ -311,7 +311,7 @@ class FileIO(BaseObj):
 
         # Get size multiplier
         sizemult = kwargs.pop("sizemult", P_SIZEMULT)
-        if re.search("^[\d\.]+$", sizemult):
+        if re.search(r"^[\d\.]+$", sizemult):
             self.sizemult = float(sizemult)
         else:
             self.sizemult = float(int_units(sizemult))
@@ -1060,7 +1060,7 @@ class FileIO(BaseObj):
         process = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
         pstdout, pstderr = process.communicate()
         for line in pstdout.decode().split("\n"):
-            regex = re.search("Stats for\s+(.*):", line)
+            regex = re.search(r"Stats for\s+(.*):", line)
             if regex:
                 self.dprint("INFO", regex.group(1))
             else:
--- nfstest-3.2.orig/nfstest/test_util.py
+++ nfstest-3.2/nfstest/test_util.py
@@ -879,7 +879,7 @@ class TestUtil(NFSUtil):
                     lines.append(optline.rstrip())
                     # Process valid options, option name and value is separated
                     # by spaces or an equal sign
-                    m = re.search("([^=\s]+)\s*=?\s*(.*)", line)
+                    m = re.search(r"([^=\s]+)\s*=?\s*(.*)", line)
                     name = m.group(1)
                     name = name.strip()
                     value = m.group(2)
@@ -1116,14 +1116,14 @@ class TestUtil(NFSUtil):
 
         # Find if any of the test options are regular expressions
         for key in self.testopts.keys():
-            m = re.search("^re\((.*)\)$", key)
+            m = re.search(r"^re\((.*)\)$", key)
             if m:
                 # Regular expression specified by re()
                 regex = m.group(1)
             else:
                 # Find if regular expression is specified by the characters
                 # used in the name
-                m = re.search("[.^$?+\\\[\]()|]", key)
+                m = re.search(r"[.^$?+\\\[\]()|]", key)
                 regex = key
             if m and re.search(regex, name):
                 # Key is specified as a regular expression and matches
--- nfstest-3.2.orig/packet/nfs/nfs4.py
+++ nfstest-3.2/packet/nfs/nfs4.py
@@ -4810,7 +4810,7 @@ class write_response4(BaseObj):
        };
     """
     # Class attributes
-    _strfmt1  = "{0:?stid\:{0} }len:{1:umax64} verf:{3} {2}"
+    _strfmt1  = r"{0:?stid\:{0} }len:{1:umax64} verf:{3} {2}"
     _attrlist = ("stateid", "count", "committed", "verifier")
 
     def __init__(self, unpack):
--- nfstest-3.2.orig/packet/transport/ib.py
+++ nfstest-3.2/packet/transport/ib.py
@@ -559,7 +559,7 @@ class IB(BaseObj):
                  "psize", "icrc", "vcrc")
     _fattrs   = ("bth",)
     _strfmt1  = "{1}{1:? }{0}{0:? }{_strname:<5} {2}{_size:? size={_size}}{6:? }{6}{8:? }{8}"
-    _strfmt2  = "{2}{_size:?, size\: {_size}}{6:?, }{6}{8:?, }{8}"
+    _strfmt2  = r"{2}{_size:?, size\: {_size}}{6:?, }{6}{8:?, }{8}"
     _senddata = {}
 
     def __init__(self, pktt):
--- nfstest-3.2.orig/packet/transport/rdmap.py
+++ nfstest-3.2/packet/transport/rdmap.py
@@ -82,7 +82,7 @@ class RDMAP(BaseObj):
     _attrlist = ("version", "opcode", "istag", "sinkstag", "sinksto",
                  "dma_len", "srcstag", "srcsto", "psize")
     _strfmt1  = "RDMAP v{0:<3} {1} {_ddp}, len: {8}"
-    _strfmt2  = "{1}, version: {0},{2:? istag\: {2},:} len: {8}"
+    _strfmt2  = r"{1}, version: {0},{2:? istag\: {2},:} len: {8}"
     _senddata = {}
 
     def __init__(self, pktt, pinfo):
--- nfstest-3.2.orig/tools/create_manpage.py
+++ nfstest-3.2/tools/create_manpage.py
@@ -226,8 +226,8 @@ def create_manpage(src, dst):
         pstdout, pstderr = proc.communicate()
         proc.wait()
         lines = re.sub('Total time:.*', '', pstdout.decode())
-        lines = re.sub('TIME:\s+[0-9.]+s.*', '', lines)
-        lines = re.sub('0 tests \(0 passed, 0 failed\)', '', lines)
+        lines = re.sub(r'TIME:\s+[0-9.]+s.*', '', lines)
+        lines = re.sub(r'0 tests \(0 passed, 0 failed\)', '', lines)
         lines = lines.split('\n')
         while lines[-1] == "":
             lines.pop()
