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

</pre>
<p><a href="https://github.com/macports/macports-base/commit/11e3ce3715ccf27d1393112ef5d9a5600bf93943">https://github.com/macports/macports-base/commit/11e3ce3715ccf27d1393112ef5d9a5600bf93943</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 11e3ce3715ccf27d1393112ef5d9a5600bf93943
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Tue Mar 5 23:15:00 2024 +1100

<span style='display:block; white-space:pre;color:#404040;'>    registry2.0: global cleanup
</span>---
 src/port1.0/portextract.tcl       |  4 +--
 src/registry2.0/portimage.tcl     | 20 +++++++------
 src/registry2.0/portuninstall.tcl | 42 +++++++++++++--------------
 src/registry2.0/registry.tcl      | 60 +++++++++++++++++++--------------------
 src/registry2.0/registry_util.tcl |  4 +--
 5 files changed, 66 insertions(+), 64 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portextract.tcl b/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 760e9f4e6..edfe1a38c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portextract.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,7 +125,7 @@ proc portextract::extract_start {args} {
</span> }
 
 proc portextract::extract_main {args} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global filespath extract.dir use_dmg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global UI_PREFIX filespath extract.dir use_dmg
</span> 
     if {![exists distfiles] && ![exists extract.only]} {
         # nothing to do
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -133,7 +133,7 @@ proc portextract::extract_main {args} {
</span>     }
 
     foreach distfile [option extract.only] {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_info "$::UI_PREFIX [format [msgcat::mc "Extracting %s"] $distfile]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_info "$UI_PREFIX [format [msgcat::mc "Extracting %s"] $distfile]"
</span>         if {[file exists $filespath/$distfile]} {
             option extract.args "'$filespath/$distfile'"
         } else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/registry2.0/portimage.tcl b/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 54b3dd776..24b78d3db 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/registry2.0/portimage.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,8 +41,6 @@ package require Pextlib 1.0
</span> 
 package require Tclx
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set UI_PREFIX "--> "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # Port Images are installations of the destroot of a port into a compressed
 # tarball in ${macports::registry.path}/software/${name}.
 # They allow the user to install multiple versions of the same port, treating
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -64,6 +62,7 @@ namespace eval portimage {
</span> 
 variable force 0
 variable noexec 0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+variable UI_PREFIX {---> }
</span> 
 # takes a composite version spec rather than separate version,revision,variants
 proc activate_composite {name {v ""} {optionslist ""}} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -79,6 +78,7 @@ proc activate_composite {name {v ""} {optionslist ""}} {
</span> proc activate {name {version ""} {revision ""} {variants 0} {options ""}} {
     variable force
     variable noexec
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    variable UI_PREFIX
</span> 
     if {[dict exists $options ports_force] && [string is true -strict [dict get $options ports_force]] } {
         set force 1
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -137,7 +137,7 @@ proc activate {name {version ""} {revision ""} {variants 0} {options ""}} {
</span>             }
         }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_msg "$::UI_PREFIX [format [msgcat::mc "Activating %s @%s"] $name $specifier]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "$UI_PREFIX [format [msgcat::mc "Activating %s @%s"] $name $specifier]"
</span> 
         _activate_contents $requested $rename_list
     } finally {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -160,6 +160,7 @@ proc deactivate_composite {name {v ""} {optionslist ""}} {
</span> }
 
 proc deactivate {name {version ""} {revision ""} {variants 0} {options ""}} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    variable UI_PREFIX
</span> 
     if {[dict exists $options ports_force] && [string is true -strict [dict get $options ports_force]] } {
         # this not using the namespace variable is correct, since activate
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -246,7 +247,7 @@ proc deactivate {name {version ""} {revision ""} {variants 0} {options ""}} {
</span>         }
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    ui_msg "$::UI_PREFIX [format [msgcat::mc "Deactivating %s @%s"] $name $specifier]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_msg "$UI_PREFIX [format [msgcat::mc "Deactivating %s @%s"] $name $specifier]"
</span> 
     try {
         _deactivate_contents $requested [$requested files] $force
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -256,8 +257,7 @@ proc deactivate {name {version ""} {revision ""} {variants 0} {options ""}} {
</span> }
 
 proc _check_registry {name version revision variants {return_all 0}} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set searchkeys $name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set searchkeys [list $name]
</span>     set composite_spec ""
     if {$version ne ""} {
         lappend searchkeys $version
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -275,10 +275,11 @@ proc _check_registry {name version revision variants {return_all 0}} {
</span>     }
 
     if { [llength $ilist] > 1 } {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        variable UI_PREFIX
</span>         set portilist [list]
         set msg "The following versions of $name are currently installed:"
         if {[macports::ui_isset ports_noninteractive]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_msg "$::UI_PREFIX [msgcat::mc $msg]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "$UI_PREFIX [msgcat::mc $msg]"
</span>         }
         foreach i $ilist {
             set portstr [format "%s @%s_%s%s" [$i name] [$i version] [$i revision] [$i variants]]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -289,7 +290,7 @@ proc _check_registry {name version revision variants {return_all 0}} {
</span>             if {[info exists macports::ui_options(questions_singlechoice)]} {
                 lappend portilist "$portstr"
             } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                ui_msg "$::UI_PREFIX     $portstr"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                ui_msg "$UI_PREFIX     $portstr"
</span>             }
         }
         if {[info exists macports::ui_options(questions_singlechoice)]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -425,7 +426,8 @@ proc extract_archive_to_tmpdir {location} {
</span>                 # Don't use if not running as root, due to bugs:
                 # The system bsdtar on 10.15 suffers from https://github.com/libarchive/libarchive/issues/497
                 # Later versions fixed that problem but another remains: https://github.com/libarchive/libarchive/issues/1415 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                if {${::macports::hfscompression} && [getuid] == 0 &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                global macports::hfscompression
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                if {${hfscompression} && [getuid] == 0 &&
</span>                         ![catch {macports::binaryInPath bsdtar}] &&
                         ![catch {exec bsdtar -x --hfsCompression < /dev/null >& /dev/null}]} {
                     ui_debug "Using bsdtar with HFS+ compression (if valid)"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/registry2.0/portuninstall.tcl b/src/registry2.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index e3551b0b2..ff70a8a81 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/registry2.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/registry2.0/portuninstall.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,10 +36,10 @@ package require registry 1.0
</span> package require registry2 2.0
 package require registry_util 2.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set UI_PREFIX "---> "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> namespace eval registry_uninstall {
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+variable UI_PREFIX {---> }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # generate list of all dependencies of the port
 proc generate_deplist {port {optslist ""}} {
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,7 +74,7 @@ proc generate_deplist {port {optslist ""}} {
</span>             set porturl [dict get $depportinfo porturl]
             set variations [dict create]
             # Relies on all negated variants being at the end of requested_variants
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set minusvariant [lrange [split [registry::property_retrieve $port requested_variants] -] 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set minusvariant [lrange [split [$port requested_variants] -] 1 end]
</span>             set plusvariant [lrange [split [$port variants] +] 1 end]
             foreach v $plusvariant {
                 dict set variations $v "+"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -131,17 +131,16 @@ proc uninstall_composite {portname {v ""} {options ""}} {
</span> }
 
 proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    variable UI_PREFIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {[dict exists $options subport]} {
         # don't want this set when calling registry::run_target
         dict unset options subport
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {![info exists ::uninstall.force]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set ::uninstall.force no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # If global forcing is on, make it the same as a local force flag.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[dict exists $options ports_force] && [string is true -strict [dict get $options ports_force]]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set ::uninstall.force yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[dict exists $options ports_force]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         set force [dict get $options ports_force]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set force no
</span>     }
     # if no-exec is set for uninstall, set for deactivate too
     if {[dict exists $options ports_uninstall_no-exec]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -166,7 +165,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>         set portname [[lindex $ilist 0] name]
         set msg "The following versions of $portname are currently installed:"
         if {[macports::ui_isset ports_noninteractive]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_msg "$::UI_PREFIX [msgcat::mc $msg]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "$UI_PREFIX [msgcat::mc $msg]"
</span>         }
         set sortedlist [lsort -command cmp_regrefs $ilist]
         foreach i $sortedlist {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -178,14 +177,14 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>             if {[info exists macports::ui_options(questions_multichoice)]} {
                 lappend portilist "$portstr"
             } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                ui_msg "$::UI_PREFIX     $portstr"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                ui_msg "$UI_PREFIX     $portstr"
</span>             }
         }
         if {[info exists macports::ui_options(questions_multichoice)]} {
             set retstring [$macports::ui_options(questions_multichoice) $msg "Choice_Q2" $portilist]
             foreach index $retstring {
                 set uport [lindex $sortedlist $index]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                uninstall [$uport name] [$uport version] [$uport revision] [$uport variants]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                uninstall [$uport name] [$uport version] [$uport revision] [$uport variants] $options
</span>             }
             #foreach i $ilist {
             #    registry::entry close $i
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -221,7 +220,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>             # make sure it's still installed, since a previous dep uninstall may have removed it
             if {[registry::entry exists $depport] && ([$depport state] eq "imaged" || [$depport state] eq "installed")} {
                 if {[dict exists $options ports_uninstall_no-exec] || ![registry::run_target $depport uninstall $options]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    registry_uninstall::uninstall [$depport name] [$depport version] [$depport revision] [$depport variants] $options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    uninstall [$depport name] [$depport version] [$depport revision] [$depport variants] $options
</span>                 }
             }
             #catch {registry::entry close $depport}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -231,7 +230,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>         }
     } else {
         # check its dependents
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set userinput [registry::check_dependents $port ${::uninstall.force} "uninstall"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set userinput [registry::check_dependents $port ${force} "uninstall"]
</span>         if {$userinput eq "quit"} {
             #registry::entry close $port
             return 0
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -256,7 +255,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span> 
     # note deps before we uninstall if we're going to uninstall them too (i.e. --follow-dependencies)
     if {[dict exists $options ports_uninstall_follow-dependencies] && [string is true -strict [dict get $options ports_uninstall_follow-dependencies]]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set all_dependencies [registry_uninstall::generate_deplist $port $options]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set all_dependencies [generate_deplist $port $options]
</span>     }
 
     if {[dict exists $options ports_dryrun] && [string is true -strict [dict get $options ports_dryrun]]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -266,7 +265,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>             set uports [list [list $portname $version $revision $variants]]
         }
     } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_msg "$::UI_PREFIX [format [msgcat::mc "Uninstalling %s @%s"] $portname $composite_spec]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "$UI_PREFIX [format [msgcat::mc "Uninstalling %s @%s"] $portname $composite_spec]"
</span> 
         # Get the full path to the image file
         set imagefile [$port location]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -289,7 +288,8 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>             registry::entry delete $port
         }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set portfile_path [file join ${::macports::registry.path} registry portfiles ${portname}-${version}_${revision} $portfile]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        global macports::registry.path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set portfile_path [file join ${registry.path} registry portfiles ${portname}-${version}_${revision} $portfile]
</span>         set other_entries [registry::entry search portfile $portfile name $portname version $version revision $revision]
         if {$other_entries eq {}} {
             file delete -force $portfile_path
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -299,7 +299,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>         #    registry::entry close $e
         #}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set reg_portgroups_dir [file join ${::macports::registry.path} registry portgroups]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set reg_portgroups_dir [file join ${registry.path} registry portgroups]
</span>         foreach pg $portgroups {
             set pgname [lindex $pg 0]
             set pgversion [lindex $pg 1]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -357,7 +357,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>             if {$uninstalling_this_dep} {
                 set deprefs [registry::entry imaged $dep]
                 foreach depref $deprefs {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    set depdeps [registry_uninstall::generate_deplist $depref $options]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    set depdeps [generate_deplist $depref $options]
</span>                     foreach d $depdeps {
                         if {$d ni [lrange $alldeps $j+1 end]} {
                             lappend alldeps $d 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -385,7 +385,7 @@ proc uninstall {portname {version ""} {revision ""} {variants 0} {options ""}} {
</span>                 }
             } else {
                 if {[dict exists $options ports_uninstall_no-exec] || ![registry::run_target $regref uninstall $options]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    registry_uninstall::uninstall $iname $iversion $irevision $ivariants $options
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    uninstall $iname $iversion $irevision $ivariants $options
</span>                 }
             }
             #registry::entry close $regref
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/registry2.0/registry.tcl b/src/registry2.0/registry.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 6ba0bab75..849b5f18a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/registry2.0/registry.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/registry2.0/registry.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,7 +53,7 @@ proc new_entry {name version {revision 0} {variants ""} {epoch 0} } {
</span>   # port version_revision+variants
        if {![entry_exists $name $version $revision $variants] } {
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                set ref [${macports::registry.format}::new_entry]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           set ref [${registry.format}::new_entry]
</span> 
                property_store $ref name $name
                property_store $ref version $version
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -62,7 +62,7 @@ proc new_entry {name version {revision 0} {variants ""} {epoch 0} } {
</span>           property_store $ref epoch $epoch
                property_store $ref date [clock seconds]
                property_store $ref installtype image
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                property_store $ref receipt_f ${macports::registry.format}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           property_store $ref receipt_f ${registry.format}
</span>         property_store $ref active 0
 
                return $ref
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,13 +75,13 @@ proc new_entry {name version {revision 0} {variants ""} {epoch 0} } {
</span> # through to the receipts system
 proc entry_exists {name version {revision 0} {variants ""}} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::entry_exists $name $version $revision $variants] 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::entry_exists $name $version $revision $variants] 
</span> }
 
 # Check to see if any entry exists in the registry for the given port name.
 proc entry_exists_for_name {name} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::entry_exists_for_name $name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::entry_exists_for_name $name]
</span> }
 
 # Close the registry... basically wrap the receipts systems's write process
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -95,7 +95,7 @@ proc write_entry {ref} {
</span>   set epoch [property_retrieve $ref epoch]
        set contents [property_retrieve $ref contents]
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${macports::registry.format}::write_entry $ref $name $version $revision $variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ${registry.format}::write_entry $ref $name $version $revision $variants
</span> 
 }
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -108,7 +108,7 @@ proc delete_entry {ref} {
</span>   set revision [property_retrieve $ref revision]
        set variants [property_retrieve $ref variants]
        
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${macports::registry.format}::delete_entry $name $version $revision $variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ${registry.format}::delete_entry $name $version $revision $variants
</span>   
 }
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -116,20 +116,20 @@ proc delete_entry {ref} {
</span> proc open_entry {name {version ""} {revision 0} {variants ""} {epoch ""}} {
        global macports::registry.format
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::open_entry $name $version $revision $variants $epoch]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::open_entry $name $version $revision $variants $epoch]
</span> 
 }
 
 # Store a property with the open registry entry.
 proc property_store {ref property value} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${macports::registry.format}::property_store $ref $property $value
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ${registry.format}::property_store $ref $property $value
</span> }
 
 # Retrieve a property from the open registry entry.
 proc property_retrieve {ref property} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::property_retrieve $ref $property]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::property_retrieve $ref $property]
</span> }
 
 # If only one version of the port is installed, this process returns that
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -137,8 +137,8 @@ proc property_retrieve {ref property} {
</span> proc installed {{name ""} {version ""}} {
        global macports::registry.format
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${macports::registry.format} eq "receipt_flat"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set ilist [${macports::registry.format}::installed $name $version]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${registry.format} eq "receipt_flat"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set ilist [${registry.format}::installed $name $version]
</span>         set rlist [list]
     
         foreach installed $ilist {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -152,7 +152,7 @@ proc installed {{name ""} {version ""}} {
</span>             lappend rlist [list $iname $iversion $irevision $ivariants $iactive $iepoch]
         }
     } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set rlist [${macports::registry.format}::installed $name $version]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set rlist [${registry.format}::installed $name $version]
</span>     }
     
     if { [llength $rlist] < 1 } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -175,9 +175,9 @@ proc installed {{name ""} {version ""}} {
</span> proc active {{name ""}} {
        global macports::registry.format
     
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${macports::registry.format} eq "receipt_flat"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${registry.format} eq "receipt_flat"} {
</span>         set rlist [list]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set ilist [${macports::registry.format}::installed $name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set ilist [${registry.format}::installed $name]
</span>     
         foreach installed $ilist {
             set iname [lindex $installed 0]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -192,7 +192,7 @@ proc active {{name ""}} {
</span>             }
         }
     } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set rlist [${macports::registry.format}::active $name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set rlist [${registry.format}::active $name]
</span>     }
        
        if { [llength $rlist] < 1 } {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -232,7 +232,7 @@ proc location {portname portversion} {
</span> # File Map Code
 proc open_file_map {args} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::open_file_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::open_file_map $args]
</span> }
 
 proc file_registered {file} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -244,23 +244,23 @@ proc file_registered {file} {
</span>           set cs false
        }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::file_registered $file $cs]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::file_registered $file $cs]
</span> }
 
 proc port_registered {name} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::port_registered $name]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::port_registered $name]
</span> }
 
 proc register_file {file port} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::register_file $file $port]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::register_file $file $port]
</span> }
 
 proc register_bulk_files {files port} {
        global macports::registry.format
        open_file_map
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set r [${macports::registry.format}::register_bulk_files $files $port]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set r [${registry.format}::register_bulk_files $files $port]
</span>   write_file_map
        close_file_map
        return $r
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -268,17 +268,17 @@ proc register_bulk_files {files port} {
</span> 
 proc unregister_file {file} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::unregister_file $file]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::unregister_file $file]
</span> }
 
 proc write_file_map {args} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::write_file_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::write_file_map $args]
</span> }
 
 proc close_file_map {args} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::close_file_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::close_file_map $args]
</span> }
 
 # Dependency Map Code
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -306,7 +306,7 @@ proc unregister_dependencies {name} {
</span> 
 proc open_dep_map {args} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::open_dep_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::open_dep_map $args]
</span> }
 
 ##
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -355,33 +355,33 @@ proc fileinfo_for_index {flist} {
</span> # List all ports this one depends on
 proc list_depends {name {version ""} {revision ""} {variants 0}} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::list_depends $name $version $revision $variants]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::list_depends $name $version $revision $variants]
</span> }
 
 # List all the ports that depend on this port
 proc list_dependents {name {version ""} {revision ""} {variants 0}} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::list_dependents $name $version $revision $variants]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::list_dependents $name $version $revision $variants]
</span> }
 
 proc register_dep {dep type port} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::register_dep $dep $type $port]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::register_dep $dep $type $port]
</span> }
 
 proc unregister_dep {dep type port} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::unregister_dep $dep $type $port]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::unregister_dep $dep $type $port]
</span> }
 
 proc clean_dep_map {args} {
     global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    return [${macports::registry.format}::clean_dep_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    return [${registry.format}::clean_dep_map $args]
</span> }
 
 proc write_dep_map {args} {
        global macports::registry.format
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return [${macports::registry.format}::write_dep_map $args]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return [${registry.format}::write_dep_map $args]
</span> }
 
 # acquire exclusive lock on registry, do this before modifying it or reading
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/registry2.0/registry_util.tcl b/src/registry2.0/registry_util.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index d10ed4e7f..5143fa3d5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/registry2.0/registry_util.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/registry2.0/registry_util.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -172,7 +172,7 @@ proc run_target {port target options} {
</span> 
 ## Create and configure a tdbc connection to the registry
 proc tdbc_connect {} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global registry::tdbc_connection
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    variable tdbc_connection
</span>     set reg_path [::file join ${macports::registry.path} registry registry.db]
     set tdbc_connection [tdbc::sqlite3::connection new $reg_path]
     
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -181,7 +181,7 @@ proc tdbc_connect {} {
</span> ## Delete the given dependencies for the given entry
 ## @return   true if successful, false otherwise
 proc delete_dependencies {entry deplist} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    global registry::tdbc_connection
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    variable tdbc_connection
</span>     if {![info exists tdbc_connection]} {
         tdbc_connect
     }
</pre><pre style='margin:0'>

</pre>