Mercurial > hg > mercurial-source
view mercurial/templates/spartan/map @ 33044:976681123416
transaction: introduce "changes" dictionary to precisely track updates
The transaction is already tracking some data intended for hooks (in
'hookargs'). However, that information is minimal as we optimise for
passing data to other processes through environment variables. There are
multiple places were we could use more complete and lower level
information locally (eg: cache update, better report of changes to
hooks, etc...).
For this purpose we introduces a 'changes' dictionary on the
transaction. It is intended to track every changes happening to the
repository (eg: new revs, bookmarks move, phases move, obs-markers,
etc).
For now we just adds the 'changes' dictionary. We'll adds more tracking
and usages over time.
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Tue, 02 May 2017 18:31:18 +0200 |
parents | 041a77a223ca |
children | 66c11a66ad1a |
line wrap: on
line source
default = 'shortlog' mimetype = 'text/html; charset={encoding}' header = header.tmpl footer = footer.tmpl search = search.tmpl changelog = changelog.tmpl shortlog = shortlog.tmpl shortlogentry = shortlogentry.tmpl graph = graph.tmpl naventry = '<a href="{url|urlescape}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> ' navshortentry = '<a href="{url|urlescape}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> ' navgraphentry = '<a href="{url|urlescape}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> ' filenaventry = '<a href="{url|urlescape}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a> ' filedifflink = '<a href="{url|urlescape}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> ' filenodelink = '<a href="{url|urlescape}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> ' filenolink = '{file|escape} ' fileellipses = '...' changelogentry = changelogentry.tmpl searchentry = changelogentry.tmpl changeset = changeset.tmpl manifest = manifest.tmpl nav = '{before%naventry} {after%naventry}' navshort = '{before%navshortentry}{after%navshortentry}' navgraph = '{before%navgraphentry}{after%navgraphentry}' filenav = '{before%filenaventry}{after%filenaventry}' direntry = ' <tr class="parity{parity}"> <td><tt>drwxr-xr-x</tt> <td> <td> <td> <a href="{url|urlescape}file/{symrev}{path|urlescape}{sessionvars%urlparameter}">{basename|escape}/</a> <a href="{url|urlescape}file/{symrev}{path|urlescape}/{emptydirs|urlescape}{sessionvars%urlparameter}"> {emptydirs|urlescape} </a>' fileentry = ' <tr class="parity{parity}"> <td><tt>{permissions|permissions}</tt> <td align=right><tt class="date">{date|isodate}</tt> <td align=right><tt>{size}</tt> <td><a href="{url|urlescape}file/{symrev}/{file|urlescape}{sessionvars%urlparameter}">{basename|escape}</a>' filerevision = filerevision.tmpl fileannotate = fileannotate.tmpl filediff = filediff.tmpl filelog = filelog.tmpl fileline = '<div class="parity{parity}"><a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</div>' filelogentry = filelogentry.tmpl # The ensures that all table cells have content (even if there # is an empty line in the annotated file), which in turn ensures that # all table rows have equal height. annotateline = ' <tr class="parity{parity}{ifeq(node, originalnode, ' thisrev')}"> <td class="annotate parity{blockparity}"> {if(blockhead, '<a href="{url|urlescape}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#l{targetline}"> {rev} </a>')} <div class="annotate-info"> <div> <a href="{url|urlescape}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#l{targetline}"> {node|short}</a> {desc|escape|firstline} </div> <div><em>{author|obfuscate}</em></div> <div>parents: {parents%annotateparent}</div> <a href="{url|urlescape}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> <a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">changeset</a> </div> </td> <td> <a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a> </td> <td><pre> {line|escape}</pre></td> </tr>' annotateparent = ' <a href="{url|urlescape}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rev}</a>' difflineplus = '<span class="plusline"><a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a>{line|escape}</span>' difflineminus = '<span class="minusline"><a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a>{line|escape}</span>' difflineat = '<span class="atline"><a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a>{line|escape}</span>' diffline = '<a class="lineno" href="#{lineid}" id="{lineid}">{linenumber}</a>{line|escape}' changesetlink = '<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>' changelogparent = ' <tr> <th class="parent">parent {rev}:</th> <td class="parent"> {changesetlink} </td> </tr>' changesetparent = ' <tr> <th class="parent">parent {rev}:</th> <td class="parent">{changesetlink}</td> </tr>' changesetparentdiff = ' <tr> <th class="parent">parent {rev}:</th> <td class="parent">{changesetlink} {ifeq(node, basenode, '(current diff)', '({difffrom})')}</td> </tr>' difffrom = '<a href="{url|urlescape}rev/{node|short}:{originalnode|short}{sessionvars%urlparameter}">diff</a>' filerevparent = ' <tr> <td class="metatag">parent:</td> <td> <a href="{url|urlescape}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}"> {rename%filerename}{node|short} </a> </td> </tr>' filerename = '{file|escape}@' filelogrename = ' <tr> <th>base:</th> <td> <a href="{url|urlescape}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}"> {file|escape}@{node|short} </a> </td> </tr>' fileannotateparent = ' <tr> <td class="metatag">parent:</td> <td> <a href="{url|urlescape}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}"> {rename%filerename}{node|short} </a> </td> </tr>' changesetchild = ' <tr> <th class="child">child {rev}:</th> <td class="child"><a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' changelogchild = ' <tr> <th class="child">child {rev}:</th> <td class="child"><a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' filerevchild = ' <tr> <td class="metatag">child:</td> <td><a href="{url|urlescape}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' fileannotatechild = ' <tr> <td class="metatag">child:</td> <td><a href="{url|urlescape}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' tags = tags.tmpl tagentry = ' <li class="tagEntry parity{parity}"> <tt class="node">{node}</tt> <a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{tag|escape}</a> </li>' branches = branches.tmpl branchentry = ' <li class="tagEntry parity{parity}"> <tt class="node">{node}</tt> <a href="{url|urlescape}shortlog/{node|short}{sessionvars%urlparameter}" class="{status}">{branch|escape}</a> </li>' diffblock = '<pre class="parity{parity}">{lines}</pre>' changelogtag = '<tr><th class="tag">tag:</th><td class="tag">{tag|escape}</td></tr>' changesettag = '<tr><th class="tag">tag:</th><td class="tag">{tag|escape}</td></tr>' filediffparent = ' <tr> <th class="parent">parent {rev}:</th> <td class="parent"><a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' filediffchild = ' <tr> <th class="child">child {rev}:</th> <td class="child"><a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td> </tr>' indexentry = ' <tr class="parity{parity}"> <td><a href="{url|urlescape}{sessionvars%urlparameter}">{name|escape}</a></td> <td>{description}</td> <td>{contact|obfuscate}</td> <td class="age">{lastchange|rfc822date}</td> <td class="indexlinks"> <a href="{url|urlescape}rss-log">RSS</a> <a href="{url|urlescape}atom-log">Atom</a> {archives%archiveentry} </td> </tr>' index = index.tmpl archiveentry = '<a href="{url|urlescape}archive/{symrev}{extension|urlescape}">{type|escape}</a> ' notfound = notfound.tmpl error = error.tmpl urlparameter = '{separator}{name}={value|urlescape}' hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />' breadcrumb = '> <a href="{url|urlescape}">{name|escape}</a> '