Title: [271443] trunk/Tools
Revision
271443
Author
[email protected]
Date
2021-01-13 10:51:01 -0800 (Wed, 13 Jan 2021)

Log Message

Avoid over-aggressive clearing of *.pyc files running webkitpy tests
https://bugs.webkit.org/show_bug.cgi?id=220594

Patch by Sam Sneddon <[email protected]> on 2021-01-13
Reviewed by Darin Adler.

* Scripts/webkitpy/test/finder.py:
(source_from_cache): Added fallback for PY2
(_DirectoryTree.clean): Change to use imported/fallback source_from_cache

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (271442 => 271443)


--- trunk/Tools/ChangeLog	2021-01-13 18:43:31 UTC (rev 271442)
+++ trunk/Tools/ChangeLog	2021-01-13 18:51:01 UTC (rev 271443)
@@ -1,3 +1,14 @@
+2021-01-13  Sam Sneddon  <[email protected]>
+
+        Avoid over-aggressive clearing of *.pyc files running webkitpy tests
+        https://bugs.webkit.org/show_bug.cgi?id=220594
+
+        Reviewed by Darin Adler.
+
+        * Scripts/webkitpy/test/finder.py:
+        (source_from_cache): Added fallback for PY2
+        (_DirectoryTree.clean): Change to use imported/fallback source_from_cache
+
 2021-01-13  Diego Pino Garcia  <[email protected]>
 
         [buildbot] WebKitGTK(GTK4) isn't triggered after a binary build

Modified: trunk/Tools/Scripts/webkitpy/test/finder.py (271442 => 271443)


--- trunk/Tools/Scripts/webkitpy/test/finder.py	2021-01-13 18:43:31 UTC (rev 271442)
+++ trunk/Tools/Scripts/webkitpy/test/finder.py	2021-01-13 18:51:01 UTC (rev 271443)
@@ -26,7 +26,13 @@
 import logging
 import re
 
+try:
+    from importlib.util import source_from_cache
+except ImportError:  # Python 2
+    def source_from_cache(path):
+        return path[:-1]
 
+
 _log = logging.getLogger(__name__)
 
 
@@ -67,9 +73,14 @@
         _log.debug("Cleaning orphaned *.pyc files from: %s" % self.search_directory)
         filenames = self.filesystem.files_under(self.search_directory)
         for filename in filenames:
-            if filename.endswith(".pyc") and filename[:-1] not in filenames:
-                _log.info("Deleting orphan *.pyc file: %s" % filename)
-                self.filesystem.remove(filename)
+            if filename.endswith(".pyc"):
+                try:
+                    orphan = source_from_cache(filename) not in filenames
+                except ValueError:
+                    orphan = True
+                if orphan:
+                    _log.info("Deleting orphan *.pyc file: %s" % filename)
+                    self.filesystem.remove(filename)
 
 
 class Finder(object):
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to