Adrian Buehlmann <adrian@cadifra.com> [Tue, 05 Jun 2012 22:46:14 +0200] rev 16875
test-add: enable for Windows
Adrian Buehlmann <adrian@cadifra.com> [Tue, 05 Jun 2012 23:13:45 +0200] rev 16874
test-addremove: remove bits about con.xml
Windows reserved filename warnings are already enough tested in test-add.t.
This enables the test for Windows.
Bryan O'Sullivan <bryano@fb.com> [Tue, 05 Jun 2012 16:52:20 -0700] rev 16873
util: simplify queue management in chunkbuffer
This also fixes a small wire protocol performance regression.
Adrian Buehlmann <adrian@cadifra.com> [Sun, 27 May 2012 18:25:04 +0200] rev 16872
hghave: wrap command in 'sh -c "..."' for has_pyflakes()
Without this, the has_pyflakes() check always fails in MSYS on Windows.
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 17:57:57 -0500] rev 16871
merge with stable
Olav Reinert <seroton10@gmail.com> [Tue, 05 Jun 2012 00:32:18 +0200] rev 16870
help: fix keyword search result formatting
This patch fixes the broken formatting of keyword search results. Some blank
lines were missing from the RST markup, which caused markup to be printed.
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 17:22:09 -0500] rev 16869
help: drop -a from heads syntax summary (
issue3483)
Joshua Redstone <joshua.redstone@fb.com> [Fri, 01 Jun 2012 15:44:13 -0700] rev 16868
revlog: add optional stoprev arg to revlog.ancestors()
This will be used as a step in removing reachable() in a future diff.
Doing it now because bryano is in the process of rewriting ancestors in
C. This depends on bryano's patch to replace *revs with revs in the
declaration of revlog.ancestors.
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 12:45:16 -0700] rev 16867
revlog: descendants(*revs) becomes descendants(revs) (API)
Once again making the API more rational, as with ancestors.
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 12:37:18 -0700] rev 16866
revlog: ancestors(*revs) becomes ancestors(revs) (API)
Accepting a variable number of arguments as the old API did is
deeply ugly, particularly as it means the API can't be extended
with new arguments. Partly as a result, we have at least three
different implementations of the same ancestors algorithm (!?).
Most callers were forced to call ancestors(*somelist), adding to
both inefficiency and ugliness.
Angel Ezquerra <angel.ezquerra@gmail.com> [Tue, 29 May 2012 23:26:55 +0200] rev 16865
config: make sortdict keys() and iterkeys() methods respect the item order
The config.sortdict class is a simple "sorted dictionary" container
class, based on python's regular dict container. The main difference
compared to regular dicts is that sortdicts remember the order in
which items have been added to it.
Without this patch the items() method returns the sortdict elements in
the right order. However, getting the list of keys by using the keys()
or iterkeys() methods, and consequencly, looping through the container
elements in a for loop does not respect that order. This patch fixes
this problem.
Matt Mackall <mpm@selenic.com> [Mon, 04 Jun 2012 16:59:57 -0500] rev 16864
merge with stable
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:19:08 -0700] rev 16863
parsers: replace magic number 64 with symbolic constant
Bryan O'Sullivan <bryano@fb.com> [Fri, 01 Jun 2012 15:50:22 -0700] rev 16862
revset: introduce and use _revsbetween
This is similar in spirit to revlog.nodesbetween, but less ambitious,
much simpler, and ~2x faster.
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