home · contact · privacy
Speed up consistency check.
authorPlom Heller <plom@plomlompom.com>
Mon, 10 Aug 2026 22:25:54 +0000 (00:25 +0200)
committerPlom Heller <plom@plomlompom.com>
Mon, 10 Aug 2026 22:25:54 +0000 (00:25 +0200)
src/bricksplom/misc.py

index ad06b03a3ee6d192bca48832542d5abf2007970f..d06a9991deedd43a49c614dbb73dbef5c21514c1 100644 (file)
@@ -834,10 +834,12 @@ class BricksDb:
             fails += [f'missing design of ID: {d_id}']
 
         # check all recorded designs have matching bricks (at least via alts)
-        for design_id, design in self.designs.items():
-            if not [p for p in self.bricks.values()
-                    if p.design_id in design.all_ids]:
-                fails += [f'missing bricks for design of ID: {design_id}']
+        bricked_designs = set(b.design_id for b in self.bricks.values())
+        for design in [v for k, v in self.designs.items()
+                       if (k not in bricked_designs)
+                       and not [id_ for id_ in v.all_ids
+                                if id_ in bricked_designs]]:
+            fails += [f'missing bricks for design of ID: {design.id_}']
 
         # check all bricks' colors are recorded
         for color_id in [v.color_id for v in self.bricks.values()