Mon, 30 Jan 2012 17:37:45 +0100 mq: qimport need wlock for --push - do that after releasing lock stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 30 Jan 2012 17:37:45 +0100] rev 16681
mq: qimport need wlock for --push - do that after releasing lock qimport locking was introduced for phases in 29ea059be33c.
Sat, 12 May 2012 20:06:02 +0200 tag: run commit hook when lock is released (issue3344) stable
Mads Kiilerich <mads@kiilerich.com> [Sat, 12 May 2012 20:06:02 +0200] rev 16680
tag: run commit hook when lock is released (issue3344)
Sat, 12 May 2012 20:25:33 +0200 parsers: strictly check for 20-byte hashes where they're required stable
Bryan O'Sullivan <bryano@fb.com> [Sat, 12 May 2012 20:25:33 +0200] rev 16679
parsers: strictly check for 20-byte hashes where they're required
Sat, 12 May 2012 22:12:54 +0200 templater: handle SyntaxError when parsing ui.logtemplate stable
Martin Geisler <martin@geisler.net> [Sat, 12 May 2012 22:12:54 +0200] rev 16678
templater: handle SyntaxError when parsing ui.logtemplate Before, Mercurial would crash with a traceback ending with SyntaxError: unmatched quotes if you configured [ui] logtemplate = {rev}\n The SyntaxError is now catched and the string is re-parsed without requiring quotes.
Tue, 08 May 2012 15:31:14 -0300 i18n-pt_BR: synchronized with 95ca6c8b38da stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Tue, 08 May 2012 15:31:14 -0300] rev 16677
i18n-pt_BR: synchronized with 95ca6c8b38da
Fri, 11 May 2012 18:41:04 +0200 progress: fix indentation
Martin Geisler <mg@lazybytes.net> [Fri, 11 May 2012 18:41:04 +0200] rev 16676
progress: fix indentation
Fri, 11 May 2012 15:13:13 +0200 test-progress: fix whitespace typo
Martin Geisler <mg@lazybytes.net> [Fri, 11 May 2012 15:13:13 +0200] rev 16675
test-progress: fix whitespace typo
Sat, 12 May 2012 13:20:26 +0200 merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 12 May 2012 13:20:26 +0200] rev 16674
merge with stable
Wed, 25 Apr 2012 01:35:39 +0200 tests: unify the last sh tests
Mads Kiilerich <mads@kiilerich.com> [Wed, 25 Apr 2012 01:35:39 +0200] rev 16673
tests: unify the last sh tests This requires a slightly smarter check-code check for sed output filtering.
Wed, 25 Apr 2012 01:35:39 +0200 tests: run most check-code sh checks on continued lines too
Mads Kiilerich <mads@kiilerich.com> [Wed, 25 Apr 2012 01:35:39 +0200] rev 16672
tests: run most check-code sh checks on continued lines too Some false errors are degraded to warnings and whitelisted.
Fri, 11 May 2012 15:09:06 +0200 merge with main
Martin Geisler <mg@lazybytes.net> [Fri, 11 May 2012 15:09:06 +0200] rev 16671
merge with main
Fri, 11 May 2012 13:42:37 +0200 children: use hg reST role for example
Martin Geisler <mg@lazybytes.net> [Fri, 11 May 2012 13:42:37 +0200] rev 16670
children: use hg reST role for example
Fri, 11 May 2012 04:42:29 -0500 fetch: mark extension as deprecated
Augie Fackler <raf@durin42.com> [Fri, 11 May 2012 04:42:29 -0500] rev 16669
fetch: mark extension as deprecated
Fri, 11 May 2012 06:15:46 -0500 children: mark extension as deprecated
Augie Fackler <raf@durin42.com> [Fri, 11 May 2012 06:15:46 -0500] rev 16668
children: mark extension as deprecated
Fri, 11 May 2012 14:00:51 +0200 extensions: don't suggest commands from deprecated extensions
Martin Geisler <mg@lazybytes.net> [Fri, 11 May 2012 14:00:51 +0200] rev 16667
extensions: don't suggest commands from deprecated extensions
Fri, 11 May 2012 04:33:33 -0500 extensions: fix documentation of disabledcmd return value
Augie Fackler <raf@durin42.com> [Fri, 11 May 2012 04:33:33 -0500] rev 16666
extensions: fix documentation of disabledcmd return value
Sat, 12 May 2012 10:55:08 +0200 revlog: speed up prefix matching against nodes
Bryan O'Sullivan <bryano@fb.com> [Sat, 12 May 2012 10:55:08 +0200] rev 16665
revlog: speed up prefix matching against nodes The radix tree already contains all the information we need to determine whether a short string is an unambiguous node identifier. We now make use of this information. In a kernel tree, this improves the performance of "hg log -q -r24bf01de75" from 0.27 seconds to 0.06.
Sat, 12 May 2012 10:55:08 +0200 parsers: ensure that nullid is always present in the radix tree
Bryan O'Sullivan <bryano@fb.com> [Sat, 12 May 2012 10:55:08 +0200] rev 16664
parsers: ensure that nullid is always present in the radix tree
Sat, 12 May 2012 10:55:07 +0200 parsers: allow hex keys
Bryan O'Sullivan <bryano@fb.com> [Sat, 12 May 2012 10:55:07 +0200] rev 16663
parsers: allow hex keys
Sat, 12 May 2012 12:23:49 +0200 merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 12 May 2012 12:23:49 +0200] rev 16662
merge with stable
Sat, 12 May 2012 10:20:57 +0200 revset: add function for matching extra data (issue2767)
Henrik Stuart <hg@hstuart.dk> [Sat, 12 May 2012 10:20:57 +0200] rev 16661
revset: add function for matching extra data (issue2767)
Fri, 11 May 2012 18:51:35 +0200 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com> [Fri, 11 May 2012 18:51:35 +0200] rev 16660
graft: implement --log (issue3438)
Sat, 12 May 2012 00:24:07 +0200 phase: make if abort on nullid for the good reason
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:24:07 +0200] rev 16659
phase: make if abort on nullid for the good reason The good reason being you cannot call retractboundary() on nullid, not revset.set() cannot resolve '-1'.
Sat, 12 May 2012 00:24:07 +0200 phases: make advance/retractboundary() atomic
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:24:07 +0200] rev 16658
phases: make advance/retractboundary() atomic Before this, if advanceboundary() failed after updating some roots but before calling retractboundary(), the phase cache would be left in an invalid state, marked dirty, and written as such. This patch approach is to turn advance/retractboundary() into phasecache methods, then operate on copies and merge them back on success. With the same technique, we can ensure the atomicity of combinations of advance/retractboundary() calls, like those performed in changegroup handling code.
Sat, 12 May 2012 00:24:07 +0200 phases: introduce phasecache
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:24:07 +0200] rev 16657
phases: introduce phasecache The original motivation was changectx.phase() had special logic to correctly lookup in repo._phaserev, including invalidating it when necessary. And at other places, repo._phaserev was accessed directly. This led to the discovery that phases state including _phaseroots, _phaserev and _dirtyphase was manipulated in localrepository.py, phases.py, repair.py, etc. phasecache helps encapsulating that. This patch replaces all phase state in localrepo with phasecache and adjust related code except for advance/retractboundary() in phases. These still access to phasecache internals directly. This will be addressed in a followup.
Sat, 12 May 2012 00:19:30 +0200 mq: introduce mq.check setting
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:19:30 +0200] rev 16656
mq: introduce mq.check setting When: [mq] check = True is set, qpush, qpop and qgoto behave as if -c/--check were passed. If incompatible options like -f/--force or --exact are set, this setting is ignored. This setting enables what many users expect mq default behaviour to be.
Sat, 12 May 2012 00:19:30 +0200 mq: introduce qgoto --check
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:19:30 +0200] rev 16655
mq: introduce qgoto --check
Sat, 12 May 2012 00:19:30 +0200 mq: introduce qpush --check
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:19:30 +0200] rev 16654
mq: introduce qpush --check qpush --check let you qpush with uncommitted files not overlapping patched files.
Sat, 12 May 2012 00:19:30 +0200 mq: introduce qpop --check
Patrick Mezard <patrick@mezard.eu> [Sat, 12 May 2012 00:19:30 +0200] rev 16653
mq: introduce qpop --check qpop --check let you qpop with uncommitted files if they do not intersect with files touched by the popped patches.
Sat, 12 May 2012 09:43:12 +0200 pager: check if signal.SIGPIPE exists stable
David Soria Parra <dsp@php.net> [Sat, 12 May 2012 09:43:12 +0200] rev 16652
pager: check if signal.SIGPIPE exists We have to check for signal.SIGPIPE before we attempt to set it.
Sat, 12 May 2012 10:02:47 +0200 diffhelpers: harden testhunk stable
Matt Mackall <mpm@selenic.com> [Sat, 12 May 2012 10:02:47 +0200] rev 16651
diffhelpers: harden testhunk
Sat, 12 May 2012 16:10:01 +0900 patch: fix segfault against unified diffs which start line is zero stable
Yuya Nishihara <yuya@tcha.org> [Sat, 12 May 2012 16:10:01 +0900] rev 16650
patch: fix segfault against unified diffs which start line is zero Since 2b1ec74c961f, if a chunk starts with "@@ -0,1", oldstart turns into a negative value. Because diffhelpers.testhunk() doesn't expect negative bstart, it bypasses "alen > blen - bstart" condition and segfaults at "PyList_GET_ITEM(b, i + bstart)".
Fri, 11 May 2012 22:48:19 -0700 bugzilla: fix transport initialization on python 2.4 stable
Steven Stallion <sstallion@gmail.com> [Fri, 11 May 2012 22:48:19 -0700] rev 16649
bugzilla: fix transport initialization on python 2.4
Tue, 08 May 2012 15:31:00 -0700 bisect: set HG_NODE when runing a command
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 15:31:00 -0700] rev 16648
bisect: set HG_NODE when runing a command When running a command, set the environment variable HG_NODE to tell the command which changeset is being visited.
Tue, 08 May 2012 15:29:09 -0700 bisect: track the current changeset (issue3382)
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 15:29:09 -0700] rev 16647
bisect: track the current changeset (issue3382) Introduce a new revset feature, bisect(current), that identifies the changeset currently being bisected.
Fri, 04 May 2012 15:56:45 -0400 localrepo: optimize internode status calls using withflags
Jesse Glick <jesse.glick@oracle.com> [Fri, 04 May 2012 15:56:45 -0400] rev 16646
localrepo: optimize internode status calls using withflags Introduce manifestdict.withflags() to get a set of all files which have any flags set, since these are likely to be a minority. Otherwise checking .flags() for every file is a lot of dictionary lookups and is quite slow.
Fri, 04 May 2012 15:54:55 -0400 localrepo: optimize internode status calls using match.always
Jesse Glick <jesse.glick@oracle.com> [Fri, 04 May 2012 15:54:55 -0400] rev 16645
localrepo: optimize internode status calls using match.always Introduce match.always() to check if a match object always says yes, i.e. None was passed in. If so, mfmatches should not bother iterating every file in the repository.
Fri, 11 May 2012 23:11:43 +0200 largefiles: add --all-largefiles flag to clone (issue3188)
Na'Tosha Bard <natosha@unity3d.com> [Fri, 11 May 2012 23:11:43 +0200] rev 16644
largefiles: add --all-largefiles flag to clone (issue3188)
Fri, 04 May 2012 16:00:33 -0500 httpclient: update to revision 892730fe7f46 of httpplus
Augie Fackler <raf@durin42.com> [Fri, 04 May 2012 16:00:33 -0500] rev 16643
httpclient: update to revision 892730fe7f46 of httpplus
Sat, 12 May 2012 00:06:11 +0200 merge with stable
Matt Mackall <mpm@selenic.com> [Sat, 12 May 2012 00:06:11 +0200] rev 16642
merge with stable
Tue, 08 May 2012 14:46:04 -0700 parsers: use the correct maximum radix tree depth stable
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:46:04 -0700] rev 16641
parsers: use the correct maximum radix tree depth Previously, we would not use more than half of a SHA-1 hash when constructing and searching the tree.
Wed, 09 May 2012 18:45:14 +0200 revset: make matching() preserve input revision order stable
Patrick Mezard <patrick@mezard.eu> [Wed, 09 May 2012 18:45:14 +0200] rev 16640
revset: make matching() preserve input revision order
Thu, 10 May 2012 14:17:05 -0400 revset: documentation typo "metatadata" stable
Jesse Glick <jesse.glick@oracle.com> [Thu, 10 May 2012 14:17:05 -0400] rev 16639
revset: documentation typo "metatadata"
Fri, 11 May 2012 15:32:22 +0200 largefiles: fix deletion of multiple missing largefiles (issue3329) stable
Na'Tosha Bard <natosha@unity3d.com> [Fri, 11 May 2012 15:32:22 +0200] rev 16638
largefiles: fix deletion of multiple missing largefiles (issue3329)
Fri, 11 May 2012 15:15:50 +0200 addremove: document default similarity behavior (issue3429) stable
Levi Bard <levi@unity3d.com> [Fri, 11 May 2012 15:15:50 +0200] rev 16637
addremove: document default similarity behavior (issue3429)
Fri, 11 May 2012 14:42:26 +0200 largefiles: follow normal codepath for addremove if non-largefiles repo (issue3249) stable
Na'Tosha Bard <natosha@unity3d.com> [Fri, 11 May 2012 14:42:26 +0200] rev 16636
largefiles: follow normal codepath for addremove if non-largefiles repo (issue3249)
Fri, 11 May 2012 16:57:26 +0200 mq: add --no-backup for qpush/qpop/qgoto stable
Patrick Mezard <patrick@mezard.eu> [Fri, 11 May 2012 16:57:26 +0200] rev 16635
mq: add --no-backup for qpush/qpop/qgoto
Fri, 11 May 2012 16:18:47 +0200 mq: backup local changes in qpush --force stable
Patrick Mezard <patrick@mezard.eu> [Fri, 11 May 2012 16:18:47 +0200] rev 16634
mq: backup local changes in qpush --force qpush help says the following about --force: 1- When -f/--force is applied, all local changes in patched files will be lost. 2- Apply on top of local changes In practice, qpush --force will attempt to apply the patch on top of local changes, and on success will merge them in the pushed patch. On failure, patched files will contain a mix of local changes (where the patch could not apply) and a mix of patch changes (were it applied). So, local changes are less lost than entangled with a mass of other changes. This patch makes qpush --force backup all locally modified files touched by the next patch being applied. When multiple patches are being pushed, this logic is repeated for each patch. Note that modified but successfully patched files are preserved as well.
Fri, 11 May 2012 16:17:02 +0200 mq: backup local changes in qpop --force (issue3433) stable
Patrick Mezard <patrick@mezard.eu> [Fri, 11 May 2012 16:17:02 +0200] rev 16633
mq: backup local changes in qpop --force (issue3433)
Fri, 11 May 2012 16:08:49 +0200 pager: remove quiet flag stable
David Soria Parra <dsp@php.net> [Fri, 11 May 2012 16:08:49 +0200] rev 16632
pager: remove quiet flag With the pager running as a child process, exiting the pager doesn't result in a broken pipe message. To distinguish the exit broken pipe code from a mercurial abort we register the default action for SIGPIPE. This results in a 141 exit code instead of a 255. On windows SIGPIPE doesn't exists and a ValueError will be thrown.
Fri, 11 May 2012 15:45:37 +0200 pager: preserve Hg's exit code (and fix Windows support) (issue3225) stable
Brodie Rao <brodie@sf.io> [Fri, 11 May 2012 15:45:37 +0200] rev 16631
pager: preserve Hg's exit code (and fix Windows support) (issue3225) This changes how the pager extension invokes the pager. Prior to this change, the extension would fork Hg and exec the pager in the parent process. This loses Hg exit code, and it doesn't work on Windows. Now the pager is invoked using the subprocess library, and an atexit handler is registered that makes Hg wait for the pager to exit before it exits itself. Note that if you exit the pager before Hg is done running, you'll get an exit code of 255, which is caused by Python blowing up due to a broken pipe. If you set pager.quiet=True, you'll get the OS-level return code of 141.
Fri, 11 May 2012 18:33:45 +0300 amend: preserve extra dict (issue3430) stable
Idan Kamara <idankk86@gmail.com> [Fri, 11 May 2012 18:33:45 +0300] rev 16630
amend: preserve extra dict (issue3430)
Wed, 09 May 2012 09:58:50 +0200 parser: use PyInt_FromSsize_t in index_stats
Adrian Buehlmann <adrian@cadifra.com> [Wed, 09 May 2012 09:58:50 +0200] rev 16629
parser: use PyInt_FromSsize_t in index_stats Eliminates mercurial/parsers.c(515) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'long', possible loss of data mercurial/parsers.c(520) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'long', possible loss of data mercurial/parsers.c(521) : warning C4244: 'function' : conversion from 'Py_ssize_t' to 'long', possible loss of data when compiling for Windows x64 target using the Microsoft compiler. PyInt_FromSsize_t does not exist for Python 2.4 and earlier, so we define a fallback in util.h to use PyInt_FromLong when compiling for Python 2.4.
Fri, 11 May 2012 10:53:12 -0700 localrepo: cleanup var names and comments
redstone [Fri, 11 May 2012 10:53:12 -0700] rev 16628
localrepo: cleanup var names and comments Cosmetic cleanups. Fix comment typo referring to the notion of multiple tips. Make variable describing a generator end in 'gen'. Fix another var containing a node not to end with 'rev'.
Fri, 11 May 2012 17:26:58 +0200 transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com> [Fri, 11 May 2012 17:26:58 +0200] rev 16627
transplant: manually transplant pullable changesets with --log
Thu, 10 May 2012 18:52:07 +0200 phases: stop modifying localrepo in writeroots()
Patrick Mezard <patrick@mezard.eu> [Thu, 10 May 2012 18:52:07 +0200] rev 16626
phases: stop modifying localrepo in writeroots() Also pass the phaseroots being written for clarity. repo._dirtyphases was already reset to False at call site.
Thu, 10 May 2012 18:52:04 +0200 phases: stop modifying localrepo in readroots()
Patrick Mezard <patrick@mezard.eu> [Thu, 10 May 2012 18:52:04 +0200] rev 16625
phases: stop modifying localrepo in readroots() phasedefaults is also passed explicitely to help the casual reader understand where it is used without grepping all the sources.
Thu, 10 May 2012 18:21:15 +0200 phases: call filterunknown() in readroots()
Patrick Mezard <patrick@mezard.eu> [Thu, 10 May 2012 18:21:15 +0200] rev 16624
phases: call filterunknown() in readroots() One less function manipulating localrepo state.
Thu, 10 May 2012 18:21:15 +0200 repair: no need to call filterunknown() in strip()
Patrick Mezard <patrick@mezard.eu> [Thu, 10 May 2012 18:21:15 +0200] rev 16623
repair: no need to call filterunknown() in strip() Calling strip() will eventually trigger localrepo.destroyed() which will invalidate _parseroots. It will call filterunknown() upon reload. Changes to test-keyword.t are related to commit --debug running after either qpop or rollback.
Thu, 10 May 2012 18:21:15 +0200 test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu> [Thu, 10 May 2012 18:21:15 +0200] rev 16622
test-phases: test changing null revision phase The behaviour is correct but for bad reasons: the repo.set() call in phase command fails for '-1'. It should be rejected explicitely by phase boundary commands, sadly this is hard to do because phase changes are not applied atomically.
Fri, 11 May 2012 14:48:24 +0200 merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 11 May 2012 14:48:24 +0200] rev 16621
merge with stable
Fri, 11 May 2012 02:32:26 -0700 tests: fix test-parseindex2.py when run with --pure stable
Bryan O'Sullivan <bryano@fb.com> [Fri, 11 May 2012 02:32:26 -0700] rev 16620
tests: fix test-parseindex2.py when run with --pure
Fri, 11 May 2012 01:55:33 -0700 changelog: ensure that nodecache is valid (issue3428) stable
Bryan O'Sullivan <bryano@fb.com> [Fri, 11 May 2012 01:55:33 -0700] rev 16619
changelog: ensure that nodecache is valid (issue3428) This ensures that an out-of-process hook can see an incoming changegroup.
Tue, 08 May 2012 14:48:50 -0700 parsers: change the type of nt_level
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:48:50 -0700] rev 16618
parsers: change the type of nt_level We should generally prefer Py_ssize_t whenever we are talking about lengths.
Tue, 08 May 2012 14:48:48 -0700 parsers: change the type signature of hexdigit
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:48:48 -0700] rev 16617
parsers: change the type signature of hexdigit An upcoming change will make use of this.
Tue, 08 May 2012 14:48:44 -0700 parsers: allow nt_find to signal an ambiguous match
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:48:44 -0700] rev 16616
parsers: allow nt_find to signal an ambiguous match
Tue, 08 May 2012 14:48:39 -0700 parsers: factor out radix tree initialization
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:48:39 -0700] rev 16615
parsers: factor out radix tree initialization
Tue, 08 May 2012 14:46:06 -0700 parsers: update ntrev when we stop scanning
Bryan O'Sullivan <bryano@fb.com> [Tue, 08 May 2012 14:46:06 -0700] rev 16614
parsers: update ntrev when we stop scanning This prevents us from inserting some nodes twice, wasting work.
Tue, 08 May 2012 15:46:51 -0500 tests: set a standard terminal type
Matt Mackall <mpm@selenic.com> [Tue, 08 May 2012 15:46:51 -0500] rev 16613
tests: set a standard terminal type This makes test-ui-color.py happy when run in a dumb terminal. Spotted by Jesse Glick <jesse.glick@oracle.com>
Sun, 06 May 2012 17:12:22 -0700 branches: quiet option observes other parameters
Travis Herrick <tthetoad@gmail.com> [Sun, 06 May 2012 17:12:22 -0700] rev 16612
branches: quiet option observes other parameters
Tue, 08 May 2012 23:59:39 +0400 build: fix hgrc manpage building with docutils 0.9 stable
Nikolaj Sjujskij <sterkrig@myopera.com> [Tue, 08 May 2012 23:59:39 +0400] rev 16611
build: fix hgrc manpage building with docutils 0.9 Since docutils 0.9, `roman` module has been moved from module directory root (i.e. `site-packages/roman.py`) to `docutils.utils` module. Therefore `import roman` statement should be wrapped in `try: ... except ImportError: ...` block to handle importing correctly.
Wed, 09 May 2012 02:46:58 +0300 context: fix call to util.safehasattr
Idan Kamara <idankk86@gmail.com> [Wed, 09 May 2012 02:46:58 +0300] rev 16610
context: fix call to util.safehasattr
Sat, 05 May 2012 12:21:22 +0200 alias: inherit command optionalrepo flag (issue3298) stable
Patrick Mezard <patrick@mezard.eu> [Sat, 05 May 2012 12:21:22 +0200] rev 16609
alias: inherit command optionalrepo flag (issue3298) Commands working without a repository, like "init", are listed in commands.norepo. Commands optionally using a repository, like "showconfig", are listed in commands.optionalrepo. Command aliases were inheriting the former but not the latter.
Mon, 07 May 2012 00:52:11 +0200 tests: improve test of hg-ssh and make the test pass on windows stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 07 May 2012 00:52:11 +0200] rev 16608
tests: improve test of hg-ssh and make the test pass on windows
Mon, 07 May 2012 00:52:08 +0200 hg-ssh: exit with 255 instead of -1 on error stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 07 May 2012 00:52:08 +0200] rev 16607
hg-ssh: exit with 255 instead of -1 on error Unix sh would cast -1 to 255 anyway, but on windows -1 become 0. Better be explicit with the 255 everywhere.
Mon, 07 May 2012 00:49:01 +0200 hg-ssh: use %s for printing paths in error messages stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 07 May 2012 00:49:01 +0200] rev 16606
hg-ssh: use %s for printing paths in error messages This avoids \\ if this ever is run on windows - for example in the test suite.
Mon, 07 May 2012 00:48:51 +0200 tests: accept \ in test-casefolding on windows stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 07 May 2012 00:48:51 +0200] rev 16605
tests: accept \ in test-casefolding on windows
Tue, 08 May 2012 11:20:07 +0200 parsers: statically initializing tp_new to PyType_GenericNew is not portable stable
Adrian Buehlmann <adrian@cadifra.com> [Tue, 08 May 2012 11:20:07 +0200] rev 16604
parsers: statically initializing tp_new to PyType_GenericNew is not portable As detailed on http://docs.python.org/extending/newtypes.html (quote): "In this case, we can just use the default implementation provided by the API function PyType_GenericNew(). We’d like to just assign this to the tp_new slot, but we can’t, for portability sake. On some platforms or compilers, we can’t statically initialize a structure member with a function defined in another C module, so, instead, we’ll assign the tp_new slot in the module initialization function just before calling PyType_Ready()." Fixes "gcc (GCC) 3.4.5 (mingw-vista special r3)" complaining with: mercurial/parsers.c:1096: error: initializer element is not constant mercurial/parsers.c:1096: error: (near initialization for `indexType.tp_new')
Tue, 08 May 2012 12:05:45 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 08 May 2012 12:05:45 -0500] rev 16603
merge with stable
Sun, 06 May 2012 14:37:51 -0500 context: add copies method with caching
Matt Mackall <mpm@selenic.com> [Sun, 06 May 2012 14:37:51 -0500] rev 16602
context: add copies method with caching
Sun, 06 May 2012 14:20:53 -0500 filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com> [Sun, 06 May 2012 14:20:53 -0500] rev 16601
filectx: handle some other simple cases for finding merge ancestor
Sun, 06 May 2012 14:15:17 -0500 graft: remark on empty graft
Matt Mackall <mpm@selenic.com> [Sun, 06 May 2012 14:15:17 -0500] rev 16600
graft: remark on empty graft
Fri, 04 May 2012 17:27:14 -0500 filectx: make ancestor require actx
Matt Mackall <mpm@selenic.com> [Fri, 04 May 2012 17:27:14 -0500] rev 16599
filectx: make ancestor require actx When grafting or rebasing, we need to know the target ancestor.
Mon, 07 May 2012 21:49:45 +0200 pure/base85: align exception type/msg on base85.c stable
Patrick Mezard <patrick@mezard.eu> [Mon, 07 May 2012 21:49:45 +0200] rev 16598
pure/base85: align exception type/msg on base85.c brendan mentioned on IRC that b64decode raises a TypeError too, but while the previous exception type may be better in general, it is much easier to make it behave like the related C code and changes nothing for mercurial itself.
Mon, 07 May 2012 15:40:50 -0500 parsers: fix refcount bug on corrupt index stable
Matt Mackall <mpm@selenic.com> [Mon, 07 May 2012 15:40:50 -0500] rev 16597
parsers: fix refcount bug on corrupt index When we encounter a corrupt index, we "fail" the init but our destructor still gets called. On some systems, this was causing us to attempt to decref a dangling to self->data.
Fri, 04 May 2012 14:19:55 +0200 subrepo: do not traceback on .hgsubstate parsing errors stable
Patrick Mezard <patrick@mezard.eu> [Fri, 04 May 2012 14:19:55 +0200] rev 16596
subrepo: do not traceback on .hgsubstate parsing errors Note that aborting in subrepo.state() prevents "repairing" commands like revert to be issued. The user will have to edit the .hgsubstate manually (but he probably had already otherwise this would not be failing). The same behaviour already happens with invalid .hgsub entries.
Fri, 04 May 2012 14:19:52 +0200 subrepo: ignore blank lines in .hgsubstate (issue3424) stable
Patrick Mezard <patrick@mezard.eu> [Fri, 04 May 2012 14:19:52 +0200] rev 16595
subrepo: ignore blank lines in .hgsubstate (issue3424) Reported by Sebastian Krysmanski <infomail@lordb.de>
Fri, 04 May 2012 14:36:40 -0400 largefiles: in putlfile, ensure tempfile's directory exists prior to creation stable
hlian [Fri, 04 May 2012 14:36:40 -0400] rev 16594
largefiles: in putlfile, ensure tempfile's directory exists prior to creation Let R be a repo served by an hg daemon on a machine with an empty largefiles cache. Pushing a largefiles repo to R will result in a no-such-file-or-directory OSError because putlfile will attempt to create a temporary file in R/.hg/largefiles, which does not yet exist. This patch also adds a regression test for this scenario.
Wed, 02 May 2012 17:15:11 -0700 bisect: save current state before running a command stable
Bryan O'Sullivan <bryano@fb.com> [Wed, 02 May 2012 17:15:11 -0700] rev 16593
bisect: save current state before running a command This prevents an external command being run during a bisect from querying stale data.
Mon, 07 May 2012 13:40:58 +0200 merge with stable
Martin Geisler <mg@aragost.com> [Mon, 07 May 2012 13:40:58 +0200] rev 16592
merge with stable
Sun, 06 May 2012 23:58:04 +0900 commands: parse ui.strict config item as bool stable
Yuya Nishihara <yuya@tcha.org> [Sun, 06 May 2012 23:58:04 +0900] rev 16591
commands: parse ui.strict config item as bool
Mon, 07 May 2012 10:02:50 +0200 check-code: catch unnecessary s.strip().split() calls
Martin Geisler <mg@aragost.com> [Mon, 07 May 2012 10:02:50 +0200] rev 16590
check-code: catch unnecessary s.strip().split() calls
Fri, 04 May 2012 15:29:07 +0200 tags: line.rstrip().split() can be replaced with line.split()
Martin Geisler <mg@aragost.com> [Fri, 04 May 2012 15:29:07 +0200] rev 16589
tags: line.rstrip().split() can be replaced with line.split() The line looks like "123 <node> <node>" and does not start with whitespace: it was therefore not significant that rstrip was used instead of strip. Furthermore, the first part is fed to int, which will itself strip away whitespace before converting the string to an integer.
Fri, 04 May 2012 15:24:00 +0200 phases: line.strip().split() == line.split()
Martin Geisler <mg@aragost.com> [Fri, 04 May 2012 15:24:00 +0200] rev 16588
phases: line.strip().split() == line.split()
Sun, 06 May 2012 14:36:42 +0200 merge with stable
Martin Geisler <mg@lazybytes.net> [Sun, 06 May 2012 14:36:42 +0200] rev 16587
merge with stable
Sun, 06 May 2012 13:14:58 +0200 largefiles: fix "hg status dir" missing regular files (issue3421) stable
Patrick Mezard <patrick@mezard.eu> [Sun, 06 May 2012 13:14:58 +0200] rev 16586
largefiles: fix "hg status dir" missing regular files (issue3421) largefiles status implementation attemps to rewrite the input match objects to match the "standins" as well as the regular files. When fixing the directories listed in match.files(), if there was related standin entry, it was kept and the original path discarded. But directories can appear both as regular and standin entries.
(0) -10000 -3000 -1000 -300 -100 -96 +96 +100 +300 +1000 +3000 +10000 +30000 tip