<pre style='margin:0'>
Rainer Müller (raimue) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/24d6f3aa49a130d13965b70c57c6f4ffd62208f6">https://github.com/macports/macports-base/commit/24d6f3aa49a130d13965b70c57c6f4ffd62208f6</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 24d6f3aa49a130d13965b70c57c6f4ffd62208f6
</span>Author: Rainer Müller <raimue@macports.org>
AuthorDate: Tue Jan 9 16:58:01 2018 +0100

<span style='display:block; white-space:pre;color:#404040;'>    Revert "Make leaves pseudo-port recursive"
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This reverts commit 14a5154087f8883f07041586ad83df26097950a6.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://lists.macports.org/pipermail/macports-dev/2017-December/037008.html
</span>---
 doc/port.1        | 13 ++++++++++++-
 doc/port.1.txt    |  3 ++-
 src/port/port.tcl | 20 ++++++++++++++++++++
 3 files changed, 34 insertions(+), 2 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/doc/port.1 b/doc/port.1
</span><span style='display:block; white-space:pre;color:#808080;'>index e30d404..24b8eec 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/doc/port.1
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/doc/port.1
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -159,7 +159,18 @@ When passing \fIportnames\fR to an \fIaction\fR, \fBport\fR recognizes various \
</span> .sp -1
 .IP \(bu 2.3
 .\}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-\fIleaves\fR: installed ports that are unrequested and that no requested ports depend on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+\fIleaves\fR: installed ports that are unrequested and have no dependents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.RE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.sp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.RS 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.ie n \{\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+\h'-04'\(bu\h'+03'\c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.\}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.el \{\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.sp -1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.IP \(bu 2.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.\}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+\fIrleaves\fR: installed ports that are unrequested and that no requested ports depend on
</span> .RE
 .sp
 Sets of ports can also be specified with \fIpseudo\-portname selectors\fR, which expand to the ports in which the value of the \fIPortfile\fR option corresponding to the selector\(cqs name (in either singular or plural form where applicable) matches the given regular expression\&. Usage is: selector:regex
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/doc/port.1.txt b/doc/port.1.txt
</span><span style='display:block; white-space:pre;color:#808080;'>index 1ec5567..cb3b859 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/doc/port.1.txt
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/doc/port.1.txt
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,7 +51,8 @@ available port tree(s). These may be used in the same way as a 'portname'.
</span>     - 'requested': installed ports that were explicitly asked for
     - 'unrequested': installed ports that were installed only to satisfy
       dependencies
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    - 'leaves': installed ports that are unrequested and that no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    - 'leaves': installed ports that are unrequested and have no dependents
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    - 'rleaves': installed ports that are unrequested and that no
</span>       requested ports depend on
 
 Sets of ports can also be specified with 'pseudo-portname selectors', which
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port/port.tcl b/src/port/port.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index e414d0b..f0b256b 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port/port.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -916,6 +916,25 @@ proc get_unrequested_ports {} {
</span> }
 
 proc get_leaves_ports {} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    set ilist {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if { [catch {set ilist [registry::installed]} result] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {$result ne "Registry error: No ports registered as installed."} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_debug $::errorInfo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            fatal "port installed failed: $result"
</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;background:#e0ffe0;'>+    registry::open_dep_map
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set results {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach i $ilist {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set iname [lindex $i 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[registry::list_dependents $iname] eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            add_to_portlist results [list name $iname version "[lindex $i 1]_[lindex $i 2]" variants [split_variants [lindex $i 3]]]
</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;background:#e0ffe0;'>+    return [portlist_sort [opIntersection $results [get_unrequested_ports]]]
</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;background:#e0ffe0;'>+proc get_rleaves_ports {} {
</span>     if { [catch {set ilist [get_unrequested_ports]} result] } {
         if {$result ne "Registry error: No ports registered as installed."} {
             ui_debug $::errorInfo
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1296,6 +1315,7 @@ proc element { resname } {
</span>         ^(inactive)(@.*)?$    -
         ^(actinact)(@.*)?$    -
         ^(leaves)(@.*)?$      -
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        ^(rleaves)(@.*)?$      -
</span>         ^(outdated)(@.*)?$    -
         ^(obsolete)(@.*)?$    -
         ^(requested)(@.*)?$   -
</pre><pre style='margin:0'>

</pre>