- Oct 15, 2011
-
-
Matt Mackall authored
-
Matt Mackall authored
-
Matt Mackall authored
-
Pierre-Yves David authored
This option allow a strict set of revision to be specified instead of using -s or -b. Rebase will refuse start if striping rebased changeset will strip non rebased changeset. Rebase will refuse to work on set with multiple root.
-
Matt Mackall authored
-
Matt Mackall authored
-
Pierre-Yves David authored
The buildstate function now take a set of revs. Logic related to --source and --base option have been moved in the main rebase function. In the process this fixes a bug where the wrong source changeset might be pick. This explain the changes in hgext/rebase.py
-
Matt Mackall authored
This allows folding external revsets or lists of revsets into a revset expression. Revsets are pre-parsed for validity so that syntax errors don't escape.
-
- Oct 14, 2011
-
-
Angel Ezquerra authored
(tests added by mpm)
-
- Oct 13, 2011
-
-
Greg Ward authored
hgrc(5) already implies that this works, so we might as well support it. Another approach would be to implement this in util.findexe(): that would benefit other callers of findexe(), e.g. convert and anyone calling the user's editor. But findexe() is really implemented in both posix.py and windows.py, so this would make both of those modules depend on util.py: not good. So keep it narrow and only for merge tools.
-
- Oct 15, 2011
-
-
Matt Mackall authored
-
Matt Mackall authored
-
Matt Mackall authored
-
- Oct 14, 2011
-
-
Matt Mackall authored
-
Idan Kamara authored
-
Idan Kamara authored
-
kiilerix authored
Patch specifications in mq is passed around as a string or None. None is generally used when no patch has been specified and there thus is nothing to lookup and the calling code should do something else. One code path did however pass None all the way to lookup. That case was handled in lookup, but there was really need for that, it was undocumented, and it used to cause trouble back when patches was specified as integers.
-
- Oct 31, 2010
-
-
kiilerix authored
Most of the code paths in mq would always pass patch specifications as a string. Patches can be specified by their index, but one code path passed that (through pop) to lookup as an integer - all other code paths used a string. Unfortunately pop and lookup (like many other parts of mq) used the boolean value of the patch specification to see if it was None, and they would thus incorrectly handle patch 0 as None. This patch makes the code comply with the actual internal duck typing of patch specifications: patch indices must be encoded as strings. The (now) unused code for partial and thus incorrect handling of indices as integers is removed.
-
- Oct 14, 2011
-
-
Greg Ward authored
This is mainly about keeping code under the 80-column limit with as few backslashes as possible. I am deliberately not making any logic or behaviour changes here and have restrained myself to a few "peephole" refactorings.
-
Greg Ward authored
- always say "largefile", not "lfile" - cleanup mangled syntax, hopefully correctly (punctuation: it's your friend!) - wrap to 75 columns (where feasible)
-
Greg Ward authored
- tweak wording of some error messages - use consistent capitalization - always say 'largefile', not 'lfile' - fix I18N problems - only raise Abort for errors the user can do something about
-
- Oct 13, 2011
-
-
Greg Ward authored
- fix some ungrammatical/unclear/incorrect comments/docstrings - rewrite some really unclear comments/docstrings - make formatting/style more consistent with the rest of Mercurial (lowercase without period unless it's really multiple sentences) - wrap to 75 columns - always say "largefile(s)", not "lfile(s)" (or "big files") - one space between sentences, not two
-
Na'Tosha Bard authored
-
Na'Tosha Bard authored
-
Idan Kamara authored
-
Idan Kamara authored
-
Idan Kamara authored
-
kiilerix authored
Some errors could leave self.urlopener uninitialized and thus cause strange crashes in __del__. This member variable is now "declared statically" and checked for assignment before use.
-
- Oct 31, 2010
-
-
kiilerix authored
-
- Oct 13, 2011
- Oct 12, 2011
-
-
Matt Mackall authored
-
Matt Mackall authored
-
Matt Mackall authored
-
Matt Mackall authored
-
Matt Mackall authored
-
Augie Fackler authored
This makes it easier for alternate storage backends to not use flat files for bookmarks storage.
-
Idan Kamara authored
This adds doctest like syntax to .t files, that can be interleaved with regular shell code: $ echo -n a > file >>> print open('file').read() a >>> open('file', 'a').write('b') $ cat file ab The syntax is exactly the same as regular doctests, so multiline statements look like this: >>> for i in range(3): ... print i 0 1 2 Each block has its own context, i.e.: >>> x = 0 >>> print x 0 $ echo 'foo' foo >>> print x will result in a NameError. Errors are displayed in standard doctest format: >>> print 'foo' bar --- /home/idan/dev/hg/default/tests/test-test.t +++ /home/idan/dev/hg/default/tests/test-test.t.err @@ -2,3 +2,16 @@ > >>> print 'foo' > bar > EOF + ********************************************************************** + File "/tmp/tmps8X_0ohg-tst", line 1, in tmps8X_0ohg-tst + Failed example: + print 'foo' + Expected: + bar + Got: + foo + ********************************************************************** + 1 items had failures: + 1 of 1 in tmps8X_0ohg-tst + ***Test Failed*** 1 failures. + [1] As for the implementation, it's quite simple: when the test runner sees a line starting with '>>>' it converts it, and all subsequent lines until the next line that begins with '$' to a 'python -m heredoctest <<EOF' call with the proper heredoc to follow. So if we have this test file: >>> for c in 'abcd': ... print c a b c d $ echo foo foo It gets converted to: $ python -m heredoctest <<EOF > >>> for c in 'abcd': > ... print c > a > b > c > d > EOF $ echo foo foo And then processed like every other test file by converting it to a sh script.
-
Idan Kamara authored
Writes stdin to a temp file and doctests it. In the future we might want to spare the temp file and directly call into doctest. Also, with some tweaking it seems possible to adjust the line numbers reported in an error report so they match the ones in the original file.
-