##// END OF EJS Templates
pyoxidizer: produce working Python 3 Windows installers (issue6366)...
pyoxidizer: produce working Python 3 Windows installers (issue6366) While we've had code to produce Python 3 Windows installers with PyOxidizer, we haven't been advertising them on the web site due to a bug in making TLS connections and issues around resource handling. This commit upgrades our PyOxidizer install and configuration to use a recent Git commit of PyOxidizer. This new version of PyOxidizer contains a *ton* of changes, improvements, and bug fixes. Notably, Windows shared distributions now mostly "just work" and the TLS bug and random problems with Python extension modules in the standard library go away. And Python has been upgraded from 3.7 to 3.8.6. The price we pay for this upgrade is a ton of backwards incompatible changes to Starlark. I applied this commit (the overall series actually) on stable to produce Windows installers for Mercurial 5.5.2, which I published shortly before submitting this commit for review. In order to get the stable branch working, I decided to take a less aggressive approach to Python resource management. Previously, we were attempting to load all Python modules from memory and were performing some hacks to copy Mercurial's non-module resources into additional directories in Starlark. This commit implements a resource callback function in Starlark (a new feature since PyOxidizer 0.7) to dynamically assign standard library resources to in-memory loading and all other resources to filesystem loading. This means that Mercurial's files and all the other packages we ship in the Windows installers (e.g. certifi and pygments) are loaded from the filesystem instead of from memory. This avoids issues due to lack of __file__ and enables us to ship a working Python 3 installer on Windows. The end state of the install layout after this patch is not ideal for @: we still copy resource files like templates and help text to directories next to the hg.exe executable. There is code in @ to use importlib.resources to load these files and we could likely remove these copies once this lands on @. But for now, the install layout mimics what we've shipped for seemingly forever and is backwards compatible. It allows us to achieve the milestone of working Python 3 Windows installers and gets us a giant step closer to deleting Python 2. Differential Revision: https://phab.mercurial-scm.org/D9148

File last commit:

r35136:e397f858 default
r46277:57b5452a default
Show More
filerevision.tmpl
61 lines | 2.9 KiB | application/x-cheetah | CheetahLexer
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 {header}
<title>{repo|escape}: {file|escape}@{node|short}</title>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <link rel="alternate" type="application/atom+xml" href="{url|urlescape}atom-log" title="Atom feed for {repo|escape}"/>
<link rel="alternate" type="application/rss+xml" href="{url|urlescape}rss-log" title="RSS feed for {repo|escape}"/>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </head>
<body>
<div id="container">
<div class="page-header">
Angel Ezquerra <angel.ezquerra at gmail.com>
hgweb: add a "URL breadcrumb" to the index and repository pages...
r18258 <h1 class="breadcrumb"><a href="/">Mercurial</a> {pathdef%breadcrumb} / file revision</h1>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
Gregory Szorc
hgweb: consolidate search form for monoblue...
r32759 {searchform}
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
<ul class="page-nav">
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}summary{sessionvars%urlparameter}">summary</a></li>
<li><a href="{url|urlescape}shortlog{sessionvars%urlparameter}">shortlog</a></li>
<li><a href="{url|urlescape}changelog{sessionvars%urlparameter}">changelog</a></li>
av6
hgweb: don't dereference symbolic revision in monoblue style...
r25604 <li><a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a></li>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a></li>
<li><a href="{url|urlescape}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
<li><a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a></li>
av6
hgweb: don't dereference symbolic revision in monoblue style...
r25604 <li><a href="{url|urlescape}file/{symrev}{path|urlescape}{sessionvars%urlparameter}">files</a></li>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}help{sessionvars%urlparameter}">help</a></li>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </ul>
</div>
<ul class="submenu">
<li class="current">file</li>
av6
monoblue: add a link to the latest file revision...
r26598 <li><a href="{url|urlescape}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a></li>
av6
hgweb: don't dereference symbolic revision in monoblue style...
r25604 <li><a href="{url|urlescape}log/{symrev}/{file|urlescape}{sessionvars%urlparameter}">revisions</a></li>
<li><a href="{url|urlescape}annotate/{symrev}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
<li><a href="{url|urlescape}diff/{symrev}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
<li><a href="{url|urlescape}comparison/{symrev}/{file|urlescape}{sessionvars%urlparameter}">comparison</a></li>
<li><a href="{url|urlescape}raw-file/{symrev}/{file|urlescape}">raw</a></li>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </ul>
<h2 class="no-link no-border">{file|escape}@{node|short}</h2>
<h3 class="changeset">{file|escape}</h3>
Anton Shestakov
hgweb: recreate old DOM structure for css in monoblue style...
r24109 <p class="changeset-age"><span class="age">{date|rfc822date}</span></p>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
<dl class="overview">
<dt>author</dt>
<dd>{author|obfuscate}</dd>
<dt>date</dt>
av6
hgweb: show changeset age in more places (gitweb and monoblue)...
r35136 <dd class="date age">{date|rfc822date}</dd>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 {branch%filerevbranch}
<dt>changeset {rev}</dt>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <dd><a class="list" href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 {parent%filerevparent}
{child%filerevchild}
<dt>permissions</dt>
<dd>{permissions|permissions}</dd>
</dl>
Angel Ezquerra
hgweb: apply the websub filter to revision descriptions...
r18628 <p class="description">{desc|strip|escape|websub|addbreaks|nonempty}</p>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
<div class="source">
av6
monoblue: port code selection without line numbers from gitweb...
r26314 <pre class="sourcelines stripes">{text%fileline}</pre>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </div>
{footer}