patch.py: Use shlex instead of deprecated pipe

The pipe library is deprecated in Python 3.11 and will be removed in
Python 3.13.  pipe.quote is just an import of shlex.quote anyway.

Clean up imports while we're at it.

(From OE-Core rev: 5f33c7b99a991c380d1813da8248ba5470ca4d4e)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ola x Nilsson
2023-04-13 08:46:31 +02:00
committed by Richard Purdie
parent 1a5d7fa527
commit 2f958e043a

View File

@@ -4,9 +4,11 @@
# SPDX-License-Identifier: GPL-2.0-only
#
import os
import shlex
import subprocess
import oe.path
import oe.types
import subprocess
class NotFoundError(bb.BBHandledException):
def __init__(self, path):
@@ -27,8 +29,6 @@ class CmdError(bb.BBHandledException):
def runcmd(args, dir = None):
import pipes
if dir:
olddir = os.path.abspath(os.curdir)
if not os.path.exists(dir):
@@ -37,7 +37,7 @@ def runcmd(args, dir = None):
# print("cwd: %s -> %s" % (olddir, dir))
try:
args = [ pipes.quote(str(arg)) for arg in args ]
args = [ shlex.quote(str(arg)) for arg in args ]
cmd = " ".join(args)
# print("cmd: %s" % cmd)
proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
@@ -217,7 +217,7 @@ class PatchTree(PatchSet):
with open(self.seriespath, 'w') as f:
for p in patches:
f.write(p)
def Import(self, patch, force = None):
""""""
PatchSet.Import(self, patch, force)
@@ -952,4 +952,3 @@ def should_apply(parm, d):
return False, "applies to later version"
return True, None