Sat, 21 May 2011 15:01:28 -0500 diffstatdata: no longer a generator
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:01:28 -0500] rev 14400
diffstatdata: no longer a generator This produces a smallish amount of data and all consumers needed to buffer it anyway.
Wed, 18 May 2011 21:31:40 +0200 add new option --all to manifest command
Adrian Buehlmann <adrian@cadifra.com> [Wed, 18 May 2011 21:31:40 +0200] rev 14399
add new option --all to manifest command prints a list of all files in all revisions of the repo obsoletes the cifiles extension
Sat, 21 May 2011 02:05:00 +0200 applyupdates: audit unlinking of renamed files and directories
Adrian Buehlmann <adrian@cadifra.com> [Sat, 21 May 2011 02:05:00 +0200] rev 14398
applyupdates: audit unlinking of renamed files and directories
Fri, 20 May 2011 21:04:45 +0300 patchbomb: pass --git argument to diffstat
Idan Kamara <idankk86@gmail.com> [Fri, 20 May 2011 21:04:45 +0300] rev 14397
patchbomb: pass --git argument to diffstat
Fri, 20 May 2011 21:20:24 +0300 mq: strip all leading slashes from url when importing
Idan Kamara <idankk86@gmail.com> [Fri, 20 May 2011 21:20:24 +0300] rev 14396
mq: strip all leading slashes from url when importing When trying to import a url that ends with a slash os.path.basename() would return an empty string. So when seeing a leading slash, remove it and infer the patch name from the remaining url. e.g. `hg qimport http://paste.pocoo.org/raw/xxx/` deduced '.' to be the patch name. Now we'll deduce 'xxx'.
Fri, 20 May 2011 21:19:33 +0300 mq: check patch name is valid before reading imported file
Idan Kamara <idankk86@gmail.com> [Fri, 20 May 2011 21:19:33 +0300] rev 14395
mq: check patch name is valid before reading imported file
Sat, 21 May 2011 15:01:28 -0500 tests: update monotone output for v1.0 changes
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:01:28 -0500] rev 14394
tests: update monotone output for v1.0 changes
Sat, 21 May 2011 15:01:28 -0500 revlog: stop exporting node.short
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:01:28 -0500] rev 14393
revlog: stop exporting node.short
Thu, 19 May 2011 22:55:13 +0200 patch: fast-path git case in selectfile()
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:55:13 +0200] rev 14392
patch: fast-path git case in selectfile() We avoid a lot of complicated heuristics in git cases, where these heurestics may even be broken when copies are involved.
Thu, 19 May 2011 22:49:43 +0200 patch: unify backend file access interface
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:49:43 +0200] rev 14391
patch: unify backend file access interface - Rename readlines() into getfile(), return data and mode - Make setfile() write a data buffer instead of lines, make mode mandatory.
Thu, 19 May 2011 22:44:01 +0200 patch: merge backend setmode() into writelines()
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14390
patch: merge backend setmode() into writelines() Copy handling will be easier to handle in a single method.
Thu, 19 May 2011 22:44:01 +0200 patch: stop modifying gitpatch objects
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14389
patch: stop modifying gitpatch objects gitpatch objects emitted by iterhunks() were referencing file paths unmodified from the input patch. _applydif() made them usable by modifying the gitpatch objects in-place with specified path strip level. The same modified objects were then reused by iterhunks() generator. _applydiff() now copies and update the paths which completely decouples both routines. As a side effect, the "git" event now receives only metadata about copies/renames to perform the necessary copies ahead of time. Other actions are handled in the "file" event.
Thu, 19 May 2011 22:44:01 +0200 patch: stop handling hunkless git blocks out of stream
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14388
patch: stop handling hunkless git blocks out of stream Patch changes are emitted by iterhunks() in two separate events: 'file' when hunks have to be applied and 'git' to describe other modifications like copies or mode changes. Note that a file which mode is changed and which content is modified by the same patch will be emitted in both events. It is more convenient to handle all file modifications in a single event. This patch "zips" git actions with regular changes so both kinds can be emitted at the same place.
Thu, 19 May 2011 22:44:01 +0200 patch: reindent code
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14387
patch: reindent code
Thu, 19 May 2011 22:44:01 +0200 patch: unify iterhunks() afile/bfile handling
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14386
patch: unify iterhunks() afile/bfile handling git afile/bfile are extracted twice, once when reading a 'diff --git', and again when reading a unified hunk. The problem is not all git blocks have unified hunks (renames just have metadata) and they were not extracted the same way. This is what this patch unifies.
Thu, 19 May 2011 22:44:01 +0200 patch: git metadata was ignored if strip > 1
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14385
patch: git metadata was ignored if strip > 1 gitpatch objects emitted by iterhunks() are modified in place by applydiff(). Processing them earlier improves iterhunks() isolation. applydiff() modifying them should still be fixed though.
Thu, 19 May 2011 22:44:01 +0200 patch: construct and parse binary hunks at the same time
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14384
patch: construct and parse binary hunks at the same time
Thu, 19 May 2011 22:44:01 +0200 patch: refactor iterhunks() regular and binary files emission
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14383
patch: refactor iterhunks() regular and binary files emission
Thu, 19 May 2011 22:44:01 +0200 patch: remove patch.patch() cwd argument
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14382
patch: remove patch.patch() cwd argument
Thu, 19 May 2011 22:44:01 +0200 patch: merge _updatedir() into externalpatch()
Patrick Mezard <pmezard@gmail.com> [Thu, 19 May 2011 22:44:01 +0200] rev 14381
patch: merge _updatedir() into externalpatch()
Thu, 19 May 2011 18:10:03 +0200 merge with stable
Martin Geisler <mg@aragost.com> [Thu, 19 May 2011 18:10:03 +0200] rev 14380
merge with stable
Thu, 19 May 2011 18:09:25 +0200 changelog: convert user and desc from local encoding early stable
Martin Geisler <mg@aragost.com> [Thu, 19 May 2011 18:09:25 +0200] rev 14379
changelog: convert user and desc from local encoding early Failing to do so makes it impossible to use the memctx API to create a changeset with a commit message or username outside of the current encoding.encoding setting.
Thu, 19 May 2011 16:57:14 +0200 merge crew with main
Martin Geisler <mg@aragost.com> [Thu, 19 May 2011 16:57:14 +0200] rev 14378
merge crew with main
Wed, 18 May 2011 23:20:26 -0700 clone: make default path absolute for all local paths
Brendan Cully <brendan@kublai.com> [Wed, 18 May 2011 23:20:26 -0700] rev 14377
clone: make default path absolute for all local paths This fixes the default path when cloning local repositories with hg-git, since hg-git cancopy() is false even for local repositories.
Tue, 17 May 2011 10:28:03 -0500 httpclient: import revision fc731618702a of py-nonblocking-http
Augie Fackler <durin42@gmail.com> [Tue, 17 May 2011 10:28:03 -0500] rev 14376
httpclient: import revision fc731618702a of py-nonblocking-http
Mon, 16 May 2011 16:59:45 -0500 httpconnection: improved logging formatting
Augie Fackler <durin42@gmail.com> [Mon, 16 May 2011 16:59:45 -0500] rev 14375
httpconnection: improved logging formatting I had to use this debugging output for the first time recently when looking for a problem, and the lack of good formatting made things difficult.
Tue, 17 May 2011 00:46:52 +0200 bash_completion: enable alias auto-complete
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> [Tue, 17 May 2011 00:46:52 +0200] rev 14374
bash_completion: enable alias auto-complete When auto-completing, set HGPLAINEXCEPT=alias to list aliases in the suggestions. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue, 17 May 2011 00:17:52 +0200 ui: enable alias exception when reading config in plain mode
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> [Tue, 17 May 2011 00:17:52 +0200] rev 14373
ui: enable alias exception when reading config in plain mode When in plain mode with "alias" present in the exception list, keep the aliases. This will be used later to enable auto-completion. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue, 17 May 2011 00:08:51 +0200 ui: test plain mode against exceptions
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> [Tue, 17 May 2011 00:08:51 +0200] rev 14372
ui: test plain mode against exceptions Let ui.plain() accept an optional parameter in the form of a feature name (as a string) to exclude from plain mode. The result of ui.plain is now: - False if HGPLAIN is not set or the requested feature is in HGPLAINEXCEPT - True otherwise Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed, 18 May 2011 17:05:30 -0500 revlog: drop base() again
Matt Mackall <mpm@selenic.com> [Wed, 18 May 2011 17:05:30 -0500] rev 14371
revlog: drop base() again deltaparent does what's needed, and more "portably".
Wed, 18 May 2011 23:48:17 +0200 patch: add a workingbackend dirstate layer on top of fsbackend
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:17 +0200] rev 14370
patch: add a workingbackend dirstate layer on top of fsbackend _updatedir() is no longer used by internalpatch() The change in test-mq-missingfiles.t comes from workingbackend not considering the missing 'b' file as changed, thus not calling addremove() on it.
Wed, 18 May 2011 23:48:13 +0200 patch: handle binary copies as regular ones
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:13 +0200] rev 14369
patch: handle binary copies as regular ones This introduces a performance regression for large files, as they will be copied just to be clobbered afterwards since binary patching does not use deltas. But it simplifies the code and the previous optimization will be reintroduced later in a better way.
Wed, 18 May 2011 23:48:13 +0200 patch: remove files while patching, not in updatedir()
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:13 +0200] rev 14368
patch: remove files while patching, not in updatedir() At this point, updatedir() only reads the working directory and update the dirstate.
Wed, 18 May 2011 23:48:13 +0200 patch: set desired mode when patching, not in updatedir()
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:13 +0200] rev 14367
patch: set desired mode when patching, not in updatedir() This patch and the following aim at merging _updatedir() actions into _applydiff().
Wed, 18 May 2011 23:48:13 +0200 patch: stop changing current directory before patching
Patrick Mezard <pmezard@gmail.com> [Wed, 18 May 2011 23:48:13 +0200] rev 14366
patch: stop changing current directory before patching _applydiff() patcher argument was added to help hgsubversion like extension monkeypatching the patching process. While it could be removed at this point, I prefer to leave it until patch.py is completely refactored and there is a valid and tested alternative.
Wed, 18 May 2011 23:26:26 +0200 revlog: linearize created changegroups in generaldelta revlogs
Sune Foldager <cryo@cyanite.org> [Wed, 18 May 2011 23:26:26 +0200] rev 14365
revlog: linearize created changegroups in generaldelta revlogs This greatly improves the speed of the bundling process, and often reduces the bundle size considerably. (Although if the repository is already ordered, this has little effect on both time and bundle size.) For non-generaldelta clients, the reduced bundle size translates to a reduced repository size, similar to shrinking the revlogs (which uses the exact same algorithm). For generaldelta clients the difference is minor. When the new bundle format comes, reordering will not be necessary since we can then store the deltaparent relationsships directly. The eventual default behavior for clients and servers is presented in the table below, where "new" implies support for GD as well as the new bundle format: old client new client old server old bundle, no reorder old bundle, no reorder new server, non-GD old bundle, no reorder[1] old bundle, no reorder[2] new server, GD old bundle, reorder[3] new bundle, no reorder[4] [1] reordering is expensive on the server in this case, skip it [2] client can choose to do its own redelta here [3] reordering is needed because otherwise the pull does a lot of extra work on the server [4] reordering isn't needed because client can get deltabase in bundle format Currently, the default is to reorder on GD-servers, and not otherwise. A new setting, bundle.reorder, has been added to override the default reordering behavior. It can be set to either 'auto' (the default), or any true or false value as a standard boolean setting, to either force the reordering on or off regardless of generaldelta. Some timing data from a relatively branch test repository follows. All bundling is done with --all --type none options. Non-generaldelta, non-shrunk repo: ----------------------------------- Size: 276M Without reorder (default): Bundle time: 14.4 seconds Bundle size: 939M With reorder: Bundle time: 1 minute, 29.3 seconds Bundle size: 381M Generaldelta, non-shrunk repo: ----------------------------------- Size: 87M Without reorder: Bundle time: 2 minutes, 1.4 seconds Bundle size: 939M With reorder (default): Bundle time: 25.5 seconds Bundle size: 381M
Wed, 18 May 2011 23:11:34 +0200 revlogdag: add linearize function
Sune Foldager <cryo@cyanite.org> [Wed, 18 May 2011 23:11:34 +0200] rev 14364
revlogdag: add linearize function See the docstring for a detailed explanation. The linearizer was originally written by Benoit Boissinot.
Wed, 18 May 2011 19:30:17 +0200 localrepo, sshrepo: use Boolean create argument in __init__
Martin Geisler <mg@lazybytes.net> [Wed, 18 May 2011 19:30:17 +0200] rev 14363
localrepo, sshrepo: use Boolean create argument in __init__
Wed, 18 May 2011 19:25:34 +0200 commands: replace 'x = f(); return x' with 'return f()'
Martin Geisler <mg@lazybytes.net> [Wed, 18 May 2011 19:25:34 +0200] rev 14362
commands: replace 'x = f(); return x' with 'return f()'
Wed, 18 May 2011 19:22:55 +0200 merge with stable
Martin Geisler <mg@lazybytes.net> [Wed, 18 May 2011 19:22:55 +0200] rev 14361
merge with stable
Wed, 18 May 2011 15:13:26 +0200 subrepo: respect non-default path for incoming/outgoing stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 15:13:26 +0200] rev 14360
subrepo: respect non-default path for incoming/outgoing Push and pull set repo._subtoppath before pushing or pulling subrepos. The incoming and outgoing commands needed to do the same.
Wed, 18 May 2011 15:45:57 +0200 run-tests: print a newline after all warnings
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 18 May 2011 15:45:57 +0200] rev 14359
run-tests: print a newline after all warnings
Wed, 18 May 2011 15:41:03 +0200 annotate: fix alignment of columns in front of line numbers (issue2807)
Thomas Arendsen Hein <thomas@intevation.de> [Wed, 18 May 2011 15:41:03 +0200] rev 14358
annotate: fix alignment of columns in front of line numbers (issue2807)
Wed, 18 May 2011 09:56:27 +0200 merge with stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 09:56:27 +0200] rev 14357
merge with stable
Wed, 18 May 2011 09:31:19 +0200 revset: the name is optional for the tag predicate stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 09:31:19 +0200] rev 14356
revset: the name is optional for the tag predicate
Wed, 18 May 2011 09:28:11 +0200 revset: note case-sensitive match in grep stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 09:28:11 +0200] rev 14355
revset: note case-sensitive match in grep
Wed, 18 May 2011 09:20:52 +0200 revset: note case-insensitive matches in keyword and user stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 09:20:52 +0200] rev 14354
revset: note case-insensitive matches in keyword and user
Wed, 18 May 2011 09:15:18 +0200 revset: expand help for contains predicate stable
Martin Geisler <mg@aragost.com> [Wed, 18 May 2011 09:15:18 +0200] rev 14353
revset: expand help for contains predicate
Wed, 18 May 2011 09:05:18 +0200 patch: remove unused variable to make pyflakes test happy
Sune Foldager <cryo@cyanite.org> [Wed, 18 May 2011 09:05:18 +0200] rev 14352
patch: remove unused variable to make pyflakes test happy
Tue, 17 May 2011 23:46:38 +0200 patch: add lexists() to backends, use it in selectfile()
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:46:38 +0200] rev 14351
patch: add lexists() to backends, use it in selectfile() At this point, all applydiff() filesystem calls should pass through fsbackend.
Tue, 17 May 2011 23:46:38 +0200 patch: move copyfile() into backends, abstract basedir
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:46:38 +0200] rev 14350
patch: move copyfile() into backends, abstract basedir
Tue, 17 May 2011 23:46:37 +0200 patch: merge makerejlines() into write_rej()
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:46:37 +0200] rev 14349
patch: merge makerejlines() into write_rej()
Tue, 17 May 2011 23:46:15 +0200 patch: extract fs access from patchfile into fsbackend
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:46:15 +0200] rev 14348
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.
Tue, 17 May 2011 23:27:58 +0200 mq: fix qpush changes detection of renamed files
Patrick Mezard <pmezard@gmail.com> [Tue, 17 May 2011 23:27:58 +0200] rev 14347
mq: fix qpush changes detection of renamed files patch.changedfile() was not considering renamed file source as changed.
Mon, 16 May 2011 16:59:45 -0500 httpconnection: correctly handle redirects from http to https
Augie Fackler <durin42@gmail.com> [Mon, 16 May 2011 16:59:45 -0500] rev 14346
httpconnection: correctly handle redirects from http to https Previously the connection cache for keepalives didn't keep track of ssl. This meant that when we connected to an https server after that same server via http, both on the default port, we'd incorrectly reuse the non-https connection as the default port meant the connection cache key was the same.
Sun, 15 May 2011 21:33:51 +0200 win32.py: add argtypes and restype
Adrian Buehlmann <adrian@cadifra.com> [Sun, 15 May 2011 21:33:51 +0200] rev 14345
win32.py: add argtypes and restype This is a feature of ctypes. Without these, pypy complains with RuntimeWarning: C function without declared arguments called RuntimeWarning: C function without declared return type called As a side effect of specifying restypes, the return value of e.g. CreateFileA is now implicitly converted to an instance of _HANDLE, so we also need to change the definition _INVALID_HANDLE_VALUE = -1 to _INVALID_HANDLE_VALUE = _HANDLE(-1).value Otherwise, tests for equality to _INVALID_HANDLE_VALUE in code like def _getfileinfo(name): fh = _kernel32.CreateFileA(name, 0, _FILE_SHARE_READ | _FILE_SHARE_WRITE | _FILE_SHARE_DELETE, None, _OPEN_EXISTING, 0, None) if fh == _INVALID_HANDLE_VALUE: _raiseoserror(name) would now fail to detect an invalid handle, which in turn would lead to exceptions raised with wrong errno values, like e.g. >>> nlinks('missing.txt') Traceback (most recent call last): ... OSError: [Errno 9] missing.txt: The handle is invalid. instead of the correct (as per this patch and before it) >>> nlinks('missing.txt') Traceback (most recent call last): ... OSError: [Errno 2] missing.txt: The system cannot find the file specified.
Sun, 15 May 2011 21:27:59 +0200 win32.py: more explicit definition of _STD_ERROR_HANDLE
Adrian Buehlmann <adrian@cadifra.com> [Sun, 15 May 2011 21:27:59 +0200] rev 14344
win32.py: more explicit definition of _STD_ERROR_HANDLE
Mon, 16 May 2011 17:02:35 -0500 revset: add follow(filename) to follow a filename's history across copies
Matt Mackall <mpm@selenic.com> [Mon, 16 May 2011 17:02:35 -0500] rev 14343
revset: add follow(filename) to follow a filename's history across copies
Mon, 16 May 2011 17:02:35 -0500 revset: introduce filelog() to emulate log's fast path
Matt Mackall <mpm@selenic.com> [Mon, 16 May 2011 17:02:35 -0500] rev 14342
revset: introduce filelog() to emulate log's fast path filelog() only reports revisions present in the matching filelogs.
Thu, 12 May 2011 10:48:31 -0500 httpclient: import revision b8c3511a8cae from py-nonblocking-http
Augie Fackler <durin42@gmail.com> [Thu, 12 May 2011 10:48:31 -0500] rev 14341
httpclient: import revision b8c3511a8cae from py-nonblocking-http Fixes issues with SSL_ERROR_WANT_READ incorrectly breaking the response read.
Mon, 16 May 2011 21:56:26 +0200 run-tests: replace chdir() with Popen cwd option
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:56:26 +0200] rev 14340
run-tests: replace chdir() with Popen cwd option
Mon, 16 May 2011 21:54:43 +0200 run-tests: make --debug run in the temporary test directory
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:54:43 +0200] rev 14339
run-tests: make --debug run in the temporary test directory
Mon, 16 May 2011 21:52:28 +0200 run-tests: use the common test path on Windows and Java
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:52:28 +0200] rev 14338
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.
Mon, 16 May 2011 21:41:46 +0200 run-tests: ignore timeout when Popen.terminate is unavailable
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:41:46 +0200] rev 14337
run-tests: ignore timeout when Popen.terminate is unavailable Popen.terminate was introduced in python 2.6
Mon, 16 May 2011 21:26:50 +0200 run-tests: fix hg.bat python reference
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:26:50 +0200] rev 14336
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.
Mon, 16 May 2011 21:24:14 +0200 run-tests: fix python executable detection and copy on Windows
Patrick Mezard <pmezard@gmail.com> [Mon, 16 May 2011 21:24:14 +0200] rev 14335
run-tests: fix python executable detection and copy on Windows
Mon, 16 May 2011 13:06:48 +0200 changelog: don't use generaldelta
Sune Foldager <cryo@cyanite.org> [Mon, 16 May 2011 13:06:48 +0200] rev 14334
changelog: don't use generaldelta
Mon, 16 May 2011 12:44:34 +0200 revlog: get rid of defversion
Sune Foldager <cryo@cyanite.org> [Mon, 16 May 2011 12:44:34 +0200] rev 14333
revlog: get rid of defversion defversion was a property (later option) on the store opener, used to propagate the changelog revlog format to the other revlogs, so they would be created with the same format. This required that the changelog instance was created before any other revlog; an invariant that wasn't directly enforced (or documented) anywhere. We now use the revlogv1 requirement instead, which is transfered to the store opener options. If this option is missing, v0 revlogs are created.
Mon, 16 May 2011 11:52:28 +0200 bash_completion: Use "hg paths -q" instead of piping through sed
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 16 May 2011 11:52:28 +0200] rev 14332
bash_completion: Use "hg paths -q" instead of piping through sed
Mon, 16 May 2011 11:41:48 +0200 paths: Add support for -q/--quiet
Thomas Arendsen Hein <thomas@intevation.de> [Mon, 16 May 2011 11:41:48 +0200] rev 14331
paths: Add support for -q/--quiet Suppresses output (resolved paths or "not found!") when searching a path, similar to "grep -q". Sample usage: hg paths -q foo || echo "there is no foo" Just prints path names (instead of "name = result") when listing all path definitions, like "hg bookmarks -q". Sample usage: hg paths -q | while read i; do hg incoming "$i"; done
Mon, 16 May 2011 11:14:06 +0200 fix test broken in merge from stable
Sune Foldager <cryo@cyanite.org> [Mon, 16 May 2011 11:14:06 +0200] rev 14330
fix test broken in merge from stable
Sun, 15 May 2011 13:15:41 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Sun, 15 May 2011 13:15:41 -0500] rev 14329
merge with stable
Fri, 13 May 2011 19:46:36 -0500 simplemerge: do not allow binary files to abort an entire merge stable
Steve Borho <steve@borho.org> [Fri, 13 May 2011 19:46:36 -0500] rev 14328
simplemerge: do not allow binary files to abort an entire merge When used as the default merge tool, or used as a --tool override, the simplemerge script should not be allowed to raise a util.Abort just because one of the files being merged is binary. Instead, return 1 and mark the file unresolved.
Sun, 15 May 2011 18:00:22 +0100 extdiff: grammar "allows to" -> "allows one to"
Javi Merino <cibervicho@gmail.com> [Sun, 15 May 2011 18:00:22 +0100] rev 14327
extdiff: grammar "allows to" -> "allows one to" The verb to allow requires a direct object. Lintian, a Debian tool to find common mistakes, reported it. I'm not a native english speaker but I think this is correct.
Sun, 15 May 2011 11:50:16 -0500 debugrevlog: add --dump flag to dump graphable per-revision statistics
Matt Mackall <mpm@selenic.com> [Sun, 15 May 2011 11:50:16 -0500] rev 14326
debugrevlog: add --dump flag to dump graphable per-revision statistics
Sun, 15 May 2011 11:50:15 -0500 revlog: restore the base method
Matt Mackall <mpm@selenic.com> [Sun, 15 May 2011 11:50:15 -0500] rev 14325
revlog: restore the base method
Sat, 14 May 2011 22:07:58 -0700 Hardcoding ARCHFLAGS breaks the build against fink's python
Brendan Cully <brendan@kublai.com> [Sat, 14 May 2011 22:07:58 -0700] rev 14324
Hardcoding ARCHFLAGS breaks the build against fink's python Fink's python is either i386 or amd64, but not universal. Setting ARCHFLAGS to the empty string produces a successful build against both OS X python and fink python. The modules will no longer be universal -- if that is an issue, we can change the test to extract ARCHFLAGS from distutils.sysconfig and remove ppc if necessary.
Sat, 14 May 2011 00:30:32 +0200 debugindex etc.: add --changelog and --manifest options
Sune Foldager <cryo@cyanite.org> [Sat, 14 May 2011 00:30:32 +0200] rev 14323
debugindex etc.: add --changelog and --manifest options These open the changelog and manifest, respectively, directly so you don't need to specify the path. The options have been added to debugindex, debugdata and debugrevlog. The patch also fixes some minor usage-related bugs.
Fri, 13 May 2011 14:58:24 -0500 scmutil: drop aliases in cmdutil for match functions
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 14:58:24 -0500] rev 14322
scmutil: drop aliases in cmdutil for match functions
Fri, 13 May 2011 14:48:48 -0500 scmutil: drop some aliases in cmdutil
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 14:48:48 -0500] rev 14321
scmutil: drop some aliases in cmdutil
Fri, 13 May 2011 14:07:16 -0500 scmutil: fold in wdutil
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 14:07:16 -0500] rev 14320
scmutil: fold in wdutil
Fri, 13 May 2011 14:06:28 -0500 scmutil: move revsingle/pair/range from cmdutil
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 14:06:28 -0500] rev 14319
scmutil: move revsingle/pair/range from cmdutil This allows users at levels below the command layer to avoid import loops.
Fri, 13 May 2011 12:57:27 -0500 help: consolidate topic hooks in help.py
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 12:57:27 -0500] rev 14318
help: consolidate topic hooks in help.py This removes loops like cmdutil->revset->help->extensions->cmdutil and simplifies the code.
Fri, 13 May 2011 11:04:51 -0500 extensions: move moduledoc to break import loop with help
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 11:04:51 -0500] rev 14317
extensions: move moduledoc to break import loop with help
Fri, 13 May 2011 11:04:51 -0500 extensions: drop maxlength from enabled and disabled
Matt Mackall <mpm@selenic.com> [Fri, 13 May 2011 11:04:51 -0500] rev 14316
extensions: drop maxlength from enabled and disabled This is a bad/silly API. Instead calculate maxlength in one place in help it's used and simplify all the callers.
Fri, 13 May 2011 11:26:29 +0200 Makefile: remove pure modules on clean
Martin Geisler <mg@aragost.com> [Fri, 13 May 2011 11:26:29 +0200] rev 14315
Makefile: remove pure modules on clean
Wed, 11 May 2011 18:18:50 +0200 hgcia: Handle URL like in notify (issue2406)
Cédric Krier <ced@b2ck.com> [Wed, 11 May 2011 18:18:50 +0200] rev 14314
hgcia: Handle URL like in notify (issue2406) The URL must be composed with baseurl and webroot like in notify
Thu, 12 May 2011 16:41:56 +0200 util: make str(url) return file:/// for abs paths again
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Thu, 12 May 2011 16:41:56 +0200] rev 14313
util: make str(url) return file:/// for abs paths again str(url) was recently changed to return only file:/. However, the canonical way to represent absolute local paths is file:/// [1], which is also expected by at least hgsubversion. Relative paths are returned as file:the/relative/path. [1] http://en.wikipedia.org/wiki/File_URI_scheme
Thu, 12 May 2011 18:35:04 -0500 subrepo: use a safer revision check for hg repos
Matt Mackall <mpm@selenic.com> [Thu, 12 May 2011 18:35:04 -0500] rev 14312
subrepo: use a safer revision check for hg repos This avoids a traceback if the expected revision has been stripped.
Thu, 12 May 2011 20:27:35 +0200 graphlog: use cmdutil.command decorator
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 20:27:35 +0200] rev 14311
graphlog: use cmdutil.command decorator
Thu, 12 May 2011 20:14:42 +0200 purge: use cmdutil.command decorator
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 20:14:42 +0200] rev 14310
purge: use cmdutil.command decorator
Thu, 12 May 2011 18:27:05 +0200 patchbomb: use cmdutil.command decorator
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 18:27:05 +0200] rev 14309
patchbomb: use cmdutil.command decorator
Thu, 12 May 2011 17:50:07 +0200 transplant: use cmdutil.command decorator
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 17:50:07 +0200] rev 14308
transplant: use cmdutil.command decorator
Thu, 12 May 2011 18:06:15 +0800 monoblue: improve readability of the filenolink template
Steven Brown <StevenGBrown@gmail.com> [Thu, 12 May 2011 18:06:15 +0800] rev 14307
monoblue: improve readability of the filenolink template Whitespace changes only. No difference to the rendered page.
Thu, 12 May 2011 17:09:56 +0200 rebase: use cmdutil.command decorator
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 17:09:56 +0200] rev 14306
rebase: use cmdutil.command decorator
Thu, 12 May 2011 22:37:52 +0200 debugrevlog: many improvements
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 22:37:52 +0200] rev 14305
debugrevlog: many improvements
Thu, 12 May 2011 18:22:49 +0200 add debugrevlog command
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 18:22:49 +0200] rev 14304
add debugrevlog command Displays data and statistics about revlogs, including generaldelta details.
Thu, 12 May 2011 18:19:28 +0200 check-code: add /= to operator list
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 18:19:28 +0200] rev 14303
check-code: add /= to operator list
Thu, 12 May 2011 16:21:01 +0200 order commands alphabetically
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 16:21:01 +0200] rev 14302
order commands alphabetically
Thu, 12 May 2011 15:24:33 +0200 revlog: improve delta generation heuristics for generaldelta
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 15:24:33 +0200] rev 14301
revlog: improve delta generation heuristics for generaldelta Without this change, pulls (and clones) into a generaldelta repository could generate very inefficient revlogs, the size of which could be at least twice the original size. This was caused by the generated delta chains covering too large distances, causing new chains to be built far too often. This change addresses the problem by forcing a delta against second parent or against the previous revision, when the first parent delta is in danger of creating a long chain.
Thu, 12 May 2011 14:31:07 +0200 keyword: use cmdutil.command decorator
Martin Geisler <mg@aragost.com> [Thu, 12 May 2011 14:31:07 +0200] rev 14300
keyword: use cmdutil.command decorator
Thu, 12 May 2011 14:31:01 +0200 gpg: use cmdutil.command decorator
Martin Geisler <mg@aragost.com> [Thu, 12 May 2011 14:31:01 +0200] rev 14299
gpg: use cmdutil.command decorator
Thu, 12 May 2011 14:25:08 +0200 mq: use cmdutil.command decorator
Martin Geisler <mg@aragost.com> [Thu, 12 May 2011 14:25:08 +0200] rev 14298
mq: use cmdutil.command decorator
Thu, 12 May 2011 08:14:04 +0200 commands: use a decorator to build table incrementally
Adrian Buehlmann <adrian@cadifra.com> [Thu, 12 May 2011 08:14:04 +0200] rev 14297
commands: use a decorator to build table incrementally this allows to define the table entries near the command functions
Thu, 12 May 2011 13:47:17 +0200 revlog: fix bug in chainbase cache
Sune Foldager <cryo@cyanite.org> [Thu, 12 May 2011 13:47:17 +0200] rev 14296
revlog: fix bug in chainbase cache The bug didn't cause corruption, and thus wasn't caught in hg verify or in tests. It could lead to delta chains longer than normally allowed, by affecting the code that decides when to add a full revision. This could, in turn, lead to performance regression.
Mon, 09 May 2011 15:16:56 -0400 setup.py: workaround for missing bz2 module in IronPython
Zachary Gramana <zgramana@pottsconsultinggroup.com> [Mon, 09 May 2011 15:16:56 -0400] rev 14295
setup.py: workaround for missing bz2 module in IronPython IronPython does not provide the bz2 module on its own. This patch skips importing it to allow setup to continue. (minor tweaks by mpm)
Wed, 11 May 2011 08:07:51 -0500 httpconnection: fix debug logging option for httpclient
Augie Fackler <durin42@gmail.com> [Wed, 11 May 2011 08:07:51 -0500] rev 14294
httpconnection: fix debug logging option for httpclient
Wed, 11 May 2011 08:00:48 -0500 httpclient: import f4c380237fd5 to fix keepalive not working
Augie Fackler <durin42@gmail.com> [Wed, 11 May 2011 08:00:48 -0500] rev 14293
httpclient: import f4c380237fd5 to fix keepalive not working
Wed, 11 May 2011 11:04:44 +0200 revlog: add docstring to _addrevision
Sune Foldager <cryo@cyanite.org> [Wed, 11 May 2011 11:04:44 +0200] rev 14292
revlog: add docstring to _addrevision
Tue, 10 May 2011 16:08:47 -0500 cmdutil: make_file to makefileobj
Matt Mackall <mpm@selenic.com> [Tue, 10 May 2011 16:08:47 -0500] rev 14291
cmdutil: make_file to makefileobj
Tue, 10 May 2011 16:08:46 -0500 cmdutil: make_filename -> makefilename
Matt Mackall <mpm@selenic.com> [Tue, 10 May 2011 16:08:46 -0500] rev 14290
cmdutil: make_filename -> makefilename
Tue, 10 May 2011 16:08:46 -0500 cmdutil: bail_if_changed to bailifchanged
Matt Mackall <mpm@selenic.com> [Tue, 10 May 2011 16:08:46 -0500] rev 14289
cmdutil: bail_if_changed to bailifchanged
Sun, 08 May 2011 23:27:48 +0200 store: change names to comply with project coding standards
Adrian Buehlmann <adrian@cadifra.com> [Sun, 08 May 2011 23:27:48 +0200] rev 14288
store: change names to comply with project coding standards as stated at http://mercurial.selenic.com/wiki/CodingStyle (see also http://selenic.com/pipermail/mercurial-devel/2011-May/031139.html ) name changes done at module scope: _build_lower_encodefun -> _buildlowerencodefun _windows_reserved_filenames -> _winreservednames (see 23cd7eeff678) MAX_PATH_LEN_IN_HGSTORE -> _maxstorepathlen DIR_PREFIX_LEN -> _dirprefixlen _MAX_SHORTENED_DIRS_LEN -> _maxshortdirslen (no users of these outside the store module) changed locals: win_reserved -> winreserved space_left -> spaceleft
Tue, 10 May 2011 17:38:58 +0200 filelog: add file function to open other filelogs
Sune Foldager <cryo@cyanite.org> [Tue, 10 May 2011 17:38:58 +0200] rev 14287
filelog: add file function to open other filelogs
Tue, 10 May 2011 14:42:53 +0200 help: add -c/--command flag to only show command help (issue2799)
Martin Geisler <mg@aragost.com> [Tue, 10 May 2011 14:42:53 +0200] rev 14286
help: add -c/--command flag to only show command help (issue2799)
Tue, 10 May 2011 13:19:05 +0200 help: give hint about 'hg help -e' when appropriate
Martin Geisler <mg@aragost.com> [Tue, 10 May 2011 13:19:05 +0200] rev 14285
help: give hint about 'hg help -e' when appropriate The hint is only given if a command shadows an extension with the same name and when that extension has a multi-line module docstring.
Wed, 20 Jan 2010 20:24:20 +0200 help: add -e/--extension switch to display extension help text
Henri Wiechers <hwiechers@gmail.com> [Wed, 20 Jan 2010 20:24:20 +0200] rev 14284
help: add -e/--extension switch to display extension help text
Mon, 09 May 2011 18:11:08 +0200 debugbuilddag: read DAG from stdin if not given on cmdline
Martin Geisler <mg@aragost.com> [Mon, 09 May 2011 18:11:08 +0200] rev 14283
debugbuilddag: read DAG from stdin if not given on cmdline
Mon, 09 May 2011 17:20:15 +0200 run-tests: remove check on --shell argument
Martin Geisler <mg@aragost.com> [Mon, 09 May 2011 17:20:15 +0200] rev 14282
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).
Mon, 09 May 2011 17:15:44 +0200 subrepo: create subrepos using clone instead of pull
Martin Geisler <mg@aragost.com> [Mon, 09 May 2011 17:15:44 +0200] rev 14281
subrepo: create subrepos using clone instead of pull Subrepositories used to be created empty and then filled with data using pull. This is wasteful when you do a clone from a local source since it means that no hardlinks are created for the subrepos. This patch make the hgsubrepo._get method check for an empty subrepo and in that case do a clone instead of a pull. This brings in the same data as before, but creates hardlinks when possible.
(0) -10000 -3000 -1000 -120 +120 +1000 +3000 +10000 +30000 tip