Mads Kiilerich <madski@unity3d.com> [Wed, 17 Apr 2013 03:41:34 +0200] rev 1221
run-tests: introduce --random for running tests in random error
This is convenient when investigating failures one by one to avoid running the
same fixed tests first every time.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sat, 23 Mar 2013 14:43:30 +0000] rev 1220
Merge with stable
Simon Heimberg <simohe@besonet.ch> [Thu, 21 Mar 2013 08:56:21 +0100] rev 1219
run-tests: only sort files when not given as argument
os.listdir returns the files in any order. This has to be sorted.
But when given as argument, the user should be allowed to set any order.
This restores the behaviour before 9848a94e2a.
[ original upstream message ]
Durham Goode <durham@fb.com> [Tue, 12 Mar 2013 10:37:48 -0700] rev 1218
tests: fix test-profile to not depend on HGPROF environment variable
The test-profile test would fail if the user had HGPROF set to another
profiler in their environment. This fix makes the test independent of
that environment variable.
Reverts the previous attempt to fix this, which was not cross platoform.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Thu, 14 Feb 2013 11:33:19 +0000] rev 1217
Merge with stable
Simon Heimberg <simohe@besonet.ch> [Mon, 15 Oct 2012 23:28:45 +0200] rev 1216
tests: inform on Windows about unnecessary glob lines
When glob lines directly match on windows, "/" (and not "\") was output in the
path on the line. No glob matching is necessary in this case.
The test output will look like this (when 5 tests have passed and no 4 has an
unnecessary glob):
...
Info, unnecessary glob: info about some/thing (glob)
..
[ original upstream message ]
Simon Heimberg <simohe@besonet.ch> [Wed, 13 Feb 2013 21:58:52 +0100] rev 1215
tests: quickly check if the glob line already matches the output
This happens when a path with "/" as only glob char is matched on a non windows
platform. (Currently one third of all glob matches.)
The slowdown on windows and the speedup on other os are neglectable.
[ original upstream message ]
Mads Kiilerich <mads@kiilerich.com> [Fri, 08 Feb 2013 22:54:17 +0100] rev 1214
export: show 'Date' header in a format that also is readable for humans
'export' is the official export format and used by patchbomb, but it would only
show date as a timestamp that most humans might find it hard to relate to. It
would be very convenient when reviewing a patch to be able to see what
timestamp the patch will end up with.
Mercurial has always used util.parsedate for parsing these headers. It can
handle 'all' date formats, so we could just as well use a readable one.
'export' will now use the format used by 'log' - which is the format described
as 'Unix date format' in the templating help. We assume that all parsers of '#
HG changeset patch'es can handle that.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Sun, 10 Feb 2013 01:51:28 +0000] rev 1213
Merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 30 Jan 2013 01:24:04 +0100] rev 1212
test: display used python hash seed
We keep using a random seed for each run, but we "compute" it ourself to be able
to reproduce a failed test run.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Fri, 08 Feb 2013 12:11:51 +0000] rev 1211
Merge with stable
Simon Heimberg <simohe@besonet.ch> [Wed, 24 Oct 2012 23:09:31 +0200] rev 1210
run-tests: do not fail on empty tsttest file
Initialize n for not failing on empty tsttest files.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Tue, 29 Jan 2013 22:19:10 +0000] rev 1209
Merge with stable
Mads Kiilerich <madski@unity3d.com> [Tue, 29 Jan 2013 20:03:51 +0100] rev 1208
run-tests.py: inherit PYTHONHASHSEED from environment if set
This makes it possible to fix the seed by using for instance
PYTHONHASHSEED=7 ./run-tests.py ...
This can be very convenient when trying to debug problems that are influenced
by hash values. Try different seed values until you find one that triggers the
bad behaviour and then keep that while debugging.
The value 0 will restore default Python behavior and disable randomization.
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 23 Jan 2013 22:30:58 +0000] rev 1207
Merge with stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 21 Jan 2013 19:40:15 +0100] rev 1206
documentation: update to new filter names
Changeset f3b21beb9802 change filter names but forgot some documentation
updates.
[ original upstream description ]
Christian Ebert <blacktrash@gmx.net> [Sat, 19 Jan 2013 09:40:50 +0000] rev 1205
Merge with stable
Mads Kiilerich <madski@unity3d.com> [Fri, 18 Jan 2013 01:23:51 +0100] rev 1204
run-tests.py: don't let hg run interactively in debug mode
In normal test mode stdin is closed and hg is thus not interactive. In --debug
mode stdin is inherited from the running console and to the tests, and hg could
thus wait in prompts when running on Windows.
See http://selenic.com/pipermail/mercurial-devel/2013-January/047548.html .
Instead set ui.interactive=False to make Mercurial non-interactive. Other
commands might still work differently in the --debug environment.
This should solve the problem with hg waiting for input but still make it
possible to add --debugger to hg in a test and run run-tests.py with --debug.
[ original upstream message ]
Mads Kiilerich <madski@unity3d.com> [Fri, 18 Jan 2013 01:16:16 +0100] rev 1203
run-tests.py: backout "don't use console for stdin when running in debug mode"
f5842787a958 caused that some kind of interactive debugging no longer was
possible - such as running hg with --debugger in a test run with run-tests.py
--debug .
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 16 Jan 2013 20:56:02 +0000] rev 1202
Merge with stable
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Wed, 16 Jan 2013 14:26:19 +0100] rev 1201
get-with-headers: add a --headeronly switch
In some case we do not care about the actual rendering.
[ original upstream message ]
Mads Kiilerich <madski@unity3d.com> [Wed, 16 Jan 2013 02:01:11 +0100] rev 1200
tests: make test-hgweb.t output stable
Instability introduced in combination of a4d7fd7ad1f7 and e389a25e7e60.
[ original upstream message ]
Mads Kiilerich <madski@unity3d.com> [Tue, 15 Jan 2013 20:54:57 +0100] rev 1199
serve: don't send any content headers with 304 responses
Fixes HTTP protocol violation introduced in cf5c76017e11. 'hg serve' would show
a stacktrace when loading pages that not had been modified.
There was test coverage for this, but the wrong response headers wasn't shown
and thus not detected.
[ original upstream message ]
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 16 Jan 2013 00:09:26 +0100] rev 1198
destroyed: drop complex branchcache rebuilt logic
The strip code used a trick to lower the cost of branchcache update after a
strip. However is less necessary since we have branchcache collaboration.
Invalid branchcache are likely to be cheaply rebuilt again a near subset of the
repo.
Moreover, this trick would need update to be relevant in the now filtered
repository world. It currently update the unfiltered branchcache that few people
cares about. Make it smarter on that aspect would need complexes update of the
calling logic
So this mechanism is:
- Arguably needed,
- Currently irrelevant,
- Hard to update
and I'm dropping it.
We now update the branchcache in all case by courtesy of the read only reader.
This changeset have a few expected impact on the testsuite are different cache
are updated.
[ original upstream message ]
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 16 Jan 2013 00:08:08 +0100] rev 1197
branchmap: update cache of 'unserved' filter on new changesets
The `commitctx` and `addchangegroup` methods of repo upgrade branchcache after
completion. This behavior aims to keep the branchcache in sync for read only
process as hgweb. See ee317dbfb9d0 for details.
Since changelog filtering is used, those calls only update the cache for unfiltered repo.
One of no interest for typical read only process like hgweb.
Note: By chance in basic case, `repo.unfiltered() == repo.filtered('unserved')`
This changesets have the "unserved" cache updated instead. I think this is the
only cache that matter for hgweb.
We could imagine updating all possible branchcaches instead but:
- I'm not sure it would have any benefit impact. It may even increase the odd of
all cache being invalidated.
- This is more complicated change.
So I'm going for updating a single cache only which is already better that
updating a cache nobody cares about.
This changeset have a few expected impact on the testsuite are different cache
are updated.
[ original upstream message ]
Mads Kiilerich <madski@unity3d.com> [Tue, 15 Jan 2013 23:30:10 +0100] rev 1196
tests: run with PYTHONHASHSEED=random
Python set and dict iteration order is in principle undefined but usually
'quite stable'. Setting PYTHONHASHSEED=random will make the iteration order
more random in Python 2.6.8 and 2.7.3 and where it has been backported. This
can thus help spot dependencies on undefined behaviour and prevent future
problems.
[ original upstream message ]
Bryan O'Sullivan <bryano@fb.com> [Tue, 15 Jan 2013 13:33:28 -0800] rev 1195
run-tests: exit cleanly if parallel run is interrupted
If interrupted while running with "--jobs N", run-tests asynchronously
spewed a bunch of output and backtraces from both the master and
slave processes, leaving the terminal full of goop. This patch makes
it behave more sensibly.
[ original upstream message ]
Kevin Bullock <kbullock@ringworld.org> [Sun, 13 Jan 2013 01:39:16 -0600] rev 1194
filtering: rename filters to their antonyms
Now that changelog filtering is in place, it's become evident that
naming the filters according to the set of revs _not_ included in the
filtered changelog is confusing. This is especially evident in the
collaborative branch cache scheme.
This changes the names of the filters to reflect the revs that _are_
included:
hidden -> visible
unserved -> served
mutable -> immutable
impactable -> base
repoview.filteredrevs is renamed to filterrevs, so that callers read a
bit more sensibly, e.g.:
filterrevs('visible') # filter revs according to what's visible
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Fri, 11 Jan 2013 18:33:15 +0000] rev 1193
Merge with default
Christian Ebert <blacktrash@gmx.net> [Thu, 10 Jan 2013 16:25:06 +0000] rev 1192
test: improve grammar and spelling in branchcache note
See: 769eb1b179b5