<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository mpbb.

</pre>
<p><a href="https://github.com/macports/mpbb/commit/96100634fa40b27c53d3682258cbb9012bff9730">https://github.com/macports/mpbb/commit/96100634fa40b27c53d3682258cbb9012bff9730</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 96100634fa40b27c53d3682258cbb9012bff9730
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed May 11 22:39:34 2022 +1000

<span style='display:block; white-space:pre;color:#404040;'>    clear failcache for ports triggering build
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Allows e.g. retrying failed universal builds of dependencies.
</span>---
 tools/failcache.tcl          |  8 ++++++++
 tools/sort-with-subports.tcl | 23 ++++++++++++++---------
 2 files changed, 22 insertions(+), 9 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/tools/failcache.tcl b/tools/failcache.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 8c11ae3..3585cb5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/tools/failcache.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/tools/failcache.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -63,3 +63,11 @@ proc failcache_update {portname porturl canonical_variants failed} {
</span>         file delete -force $entry_path
     }
 }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# clear all entries for portname
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc failcache_clear_all {portname} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach f [glob -directory $::failcache_dir -nocomplain "${portname} *"] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        puts stderr "clearing failcache entry: [file tail $f]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        file delete -force $f
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/tools/sort-with-subports.tcl b/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 8afae7f..48b709f 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/tools/sort-with-subports.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -197,15 +197,20 @@ while {[llength $todo] > 0} {
</span> 
         array set portinfo [lindex $result 1]
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {[info exists inputports($p)] && [info exists portinfo(subports)]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            foreach subport $portinfo(subports) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                set splower [string tolower $subport]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                if {![info exists portdepinfo($splower)]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    lappend todo $splower
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                if {![info exists requestedports($splower)]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set outputports($splower) 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set requestedports($splower) 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[info exists inputports($p)]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {$failcache_dir ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                failcache_clear_all $portinfo(name)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[info exists portinfo(subports)]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                foreach subport $portinfo(subports) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set splower [string tolower $subport]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    if {![info exists portdepinfo($splower)]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        lappend todo $splower
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    if {![info exists requestedports($splower)]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set outputports($splower) 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        set requestedports($splower) 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    }
</span>                 }
             }
         }
</pre><pre style='margin:0'>

</pre>