##// END OF EJS Templates
largefiles: access to specific fields only if largefiles enabled (issue4547)...
largefiles: access to specific fields only if largefiles enabled (issue4547) Even if largefiles extension is enabled in a repository, "repo" object, which isn't "largefiles.reposetup()"-ed, is passed to overridden functions in the cases below unexpectedly, because extensions are enabled for each repositories strictly. (1) clone without -U: (2) pull with -U: (3) pull with --rebase: combination of "enabled@src", "disabled@dst" and "not-required@src" cause this situation. largefiles requirement @src @dst @src result -------- -------- --------------- -------------------- enabled disabled not-required aborted unexpectedly required requirement error (intentional) -------- -------- --------------- -------------------- enabled enabled * success -------- -------- --------------- -------------------- disabled enabled * success (only for "pull") -------- -------- --------------- -------------------- disabled disabled not-required success required requirement error (intentional) -------- -------- --------------- -------------------- (4) update/revert with a subrepo disabling largefiles In these cases, overridden functions cause accessing to largefiles specific fields of not "largefiles.reposetup()"-ed "repo" object, and execution is aborted. - (1), (2), (4) cause accessing to "_lfstatuswriters" in "getstatuswriter()" invoked via "updatelfiles()" - (3) causes accessing to "_lfcommithooks" in "overriderebase()" For safe accessing to these fields, this patch examines whether passed "repo" object is "largefiles.reposetup()"-ed or not before accessing to them. This patch chooses examining existence of newly introduced "_largefilesenabled" instead of "_lfcommithooks" and "_lfstatuswriters" directly, because the former is better name for the generic "largefiles is enabled in this repo" mark than the latter. In the future, all other overridden functions should avoid largefiles specific processing for efficiency, and "_largefilesenabled" is better also for such purpose. BTW, "lfstatus" can't be used for such purpose, because some code paths set it forcibly regardless of existence of it in specified "repo" object.

File last commit:

r24054:fdf7794b default
r24158:d414c28d stable
Show More
test-highlight.t
608 lines | 25.2 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: replace exit 80 with #require
r22046 #require pygments serve
Matt Mackall
tests: unify test-highlight
r12445
$ cat <<EOF >> $HGRCPATH
> [extensions]
> highlight =
> [web]
> pygments_style = friendly
> EOF
$ hg init test
$ cd test
create random Python file to exercise Pygments
$ cat <<EOF > primes.py
> #!/usr/bin/env python
>
> """Fun with generators. Corresponding Haskell implementation:
>
> primes = 2 : sieve [3, 5..]
> where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0]
> """
>
> from itertools import dropwhile, ifilter, islice, count, chain
>
> def primes():
> """Generate all primes."""
> def sieve(ns):
> p = ns.next()
> # It is important to yield *here* in order to stop the
> # infinite recursion.
> yield p
> ns = ifilter(lambda n: n % p != 0, ns)
> for n in sieve(ns):
> yield n
>
> odds = ifilter(lambda i: i % 2 == 1, count())
> return chain([2], sieve(dropwhile(lambda n: n < 3, odds)))
>
> if __name__ == "__main__":
> import sys
> try:
> n = int(sys.argv[1])
> except (ValueError, IndexError):
> n = 10
> p = primes()
> print "The first %d primes: %s" % (n, list(islice(p, n)))
> EOF
$ hg ci -Ama
adding primes.py
hg serve
$ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
hgweb filerevision, html
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT 'file/tip/primes.py') \
Matt Mackall
tests: unify test-highlight
r12445 > | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mf\"/class=\"mi\"/g"
200 Script output follows
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
<link rel="icon" href="/static/hgicon.png" type="image/png" />
<meta name="robots" content="index, nofollow" />
<link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
Benoit Boissinot
fix broken tests...
r14053 <script type="text/javascript" src="/static/mercurial.js"></script>
Matt Mackall
tests: unify test-highlight
r12445
<link rel="stylesheet" href="/highlightcss" type="text/css" />
<title>test: 853dcd4de2a6 primes.py</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
<li><a href="/shortlog/853dcd4de2a6">log</a></li>
<li><a href="/graph/853dcd4de2a6">graph</a></li>
<li><a href="/tags">tags</a></li>
FUJIWARA Katsunori
hgweb: fix lack of "bookmarks" link in "/file" page of "paper" style...
r21120 <li><a href="/bookmarks">bookmarks</a></li>
Matt Mackall
tests: unify test-highlight
r12445 <li><a href="/branches">branches</a></li>
</ul>
<ul>
<li><a href="/rev/853dcd4de2a6">changeset</a></li>
<li><a href="/file/853dcd4de2a6/">browse</a></li>
</ul>
<ul>
<li class="active">file</li>
<li><a href="/file/tip/primes.py">latest</a></li>
<li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 <li><a href="/comparison/853dcd4de2a6/primes.py">comparison</a></li>
Matt Mackall
tests: unify test-highlight
r12445 <li><a href="/annotate/853dcd4de2a6/primes.py">annotate</a></li>
<li><a href="/log/853dcd4de2a6/primes.py">file log</a></li>
<li><a href="/raw-file/853dcd4de2a6/primes.py">raw</a></li>
</ul>
Augie Fackler
hgweb: add help link to templates missed in ead4e21f49f1
r12680 <ul>
<li><a href="/help">help</a></li>
</ul>
Matt Mackall
tests: unify test-highlight
r12445 </div>
<div class="main">
Matt Mackall
tests: fix up test-highlight for breadcrumb changes
r18291 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2>
Matt Mackall
tests: unify test-highlight
r12445 <h3>view primes.py @ 0:853dcd4de2a6</h3>
<form class="search" action="/log">
<p><input name="rev" id="search1" type="text" size="30" /></p>
Alexander Plavin
paper: edit search hint to include new feature description
r19796 <div id="hint">Find changesets by keywords (author, files, the commit message), revision
number or hash, or <a href="/help/revsets">revset expression</a>.</div>
Matt Mackall
tests: unify test-highlight
r12445 </form>
<div class="description">a</div>
<table id="changesetEntry">
<tr>
<th class="author">author</th>
<td class="author">&#116;&#101;&#115;&#116;</td>
</tr>
<tr>
<th class="date">date</th>
Brodie Rao
hgweb: fix dynamic date calculation not working under Safari...
r15375 <td class="date age">Thu, 01 Jan 1970 00:00:00 +0000</td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
<tr>
<th class="author">parents</th>
<td class="author"></td>
</tr>
<tr>
<th class="author">children</th>
<td class="author"></td>
</tr>
</table>
<div class="overflow">
Alexander Plavin
hgweb: add line wrapping switch to file source view...
r19430 <div class="sourcefirst linewraptoggle">line wrap: <a class="linewraplink" href="javascript:toggleLinewrap()">on</a></div>
Matt Mackall
tests: unify test-highlight
r12445 <div class="sourcefirst"> line source</div>
Alexander Plavin
hgweb: introduce separate classes for stripey background...
r19431 <pre class="sourcelines stripes4 wrap">
Alexander Plavin
hgweb: code selection without line numbers in file source view...
r19387 <span id="l1"><span class="c">#!/usr/bin/env python</span></span><a href="#l1"></a>
<span id="l2"></span><a href="#l2"></a>
<span id="l3"><span class="sd">&quot;&quot;&quot;Fun with generators. Corresponding Haskell implementation:</span></span><a href="#l3"></a>
<span id="l4"></span><a href="#l4"></a>
<span id="l5"><span class="sd">primes = 2 : sieve [3, 5..]</span></span><a href="#l5"></a>
<span id="l6"><span class="sd"> where sieve (p:ns) = p : sieve [n | n &lt;- ns, mod n p /= 0]</span></span><a href="#l6"></a>
<span id="l7"><span class="sd">&quot;&quot;&quot;</span></span><a href="#l7"></a>
<span id="l8"></span><a href="#l8"></a>
<span id="l9"><span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></span><a href="#l9"></a>
<span id="l10"></span><a href="#l10"></a>
<span id="l11"><span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></span><a href="#l11"></a>
<span id="l12"> <span class="sd">&quot;&quot;&quot;Generate all primes.&quot;&quot;&quot;</span></span><a href="#l12"></a>
<span id="l13"> <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></span><a href="#l13"></a>
<span id="l14"> <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></span><a href="#l14"></a>
<span id="l15"> <span class="c"># It is important to yield *here* in order to stop the</span></span><a href="#l15"></a>
<span id="l16"> <span class="c"># infinite recursion.</span></span><a href="#l16"></a>
<span id="l17"> <span class="kn">yield</span> <span class="n">p</span></span><a href="#l17"></a>
<span id="l18"> <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></span><a href="#l18"></a>
<span id="l19"> <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></span><a href="#l19"></a>
<span id="l20"> <span class="kn">yield</span> <span class="n">n</span></span><a href="#l20"></a>
<span id="l21"></span><a href="#l21"></a>
<span id="l22"> <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mi">2</span> <span class="o">==</span> <span class="mi">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></span><a href="#l22"></a>
<span id="l23"> <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mi">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">&lt;</span> <span class="mi">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></span><a href="#l23"></a>
<span id="l24"></span><a href="#l24"></a>
<span id="l25"><span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span></span><a href="#l25"></a>
<span id="l26"> <span class="kn">import</span> <span class="nn">sys</span></span><a href="#l26"></a>
<span id="l27"> <span class="kn">try</span><span class="p">:</span></span><a href="#l27"></a>
<span id="l28"> <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span></span><a href="#l28"></a>
<span id="l29"> <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></span><a href="#l29"></a>
<span id="l30"> <span class="n">n</span> <span class="o">=</span> <span class="mi">10</span></span><a href="#l30"></a>
<span id="l31"> <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></span><a href="#l31"></a>
<span id="l32"> <span class="kn">print</span> <span class="s">&quot;The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></span><a href="#l32"></a></pre>
Matt Mackall
tests: unify test-highlight
r12445 <div class="sourcelast"></div>
</div>
</div>
</div>
Benoit Boissinot
fix broken tests...
r14053 <script type="text/javascript">process_dates()</script>
Matt Mackall
tests: unify test-highlight
r12445
</body>
</html>
hgweb fileannotate, html
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT 'annotate/tip/primes.py') \
Matt Mackall
tests: unify test-highlight
r12445 > | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mi\"/class=\"mf\"/g"
200 Script output follows
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
<link rel="icon" href="/static/hgicon.png" type="image/png" />
<meta name="robots" content="index, nofollow" />
<link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
Benoit Boissinot
fix broken tests...
r14053 <script type="text/javascript" src="/static/mercurial.js"></script>
Matt Mackall
tests: unify test-highlight
r12445
<link rel="stylesheet" href="/highlightcss" type="text/css" />
<title>test: primes.py annotate</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
<a href="http://mercurial.selenic.com/">
<img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
<li><a href="/shortlog/853dcd4de2a6">log</a></li>
<li><a href="/graph/853dcd4de2a6">graph</a></li>
<li><a href="/tags">tags</a></li>
Patrick Mezard
test-highlight: fix test output (introduced by 2151703e7f84)
r13618 <li><a href="/bookmarks">bookmarks</a></li>
Matt Mackall
tests: unify test-highlight
r12445 <li><a href="/branches">branches</a></li>
</ul>
<ul>
<li><a href="/rev/853dcd4de2a6">changeset</a></li>
<li><a href="/file/853dcd4de2a6/">browse</a></li>
</ul>
<ul>
<li><a href="/file/853dcd4de2a6/primes.py">file</a></li>
<li><a href="/file/tip/primes.py">latest</a></li>
<li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 <li><a href="/comparison/853dcd4de2a6/primes.py">comparison</a></li>
Matt Mackall
tests: unify test-highlight
r12445 <li class="active">annotate</li>
<li><a href="/log/853dcd4de2a6/primes.py">file log</a></li>
<li><a href="/raw-annotate/853dcd4de2a6/primes.py">raw</a></li>
</ul>
Augie Fackler
hgweb: add help link to templates missed in ead4e21f49f1
r12680 <ul>
<li><a href="/help">help</a></li>
</ul>
Matt Mackall
tests: unify test-highlight
r12445 </div>
<div class="main">
Matt Mackall
tests: fix up test-highlight for breadcrumb changes
r18291 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2>
Matt Mackall
tests: unify test-highlight
r12445 <h3>annotate primes.py @ 0:853dcd4de2a6</h3>
<form class="search" action="/log">
<p><input name="rev" id="search1" type="text" size="30" /></p>
Alexander Plavin
paper: edit search hint to include new feature description
r19796 <div id="hint">Find changesets by keywords (author, files, the commit message), revision
number or hash, or <a href="/help/revsets">revset expression</a>.</div>
Matt Mackall
tests: unify test-highlight
r12445 </form>
<div class="description">a</div>
<table id="changesetEntry">
<tr>
<th class="author">author</th>
<td class="author">&#116;&#101;&#115;&#116;</td>
</tr>
<tr>
<th class="date">date</th>
Brodie Rao
hgweb: fix dynamic date calculation not working under Safari...
r15375 <td class="date age">Thu, 01 Jan 1970 00:00:00 +0000</td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
<tr>
<th class="author">parents</th>
<td class="author"></td>
</tr>
<tr>
<th class="author">children</th>
<td class="author"></td>
</tr>
</table>
<div class="overflow">
<table class="bigtable">
<tr>
<th class="annotate">rev</th>
<th class="line">&nbsp;&nbsp;line source</th>
</tr>
Alexander Plavin
hgweb: make stripes in file annotate view with CSS
r19449 <tbody class="stripes2">
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l1">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l1"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l1"> 1</a> <span class="c">#!/usr/bin/env python</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l2">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l2"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l2"> 2</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l3">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l3"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l3"> 3</a> <span class="sd">&quot;&quot;&quot;Fun with generators. Corresponding Haskell implementation:</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l4">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l4"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l4"> 4</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l5">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l5"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l5"> 5</a> <span class="sd">primes = 2 : sieve [3, 5..]</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l6">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l6"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l6"> 6</a> <span class="sd"> where sieve (p:ns) = p : sieve [n | n &lt;- ns, mod n p /= 0]</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l7">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l7"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l7"> 7</a> <span class="sd">&quot;&quot;&quot;</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l8">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l8"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l8"> 8</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l9">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l9"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l9"> 9</a> <span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l10">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l10"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l10"> 10</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l11">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l11"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l11"> 11</a> <span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l12">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l12"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l12"> 12</a> <span class="sd">&quot;&quot;&quot;Generate all primes.&quot;&quot;&quot;</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l13">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l13"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l13"> 13</a> <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l14">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l14"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l14"> 14</a> <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l15">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l15"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l15"> 15</a> <span class="c"># It is important to yield *here* in order to stop the</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l16">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l16"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l16"> 16</a> <span class="c"># infinite recursion.</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l17">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l17"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l17"> 17</a> <span class="kn">yield</span> <span class="n">p</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l18">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l18"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l18"> 18</a> <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mf">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l19">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l19"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l19"> 19</a> <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l20">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l20"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l20"> 20</a> <span class="kn">yield</span> <span class="n">n</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l21">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l21"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l21"> 21</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l22">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l22"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l22"> 22</a> <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mf">2</span> <span class="o">==</span> <span class="mf">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l23">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l23"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l23"> 23</a> <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mf">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">&lt;</span> <span class="mf">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l24">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l24"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l24"> 24</a> </td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l25">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l25"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l25"> 25</a> <span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l26">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l26"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l26"> 26</a> <span class="kn">import</span> <span class="nn">sys</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l27">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l27"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l27"> 27</a> <span class="kn">try</span><span class="p">:</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l28">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l28"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l28"> 28</a> <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l29">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l29"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l29"> 29</a> <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l30">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l30"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l30"> 30</a> <span class="n">n</span> <span class="o">=</span> <span class="mf">10</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l31">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l31"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l31"> 31</a> <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <tr id="l32">
Matt Mackall
tests: unify test-highlight
r12445 <td class="annotate">
Martin Geisler
paper, monoblue: link correctly to lines in annotate view...
r16577 <a href="/annotate/853dcd4de2a6/primes.py#l32"
Matt Mackall
tests: unify test-highlight
r12445 title="853dcd4de2a6: a">test@0</a>
</td>
Alexander Plavin
hgweb: highlight line which is linked to at annotate view
r19463 <td class="source"><a href="#l32"> 32</a> <span class="kn">print</span> <span class="s">&quot;The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></td>
Matt Mackall
tests: unify test-highlight
r12445 </tr>
Alexander Plavin
hgweb: make stripes in file annotate view with CSS
r19449 </tbody>
Matt Mackall
tests: unify test-highlight
r12445 </table>
</div>
</div>
</div>
Benoit Boissinot
fix broken tests...
r14053 <script type="text/javascript">process_dates()</script>
Matt Mackall
tests: unify test-highlight
r12445
</body>
</html>
hgweb fileannotate, raw
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT 'annotate/tip/primes.py?style=raw') \
Matt Mackall
tests: unify test-highlight
r12445 > | sed "s/test@//" > a
$ echo "200 Script output follows" > b
$ echo "" >> b
$ echo "" >> b
$ hg annotate "primes.py" >> b
$ echo "" >> b
$ echo "" >> b
$ echo "" >> b
$ echo "" >> b
Danek Duvall
solaris: diff -u emits "No differences encountered"...
r20598 $ cmp b a || diff -u b a
Matt Mackall
tests: unify test-highlight
r12445
hgweb filerevision, raw
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT 'file/tip/primes.py?style=raw') \
Matt Mackall
tests: unify test-highlight
r12445 > > a
$ echo "200 Script output follows" > b
$ echo "" >> b
$ hg cat primes.py >> b
Danek Duvall
solaris: diff -u emits "No differences encountered"...
r20598 $ cmp b a || diff -u b a
Matt Mackall
tests: unify test-highlight
r12445
hgweb highlightcss friendly
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'highlightcss' > out
Matt Mackall
tests: unify test-highlight
r12445 $ head -n 4 out
200 Script output follows
/* pygments_style = friendly */
$ rm out
errors encountered
$ cat errors.log
Patrick Mezard
killdaemons: take file argument explicitely...
r17466 $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS
Matt Mackall
tests: unify test-highlight
r12445
Change the pygments style
$ cat > .hg/hgrc <<EOF
> [web]
> pygments_style = fruity
> EOF
hg serve again
$ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
hgweb highlightcss fruity
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'highlightcss' > out
Matt Mackall
tests: unify test-highlight
r12445 $ head -n 4 out
200 Script output follows
/* pygments_style = fruity */
$ rm out
errors encountered
$ cat errors.log
$ cd ..
$ hg init eucjp
$ cd eucjp
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'print("\265\376")' >> eucjp.txt # Japanese kanji "Kyo"
Matt Mackall
tests: unify test-highlight
r12445 $ hg ci -Ama
adding eucjp.txt
$ hgserveget () {
Patrick Mezard
killdaemons: take file argument explicitely...
r17466 > "$TESTDIR/killdaemons.py" $DAEMON_PIDS
Matt Mackall
tests: unify test-highlight
r12445 > echo % HGENCODING="$1" hg serve
> HGENCODING="$1" hg serve -p $HGPORT -d -n test --pid-file=hg.pid -E errors.log
> cat hg.pid >> $DAEMON_PIDS
>
> echo % hgweb filerevision, html
Mads Kiilerich
tests: prepare get-with-headers.py for MSYS...
r17017 > "$TESTDIR/get-with-headers.py" localhost:$HGPORT "file/tip/$2" \
Mads Kiilerich
tests: use (esc) instead of other kinds of string escaping
r12943 > | grep '<div class="parity0 source">'
Matt Mackall
tests: unify test-highlight
r12445 > echo % errors encountered
> cat errors.log
> }
$ hgserveget euc-jp eucjp.txt
% HGENCODING=euc-jp hg serve
% hgweb filerevision, html
% errors encountered
$ hgserveget utf-8 eucjp.txt
% HGENCODING=utf-8 hg serve
% hgweb filerevision, html
% errors encountered
$ hgserveget us-ascii eucjp.txt
% HGENCODING=us-ascii hg serve
% hgweb filerevision, html
% errors encountered
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..