Sage: Ticket #10423: Upgrade Jinja2 to version 2.5.5 (latest upstream)
https://trac.sagemath.org/ticket/10423
<p>
The new Sphinx version in Sage 4.6.1.alpha2 (1.0.4, <a class="closed ticket" href="https://trac.sagemath.org/ticket/10118" title="enhancement: upgrade sphinx to version 1.0.4 (closed: fixed)">#10118</a>, <a class="closed ticket" href="https://trac.sagemath.org/ticket/10350" title="defect: Fix some remaining issues with sphinx-1.0.4.p3.spkg (closed: fixed)">#10350</a>) requires Jinja2 >= 2.2, while in Sage we currently have version 2.1.1, which triggers undesired downloads during the build.
</p>
<hr />
<h3 id="jinja2-2.5.5.p0LeifLeonhardyDecember3rd2010">jinja2-2.5.5.p0 (Leif Leonhardy, December 3rd, 2010)</h3>
<ul><li><a class="closed ticket" href="https://trac.sagemath.org/ticket/10423" title="defect: Upgrade Jinja2 to version 2.5.5 (latest upstream) (closed: fixed)">#10423</a>: Upgrade to version 2.5.5, as Sphinx (1.0.4) requires a version >=2.2
(cf. <a class="closed ticket" href="https://trac.sagemath.org/ticket/10350" title="defect: Fix some remaining issues with sphinx-1.0.4.p3.spkg (closed: fixed)">#10350</a>).
</li><li>Some clean-up, dependencies added.
</li></ul><h3 id="Dependencies">Dependencies</h3>
<ul><li>Python (>= 2.4)
</li><li>setuptools (or distribute)
</li><li>Pygments (according to 'spkg/standard/deps')
</li><li>docutils (dito, as a note only)
</li></ul><hr />
<p>
<strong>New spkg: <a class="ext-link" href="http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg</a></strong>
</p>
<p>
<strong>md5sum:</strong> <code>0770c56a50c7c4ab5e926dc45ba4246f jinja2-2.5.5.p0.spkg</code>
</p>
en-usSagehttps://trac.sagemath.org/chrome/site/logo_sagemath_trac.png
https://trac.sagemath.org/ticket/10423
Trac 1.1.6leifFri, 03 Dec 2010 18:16:38 GMTstatus, cc, description changed
https://trac.sagemath.org/ticket/10423#comment:1
https://trac.sagemath.org/ticket/10423#comment:1
<ul>
<li><strong>status</strong>
changed from <em>new</em> to <em>needs_review</em>
</li>
<li><strong>cc</strong>
<em>timdumol</em> <em>jhpalmieri</em> <em>mhansen</em> added
</li>
<li><strong>description</strong>
modified (<a href="/ticket/10423?action=diff&version=1">diff</a>)
</li>
</ul>
<p>
Perhaps we could clarify the dependencies; the web page just says Python and setuptools (or distribute).
</p>
<p>
Also, <code>spkg/standard/deps</code> lacks an explicit dependency on these, instead lists Pygments:
</p>
<div class="wiki-code"><div class="code"><pre><span class="k">$(</span>INST<span class="k">)</span>/<span class="k">$(</span>JINJA2<span class="k">)</span>: <span class="k">$(</span>BASE<span class="k">)</span> <span class="k">$(</span>INST<span class="k">)</span>/<span class="k">$(</span>PYGMENTS<span class="k">)</span> <span class="k">$(</span>INST<span class="k">)</span>/<span class="k">$(</span>PATCH<span class="k">)</span>
<span class="k">$(</span>INSTALL<span class="k">)</span> <span class="s2">"$(SAGE_SPKG) $(JINJA2) 2>&1"</span> <span class="s2">"tee -a $(SAGE_LOGS)/$(JINJA2).log"</span>
</pre></div></div><p>
There's also:
</p>
<div class="wiki-code"><div class="code"><pre><span class="c"># For reference and for when the setuptools problem is solved, here
# are the actual dependencies:
#
# sagenb: python pexpect twisted jinja2 sphinx docutils setuptools
# sqlalchemy: python setuptools
# sphinx: docutils jinja2 pygments
# jinja2: python docutils setuptools
# pygments: python setuptools
# twisted: python python_gnutls setuptools
# zodb: python setuptools
</span></pre></div></div>
TicketleifFri, 03 Dec 2010 18:24:50 GMTdescription changed
https://trac.sagemath.org/ticket/10423#comment:2
https://trac.sagemath.org/ticket/10423#comment:2
<ul>
<li><strong>description</strong>
modified (<a href="/ticket/10423?action=diff&version=2">diff</a>)
</li>
</ul>
<p>
Replaced the spkg with a corrected one (version names in <code>SPKG.txt</code>).
</p>
TicketjdemeyerSat, 04 Dec 2010 14:53:58 GMTkeywords, description changed; reviewer set
https://trac.sagemath.org/ticket/10423#comment:3
https://trac.sagemath.org/ticket/10423#comment:3
<ul>
<li><strong>keywords</strong>
<em>jinja2</em> <em>spkg</em> added
</li>
<li><strong>reviewer</strong>
set to <em>Jeroen Demeyer</em>
</li>
<li><strong>description</strong>
modified (<a href="/ticket/10423?action=diff&version=3">diff</a>)
</li>
</ul>
<p>
I've made some very minor changes, dropped .p0 from version number and made <code>spkg-install</code> executable. New spkg: <a class="ext-link" href="http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg</a>
</p>
<p>
If somebody can review my changes, positive_review.
</p>
TicketjdemeyerSat, 04 Dec 2010 14:54:32 GMTattachment set
https://trac.sagemath.org/ticket/10423
https://trac.sagemath.org/ticket/10423
<ul>
<li><strong>attachment</strong>
set to <em>jinja2_jdemeyer.patch</em>
</li>
</ul>
<p>
Patch between Leif's and my spkg
</p>
TicketleifSat, 04 Dec 2010 15:41:47 GMT
https://trac.sagemath.org/ticket/10423#comment:4
https://trac.sagemath.org/ticket/10423#comment:4
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/10423#comment:3" title="Comment 3">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
I've made some very minor changes, dropped .p0 from version number and made <code>spkg-install</code> executable. New spkg: <a class="ext-link" href="http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg</a>
</p>
</blockquote>
<p>
The p0 was intentional, as IMHO <em>every</em> Sage package should have a "patch" level, be it zero for the first spkg in a new upstream series, to avoid confusion with (vanilla) upstream tarballs and packages.
</p>
<p>
(I'm not sure if everybody knows one can often simply change the extension of an upstream tarball and [try to] install it <em>as is</em> into Sage, with the usual Sage commands.)
</p>
<p>
Almost every distribution prepends its own versioning to package names.
</p>
<p>
<br />
</p>
<blockquote class="citation">
<p>
If somebody can review my changes, positive_review.
</p>
</blockquote>
<p>
Really minor, no operational effect, so <strong>positive review</strong> for those changes.
</p>
<p>
P.S.: Fortunately(?) <code>sage-spkg</code> does <code>chmod +x</code>, otherwise I would have noticed that myself. ;-)
</p>
TicketleifSat, 04 Dec 2010 16:12:08 GMT
https://trac.sagemath.org/ticket/10423#comment:5
https://trac.sagemath.org/ticket/10423#comment:5
<p>
P.P.S.: (For other tickets as well:) You don't have to add keywords that are already contained in the ticket's title; also case doesn't matter as far as I know. Substrings also match.
</p>
<p>
The best trac "keywords" I've found so far are "r" and "64". :D
</p>
<p>
I really wonder if anyone will ever search for these, and if so, I strongly doubt he/she will [quickly] find what he/she was looking for...
</p>
TicketjdemeyerSat, 04 Dec 2010 17:09:42 GMTstatus changed
https://trac.sagemath.org/ticket/10423#comment:6
https://trac.sagemath.org/ticket/10423#comment:6
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>positive_review</em>
</li>
</ul>
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/10423#comment:4" title="Comment 4">leif</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/10423#comment:3" title="Comment 3">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
I've made some very minor changes, dropped .p0 from version number and made <code>spkg-install</code> executable. New spkg: <a class="ext-link" href="http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg"><span class="icon"></span>http://sage.math.washington.edu/home/jdemeyer/spkg/jinja2-2.5.5.spkg</a>
</p>
</blockquote>
<p>
The p0 was intentional, as IMHO <em>every</em> Sage package should have a "patch" level, be it zero for the first spkg in a new upstream series, to avoid confusion with (vanilla) upstream tarballs and packages.
</p>
</blockquote>
<p>
Upstream tarballs and packages don't have an <code>.spkg</code> extension, so I don't think there is much confusion possible.
</p>
<p>
About the naming: it seems there are no rules for this. I would personally always add a patch level if the package contains patches, no patch level otherwise (as is the case with Jinja2).
</p>
TicketjdemeyerSat, 04 Dec 2010 18:05:17 GMTstatus changed; resolution, merged set
https://trac.sagemath.org/ticket/10423#comment:7
https://trac.sagemath.org/ticket/10423#comment:7
<ul>
<li><strong>status</strong>
changed from <em>positive_review</em> to <em>closed</em>
</li>
<li><strong>resolution</strong>
set to <em>fixed</em>
</li>
<li><strong>merged</strong>
set to <em>sage-4.6.1.alpha3</em>
</li>
</ul>
TicketleifSat, 04 Dec 2010 18:32:25 GMT
https://trac.sagemath.org/ticket/10423#comment:8
https://trac.sagemath.org/ticket/10423#comment:8
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/10423#comment:6" title="Comment 6">jdemeyer</a>:
</p>
<blockquote class="citation">
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/10423#comment:4" title="Comment 4">leif</a>:
</p>
<blockquote class="citation">
<p>
The p0 was intentional, as IMHO <em>every</em> Sage package should have a "patch" level, be it zero for the first spkg in a new upstream series, to avoid confusion with (vanilla) upstream tarballs and packages.
</p>
</blockquote>
<p>
Upstream tarballs and packages don't have an <code>.spkg</code> extension, so I don't think there is much confusion possible.
</p>
</blockquote>
<p>
An <code>.spkg</code> is essentially the same as a <code>.tar</code>, <code>.tar.gz</code> or <code>.tar.bz2</code>, so the extension doesn't really matter, except that for dealing with an <code>.spkg</code> you have to modify filename completion.
</p>
<p>
So a "real" spkg, with <code>src/</code>, <code>SPKG.txt</code> and <code>spkg-install</code> etc. should have a different basename, which should be the upstream name (unfortunately not always the case) plus Sage's addendum, <code>.pX</code>, to distinguish its <em>content</em> / structure.
</p>
<p>
As said above, you can also directly install some vanilla upstream packages if you only change the extension (from e.g. <code>.tar.bz2</code> to <code>.spkg</code>); these should clearly be distinguishable by lacking a Sage "patch level". (You can of course also rename spkgs to <code>.tar.bz2</code> or create links just to make handling them easier. ;-) )
</p>
<p>
<br />
</p>
<blockquote class="citation">
<p>
About the naming: it seems there are no rules for this. I would personally always add a patch level if the package contains patches, no patch level otherwise (as is the case with Jinja2).
</p>
</blockquote>
<p>
This is an endless discussion (some even say there shouldn't be p0's, but only p1's and up).
</p>
<p>
IMHO we should use p0 for the first package (new or upgraded to a newer upstream version) if there are no actual patches to upstream source code, p1 otherwise, i.e. if we still have to apply patches though upstream is fresh. (Some even start without a patch level despite we patch upstream.)
</p>
<p>
"Downgrading" the patch level, or keeping it for a long time though there have been many changes during the review process is the worst thing. I don't know how many x.y.z.pK<strong>.oldN</strong> spkgs I have. At least posting the new md5sum gets common now.
</p>
Ticket