Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16861
revset: implement dagrange directly
This is much faster than the older implementation (~8x).
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16860
revset: turn dagrange into a function
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16859
revset: drop unreachable code
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16858
perf: add a benchmark for revrange
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 21:40:38 +0200] rev 16857
test-tags: enable for Windows
It turns out that MSYS does have a chmod.exe, but it has no effect. So, the
inserted "#if unix-permissions" is somewhat redundant, as the test would pass
without it as well: it would simply write the tag cache, despite what the
comment says.
But I'm actually in favor of inserting the #if, as it makes it clearer what's
going on.
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 21:09:54 +0200] rev 16856
tests: roll test-copy2.t into test-copy.t
Olav Reinert <seroton10@gmail.com> [Sun, 03 Jun 2012 17:49:04 +0200] rev 16855
help: fix keyword search output for extension commands
This patch fixes the help keyword search "hg help -k" to show correct results
in the section listing extension commands.
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:28:43 +0200] rev 16854
help: format all output using RST
This change is the last patch needed to implement help text generation based
only on formatting a single text object marked up with RST.
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:25:40 +0200] rev 16853
help: format command and option list help using RST
This patch changes the function which generates help text about commands and
options to use RST formatting. Tables describing options have been formatted
using RST table markup for some time already, so their appearance does not
change. Command lists, however, change appearance.
To format non-verbose command lists, RST field list markup was chosen, because
it resembles the old format:
<http://docutils.sourceforge.net/docs/user/rst/quickref.html#field-lists>
In the old (hand-coded) format of non-verbose command lists, the left column is
12 characters wide. Our minirst implementation formats field lists with a left
column 14 characters wide, so this patch changes the appearance of help output
correspondingly:
<http://markmail.org/message/krl4cxopsnii7s6z?q=mercurial+reinert+from:%22Olav+Reinert%22&page=2>
The minirst markup most closely resembling the old verbose command lists is
definition lists. But using it would cause a blank line to be inserted between
each command definition, making the output excessively long, and no more
useful than before. To avoid this, I chose to use field lists also for verbose
command help, resulting in output like this example:
add add the specified files on the next commit
annotate, blame
show changeset information by line for each file
clone make a copy of an existing repository
commit, ci commit the specified files or all outstanding changes
diff diff repository (or selected files)
export dump the header and diffs for one or more changesets
forget forget the specified files on the next commit
init create a new repository in the given directory
log, history show revision history of entire repository or files
merge merge working directory with another revision
phase set or show the current phase name
pull pull changes from the specified source
push push changes to the specified destination
qdiff diff of the current patch and subsequent modifications
qinit init a new queue repository (DEPRECATED)
qnew create a new patch
qpop pop the current patch off the stack
qpush push the next patch onto the stack
qrefresh update the current patch
remove, rm remove the specified files on the next commit
serve start stand-alone webserver
status, st show changed files in the working directory
summary, sum summarize working directory state
update, up, checkout, co
update working directory (or switch revisions)
This change is a move towards generating all help text as a list of strings
marked up with RST.
Olav Reinert <seroton10@gmail.com> [Sat, 02 Jun 2012 11:22:33 +0200] rev 16852
help: format extension lists using RST
This change is a move towards generating all help text as a list of strings
marked up with RST.
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 09:06:15 +0200] rev 16851
test-revset: enable for Windows
In MSYS, the test fails like this if the hghave exit at the beginning is
removed:
--- C:\Users\adi\hgrepos\hg-main\tests\test-revset.t
+++ C:\Users\adi\hgrepos\hg-main\tests\test-revset.t.err
@@ -58,7 +58,7 @@
$ hg co 3
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg branch /a/b/c/
- marked working directory as branch /a/b/c/
+ marked working directory as branch a:/b/c/
(branches are permanent and global, did you want a bookmark?)
$ hg ci -Aqm"5 bug"
@@ -252,7 +252,7 @@
2 a-b-c-
3 +a+b+c+
4 -a-b-c-
- 5 /a/b/c/
+ 5 a:/b/c/
6 _a_b_c_
7 .a.b.c.
$ log 'children(ancestor(4,5))'
due to the posix path conversion done by MSYS globally, as explained here
http://www.mingw.org/wiki/Posix_path_conversion
The solution is a bit lame, but it is simple and works: don't use strings that
look like '/a/b', in order not to trigger the path magic done by MSYS.
So, if we can agree not to insist on testing branch names starting with '/',
then this relatively simple patch makes the test pass both on Windows with MSYS
and Linux.
Idan Kamara <idankk86@gmail.com> [Mon, 04 Jun 2012 15:43:16 +0300] rev 16850
graft: restore config option on correct ui
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 18:40:31 +0200] rev 16849
tests: roll test-commit-copy.t into test-commit.t
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 16:59:34 +0200] rev 16848
base85: cast Py_ssize_t values to int (issue3481)
If it outputs a nonsense value, no harm done, it was nonsense to start with.
Adrian Buehlmann <adrian@cadifra.com> [Mon, 04 Jun 2012 19:05:22 +0200] rev 16847
tests: roll test-clone-failure.t into test-clone.t
Adrian Buehlmann <adrian@cadifra.com> [Fri, 01 Jun 2012 13:38:18 +0200] rev 16846
test-clone-failure: enable for Windows using #if
Nikolaj Sjujskij <sterkrig@myopera.com> [Mon, 04 Jun 2012 10:45:56 +0400] rev 16845
help: fix search with `-k` option in non-ASCII locales
Keyword search in help (introduced in 497deec204d1 and a17983680f12 by Augie
Fackler) tries to translate already translated strings, which results in
Unicode errors in gettext when non-ASCII locale is used. Also command
descriptions should be translated before searching there (thanks to FUJIWARA
Katsunori for pointing this out and actual fix), (issue3482).
wujek srujek <wujek.srujek@googlemail.com> [Mon, 04 Jun 2012 18:03:23 +0200] rev 16844
hgweb: fixes linebreak location in gitweb filediff.tmpl view
It is consistent with other templates now and doesn't cause the help link to
(incorrectly) appear on the next line.
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 19:35:45 +0200] rev 16843
test-paths.t: enable for Windows using #if
If the no-msys exit at the beginning is removed, the test fails on Windows with
MSYS with:
--- C:\Users\adi\hgrepos\hg-main\tests\test-paths.t
+++ C:\Users\adi\hgrepos\hg-main\tests\test-paths.t.err
@@ -24,7 +24,7 @@
expand = $TESTTMP/a/foo/bar (glob)
$ SOMETHING=/foo hg paths
dupe = $TESTTMP/b (glob)
- expand = /foo/bar
+ expand = c:/MinGW/msys/1.0/foo/bar
$ hg paths -q
dupe
expand
caused by http://www.mingw.org/wiki/Posix_path_conversion .
Mads Kiilerich <mads@kiilerich.com> [Fri, 01 Jun 2012 02:25:12 +0200] rev 16842
tests: introduce c-style conditional sections in .t tests
This makes it possible to have conditional sections like:
#if windows
$ echo foo
foo
#else
$ echo bar
bar
#endif
The directives and skipped sections are treated like comments, so don't
interleave them with commands and their output.
The parameters to #if are evaluated while preparing the test by passing them
over to hghave. Requirements can thus be negated with 'no-' prefix, and
multiple requirements must all be true to return true.
Adrian Buehlmann <adrian@cadifra.com> [Wed, 30 May 2012 14:28:57 +0200] rev 16841
run-tests: don't add python lines to expected dict
For test input lines of *.t files starting with ' >>> ', the code block for
' >>> '
609: if l.startswith(' >>> '): # python inlines
610: after.setdefault(pos, []).append(l)
was (unsurprisingly) executed, but because there was an "if" instead of an
"elif" on the condition "l.startswith(' ... ')", program execution proceeded
to line 636
635: elif l.startswith(' '): # results
636: # queue up a list of expected results
637: expected.setdefault(pos, []).append(l[2:])
due to the fact that if l starts with ' >>> ' it also starts with ' '.
The net effect was that python command lines in *.t files were (surprisingly)
also added to the "expected" dict.
This caused no externally observable bad behavior, as the "expected" dict was
not consulted for these lines.
Adrian Buehlmann <adrian@cadifra.com> [Sun, 03 Jun 2012 19:35:23 +0200] rev 16840
run-test: replace backslashes in TESTDIR
This may cause troubles in MSYS on Windows.
Adrian Buehlmann <adrian@cadifra.com> [Fri, 25 May 2012 14:24:07 +0200] rev 16839
dispatch: tolerate non-standard version strings in tuplever() (issue3470)
When developing, we may see non-standard version strings of the form
5d64306f39bb+20120525
which caused tuplever() to raise
ValueError: invalid literal for int() with base 10: '5d64306f39bb'
and shadowing the real traceback.
Patrick Mezard <patrick@mezard.eu> [Thu, 24 May 2012 13:05:06 +0200] rev 16838
revset: cache alias expansions
Caching has no performance effect on the revset aliases which triggered
the recent recursive evaluation bug. I wrote it not to feel bad about
expanding several times the same complicated expression.
Adrian Buehlmann <adrian@cadifra.com> [Thu, 24 May 2012 01:30:12 +0200] rev 16837
base85: use Py_ssize_t for string lengths
David Schleimer <dschleimer@fb.com> [Tue, 22 May 2012 15:17:37 -0700] rev 16836
hg-ssh: read-only flag
Allows you to restrict a ssh key to have read-only access to a set of
repos by passing the --read-only flag to hg-ssh.
This is useful in an environment where the number of unix users you
can or are willing to create is limited. In such an environment,
multiple users or applications will share a single unix account. Some
of those applications will likely need read-only access to the
repository. This change makes it possible to grant them such access
without requiring that they use a separate unix account.
Levi Bard <levi@unity3d.com> [Sun, 13 May 2012 10:21:27 +0200] rev 16835
bookmarks: allow existing remote bookmarks to become heads when pushing
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 17:05:31 -0700] rev 16834
util: subclass deque for Python 2.4 backwards compatibility
It turns out that Python 2.4's deque type is lacking a remove method.
We can't implement remove in terms of find, because it doesn't have
find either.
Matt Mackall <mpm@selenic.com> [Sat, 02 Jun 2012 15:35:53 -0500] rev 16833
merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 01 Jun 2012 23:48:27 -0500] rev 16832
Added signature for changeset 85a358df5bbb