rust-parsers: switch to parse/pack_dirstate to mutate-on-loop
Both `parse_dirstate` and `pack_dirstate` can operate directly on the data
they're passed, which prevents the creation of intermediate data structures,
simplifies the function signatures and reduces boilerplate. They are exposed
directly to the Python for now, but a later patch will make use of them inside
`hg-core`.
Differential Revision: https://phab.mercurial-scm.org/D6628
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include guids.wxi ?>
<?include defines.wxi ?>
<Fragment>
<ComponentGroup Id="templatesFolder">
<ComponentRef Id="templates.root" />
<ComponentRef Id="templates.atom" />
<ComponentRef Id="templates.coal" />
<ComponentRef Id="templates.gitweb" />
<ComponentRef Id="templates.json" />
<ComponentRef Id="templates.monoblue" />
<ComponentRef Id="templates.paper" />
<ComponentRef Id="templates.raw" />
<ComponentRef Id="templates.rss" />
<ComponentRef Id="templates.spartan" />
<ComponentRef Id="templates.static" />
</ComponentGroup>
</Fragment>
<Fragment>
<DirectoryRef Id="INSTALLDIR">
<Directory Id="templatesdir" Name="templates" FileSource="$(var.SourceDir)">
<Component Id="templates.root" Guid="$(var.templates.root.guid)" Win64='$(var.IsX64)'>
<File Name="map-cmdline.changelog" KeyPath="yes" />
<File Name="map-cmdline.compact" />
<File Name="map-cmdline.default" />
<File Name="map-cmdline.show" />
<File Name="map-cmdline.bisect" />
<File Name="map-cmdline.xml" />
<File Name="map-cmdline.status" />
<File Name="map-cmdline.phases" />
</Component>
<Directory Id="templates.jsondir" Name="json">
<Component Id="templates.json" Guid="$(var.templates.json.guid)" Win64='$(var.IsX64)'>
<File Id="json.changelist.tmpl" Name="changelist.tmpl" KeyPath="yes" />
<File Id="json.graph.tmpl" Name="graph.tmpl" />
<File Id="json.map" Name="map" />
</Component>
</Directory>
<Directory Id="templates.atomdir" Name="atom">
<Component Id="templates.atom" Guid="$(var.templates.atom.guid)" Win64='$(var.IsX64)'>
<File Id="atom.changelog.tmpl" Name="changelog.tmpl" KeyPath="yes" />
<File Id="atom.changelogentry.tmpl" Name="changelogentry.tmpl" />
<File Id="atom.error.tmpl" Name="error.tmpl" />
<File Id="atom.filelog.tmpl" Name="filelog.tmpl" />
<File Id="atom.header.tmpl" Name="header.tmpl" />
<File Id="atom.map" Name="map" />
<File Id="atom.tagentry.tmpl" Name="tagentry.tmpl" />
<File Id="atom.tags.tmpl" Name="tags.tmpl" />
<File Id="atom.branchentry.tmpl" Name="branchentry.tmpl" />
<File Id="atom.branches.tmpl" Name="branches.tmpl" />
<File Id="atom.bookmarks.tmpl" Name="bookmarks.tmpl" />
<File Id="atom.bookmarkentry.tmpl" Name="bookmarkentry.tmpl" />
</Component>
</Directory>
<Directory Id="templates.coaldir" Name="coal">
<Component Id="templates.coal" Guid="$(var.templates.coal.guid)" Win64='$(var.IsX64)'>
<File Id="coal.header.tmpl" Name="header.tmpl" KeyPath="yes" />
<File Id="coal.map" Name="map" />
</Component>
</Directory>
<Directory Id="templates.gitwebdir" Name="gitweb">
<Component Id="templates.gitweb" Guid="$(var.templates.gitweb.guid)" Win64='$(var.IsX64)'>
<File Id="gitweb.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
<File Id="gitweb.bookmarks.tmpl" Name="bookmarks.tmpl" />
<File Id="gitweb.changelog.tmpl" Name="changelog.tmpl" />
<File Id="gitweb.changelogentry.tmpl" Name="changelogentry.tmpl" />
<File Id="gitweb.changeset.tmpl" Name="changeset.tmpl" />
<File Id="gitweb.error.tmpl" Name="error.tmpl" />
<File Id="gitweb.fileannotate.tmpl" Name="fileannotate.tmpl" />
<File Id="gitweb.filecomparison.tmpl" Name="filecomparison.tmpl" />
<File Id="gitweb.filediff.tmpl" Name="filediff.tmpl" />
<File Id="gitweb.filelog.tmpl" Name="filelog.tmpl" />
<File Id="gitweb.filerevision.tmpl" Name="filerevision.tmpl" />
<File Id="gitweb.footer.tmpl" Name="footer.tmpl" />
<File Id="gitweb.graph.tmpl" Name="graph.tmpl" />
<File Id="gitweb.graphentry.tmpl" Name="graphentry.tmpl" />
<File Id="gitweb.header.tmpl" Name="header.tmpl" />
<File Id="gitweb.index.tmpl" Name="index.tmpl" />
<File Id="gitweb.manifest.tmpl" Name="manifest.tmpl" />
<File Id="gitweb.map" Name="map" />
<File Id="gitweb.notfound.tmpl" Name="notfound.tmpl" />
<File Id="gitweb.search.tmpl" Name="search.tmpl" />
<File Id="gitweb.shortlog.tmpl" Name="shortlog.tmpl" />
<File Id="gitweb.summary.tmpl" Name="summary.tmpl" />
<File Id="gitweb.tags.tmpl" Name="tags.tmpl" />
<File Id="gitweb.help.tmpl" Name="help.tmpl" />
<File Id="gitweb.helptopics.tmpl" Name="helptopics.tmpl" />
</Component>
</Directory>
<Directory Id="templates.monobluedir" Name="monoblue">
<Component Id="templates.monoblue" Guid="$(var.templates.monoblue.guid)" Win64='$(var.IsX64)'>
<File Id="monoblue.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
<File Id="monoblue.bookmarks.tmpl" Name="bookmarks.tmpl" />
<File Id="monoblue.changelog.tmpl" Name="changelog.tmpl" />
<File Id="monoblue.changelogentry.tmpl" Name="changelogentry.tmpl" />
<File Id="monoblue.changeset.tmpl" Name="changeset.tmpl" />
<File Id="monoblue.error.tmpl" Name="error.tmpl" />
<File Id="monoblue.fileannotate.tmpl" Name="fileannotate.tmpl" />
<File Id="monoblue.filecomparison.tmpl" Name="filecomparison.tmpl" />
<File Id="monoblue.filediff.tmpl" Name="filediff.tmpl" />
<File Id="monoblue.filelog.tmpl" Name="filelog.tmpl" />
<File Id="monoblue.filerevision.tmpl" Name="filerevision.tmpl" />
<File Id="monoblue.footer.tmpl" Name="footer.tmpl" />
<File Id="monoblue.graph.tmpl" Name="graph.tmpl" />
<File Id="monoblue.graphentry.tmpl" Name="graphentry.tmpl" />
<File Id="monoblue.header.tmpl" Name="header.tmpl" />
<File Id="monoblue.index.tmpl" Name="index.tmpl" />
<File Id="monoblue.manifest.tmpl" Name="manifest.tmpl" />
<File Id="monoblue.map" Name="map" />
<File Id="monoblue.notfound.tmpl" Name="notfound.tmpl" />
<File Id="monoblue.search.tmpl" Name="search.tmpl" />
<File Id="monoblue.shortlog.tmpl" Name="shortlog.tmpl" />
<File Id="monoblue.summary.tmpl" Name="summary.tmpl" />
<File Id="monoblue.tags.tmpl" Name="tags.tmpl" />
<File Id="monoblue.help.tmpl" Name="help.tmpl" />
<File Id="monoblue.helptopics.tmpl" Name="helptopics.tmpl" />
</Component>
</Directory>
<Directory Id="templates.paperdir" Name="paper">
<Component Id="templates.paper" Guid="$(var.templates.paper.guid)" Win64='$(var.IsX64)'>
<File Id="paper.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
<File Id="paper.bookmarks.tmpl" Name="bookmarks.tmpl" />
<File Id="paper.changeset.tmpl" Name="changeset.tmpl" />
<File Id="paper.diffstat.tmpl" Name="diffstat.tmpl" />
<File Id="paper.error.tmpl" Name="error.tmpl" />
<File Id="paper.fileannotate.tmpl" Name="fileannotate.tmpl" />
<File Id="paper.filecomparison.tmpl" Name="filecomparison.tmpl" />
<File Id="paper.filediff.tmpl" Name="filediff.tmpl" />
<File Id="paper.filelog.tmpl" Name="filelog.tmpl" />
<File Id="paper.filelogentry.tmpl" Name="filelogentry.tmpl" />
<File Id="paper.filerevision.tmpl" Name="filerevision.tmpl" />
<File Id="paper.footer.tmpl" Name="footer.tmpl" />
<File Id="paper.graph.tmpl" Name="graph.tmpl" />
<File Id="paper.graphentry.tmpl" Name="graphentry.tmpl" />
<File Id="paper.header.tmpl" Name="header.tmpl" />
<File Id="paper.index.tmpl" Name="index.tmpl" />
<File Id="paper.manifest.tmpl" Name="manifest.tmpl" />
<File Id="paper.map" Name="map" />
<File Id="paper.notfound.tmpl" Name="notfound.tmpl" />
<File Id="paper.search.tmpl" Name="search.tmpl" />
<File Id="paper.shortlog.tmpl" Name="shortlog.tmpl" />
<File Id="paper.shortlogentry.tmpl" Name="shortlogentry.tmpl" />
<File Id="paper.tags.tmpl" Name="tags.tmpl" />
<File Id="paper.help.tmpl" Name="help.tmpl" />
<File Id="paper.helptopics.tmpl" Name="helptopics.tmpl" />
</Component>
</Directory>
<Directory Id="templates.rawdir" Name="raw">
<Component Id="templates.raw" Guid="$(var.templates.raw.guid)" Win64='$(var.IsX64)'>
<File Id="raw.changeset.tmpl" Name="changeset.tmpl" KeyPath="yes" />
<File Id="raw.error.tmpl" Name="error.tmpl" />
<File Id="raw.fileannotate.tmpl" Name="fileannotate.tmpl" />
<File Id="raw.filediff.tmpl" Name="filediff.tmpl" />
<File Id="raw.graph.tmpl" Name="graph.tmpl" />
<File Id="raw.graphedge.tmpl" Name="graphedge.tmpl" />
<File Id="raw.graphnode.tmpl" Name="graphnode.tmpl" />
<File Id="raw.index.tmpl" Name="index.tmpl" />
<File Id="raw.manifest.tmpl" Name="manifest.tmpl" />
<File Id="raw.map" Name="map" />
<File Id="raw.notfound.tmpl" Name="notfound.tmpl" />
<File Id="raw.search.tmpl" Name="search.tmpl" />
<File Id="raw.logentry.tmpl" Name="logentry.tmpl" />
<File Id="raw.changelog.tmpl" Name="changelog.tmpl" />
</Component>
</Directory>
<Directory Id="templates.rssdir" Name="rss">
<Component Id="templates.rss" Guid="$(var.templates.rss.guid)" Win64='$(var.IsX64)'>
<File Id="rss.changelog.tmpl" Name="changelog.tmpl" KeyPath="yes" />
<File Id="rss.changelogentry.tmpl" Name="changelogentry.tmpl" />
<File Id="rss.error.tmpl" Name="error.tmpl" />
<File Id="rss.filelog.tmpl" Name="filelog.tmpl" />
<File Id="rss.filelogentry.tmpl" Name="filelogentry.tmpl" />
<File Id="rss.header.tmpl" Name="header.tmpl" />
<File Id="rss.map" Name="map" />
<File Id="rss.tagentry.tmpl" Name="tagentry.tmpl" />
<File Id="rss.tags.tmpl" Name="tags.tmpl" />
<File Id="rss.bookmarks.tmpl" Name="bookmarks.tmpl" />
<File Id="rss.bookmarkentry.tmpl" Name="bookmarkentry.tmpl" />
<File Id="rss.branchentry.tmpl" Name="branchentry.tmpl" />
<File Id="rss.branches.tmpl" Name="branches.tmpl" />
</Component>
</Directory>
<Directory Id="templates.spartandir" Name="spartan">
<Component Id="templates.spartan" Guid="$(var.templates.spartan.guid)" Win64='$(var.IsX64)'>
<File Id="spartan.branches.tmpl" Name="branches.tmpl" KeyPath="yes" />
<File Id="spartan.changelog.tmpl" Name="changelog.tmpl" />
<File Id="spartan.changelogentry.tmpl" Name="changelogentry.tmpl" />
<File Id="spartan.changeset.tmpl" Name="changeset.tmpl" />
<File Id="spartan.error.tmpl" Name="error.tmpl" />
<File Id="spartan.fileannotate.tmpl" Name="fileannotate.tmpl" />
<File Id="spartan.filediff.tmpl" Name="filediff.tmpl" />
<File Id="spartan.filelog.tmpl" Name="filelog.tmpl" />
<File Id="spartan.filelogentry.tmpl" Name="filelogentry.tmpl" />
<File Id="spartan.filerevision.tmpl" Name="filerevision.tmpl" />
<File Id="spartan.footer.tmpl" Name="footer.tmpl" />
<File Id="spartan.graph.tmpl" Name="graph.tmpl" />
<File Id="spartan.graphentry.tmpl" Name="graphentry.tmpl" />
<File Id="spartan.header.tmpl" Name="header.tmpl" />
<File Id="spartan.index.tmpl" Name="index.tmpl" />
<File Id="spartan.manifest.tmpl" Name="manifest.tmpl" />
<File Id="spartan.map" Name="map" />
<File Id="spartan.notfound.tmpl" Name="notfound.tmpl" />
<File Id="spartan.search.tmpl" Name="search.tmpl" />
<File Id="spartan.shortlog.tmpl" Name="shortlog.tmpl" />
<File Id="spartan.shortlogentry.tmpl" Name="shortlogentry.tmpl" />
<File Id="spartan.tags.tmpl" Name="tags.tmpl" />
</Component>
</Directory>
<Directory Id="templates.staticdir" Name="static">
<Component Id="templates.static" Guid="$(var.templates.static.guid)" Win64='$(var.IsX64)'>
<File Id="static.background.png" Name="background.png" KeyPath="yes" />
<File Id="static.coal.file.png" Name="coal-file.png" />
<File Id="static.coal.folder.png" Name="coal-folder.png" />
<File Id="static.followlines.js" Name="followlines.js" />
<File Id="static.mercurial.js" Name="mercurial.js" />
<File Id="static.hgicon.png" Name="hgicon.png" />
<File Id="static.hglogo.png" Name="hglogo.png" />
<File Id="static.style.coal.css" Name="style-extra-coal.css" />
<File Id="static.style.gitweb.css" Name="style-gitweb.css" />
<File Id="static.style.monoblue.css" Name="style-monoblue.css" />
<File Id="static.style.paper.css" Name="style-paper.css" />
<File Id="static.style.css" Name="style.css" />
<File Id="static.feed.icon" Name="feed-icon-14x14.png" />
</Component>
</Directory>
</Directory>
</DirectoryRef>
</Fragment>
</Wix>