<font size=2 face="sans-serif">Greetings,</font>
<br>
<br><font size=2 face="sans-serif">I am working on some analysis tools
for hg logs.</font>
<br>
<br><font size=2 face="sans-serif">hg log --template &quot;{files}&quot;
is the naive way to do this. </font>
<br>
<br><font size=2 face="sans-serif">Demonstration of problem:</font>
<br>
<br><font size=2 face="sans-serif">$ hg log -r 34 --template &quot;{file_mods}\n&quot;</font>
<br><font size=2 face="sans-serif">baz baz baz foo bar spacey.txt</font>
<br>
<br><font size=2 face="sans-serif">What files were modified? </font>
<br>
<br><font size=2 face="sans-serif">In order to determine this, I have to
run manifest on 34 and perform some lexical analysis for all files in that
changeset to determine which files actually got modified. </font>
<br>
<br><font size=2 face="sans-serif">Reviewing the hg source code, the rendering
code (showlist function in &nbsp;</font><a href=http://selenic.com/hg/file/8deebb577751/mercurial/templatekw.py><font size=2 face="sans-serif">http://selenic.com/hg/file/8deebb577751/mercurial/templatekw.py</font></a><font size=2 face="sans-serif">)
</font>
<br><font size=2 face="sans-serif">performs a join with spaces here. This
is... problematic for fast algorithmic determination.</font>
<br>
<br><font size=2 face="sans-serif">I have thousands of changesets that
need to be processed repeatedly and shelling out on each changeset is going
to be slow. </font>
<br>
<br><font size=2 face="sans-serif">Is there a better way? I'd like to only
shell out to hg once and get all the needed information.</font>
<br>
<br><font size=2 face="sans-serif">(the file names were &quot;baz baz baz&quot;
and &quot;foo bar spacey.txt&quot;)</font>
<br>
<br><font size=2 face="sans-serif">- - -<br>
Regards,<br>
Paul Nathan</font>