<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/fbaf3f46b5f7c44bcb06cbaec1d7ec8ccdf29d50">https://github.com/macports/mpbb/commit/fbaf3f46b5f7c44bcb06cbaec1d7ec8ccdf29d50</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new fbaf3f4  mirror-multi: option to check a URL for distfiles
</span>fbaf3f4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit fbaf3f46b5f7c44bcb06cbaec1d7ec8ccdf29d50
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed Mar 19 18:33:15 2025 +1100

<span style='display:block; white-space:pre;color:#404040;'>    mirror-multi: option to check a URL for distfiles
</span>---
 tools/mirror-multi.tcl | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/tools/mirror-multi.tcl b/tools/mirror-multi.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 24efac9..6685d14 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/tools/mirror-multi.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/tools/mirror-multi.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -33,6 +33,7 @@
</span> # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 package require macports
<span style='display:block; white-space:pre;background:#e0ffe0;'>+package require fetch_common
</span> 
 set ui_options(ports_verbose) yes
 if {[catch {mportinit ui_options "" ""} result]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -256,13 +257,16 @@ proc skip_mirror {mport identifier} {
</span>         # no distfiles, no need to mirror
         return 1
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global distfiles_results
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global distfiles_results check_distfiles_url distfiles_url
</span>     if {![info exists distfiles]} {
         set distfiles [list]
     }
     if {![info exists patchfiles]} {
         set patchfiles [list]
     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {$check_distfiles_url} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set dist_subdir [_mportkey $mport dist_subdir]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span>     set distpath [_mportkey $mport distpath]
     set filespath [_mportkey $mport filespath]
     set any_unmirrored 0
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -271,6 +275,12 @@ proc skip_mirror {mport identifier} {
</span>             continue
         }
         set distfile [getdistname $distfile]
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {$check_distfiles_url} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set distfile_url ${distfiles_url}${dist_subdir}/[portfetch::percent_encode $distfile]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {![catch {curl getsize $distfile_url} size] && $size > 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                continue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span>         set filepath [file join $distpath $distfile]
         if {![dict exists $distfiles_results $filepath]} {
             set any_unmirrored 1
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -402,6 +412,7 @@ set mirrorcache_dir /tmp/mirrorcache
</span> set use_cachedir yes
 set include_subports no
 set use_remotedb no
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set check_distfiles_url no
</span> while {[string match -* [lindex $argv 0]]} {
     switch -- [lindex $argv 0] {
         -c {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -409,6 +420,11 @@ while {[string match -* [lindex $argv 0]]} {
</span>             set mirrorcache_dir [lindex $argv 1]
             set argv [lrange $argv 1 end]
         }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        -d {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set check_distfiles_url yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set distfiles_url [lindex $argv 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set argv [lrange $argv 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span>         -s {
             set include_subports yes
         }
</pre><pre style='margin:0'>

</pre>