CINXE.COM
Semi Structured 路 semi-structured
<!DOCTYPE html><html data-developer-mode="1"><head><meta charset="UTF-8" /><title>Semi Structured 路 semi-structured</title><meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" /><link rel="mask-icon" color="#3D4B67" href="https://we.phorge.it/res/1623276246T/phabricator/db699fe1/rsrc/favicons/mask-icon.svg" /><link rel="apple-touch-icon" sizes="76x76" href="https://we.phorge.it/file/data/tkywcjf5mn4nry3mootv/PHID-FILE-a3fplzgoydndmjiryfus/favicon" /><link rel="apple-touch-icon" sizes="120x120" href="https://we.phorge.it/file/data/aqbmtxof57h476xwq3a6/PHID-FILE-xifb26jg3jaa73fr66jz/favicon" /><link rel="apple-touch-icon" sizes="152x152" href="https://we.phorge.it/file/data/wi74y545yqyztf4swvva/PHID-FILE-4mqcym3ja4zns5imr6nd/favicon" /><link rel="icon" id="favicon" href="https://we.phorge.it/file/data/qsmnldcb3vzxgaes3zge/PHID-FILE-jjurena7gu3ouojuoot7/favicon" /><meta name="referrer" content="no-referrer" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1623276246T/defaultX/phabricator/b89e8c6c/rsrc/css/application/diffusion/diffusion-repository.css" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1623276246T/defaultX/phabricator/e46232d6/rsrc/css/application/diffusion/diffusion.css" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1708772430T/defaultX/phabricator/354279ea/diffusion.pkg.css" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1723012260T/defaultX/phabricator/ac619266/core.pkg.css" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1623276246T/defaultX/phabricator/68513c34/rsrc/css/phui/phui-left-right.css" /><link rel="stylesheet" type="text/css" href="https://we.phorge.it/res/1623276246T/defaultX/phabricator/b68a76e4/rsrc/css/application/diffusion/diffusion-readme.css" /><script type="text/javascript" src="https://we.phorge.it/res/1623276246T/defaultX/phabricator/98e6504a/rsrc/externals/javelin/core/init.js"></script></head><body class="device-desktop platform-windows phui-theme-blindigo"><div class="main-page-frame" id="main-page-frame"><div id="phabricator-standard-page" class="phabricator-standard-page"><div class="phabricator-main-menu phabricator-main-menu-background" id="UQ0_45"><a class="phabricator-main-menu-search-button phabricator-expand-application-menu" data-sigil="jx-toggle-class" data-meta="0_50"><span class="phabricator-menu-button-icon phui-icon-view phui-font-fa fa-search" id="UQ0_46"></span></a><a class="phabricator-main-menu-brand" href="/"><span class="aural-only">Home</span><span class="phabricator-main-menu-project-logo" style="background-size: 40px 40px; background-position: 0 0; background-image: url(https://we.phorge.it/file/data/kpcw6c366jabyvi3mjmf/PHID-FILE-xbeniykz2qsowfcew7jw/logo)"></span><span class="phabricator-wordmark">Phorge</span></a><ul class="phui-list-view phabricator-search-menu"><li class="phui-list-item-view phui-list-item-type-link phabricator-main-menu-search"><div class="" data-sigil=""><form action="/search/" method="POST"><input type="hidden" name="__csrf__" value="B@jpjitu5396f341ca033b3034" /><input type="hidden" name="__form__" value="1" /><div class="phabricator-main-menu-search-container"><input type="text" name="query" id="UQ0_47" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" /><button id="UQ0_49" class="phui-icon-view phui-font-fa fa-search"><span class="aural-only">Search</span></button><button class="button dropdown has-icon phui-button-default phabricator-main-menu-search-dropdown" id="UQ0_50" data-sigil="global-search-dropdown" data-meta="0_51"><span class="aural-only">Configure Global Search</span><span class="visual-only phui-icon-view phui-font-fa fa-globe" data-sigil="global-search-dropdown-icon" data-meta="0_52" aria-hidden="true"></span><span class="caret"></span></button><input type="hidden" name="search:scope" value="all" data-sigil="global-search-dropdown-input" /><input type="hidden" id="UQ0_51" name="search:application" value="PhabricatorDiffusionApplication" data-sigil="global-search-dropdown-app" /><input type="hidden" name="search:primary" value="true" /><div id="UQ0_48" class="phabricator-main-menu-search-target"></div></div></form></div></li></ul><a class=" phabricator-core-login-button" href="https://we.phorge.it/auth/start/?next=%2Fsource%2Fsemi-structured%2F" role="button"><div class="phui-button-text">Log In</div></a></div><div id="phabricator-standard-page-body" class="phabricator-standard-page-body"><div class="phui-crumbs-view phui-crumbs-border"><a href="/diffusion/" class="phui-crumb-view phui-crumb-has-icon"><span class="visual-only phui-icon-view phui-font-fa fa-code" data-meta="0_53" aria-hidden="true"></span><span class="phui-crumb-name"> Diffusion</span> </a><span class="visual-only phui-icon-view phui-font-fa fa-angle-right phui-crumb-divider phui-crumb-view" data-meta="0_54" aria-hidden="true"></span><span class="phui-crumb-view phabricator-last-crumb"><span class="phui-crumb-name"> Semi Structured (master)</span> </span></div><div class="phui-two-column-view phui-side-column-right with-tabs "><div class="phui-two-column-container"><div class="phui-two-column-header"><div class="phui-header-shell phui-profile-header phui-header-tall diffusion-profile-header"><h1 class="phui-header-view"><div class="phui-header-row"><div class="phui-header-col1"><a href="/diffusion/picture/6/" class="phui-header-image-href"><span class="phui-header-image" style="background-image: url(https://we.phorge.it/file/data/cydeex6p5dy637tkbhwh/PHID-FILE-mz6ky5fwt52pifonsvvd/profile)"></span><span class="phui-header-image-edit">Edit</span></a></div><div class="phui-header-col2"><span class="phui-header-header">Semi Structured</span><div class="phui-header-subheader"><span class="phui-tag-view phui-tag-type-shade phui-tag-bluegrey phui-tag-shade phui-tag-icon-view "><span class="phui-tag-core "><span class="visual-only phui-icon-view phui-font-fa fa-check" data-meta="0_44" aria-hidden="true"></span>Active</span></span><span class="policy-header-callout"><span class="visual-only phui-icon-view phui-font-fa fa-globe bluegrey" data-meta="0_43" aria-hidden="true"></span><a class="policy-link" href="/policy/explain/PHID-REPO-iqg6b5khrwkc667o6zxk/view/" data-sigil="workflow">Public</a></span></div></div><div class="phui-header-col3"><ul class="phui-header-action-list"><li class="phui-header-action-item"><div class="diffusion-search-form-view"><form method="GET" action="/source/semi-structured/browse/master/" class="diffusion-search-form" id="diffusion-search-form" data-sigil="diffusion-search-form"><input type="text" id="diffusion-search-input" name="grep" class="diffusion-search-input" placeholder="Pattern Search" data-sigil="diffusion-search-input" /></form></div></li></ul></div></div></h1></div></div><div class="phui-two-column-tabs"><ul class="phui-list-view phui-list-tabbar "><li class="phui-list-item-view phui-list-item-type-link phui-list-item-has-icon phui-list-item-selected "><a href="/source/semi-structured/repository/master/" class="phui-list-item-href" data-sigil=""><span class="visual-only phui-icon-view phui-font-fa fa-home phui-list-item-icon" data-meta="0_45" aria-hidden="true"></span><span class="phui-list-item-name">Home</span></a></li><li class="phui-list-item-view phui-list-item-type-link phui-list-item-has-icon "><a href="/source/semi-structured/browse/master/" class="phui-list-item-href" data-sigil=""><span class="visual-only phui-icon-view phui-font-fa fa-code phui-list-item-icon" data-meta="0_46" aria-hidden="true"></span><span class="phui-list-item-name">Code</span></a></li><li class="phui-list-item-view phui-list-item-type-link phui-list-item-has-icon "><a href="/source/semi-structured/branches/master/" class="phui-list-item-href" data-sigil=""><span class="visual-only phui-icon-view phui-font-fa fa-code-fork phui-list-item-icon" data-meta="0_47" aria-hidden="true"></span><span class="phui-list-item-name">Branches</span></a></li><li class="phui-list-item-view phui-list-item-type-link phui-list-item-has-icon "><a href="/source/semi-structured/tags/master/" class="phui-list-item-href" data-sigil=""><span class="visual-only phui-icon-view phui-font-fa fa-tags phui-list-item-icon" data-meta="0_48" aria-hidden="true"></span><span class="phui-list-item-name">Tags</span></a></li><li class="phui-list-item-view phui-list-item-type-link phui-list-item-has-icon "><a href="/source/semi-structured/history/master/" class="phui-list-item-href" data-sigil=""><span class="visual-only phui-icon-view phui-font-fa fa-history phui-list-item-icon" data-meta="0_49" aria-hidden="true"></span><span class="phui-list-item-name">History</span></a></li></ul></div><div class="phui-two-column-content"><div class="phui-two-column-row grouped"><div class="phui-side-column"></div><div class="phui-main-column"></div></div></div><div class="phui-two-column-content phui-two-column-footer"><div class="phui-left-right-view diffusion-action-bar"><div class="phui-lr-container"><div class="phui-left-view"><div class="phui-box diffusion-profile-locate"><div class="phui-form-view"><div class="aphront-form-control grouped aphront-form-control-typeahead aphront-form-control-nolabel"><div class="aphront-form-input"><div style="position: relative;" id="locate-control"><input type="text" placeholder="Locate File" autocomplete="off" id="locate-input" /></div></div></div></div></div></div><div class="phui-right-view"><a class="button button-grey dropdown has-icon has-text phui-button-default mmr" role="button" data-sigil="phui-dropdown-menu" data-meta="0_10"><span class="visual-only phui-icon-view phui-font-fa fa-code-fork" data-meta="0_11" aria-hidden="true"></span><div class="phui-button-text">Branch: master</div><span class="caret"></span></a><a class="button button-grey dropdown has-icon has-text phui-button-default mmr" role="button" data-sigil="phui-dropdown-menu" data-meta="0_12"><span class="visual-only phui-icon-view phui-font-fa fa-bars" data-meta="0_13" aria-hidden="true"></span><div class="phui-button-text">Actions</div><span class="caret"></span></a><a class="button button-green has-icon has-text phui-button-default " href="/source/semi-structured/clone/" role="button" data-sigil="workflow"><span class="visual-only phui-icon-view phui-font-fa fa-download" data-meta="0_14" aria-hidden="true"></span><div class="phui-button-text">Clone</div></a></div></div></div><div class="phui-box phui-box-border phui-object-box mlt mll mlr diffusion-profile-description"><div class="phui-property-list-section"><div class="phui-property-list-text-content"><div class="phabricator-remarkup"><p>An extension that allows storing and managing objects that are not fully defined, and allowing the definition to easily evolve over time.</p></div></div></div></div><div class="phui-box phui-box-border phui-object-box mlt mll mlr phui-box-blue-property diffusion-mobile-view diffusion-readme-view"><div class="phui-header-shell diffusion-panel-header-view"><h1 class="phui-header-view"><div class="phui-header-row"><div class="phui-header-col2"><span class="phui-header-header">README.md</span></div><div class="phui-header-col3"></div></div></h1></div><div class="ml"><div class="phabricator-remarkup"><h2 class="remarkup-header"><a name="semi-structured-application"></a>Semi-Structured - Application for managing evolving datasets</h2> <p>This Phorge extension is designed to allow storing and managing objects that are not fully defined, and allowing the definition to easily evolve over time.</p> <p>Data consists of "Instance" and "Types" (classes). Each object in an instance of a single Type. Types define the required data (fields) of their instances.</p> <p>Instance and Types have all the features of other Phorge objects - comments, mentions, notifications, transactions, search and policies.</p> <p>Objects have</p> <ul class="remarkup-list"> <li class="remarkup-list-item">ID</li> <li class="remarkup-list-item">Title and Free text</li> <li class="remarkup-list-item">Free, structured data (JSON blob, without a schema)</li> <li class="remarkup-list-item">Custom fields, defined in the Class. These are typed, may have validation, and may be searchable and may hold references to other Phorge objects.</li> </ul> <p>Custom fields are defined using Phorge's <a href="https://we.phorge.it/book/phorge/article/custom_fields/" class="remarkup-link" rel="noreferrer">Custom Fields</a> mechanism, which is quite capable. If needed, Advanced Custom Fields may be added by writing PHP code.</p> <hr class="remarkup-hr" /> <p>Installation:</p> <ul class="remarkup-list"> <li class="remarkup-list-item"><tt class="remarkup-monospaced">git clone</tt> this repository somewhere safe</li> <li class="remarkup-list-item">In Phorge's <tt class="remarkup-monospaced">conf/local/local.json</tt> add the path to the <tt class="remarkup-monospaced">src/</tt> dir to the entry <tt class="remarkup-monospaced">load-libraries</tt>, something like this:</li> </ul> <div class="remarkup-code-block" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code">... "load-libraries": [ "/somewhere/safe/semi-structured/src/" ], ...</pre></div> <ul class="remarkup-list"> <li class="remarkup-list-item">Run Phorge's <tt class="remarkup-monospaced">bin/storage upgrade</tt> and restart Phorge.</li> </ul> <p>In <tt class="remarkup-monospaced">docs/examples/xkcd</tt> you'll find a script that loads some example data:</p> <div class="remarkup-code-block" data-code-lang="console" data-sigil="remarkup-code-block"><pre class="remarkup-code"><span class="gp">$ ./docs/examples/xkcd/load-xkcd.py <your-server-address></span></pre></div></div></div></div><div class="phui-box phui-box-border phui-object-box mlt mll mlr phui-object-box-collapsed phui-box-blue-property diffusion-mobile-view"><div class="phui-header-shell "><h1 class="phui-header-view"><div class="phui-header-row"><div class="phui-header-col2"><span class="phui-header-header"><a href="/source/semi-structured/browse/master/" class="diffusion-view-browse-header">Semi Structured (master)</a></span></div><div class="phui-header-col3"></div></div></h1></div><div class="diffusion-browse-table"><div class="aphront-table-wrap"><table class="aphront-table-view"><tr><td><a href="/source/semi-structured/browse/master/.arcconfig" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_15" aria-hidden="true"></span><span class="diffusion-browse-name">.arcconfig</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_20"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_19"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/.arcconfig" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_16"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_17" aria-hidden="true"></span></a></td></tr><tr class="alt"><td><a href="/source/semi-structured/browse/master/.arclint" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_18" aria-hidden="true"></span><span class="diffusion-browse-name">.arclint</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_23"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_22"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/.arclint" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_19"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_20" aria-hidden="true"></span></a></td></tr><tr><td><a href="/source/semi-structured/browse/master/.arcunit" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_21" aria-hidden="true"></span><span class="diffusion-browse-name">.arcunit</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_26"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_25"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/.arcunit" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_22"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_23" aria-hidden="true"></span></a></td></tr><tr class="alt"><td><a href="/source/semi-structured/browse/master/.gitignore" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_24" aria-hidden="true"></span><span class="diffusion-browse-name">.gitignore</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_29"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_28"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/.gitignore" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_25"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_26" aria-hidden="true"></span></a></td></tr><tr><td><a href="/source/semi-structured/browse/master/LICENSE" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_27" aria-hidden="true"></span><span class="diffusion-browse-name">LICENSE</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_32"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_31"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/LICENSE" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_28"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_29" aria-hidden="true"></span></a></td></tr><tr class="alt"><td><a href="/source/semi-structured/browse/master/README.md" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-file-text-o bluetext" data-meta="0_30" aria-hidden="true"></span><span class="diffusion-browse-name">README.md</span></a></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_35"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_34"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/README.md" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_31"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_32" aria-hidden="true"></span></a></td></tr><tr><td><strong><a href="/source/semi-structured/browse/master/docs/" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-folder bluetext" data-meta="0_33" aria-hidden="true"></span><span class="diffusion-browse-name">docs/</span></a></strong></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_38"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_37"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/docs/" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_34"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_35" aria-hidden="true"></span></a></td></tr><tr class="alt"><td><strong><a href="/source/semi-structured/browse/master/resources/" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-folder bluetext" data-meta="0_36" aria-hidden="true"></span><span class="diffusion-browse-name">resources/</span></a></strong></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_41"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_40"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/resources/" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_37"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_38" aria-hidden="true"></span></a></td></tr><tr><td><strong><a href="/source/semi-structured/browse/master/src/" class="diffusion-link-icon"><span class="visual-only phui-icon-view phui-font-fa fa-folder bluetext" data-meta="0_39" aria-hidden="true"></span><span class="diffusion-browse-name">src/</span></a></strong></td><td class="wide commit-detail aphront-table-view-nodevice"><span id="UQ0_44"></span></td><td class="right aphront-table-view-nodevice"><span id="UQ0_43"></span></td><td class="right narrow aphront-table-view-nodevice"><a href="/source/semi-structured/history/master/src/" class="diffusion-link-icon" data-sigil="has-tooltip" data-meta="0_40"><span class="visual-only phui-icon-view phui-font-fa fa-history bluegrey" data-meta="0_41" aria-hidden="true"></span></a></td></tr></table></div></div></div></div></div></div><div class="phabricator-standard-page-footer grouped"><span>Content licensed under Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) unless otherwise noted; code licensed under Apache 2.0 or other open source licenses.</span> 路 <a href="https://creativecommons.org/licenses/by-sa/4.0/deed">CC BY-SA 4.0</a> 路 <a href="https://we.phorge.it/source/phorge/browse/master/LICENSE">Apache 2.0</a></div></div></div></div><script type="text/javascript" src="https://we.phorge.it/res/1708772430T/defaultX/phabricator/4c77f259/rsrc/js/application/diffusion/behavior-locate-file.js"></script><script type="text/javascript" src="https://we.phorge.it/res/1686392486T/defaultX/phabricator/2eeda9e0/core.pkg.js"></script><script type="text/javascript" src="https://we.phorge.it/res/1691770834T/defaultX/phabricator/6c798a10/rsrc/js/application/diffusion/DiffusionLocateFileSource.js"></script><script type="text/javascript" src="https://we.phorge.it/res/1623276246T/defaultX/phabricator/78c9885d/diffusion.pkg.js"></script><data data-javelin-init-kind="merge" data-javelin-init-data="{"block":0,"data":[[],[],[],[],[],[],[],{"itemIDs":["UQ0_13","UQ0_14"],"caretID":"UQ0_12"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_1\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/source\/semi-structured\/repository\/master\/\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code-fork phabricator-action-view-icon\" data-meta=\"0_0\" aria-hidden=\"true\"\u003e\u003c\/span\u003emaster\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_3\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/source\/semi-structured\/manage\/\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-cogs phabricator-action-view-icon\" data-meta=\"0_1\" aria-hidden=\"true\"\u003e\u003c\/span\u003eManage Repository\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_5\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/diffusion\/pushlog\/?repositories=PHID-REPO-iqg6b5khrwkc667o6zxk\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-upload phabricator-action-view-icon\" data-meta=\"0_2\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Push Logs\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_7\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/diffusion\/synclog\/?repositories=PHID-REPO-iqg6b5khrwkc667o6zxk\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-exchange phabricator-action-view-icon\" data-meta=\"0_3\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Sync Logs\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_9\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/diffusion\/pulllog\/?repositories=PHID-REPO-iqg6b5khrwkc667o6zxk\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-download phabricator-action-view-icon\" data-meta=\"0_4\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Pull Logs\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_11\" class=\"phabricator-action-view phabricator-action-view-disabled phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/flag\/edit\/PHID-REPO-iqg6b5khrwkc667o6zxk\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-flag grey phabricator-action-view-icon\" data-meta=\"0_5\" aria-hidden=\"true\"\u003e\u003c\/span\u003eFlag For Later\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_15\" class=\"phabricator-action-view phabricator-action-view-submenu phabricator-action-view-href action-has-icon\" style=\"\" data-sigil=\"phui-submenu\" data-meta=\"0_7\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"keep-open\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-magic phabricator-action-view-icon\" data-meta=\"0_6\" aria-hidden=\"true\"\u003e\u003c\/span\u003eAdvanced\/Developer...\u003cspan class=\"caret-right\" id=\"UQ0_12\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_13\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"display: none; margin-left: 16px;\"\u003e\u003ca href=\"\/search\/handle\/PHID-REPO-iqg6b5khrwkc667o6zxk\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-asterisk phabricator-action-view-icon\" data-meta=\"0_8\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Handle\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_14\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"display: none; margin-left: 16px;\"\u003e\u003ca href=\"\/search\/hovercard\/?names=PHID-REPO-iqg6b5khrwkc667o6zxk\" class=\"phabricator-action-view-item\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-address-card-o phabricator-action-view-icon\" data-meta=\"0_9\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Hovercard\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],{"tip":"History","align":"E"},[],[],[],[],[],[],[],[],[],{"map":{"UQ0_45":"phabricator-search-menu-expanded","UQ0_46":"menu-icon-selected"}},{"items":[{"name":"Search"},{"icon":"fa-globe","name":"All Documents","value":"all"},{"icon":"fa-code","name":"Current Application","value":"application"},{"name":"Saved Queries"},{"icon":"fa-certificate","name":"Open Documents","value":"open"},{"icon":"fa-certificate","name":"Open Tasks","value":"open-tasks"},{"name":"More Options"},{"icon":"fa-search-plus","name":"Advanced Search","href":"\/search\/query\/advanced\/"},{"icon":"fa-book","name":"User Guide: Search","href":"https:\/\/we.phorge.it\/diviner\/find\/?name=Search%20User%20Guide&type=article&jump=1"}],"icon":"fa-globe","value":"all"},[],[],[]]}"></data><data data-javelin-init-kind="behaviors" data-javelin-init-data="{"refresh-csrf":[{"tokenName":"__csrf__","header":"X-Phabricator-Csrf","viaHeader":"X-Phabricator-Via","current":"B@jpjitu5396f341ca033b3034"}],"history-install":[]}"></data><data data-javelin-init-kind="behaviors" data-javelin-init-data="{"diffusion-locate-file":[{"controlID":"locate-control","inputID":"locate-input","symbolicCommit":null,"browseBaseURI":"\/source\/semi-structured\/browse\/master\/","uri":"\/source\/semi-structured\/pathtree\/master\/"}],"phui-dropdown-menu":[],"phui-submenu":[],"phabricator-tooltips":[],"diffusion-pull-lastmodified":[{"uri":"\/source\/semi-structured\/lastmodified\/master\/;ef927d616f71e1f6be8c83f8b176fb7fb7e03646","map":{".arcconfig":{"lint":"UQ0_18","date":"UQ0_19","details":"UQ0_20"},".arclint":{"lint":"UQ0_21","date":"UQ0_22","details":"UQ0_23"},".arcunit":{"lint":"UQ0_24","date":"UQ0_25","details":"UQ0_26"},".gitignore":{"lint":"UQ0_27","date":"UQ0_28","details":"UQ0_29"},"LICENSE":{"lint":"UQ0_30","date":"UQ0_31","details":"UQ0_32"},"README.md":{"lint":"UQ0_33","date":"UQ0_34","details":"UQ0_35"},"docs\/":{"lint":"UQ0_36","date":"UQ0_37","details":"UQ0_38"},"resources\/":{"lint":"UQ0_39","date":"UQ0_40","details":"UQ0_41"},"src\/":{"lint":"UQ0_42","date":"UQ0_43","details":"UQ0_44"}}}],"workflow":[],"lightbox-attachments":[],"aphront-form-disable-on-submit":[],"toggle-class":[],"phabricator-gesture":[],"device":[],"high-security-warning":[{"show":false,"uri":"\/auth\/session\/downgrade\/","message":"Your session is in high security mode. When you finish using it, click here to leave."}],"phabricator-keyboard-shortcuts":[{"helpURI":"\/help\/keyboardshortcut\/","searchID":"UQ0_47","pht":{"\/":"Give keyboard focus to the search box.","?":"Show keyboard shortcut help for the current page."}}],"phabricator-search-typeahead":[{"id":"UQ0_48","input":"UQ0_47","button":"UQ0_49","selectorID":"UQ0_50","applicationID":"UQ0_51","defaultApplicationIcon":"fa-dot-circle-o","appScope":"application","src":"\/typeahead\/class\/PhabricatorSearchDatasource\/","limit":10,"placeholder":"Search","scopeUpdateURI":"\/settings\/adjust\/?key=search-scope"}],"quicksand-blacklist":[{"patterns":["\/phame\/live\/.*","\/conpherence\/.*","\/Z\\d+","\/file\/(data|download)\/.*","\/phortune\/.*","\/auth\/.*"]}]}"></data></body></html>