[oe-commits] Markus Lehtonen : devtool: simplify the logic of determining patches to be removed

git at git.openembedded.org git at git.openembedded.org
Fri Jun 19 21:53:43 UTC 2015


Module: openembedded-core.git
Branch: master-next
Commit: aff88bcebe335b0277df660ac22eeed28d65da44
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=aff88bcebe335b0277df660ac22eeed28d65da44

Author: Markus Lehtonen <markus.lehtonen at linux.intel.com>
Date:   Thu May 21 18:04:01 2015 +0300

devtool: simplify the logic of determining patches to be removed

A slight simplification of the code.

Signed-off-by: Markus Lehtonen <markus.lehtonen at linux.intel.com>

---

 scripts/lib/devtool/standard.py | 25 +++++++++++--------------
 1 file changed, 11 insertions(+), 14 deletions(-)

diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py
index c8ba247..aa95e6e 100644
--- a/scripts/lib/devtool/standard.py
+++ b/scripts/lib/devtool/standard.py
@@ -657,26 +657,23 @@ def update_recipe(args, config, basepath, workspace):
         existing_patches = oe.recipeutils.get_recipe_patches(rd)
 
         removepatches = []
-        seqpatch_re = re.compile('^[0-9]{4}-')
+        seqpatch_re = re.compile('^([0-9]{4}-)?(.+)')
         if not args.no_remove:
             # Get all patches from source tree and check if any should be removed
             tempdir = tempfile.mkdtemp(prefix='devtool')
             try:
                 GitApplyTree.extractPatches(srctree, initial_rev, tempdir)
-                newpatches = os.listdir(tempdir)
+                # Strip numbering from patch names. If it's a git sequence
+                # named patch, the numbers might not match up since we are
+                # starting from a different revision This does assume that
+                # people are using unique shortlog values, but they ought to be
+                # anyway...
+                newpatches = [seqpatch_re.match(fname).group(2) for fname in
+                              os.listdir(tempdir)]
                 for patch in existing_patches:
-                    # If it's a git sequence named patch, the numbers might not match up
-                    # since we are starting from a different revision
-                    # This does assume that people are using unique shortlog values, but
-                    # they ought to be anyway...
-                    patchfile = os.path.basename(patch)
-                    if seqpatch_re.search(patchfile):
-                        for newpatch in newpatches:
-                            if seqpatch_re.search(newpatch) and patchfile[5:] == newpatch[5:]:
-                                break
-                            else:
-                                removepatches.append(patch)
-                    elif patchfile not in newpatches:
+                    basename = seqpatch_re.match(
+                                    os.path.basename(patch)).group(2)
+                    if basename not in newpatches:
                         removepatches.append(patch)
             finally:
                 shutil.rmtree(tempdir)



More information about the Openembedded-commits mailing list