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

</pre>
<p><a href="https://github.com/macports/macports-contrib/commit/ab5d333333371b51cb82a329d647679140dd7e33">https://github.com/macports/macports-contrib/commit/ab5d333333371b51cb82a329d647679140dd7e33</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 ab5d333  Add portindex2json script
</span>ab5d333 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit ab5d333333371b51cb82a329d647679140dd7e33
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed May 3 06:41:58 2017 +1000

<span style='display:block; white-space:pre;color:#404040;'>    Add portindex2json script
</span>---
 portindex2json/portindex2json.tcl | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/portindex2json/portindex2json.tcl b/portindex2json/portindex2json.tcl
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9f72aa2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/portindex2json/portindex2json.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,30 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Script for converting the metadata in the PortIndex to 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# a list of JSON objects.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Written by Joshua Root <jmr@macports.org>, 2017
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Requires: tclsh with the tcllib 'json' package.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Usage: tclsh portindex2json.tcl < path/to/PortIndex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# To the extent possible under law, the author(s) have dedicated all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# copyright and related and neighboring rights to this software to the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# public domain worldwide. This software is distributed without any
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# warranty.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# <https://creativecommons.org/publicdomain/zero/1.0/>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+package require json::write
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set fd stdin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+while {[gets $fd line] >= 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[llength $line] != 2} {
</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;'>+    set len [lindex $line 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set line [read $fd $len]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    array unset portinfo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    array set portinfo $line
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    array unset json_portinfo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach key [array names portinfo] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set json_portinfo($key) [::json::write string $portinfo($key)]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    lappend objects [::json::write object {*}[array get json_portinfo]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+puts [::json::write array {*}$objects]
</span></pre><pre style='margin:0'>

</pre>