Christian Ebert <blacktrash@gmx.net> [Tue, 14 Jun 2011 20:35:21 +0200] rev 967
Merge with stable
Idan Kamara <idankk86@gmail.com> [Sun, 12 Jun 2011 17:26:20 +0300] rev 966
run-tests: verbose log ignored test
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 11 Jun 2011 15:03:58 +0200] rev 965
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sat, 11 Jun 2011 14:17:25 +0200] rev 964
patch: generalize the use of patchmeta in applydiff()
- Add patchmeta.copy() and emit copies from iterhunks. Modifying patchmeta
instances in applydiff() makes things simpler.
- Rename selectfile() into makepatchmeta(). It is responsible for creating
patchmeta for regular patches.
- Pass patchmeta objects to patchfile() directly
patchmeta instances were associated with git patches, for regular patches we
had to pass additional variables to tell the patch intent to patchfile().
Instead, we generate patchmeta for regular patches and pass them. This will
also help with patch filtering by matcher objects.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 02 Jun 2011 00:12:10 +0100] rev 963
Merge with stable
Augie Fackler <durin42@gmail.com> [Tue, 31 May 2011 20:39:04 -0500] rev 962
run-tests: allow whitelisting tests that should always run
It's desirable to run some tests all the time, for example
test-check-pyflakes.t and test-check-code-hg.py. This allows passing
--whitelist as a path to a file (flag can be specified more than once)
which contains a list of files to whitelist. Whitelisted tests are run
even if they're blacklisted or wouldn't match a --keyword test
run. For example, to do a quick test of usehttp2, one can now do
$ cat > test-whitelist <<EOF
> test-check-pyflakes.t
> test-check-code-hg.py
> EOF
$ (cd tests && ./run-tests.py --extra-config-opt 'ui.usehttp2=true'
> -k http -j 8 --whitelist test-whitelist)
and have all http-specific tests run as well as the two code linters.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 28 May 2011 15:16:55 +0100] rev 961
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sat, 28 May 2011 11:44:27 +0200] rev 960
run-tests: fix --blacklist (broken by 95715c2f90bf)
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 28 May 2011 03:19:16 +0100] rev 959
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Fri, 27 May 2011 21:50:10 +0200] rev 958
patch: use temporary files to handle intermediate copies
git patches may require copies to be handled out-of-order. For instance, take
the following sequence:
* modify a
* copy a into b
Here, we have to generate b from a before its modification. To do so,
applydiff() was scanning for copy metadata and performing the copies before
processing the other changes in-order. While smart and efficient, this approach
complicates things by handling file copies and file creations at different
places and times. While a new file must not exist before being patched a copied
file already exists before applying the first hunk.
Instead of copying the files at their final destination before patching, we
store them in a temporary file location and retrieve them when patching. The
filestore always stores file content in real files but nothing prevents adding
a cache layer. The filestore class was kept separate from fsbackend for at
least two reasons:
- This class is likely to be reused as a temporary result store for a future
repository patching call (entries just have to be extended to contain copy
sources).
- Delegating this role to backends might be more efficient in a repository
backend case: the source files are already available in the repository itself
and do not need to be copied again. It also means that third-parties backend
would have to implement two other methods. If we ever decide to merge the
filestore feature into backend, a minimalistic approach would be to compose
with filestore directly. Keep in mind this copy overhead only applies for
copy/rename sources, and may even be reduced to copy sources which have to
handled ahead of time.
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Fri, 27 May 2011 21:50:09 +0200] rev 957
patch: refactor file creation/removal detection
The patcher has to know if a file is being created or removed to check if the
target already exists, or to actually unlink the file when a hunk emptying it
is applied. This was done by embedding the creation/removal information in the
first (and only) hunk attached to the file.
There are two problems with this approach:
- creation/removal is really a property of the file being patched and not its
hunk.
- for regular patches, file creation cannot be deduced at parsing time: there
are case where the *stripped* file paths must be compared. Modifying hunks
after their creation is clumsy and prevent further refactorings related to
copies handling.
Instead, we delegate this job to selectfile() which has all the relevant
information, and remove the hunk createfile() and rmfile() methods.
[ original upstream message ]
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:46:48 +0300] rev 956
run-tests: fix --blacklist with jobs > 1
filter blacklisted tests before partitioning them
to the children.
maintains the 'Skipped...' output but not the 's'.
[ original upstream message ]
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:46:47 +0300] rev 955
run-tests: slightly simplify blacklist check
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 19 May 2011 00:51:06 +0200] rev 954
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:13 +0200] rev 953
patch: set desired mode when patching, not in updatedir()
This patch and the following aim at merging _updatedir() actions into
_applydiff().
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 18 May 2011 23:30:45 +0200] rev 952
Merge with stable
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 18 May 2011 15:45:57 +0200] rev 951
run-tests: print a newline after all warnings
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 18 May 2011 00:44:15 +0200] rev 950
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:46:15 +0200] rev 949
patch: extract fs access from patchfile into fsbackend
Most filesystem calls are already isolated in patchfile but this is not enough:
renames are performed before patchfile is available and some chmod calls are
even done outside of the applydiff call. Once all these calls are extracted
into a backend class, we can provide cleaner APIs to write to a working
directory context directly into the repository.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 17 May 2011 13:45:25 +0200] rev 948
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:56:26 +0200] rev 947
run-tests: replace chdir() with Popen cwd option
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:54:43 +0200] rev 946
run-tests: make --debug run in the temporary test directory
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:52:28 +0200] rev 945
run-tests: use the common test path on Windows and Java
The alternate one did not run in the test directory and controlling
the jobs execution with threads instead of process made it harder
to fix.
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:41:46 +0200] rev 944
run-tests: ignore timeout when Popen.terminate is unavailable
Popen.terminate was introduced in python 2.6
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:26:50 +0200] rev 943
run-tests: fix hg.bat python reference
hg.bat expects to live in pythonxx/scripts and the python interpreter
to be in pythonxx. run-tests.py file layout is a little different and
python location must be fixed.
[ original upstream message ]
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:24:14 +0200] rev 942
run-tests: fix python executable detection and copy on Windows
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 14 May 2011 13:26:49 +0200] rev 941
Merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 14:58:24 -0500] rev 940
scmutil: drop aliases in cmdutil for match functions
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 12 May 2011 19:45:46 +0200] rev 939
Merge with stable
Martin Geisler <mg@aragost.com> [Thu, 12 May 2011 14:31:07 +0200] rev 938
keyword: use cmdutil.command decorator
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 10 May 2011 01:44:09 +0200] rev 937
Merge with stable
Martin Geisler <mg@aragost.com> [Mon, 09 May 2011 17:20:15 +0200] rev 936
run-tests: remove check on --shell argument
No shell is needed when executing Python tests and finding a good
shell might be difficult/impossible on some platforms (e.g., Windows).
[ original upstream message ]
Idan Kamara <idankk86@gmail.com> [Sat, 07 May 2011 21:01:15 +0300] rev 935
run-tests: take the basepath when constructing the test temp dir
so it's possible to run tests that are outside the test/ dir
[ original upstream message ]
Idan Kamara <idankk86@gmail.com> [Sat, 07 May 2011 20:56:43 +0300] rev 934
run-tests: compare absolute paths in _checkhglib
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Fri, 06 May 2011 20:13:10 +0200] rev 933
Merge with stable
Martin Geisler <mg@lazybytes.net> [Thu, 05 May 2011 20:04:49 +0200] rev 932
run-tests: add --shell command line flag
This makes it easy to test with, say, both /bin/bash and /bin/dash
instead of changing the system-wide /bin/sh.
[ original upstream message ]
Martin Geisler <mg@lazybytes.net> [Thu, 05 May 2011 20:03:43 +0200] rev 931
run-tests: use type of default to convert environment variable
Before, defaults could only be integers, they can now also be strings,
floats and what have you.
[ original upstream message ]
Augie Fackler <durin42@gmail.com> [Wed, 04 May 2011 10:39:10 -0500] rev 930
run-tests.py: correctly handle list options with parallel tasks
[ original upstream message ]
Dan Villiom Podlaski Christiansen <danchr@gmail.com> [Mon, 02 May 2011 10:11:18 +0200] rev 929
prevent transient leaks of file handle by using new helper functions
These leaks may occur in environments that don't employ a reference
counting GC, i.e. PyPy.
This implies:
- changing opener(...).read() calls to opener.read(...)
- changing opener(...).write() calls to opener.write(...)
- changing open(...).read(...) to util.readfile(...)
- changing open(...).write(...) to util.writefile(...)
[ original upstream description ]
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 02 May 2011 19:20:29 +0200] rev 928
localrepo: reuse parent manifest in commitctx if no files have changed
This speeds up the in-memory version of debugbuilddag that I'm
working on considerably for the case where we want to build just
a 00changelog.i (for discovery tests, for instance).
There are a couple of test changes because node ids in tests
have changed.
The changes to the patch names in test-mq-qdelete.t were required
because they could collide with nodeid abbreviations and newly
actually do (patch "c" collides with id "cafe..." for patch "b").
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Sun, 01 May 2011 18:18:31 +0100] rev 927
Merge with stable
Augie Fackler <durin42@gmail.com> [Sun, 01 May 2011 08:00:25 -0500] rev 926
run-tests: add flag to provide extra hgrc options for test runs
[ original upstream message ]
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sat, 30 Apr 2011 17:38:06 +0200] rev 925
tests: move test bundles in a bundles/ subdirectory
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sun, 01 May 2011 10:37:57 +0100] rev 924
Merge with stable
Idan Kamara <idankk86@gmail.com> [Sat, 30 Apr 2011 15:20:27 +0300] rev 923
run-tests: print a new line before writing the diff
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 30 Apr 2011 11:41:20 +0100] rev 922
Merge with stable
Idan Kamara <idankk86@gmail.com> [Fri, 29 Apr 2011 20:29:22 +0300] rev 921
run-tests: don't count test as succeeded if it failed
regressed around ec4ae5727f07
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 30 Apr 2011 01:25:43 +0100] rev 920
Merge with stable
Matt Mackall <mpm@selenic.com> [Mon, 25 Apr 2011 17:01:34 -0500] rev 919
run-tests: do chdir for tests under a lock for thread safety
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Mon, 25 Apr 2011 16:17:08 -0500] rev 918
run-tests: add iolock to vlog
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Apr 2011 23:09:47 +0100] rev 917
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Mon, 25 Apr 2011 18:42:31 +0200] rev 916
run-tests: display diff before prompting with --interactive
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 17:52:46 -0500] rev 915
run-tests: fix some missing i/o locks
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:46:37 -0500] rev 914
run-tests: add a lock for console I/O
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:42:15 -0500] rev 913
run-tests: switch timeout handling from alarm to helper thread
This should be slightly more portable than signals and be compatible
with threaded dispatch.
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Sun, 24 Apr 2011 16:42:11 -0500] rev 912
run-tests: add locking on results struct
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Mon, 25 Apr 2011 01:42:21 +0100] rev 911
Merge with stable
Patrick Mezard <pmezard@gmail.com> [Sun, 24 Apr 2011 23:33:48 +0200] rev 910
run-tests: fix --interactive (after 994ad067ac6e)
- Do not prompt if there is no .err file
- Fix source and target paths
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 14:04:34 -0500] rev 909
run-tests: move test loop into a helper function
[ original upstream message ]
Matt Mackall <mpm@selenic.com> [Fri, 22 Apr 2011 12:24:22 -0500] rev 908
run-tests: use a results dict
[ original upstream message ]