Sat, 11 Jun 2011 21:24:50 +0800 paper, coal: display diffstat on the changeset page
Steven Brown <StevenGBrown@gmail.com> [Sat, 11 Jun 2011 21:24:50 +0800] rev 14571
paper, coal: display diffstat on the changeset page Displayed in a row of the changeset summary table, underneath the list of files. When the page is loaded, only the diff summary is displayed. The full diffstat is only displayed when the [+] link is selected.
Sat, 11 Jun 2011 21:11:43 +0800 web: provide diff summary to the changeset page
Steven Brown <StevenGBrown@gmail.com> [Sat, 11 Jun 2011 21:11:43 +0800] rev 14570
web: provide diff summary to the changeset page This is the same message displayed at the end of the "diff --stat" command. For example, "9 files changed, 1651 insertions(+), 2 deletions(-)". The webutil.diffstatgen function allows the diffstat data to be lazily calculated only once and then re-used.
Sat, 11 Jun 2011 14:14:53 -0500 tests: fix up date ambiguity in cvs test
Matt Mackall <mpm@selenic.com> [Sat, 11 Jun 2011 14:14:53 -0500] rev 14569
tests: fix up date ambiguity in cvs test
Sat, 11 Jun 2011 14:14:52 -0500 hg: split peer and repo lookup tables
Matt Mackall <mpm@selenic.com> [Sat, 11 Jun 2011 14:14:52 -0500] rev 14568
hg: split peer and repo lookup tables
Sat, 11 Jun 2011 14:40:25 +0200 tests: rename test-git-import.t into test-import-git.t
Patrick Mezard <pmezard@gmail.com> [Sat, 11 Jun 2011 14:40:25 +0200] rev 14567
tests: rename test-git-import.t into test-import-git.t This is consistent with other test-import* tests.
Sat, 11 Jun 2011 14:17:25 +0200 patch: generalize the use of patchmeta in applydiff()
Patrick Mezard <pmezard@gmail.com> [Sat, 11 Jun 2011 14:17:25 +0200] rev 14566
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.
Sat, 11 Jun 2011 14:14:13 +0200 patch: stop updating changed files set in applydiff()
Patrick Mezard <pmezard@gmail.com> [Sat, 11 Jun 2011 14:14:13 +0200] rev 14565
patch: stop updating changed files set in applydiff() This information is more correctly returned by backends. The extra updated file removed from test-mq-merge.t output came from changes from git patches being counted before being really applied in some cases.
Sat, 11 Jun 2011 14:14:11 +0200 patch: turn patch() touched files dict into a set
Patrick Mezard <pmezard@gmail.com> [Sat, 11 Jun 2011 14:14:11 +0200] rev 14564
patch: turn patch() touched files dict into a set
Thu, 09 Jun 2011 01:19:39 +0800 paper, coal: define the diffstat templates
Steven Brown <StevenGBrown@gmail.com> [Thu, 09 Jun 2011 01:19:39 +0800] rev 14563
paper, coal: define the diffstat templates The templates output the filename, the total number of changes to the file and a bar graph of the adds and removes. The filename is a link into the diff output. The diffstat is not yet displayed, but it can be manually added to the changeset page template.
Thu, 09 Jun 2011 01:15:49 +0800 web: provide the file number to the diffstat templates
Steven Brown <StevenGBrown@gmail.com> [Thu, 09 Jun 2011 01:15:49 +0800] rev 14562
web: provide the file number to the diffstat templates This allows the diffstat templates to link into the diff output. For example, the URLs of the first three files within the diff are #l1.1, #l2.1, #l3.1.
Thu, 09 Jun 2011 01:14:22 +0800 web: include all files in the diffstat
Steven Brown <StevenGBrown@gmail.com> [Thu, 09 Jun 2011 01:14:22 +0800] rev 14561
web: include all files in the diffstat The webutil.diffstat function now returns a diffstat template for each file in the diff. It previously returned a template for each file returned by ctx.files() which did not work well for merge changesets.
Fri, 10 Jun 2011 20:38:02 +0200 hgignore: ignore MANIFEST.in (generated since 2ce7dfe17bc5)
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 10 Jun 2011 20:38:02 +0200] rev 14560
hgignore: ignore MANIFEST.in (generated since 2ce7dfe17bc5)
Wed, 08 Jun 2011 21:25:18 +0800 bookmarks: recognize the current bookmark when the local encoding isn't UTF-8
LUO Zheng <xmuluo@gmail.com> [Wed, 08 Jun 2011 21:25:18 +0800] rev 14559
bookmarks: recognize the current bookmark when the local encoding isn't UTF-8 The current bookmark is stored in bookmark.current, supposingly in UTF-8. But the call to encoding.fromlocal() is missing, therefore Hg is not able to recognize the current bookmark in the case that bookmark uses characters of which the bit stream is different between local encoding and UTF-8. For example, the Chinese version of Windows cmd uses gbk(cp936), not UTF-8. Therefore I won't be able to make a Chinese bookmark current. By wrapping mark in a encoding.fromlocal() call, the problem is solved.
Thu, 09 Jun 2011 10:15:24 +1000 distutils: Create MANIFEST.in instead of MANIFEST in Makefile
Stephen Thorne <stephen@thorne.id.au> [Thu, 09 Jun 2011 10:15:24 +1000] rev 14558
distutils: Create MANIFEST.in instead of MANIFEST in Makefile When running 'python setup.py sdist' many files were omitted from the resulting tarball that are required for a complete build, including the .h file for the inotify extension due to a python2.7+ distutils bug. This would cause 'make dist' to fail to build a correct dist on python2.7 By building a MANIFEST.in that is the same as the old MANIFEST with 'include' at the start of each line will cause a correct MANIFEST to be built and used by distutils.
Thu, 09 Jun 2011 18:39:14 +0200 revert: is reverting file states, not just file contents
Adrian Buehlmann <adrian@cadifra.com> [Thu, 09 Jun 2011 18:39:14 +0200] rev 14557
revert: is reverting file states, not just file contents e.g. x bit is reverted as well Also makes this paragraph more consistent with the preceding one, which already uses the term "state" (not "content").
Fri, 10 Jun 2011 11:43:38 -0500 hg: change various repository() users to use peer() where appropriate
Matt Mackall <mpm@selenic.com> [Fri, 10 Jun 2011 11:43:38 -0500] rev 14556
hg: change various repository() users to use peer() where appropriate This gets all the easy cases (peers that aren't also used as repositories).
Fri, 10 Jun 2011 11:43:38 -0500 hg: have peer() call _lookup directly
Matt Mackall <mpm@selenic.com> [Fri, 10 Jun 2011 11:43:38 -0500] rev 14555
hg: have peer() call _lookup directly Note that this means that peers no longer call the extension repository setup hooks.
Fri, 10 Jun 2011 11:43:38 -0500 hg: add peer method
Matt Mackall <mpm@selenic.com> [Fri, 10 Jun 2011 11:43:38 -0500] rev 14554
hg: add peer method
Wed, 08 Jun 2011 18:24:33 +0200 hg: add opts argument to clone for internal remoteui
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Wed, 08 Jun 2011 18:24:33 +0200] rev 14553
hg: add opts argument to clone for internal remoteui
Mon, 06 Jun 2011 21:18:35 +0200 hg: use capable instead of capabilities
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 06 Jun 2011 21:18:35 +0200] rev 14552
hg: use capable instead of capabilities
Wed, 08 Jun 2011 13:44:41 -0500 fileset: basic pattern and boolean support
Matt Mackall <mpm@selenic.com> [Wed, 08 Jun 2011 13:44:41 -0500] rev 14551
fileset: basic pattern and boolean support debugfileset can now generate file lists for things like: "* and not hg*"
Fri, 10 Jun 2011 16:50:45 +0200 tests: fix updated monotone version requirement
Thomas Arendsen Hein <thomas@intevation.de> [Fri, 10 Jun 2011 16:50:45 +0200] rev 14550
tests: fix updated monotone version requirement 0969d91fad5c only updated the comment, not the actual check.
Tue, 07 Jun 2011 17:02:54 -0500 check-code: catch misspellings of descendant
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 17:02:54 -0500] rev 14549
check-code: catch misspellings of descendant This word is fairly common in Mercurial, and easy to misspell.
Tue, 07 Jun 2011 16:02:51 -0500 revert: drop obvious paragraph about filenames
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 16:02:51 -0500] rev 14548
revert: drop obvious paragraph about filenames
Tue, 07 Jun 2011 16:01:38 -0500 revert: actually add pointer to backout
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 16:01:38 -0500] rev 14547
revert: actually add pointer to backout
Tue, 07 Jun 2011 14:54:17 -0500 revert: replace mention of 'roll back' with pointer to 'backout'
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:54:17 -0500] rev 14546
revert: replace mention of 'roll back' with pointer to 'backout'
Tue, 07 Jun 2011 14:51:18 -0500 revert: simplify description of effect of -r
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:51:18 -0500] rev 14545
revert: simplify description of effect of -r
Tue, 07 Jun 2011 14:49:04 -0500 revert: rearrange the date help
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:49:04 -0500] rev 14544
revert: rearrange the date help
Tue, 07 Jun 2011 14:47:54 -0500 revert: remove some redundancy in basic description
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:47:54 -0500] rev 14543
revert: remove some redundancy in basic description
Tue, 07 Jun 2011 14:19:05 -0500 revert: drop requirement to use -r to revert with two parents
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:19:05 -0500] rev 14542
revert: drop requirement to use -r to revert with two parents This reduces documentation confusion between the need to: a) hg revert -a -r . (drop all changes from a merge) b) hg up -C . (drop the second parent entirely) Currently revert is one of two commands (the other being tag) that still complains about uncommitted merges, dating from its former use of a generic defaultrev function that aborted.
Tue, 07 Jun 2011 14:18:39 -0500 revert: simplify usage note
Matt Mackall <mpm@selenic.com> [Tue, 07 Jun 2011 14:18:39 -0500] rev 14541
revert: simplify usage note This points people looking for other commands to the right place with a minimum of verbiage.
Mon, 06 Jun 2011 17:38:32 -0500 revert: rewrite help summary
Matt Mackall <mpm@selenic.com> [Mon, 06 Jun 2011 17:38:32 -0500] rev 14540
revert: rewrite help summary New users have a tendency to mistake 'revert' as the command to use to check out old revisions. They also occasionally mistake revert for a generalized undo (compare rollback). This version intentionally aims to avoid mentioning 'earlier' and thus intentionally no longer alludes to the (secondary) -r behavior (which in fact is not actually limited to 'earlier'). Instead, we mention checkout state, to convey that we can restore things to the way they were when checked out.
Sat, 04 Jun 2011 20:19:30 +0900 extensions: make disabled()/disabledext() load prebuilt index if available
Yuya Nishihara <yuya@tcha.org> [Sat, 04 Jun 2011 20:19:30 +0900] rev 14539
extensions: make disabled()/disabledext() load prebuilt index if available __index__ contains a dict of {name: desc} of all extensions.
Sat, 04 Jun 2011 20:11:10 +0900 setup: add command to generate index of extensions
Yuya Nishihara <yuya@tcha.org> [Sat, 04 Jun 2011 20:11:10 +0900] rev 14538
setup: add command to generate index of extensions It generates prebuilt index of all extensions, which will be used by frozen exe when running 'hg help extensions'. Now py2exe invokes this command automatically.
Mon, 06 Jun 2011 21:02:48 +0200 sshrepo: fix addchangegroup's signature
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 06 Jun 2011 21:02:48 +0200] rev 14537
sshrepo: fix addchangegroup's signature Make it mirror the usage found in localrepo.push. This should only affect pushes to pre-unbundle ssh servers.
Mon, 06 Jun 2011 15:17:40 -0500 subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844)
Matt Mackall <mpm@selenic.com> [Mon, 06 Jun 2011 15:17:40 -0500] rev 14536
subrepo: be more careful with deletions of .hgsub and .hgsubstate (issue2844) We shouldn't try to process subrepos if .hgsub isn't present and we should remove .hgsubstate if .hgsub is marked for removal.
Sun, 05 Jun 2011 22:26:01 +0200 patch: dot not ignore hunk of files marked as 'deleted'
Patrick Mezard <pmezard@gmail.com> [Sun, 05 Jun 2011 22:26:01 +0200] rev 14535
patch: dot not ignore hunk of files marked as 'deleted' git 'deleted' flag was processed unconditionnally and the file removed even if the related hunk was not matching.
Sun, 05 Jun 2011 22:24:19 +0200 patch: fix patchmeta/hunk synchronization in iterhunks()
Patrick Mezard <pmezard@gmail.com> [Sun, 05 Jun 2011 22:24:19 +0200] rev 14534
patch: fix patchmeta/hunk synchronization in iterhunks() Synchronizing on bfile does not work on file removal where bfile is /dev/null. We match items on afile or bfile instead. The incorrect code makes iterhunks() to emit patchmeta and hunks separately in some cases. This is currently hidden by applydiff() being too tolerant when processing patchmeta, and will be fixed later.
Sun, 05 Jun 2011 22:24:11 +0200 patch: remove unnecessary exists() call in selectfile()
Patrick Mezard <pmezard@gmail.com> [Sun, 05 Jun 2011 22:24:11 +0200] rev 14533
patch: remove unnecessary exists() call in selectfile()
Sun, 05 Jun 2011 22:24:02 +0200 import: deprecate --base
Patrick Mezard <pmezard@gmail.com> [Sun, 05 Jun 2011 22:24:02 +0200] rev 14532
import: deprecate --base This option was a convenient hack introduced in Mercurial early days which unfortunately survived until now.
Sun, 05 Jun 2011 13:27:06 +0200 patch: remove redundant islink() call
Patrick Mezard <pmezard@gmail.com> [Sun, 05 Jun 2011 13:27:06 +0200] rev 14531
patch: remove redundant islink() call
Sat, 04 Jun 2011 20:01:01 +0900 extensions: update doc of enabled() and disabled() according to d5b525697ddb
Yuya Nishihara <yuya@tcha.org> [Sat, 04 Jun 2011 20:01:01 +0900] rev 14530
extensions: update doc of enabled() and disabled() according to d5b525697ddb
Sat, 04 Jun 2011 15:56:48 +0200 localrepo: add savecommitmessage() to write last-message.txt
Patrick Mezard <pmezard@gmail.com> [Sat, 04 Jun 2011 15:56:48 +0200] rev 14529
localrepo: add savecommitmessage() to write last-message.txt
Sat, 04 Jun 2011 15:20:49 +0200 memctx: simplify constructor
Patrick Mezard <pmezard@gmail.com> [Sat, 04 Jun 2011 15:20:49 +0200] rev 14528
memctx: simplify constructor
Fri, 03 Jun 2011 15:08:08 -0500 scmutil: improve path calculation for install-relative RC files (issue2841)
Matt Mackall <mpm@selenic.com> [Fri, 03 Jun 2011 15:08:08 -0500] rev 14527
scmutil: improve path calculation for install-relative RC files (issue2841) This code was ugly and might do the wrong thing with symlinks.
Fri, 03 Jun 2011 13:10:22 +0200 prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com> [Fri, 03 Jun 2011 13:10:22 +0200] rev 14526
prepush: show details about new remote heads with --verbose previously, this info was only shown with --debug Note that the new remote heads are only shown if the command aborts, that is, they are *not* shown if --force was specified. See also change 91cb08a9e7fb.
Fri, 03 Jun 2011 12:16:17 +0200 prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com> [Fri, 03 Jun 2011 12:16:17 +0200] rev 14525
prepush: print short hash of first new head in abort message and don't mention the branch if it's the default branch. OLD: $ hg push ../a pushing to ../a searching for changes abort: push creates new remote heads on branch 'default'! (you should pull and merge or use push -f to force) NEW: $ hg push ../a pushing to ../a searching for changes abort: push creates new remote head 1e108cc5548c! (you should pull and merge or use push -f to force) This helps to identify which local head is causing troubles. See also change 91cb08a9e7fb.
Fri, 03 Jun 2011 11:26:43 +0200 prepush: eliminate 'if branch'
Adrian Buehlmann <adrian@cadifra.com> [Fri, 03 Jun 2011 11:26:43 +0200] rev 14524
prepush: eliminate 'if branch' branch is always set anyway No change in program behavior.
Fri, 03 Jun 2011 20:32:54 +0200 revlog: bail out earlier in group when we have no chunks
Sune Foldager <cryo@cyanite.org> [Fri, 03 Jun 2011 20:32:54 +0200] rev 14523
revlog: bail out earlier in group when we have no chunks
Fri, 03 Jun 2011 20:23:32 +0200 localrepo: simplify file bundling code and fix progress bug
Sune Foldager <cryo@cyanite.org> [Fri, 03 Jun 2011 20:23:32 +0200] rev 14522
localrepo: simplify file bundling code and fix progress bug Progress for files was off by one, and the code was rather hackish.
Fri, 03 Jun 2011 20:15:06 +0200 localrepo: use list comprehension instead of generators
Sune Foldager <cryo@cyanite.org> [Fri, 03 Jun 2011 20:15:06 +0200] rev 14521
localrepo: use list comprehension instead of generators The lists in question are iterated and kept in memory further down the code path anyway, and this simplifies things.
Fri, 03 Jun 2011 20:12:37 +0200 localrepo: add total to changeset progress in bundle/push
Sune Foldager <cryo@cyanite.org> [Fri, 03 Jun 2011 20:12:37 +0200] rev 14520
localrepo: add total to changeset progress in bundle/push
Fri, 03 Jun 2011 20:08:26 +0200 statichttprepo: use in-place difference for shorter line
Martin Geisler <mg@aragost.com> [Fri, 03 Jun 2011 20:08:26 +0200] rev 14519
statichttprepo: use in-place difference for shorter line
Thu, 02 Jun 2011 00:33:33 +0200 workingctx: eliminate remove function
Adrian Buehlmann <adrian@cadifra.com> [Thu, 02 Jun 2011 00:33:33 +0200] rev 14518
workingctx: eliminate remove function Inlining it into it's last remaining call place in cmdutil.copy. Note that cmdutil.copy is called with the wlock already held, so no additional locking is needed to call util.unlinkpath. We do not need to wrap the util.unlinkpath call into a try block, because at that point we already know whether abssrc exists or not -- thanks to the preceding util.copyfile call. Adding a new local 'srcexists' in cmdutil.copy for that purpose.
Thu, 02 Jun 2011 19:43:17 +0200 test-copy2: add case for moving a missing file
Adrian Buehlmann <adrian@cadifra.com> [Thu, 02 Jun 2011 19:43:17 +0200] rev 14517
test-copy2: add case for moving a missing file
Thu, 02 Jun 2011 00:43:34 +0300 color: check if ui is already a subclass of colorui before wrapping it
Idan Kamara <idankk86@gmail.com> [Thu, 02 Jun 2011 00:43:34 +0300] rev 14516
color: check if ui is already a subclass of colorui before wrapping it since it's possible to reuse the ui object (see 80c599eee3f3) between dispatch calls, the ui might have been wrapped already. we could probably move this test up a bit but leaving it here allows updates to take effect by extstyles() and configstyles().
Thu, 02 Jun 2011 00:43:34 +0300 util: add helper function isatty(fd) to check for tty-ness
Idan Kamara <idankk86@gmail.com> [Thu, 02 Jun 2011 00:43:34 +0300] rev 14515
util: add helper function isatty(fd) to check for tty-ness
Thu, 02 Jun 2011 18:52:31 +0800 web: prevent TypeError thrown when using the diffstat templates
Steven Brown <StevenGBrown@gmail.com> [Thu, 02 Jun 2011 18:52:31 +0800] rev 14514
web: prevent TypeError thrown when using the diffstat templates Remove the lambda used to wrap webutil.diffstat because: - functions passed to the templater must accept keyword arguments - webutil.diffstat is a generator, so already calculates the diffstat lazily This reverts the changes made to 1d3e2349304a after it was submitted to the mailing list but before it was queued.
Thu, 02 Jun 2011 11:27:40 -0500 fileset: fix long line
Matt Mackall <mpm@selenic.com> [Thu, 02 Jun 2011 11:27:40 -0500] rev 14513
fileset: fix long line
Thu, 02 Jun 2011 11:17:02 -0500 COPYING: refresh with current address from fsf.org
Matt Mackall <mpm@selenic.com> [Thu, 02 Jun 2011 11:17:02 -0500] rev 14512
COPYING: refresh with current address from fsf.org
Wed, 01 Jun 2011 19:12:18 -0500 filesets: introduce basic fileset expression parser
Matt Mackall <mpm@selenic.com> [Wed, 01 Jun 2011 19:12:18 -0500] rev 14511
filesets: introduce basic fileset expression parser
Thu, 02 Jun 2011 00:43:34 +0300 dispatch: add repo to the request
Idan Kamara <idankk86@gmail.com> [Thu, 02 Jun 2011 00:43:34 +0300] rev 14510
dispatch: add repo to the request allows callers of dispatch.dispatch to pass in an initialized repo object to be used. -R/--repository overrides the request repo.
Wed, 01 Jun 2011 16:42:50 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 01 Jun 2011 16:42:50 -0500] rev 14509
merge with stable
Wed, 01 Jun 2011 16:32:48 -0500 Added signature for changeset 733af5d9f6b2 stable
Matt Mackall <mpm@selenic.com> [Wed, 01 Jun 2011 16:32:48 -0500] rev 14508
Added signature for changeset 733af5d9f6b2
Wed, 01 Jun 2011 16:32:44 -0500 Added tag 1.8.4 for changeset 733af5d9f6b2 stable
Matt Mackall <mpm@selenic.com> [Wed, 01 Jun 2011 16:32:44 -0500] rev 14507
Added tag 1.8.4 for changeset 733af5d9f6b2
Tue, 31 May 2011 19:49:17 -0500 subrepo: make stdin for svn a pipe for non-interactive use (issue2759) stable 1.8.4
Augie Fackler <durin42@gmail.com> [Tue, 31 May 2011 19:49:17 -0500] rev 14506
subrepo: make stdin for svn a pipe for non-interactive use (issue2759) This certainly can't hurt, so go ahead and do it, potentially along with --non-interactive if that flag is safe for the given subcommand.
Tue, 31 May 2011 16:22:04 -0500 subrepo: svn abort now depends on exit code (issue2833) stable
Regis Desgroppes <regis.desgroppes@nokia.com> [Tue, 31 May 2011 16:22:04 -0500] rev 14505
subrepo: svn abort now depends on exit code (issue2833)
Tue, 24 May 2011 17:16:31 -0500 httprepo: send URL redirection notices to stderr (issue2828) stable
Matt Mackall <mpm@selenic.com> [Tue, 24 May 2011 17:16:31 -0500] rev 14504
httprepo: send URL redirection notices to stderr (issue2828)
Mon, 07 Mar 2011 14:47:30 +0100 httprepo: proper handling of invalid responses without content-type (issue2019) stable
Mads Kiilerich <mads@kiilerich.com> [Mon, 07 Mar 2011 14:47:30 +0100] rev 14503
httprepo: proper handling of invalid responses without content-type (issue2019) This can currently be tested on http://sf.net/
Fri, 29 Apr 2011 14:56:23 +0200 strip: make it clear that --force discards changes (issue310) stable
Patrick Mezard <pmezard@gmail.com> [Fri, 29 Apr 2011 14:56:23 +0200] rev 14502
strip: make it clear that --force discards changes (issue310)
Tue, 26 Apr 2011 10:51:19 -0500 tags: catch more corruption during cache parsing (issue2779) stable
Matt Mackall <mpm@selenic.com> [Tue, 26 Apr 2011 10:51:19 -0500] rev 14501
tags: catch more corruption during cache parsing (issue2779)
Mon, 11 Apr 2011 21:44:22 +0300 localrepo: don't add deleted files to list of modified/added files (issue2761) stable
Idan Kamara <idankk86@gmail.com> [Mon, 11 Apr 2011 21:44:22 +0300] rev 14500
localrepo: don't add deleted files to list of modified/added files (issue2761) If a file is deleted (rm, not 'hg rm') from the working dir an attempt to run 'hg diff -r X', with the file being present in X will cause an abort. We didn't check if the file has been deleted from the working dir and later on tried to open it to compare with the one from X, causing the abort. This fix adds that check. Consequently, no output will be returned.
Mon, 04 Apr 2011 22:51:10 +0300 localrepo: ignore tags to unknown nodes (issue2750) stable
Idan Kamara <idankk86@gmail.com> [Mon, 04 Apr 2011 22:51:10 +0300] rev 14499
localrepo: ignore tags to unknown nodes (issue2750)
Mon, 14 Mar 2011 23:50:28 +0100 bookmarks: do not forward merged bookmark (issue1877) stable
David Soria Parra <dsp@php.net> [Mon, 14 Mar 2011 23:50:28 +0100] rev 14498
bookmarks: do not forward merged bookmark (issue1877)
Sat, 26 Mar 2011 13:05:17 +0100 rebase: restore mq guards after rebasing (issue2107) stable
Stefano Tortarolo <stefano.tortarolo@gmail.com> [Sat, 26 Mar 2011 13:05:17 +0100] rev 14497
rebase: restore mq guards after rebasing (issue2107) Guards on rebased mq patches were lost. This patch restores them after the qimporting step.
Wed, 16 Mar 2011 23:09:14 +0100 revset: report a parse error if a revset is not parsed completely (issue2654) stable
Bernhard Leiner <bleiner@gmail.com> [Wed, 16 Mar 2011 23:09:14 +0100] rev 14496
revset: report a parse error if a revset is not parsed completely (issue2654)
Wed, 25 May 2011 18:48:00 +0200 color: fix --color=always when output is piped
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Wed, 25 May 2011 18:48:00 +0200] rev 14495
color: fix --color=always when output is piped Also restructures the mode determination as discussed on IRC. I tried to simplify the code too, while keeping the original semantics except for the case of --color=always.
Wed, 01 Jun 2011 12:38:46 +0200 check-code: flag 0/1 used as constant Boolean expression
Martin Geisler <mg@lazybytes.net> [Wed, 01 Jun 2011 12:38:46 +0200] rev 14494
check-code: flag 0/1 used as constant Boolean expression
Tue, 31 May 2011 20:39:04 -0500 run-tests: allow whitelisting tests that should always run
Augie Fackler <durin42@gmail.com> [Tue, 31 May 2011 20:39:04 -0500] rev 14493
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.
Tue, 31 May 2011 19:49:17 -0500 subrepo: make stdin for svn a pipe for non-interactive use (issue2759)
Augie Fackler <durin42@gmail.com> [Tue, 31 May 2011 19:49:17 -0500] rev 14492
subrepo: make stdin for svn a pipe for non-interactive use (issue2759) This certainly can't hurt, so go ahead and do it, potentially along with --non-interactive if that flag is safe for the given subcommand.
Tue, 31 May 2011 17:18:23 -0500 tests: glob version number in test-hgrc
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 17:18:23 -0500] rev 14491
tests: glob version number in test-hgrc
Sat, 28 May 2011 14:44:45 +0800 web: provide diffstat to the changeset page
Steven Brown <StevenGBrown@gmail.com> [Sat, 28 May 2011 14:44:45 +0800] rev 14490
web: provide diffstat to the changeset page This includes all affected files, so it can be used for an extended view of the files or as a replacement for the filenodelink and filenolink templates.
Tue, 31 May 2011 16:24:47 -0500 tests: update for handling of missing hgrc includes
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 16:24:47 -0500] rev 14489
tests: update for handling of missing hgrc includes
Tue, 31 May 2011 16:22:04 -0500 subrepo: svn abort now depends on exit code (issue2833)
Regis Desgroppes <regis.desgroppes@nokia.com> [Tue, 31 May 2011 16:22:04 -0500] rev 14488
subrepo: svn abort now depends on exit code (issue2833)
Tue, 31 May 2011 12:41:22 +0200 fixed issue2833: aborts nows depends on svn exit code
desgropp <regis.desgroppes@nokia.com> [Tue, 31 May 2011 12:41:22 +0200] rev 14487
fixed issue2833: aborts nows depends on svn exit code
Tue, 31 May 2011 16:00:39 -0500 config: ignore include errors for nonexistent files
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 16:00:39 -0500] rev 14486
config: ignore include errors for nonexistent files
Tue, 31 May 2011 11:52:22 -0700 Make pull -u behave like pull && update
Brendan Cully <brendan@kublai.com> [Tue, 31 May 2011 11:52:22 -0700] rev 14485
Make pull -u behave like pull && update Previously, pull would not update if new branch heads were received, whereas pull && update would move to the tipmost branch head. Also change the "crosses branches" abort in merge.update from "crosses branches (merge branches or use --check to force update)" to "crosses branches (merge branches or update --check to force update)" since it can no longer assume the user is running hg update.
Tue, 31 May 2011 15:55:23 -0500 requires: note apparent corruption
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 15:55:23 -0500] rev 14484
requires: note apparent corruption
Tue, 31 May 2011 19:16:25 +0200 readrequires: provide easier to understand error message
Adrian Buehlmann <adrian@cadifra.com> [Tue, 31 May 2011 19:16:25 +0200] rev 14483
readrequires: provide easier to understand error message NEW: $ hg id abort: unknown repository format: requires feature 'foo' (upgrade Mercurial)! OLD: $ hg id abort: requirement 'foo' not supported!
Tue, 31 May 2011 19:16:18 +0200 introduce new function scmutil.readrequires
Adrian Buehlmann <adrian@cadifra.com> [Tue, 31 May 2011 19:16:18 +0200] rev 14482
introduce new function scmutil.readrequires for reading and parsing the .hg/requires file
Tue, 31 May 2011 15:28:23 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 15:28:23 -0500] rev 14481
merge with stable
Tue, 31 May 2011 15:26:02 -0500 merge with crew
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 15:26:02 -0500] rev 14480
merge with crew
Tue, 31 May 2011 15:25:43 -0500 merge with i18n stable
Matt Mackall <mpm@selenic.com> [Tue, 31 May 2011 15:25:43 -0500] rev 14479
merge with i18n
Mon, 30 May 2011 12:21:53 +0200 merge with stable
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 12:21:53 +0200] rev 14478
merge with stable
Mon, 30 May 2011 12:21:08 +0200 merge with hg-i18n stable
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 12:21:08 +0200] rev 14477
merge with hg-i18n
Mon, 30 May 2011 12:20:36 +0200 merge with hg-i18n
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 12:20:36 +0200] rev 14476
merge with hg-i18n
Mon, 30 May 2011 11:52:17 +0200 test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 11:52:17 +0200] rev 14475
test-gendoc: update for new Russian translation
Mon, 30 May 2011 01:24:21 +0400 i18n-ru: branches-import translated
Alexander Sauta <demosito@gmail.com> [Mon, 30 May 2011 01:24:21 +0400] rev 14474
i18n-ru: branches-import translated
Sun, 29 May 2011 02:33:36 +0400 i18n-ru:bisect,backout,branch translated
Alexander Sauta <demosito@gmail.com> [Sun, 29 May 2011 02:33:36 +0400] rev 14473
i18n-ru:bisect,backout,branch translated
Sun, 29 May 2011 01:42:59 +0400 i18n-ru: translated add, addremove, annotate, archive
Alexander Sauta <demosito@gmail.com> [Sun, 29 May 2011 01:42:59 +0400] rev 14472
i18n-ru: translated add, addremove, annotate, archive
Sun, 29 May 2011 01:31:12 +0400 i18n-ru:translation started,convert translated
Alexander Sauta <demosito@gmail.com> [Sun, 29 May 2011 01:31:12 +0400] rev 14471
i18n-ru:translation started,convert translated
Thu, 19 May 2011 16:25:26 -0300 i18n-pt_BR: synchronized with ab687820c4cc stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Thu, 19 May 2011 16:25:26 -0300] rev 14470
i18n-pt_BR: synchronized with ab687820c4cc
Sat, 28 May 2011 11:03:48 -0400 subrepo: don't crash when git .hgsubstate is empty (issue2716) stable
Eric Eisner <ede@alum.mit.edu> [Sat, 28 May 2011 11:03:48 -0400] rev 14469
subrepo: don't crash when git .hgsubstate is empty (issue2716)
Mon, 30 May 2011 21:44:03 +0300 mq: no need to make a copy of seriesopts
Idan Kamara <idankk86@gmail.com> [Mon, 30 May 2011 21:44:03 +0300] rev 14468
mq: no need to make a copy of seriesopts the command decorator takes care of copying the options (introduced in 5b48ad1e7f1a)
Fri, 27 May 2011 21:11:44 +0200 workingctx.remove: use self.forget
Adrian Buehlmann <adrian@cadifra.com> [Fri, 27 May 2011 21:11:44 +0200] rev 14467
workingctx.remove: use self.forget
Tue, 31 May 2011 13:18:56 +0200 commands: use repo.branchheads in heads command
Martin Geisler <mg@aragost.com> [Tue, 31 May 2011 13:18:56 +0200] rev 14466
commands: use repo.branchheads in heads command
Tue, 31 May 2011 09:59:03 +0200 commands: remove unused variable from heads command
Martin Geisler <mg@aragost.com> [Tue, 31 May 2011 09:59:03 +0200] rev 14465
commands: remove unused variable from heads command The b variable has not been needed since fd511e9eeea6. Renamed ls variable to bheads for clarity.
Tue, 31 May 2011 08:47:16 +0200 mq: print "'foo' 'bar'", not "['foo', 'bar']" when showing guards
Martin Geisler <mg@aragost.com> [Tue, 31 May 2011 08:47:16 +0200] rev 14464
mq: print "'foo' 'bar'", not "['foo', 'bar']" when showing guards The internal list representation of guards was leaking into the output. The guards were always printed using repr(guard) and that style was kept. When "hg qguard -l" prints several guards for a patch, it does so by joining the names with " " and that style was used for the error messages too.
Fri, 27 May 2011 12:42:36 +0200 hg: remove underscores in clone function
Martin Geisler <mg@aragost.com> [Fri, 27 May 2011 12:42:36 +0200] rev 14463
hg: remove underscores in clone function
Sun, 29 May 2011 13:43:50 +0300 hg-ssh: fix dispatch call to use dispatch.request()
Idan Kamara <idankk86@gmail.com> [Sun, 29 May 2011 13:43:50 +0300] rev 14462
hg-ssh: fix dispatch call to use dispatch.request() 08bfec2ef031 changed dispatch.dispatch() to accept a request object instead of a list of arguments
Mon, 30 May 2011 11:18:47 +0200 gendoc: config help topic is in hgrc.5, do not include it in hg.1
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 11:18:47 +0200] rev 14461
gendoc: config help topic is in hgrc.5, do not include it in hg.1
Mon, 30 May 2011 11:15:25 +0200 doc: improve merge between hgrc.5 and config help topic
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 11:15:25 +0200] rev 14460
doc: improve merge between hgrc.5 and config help topic
Mon, 30 May 2011 11:14:31 +0200 doc: rebuild hgrc.5 man and HTML page when help/config changes
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 11:14:31 +0200] rev 14459
doc: rebuild hgrc.5 man and HTML page when help/config changes
Mon, 30 May 2011 10:35:43 +0200 help/config: separate terms with a blank line
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 10:35:43 +0200] rev 14458
help/config: separate terms with a blank line This makes it easier for translators since they can then translate each term individually.
Mon, 30 May 2011 10:30:46 +0200 help/config: fix rendering of definition list
Martin Geisler <mg@lazybytes.net> [Mon, 30 May 2011 10:30:46 +0200] rev 14457
help/config: fix rendering of definition list Without the blank line, the minirst parser renders Term-1 Line-1 Line-2 Term-2 Line-1 as Term-1 Line-1 Line-2 Term-2 Line-1 because the second term is seen as a paragraph.
Mon, 30 May 2011 10:21:39 +0200 help: move part of hgrc.5 man page config help topic
Yun Lee <yun.lee.bj@gmail.com> [Mon, 30 May 2011 10:21:39 +0200] rev 14456
help: move part of hgrc.5 man page config help topic
Mon, 30 May 2011 10:05:39 +0200 hgrc.5: make minirst find headings correctly
Yun Lee <yun.lee.bj@gmail.com> [Mon, 30 May 2011 10:05:39 +0200] rev 14455
hgrc.5: make minirst find headings correctly The minirst parser is stricter than Docutils here and require a blank after a heading. Otherwise the heading is classified as a paragraph.
Sat, 28 May 2011 11:44:27 +0200 run-tests: fix --blacklist (broken by 95715c2f90bf)
Patrick Mezard <pmezard@gmail.com> [Sat, 28 May 2011 11:44:27 +0200] rev 14454
run-tests: fix --blacklist (broken by 95715c2f90bf)
Fri, 27 May 2011 21:50:11 +0200 patch: do not patch unknown files (issue752)
Patrick Mezard <pmezard@gmail.com> [Fri, 27 May 2011 21:50:11 +0200] rev 14453
patch: do not patch unknown files (issue752)
Fri, 27 May 2011 21:50:10 +0200 patch: use temporary files to handle intermediate copies
Patrick Mezard <pmezard@gmail.com> [Fri, 27 May 2011 21:50:10 +0200] rev 14452
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.
Fri, 27 May 2011 21:50:09 +0200 patch: refactor file creation/removal detection
Patrick Mezard <pmezard@gmail.com> [Fri, 27 May 2011 21:50:09 +0200] rev 14451
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.
Fri, 27 May 2011 15:59:52 +0200 commands.remove: don't use workingctx.remove(list, unlink=True)
Adrian Buehlmann <adrian@cadifra.com> [Fri, 27 May 2011 15:59:52 +0200] rev 14450
commands.remove: don't use workingctx.remove(list, unlink=True) workingctx.remove(list, unlink=True) is unsuited here, because it does too much: it also unlinks added files. But the command 'hg remove' is specified to *never* unlink added files. Instead, we now unlink the files at the commands.remove level (if --after was not specified) and use workingctx.forget for all files. As an added bonus, this happens to eliminate a wlock acquire/release pair, since the previous implementation caused acquire wlock release wlock acquire wlock release wlock where the first pair of acquire/release was caused by the workingctx.forget call, and the second by the workingctx.remove call.
Fri, 27 May 2011 17:51:16 +0300 tests: add a test to check for duplicate command options
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:51:16 +0300] rev 14449
tests: add a test to check for duplicate command options
Fri, 27 May 2011 17:49:54 +0300 mq: allow --mq for qrecord
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:49:54 +0300] rev 14448
mq: allow --mq for qrecord
Fri, 27 May 2011 17:46:48 +0300 run-tests: fix --blacklist with jobs > 1
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:46:48 +0300] rev 14447
run-tests: fix --blacklist with jobs > 1 filter blacklisted tests before partitioning them to the children. maintains the 'Skipped...' output but not the 's'.
Fri, 27 May 2011 17:46:47 +0300 run-tests: slightly simplify blacklist check
Idan Kamara <idankk86@gmail.com> [Fri, 27 May 2011 17:46:47 +0300] rev 14446
run-tests: slightly simplify blacklist check
Fri, 27 May 2011 08:50:27 -0500 coal: use preformatted text for descriptions (issue2835)
Matt Mackall <mpm@selenic.com> [Fri, 27 May 2011 08:50:27 -0500] rev 14445
coal: use preformatted text for descriptions (issue2835) The coal style was broken here by an earlier change to paper, which shares files.
Fri, 27 May 2011 10:03:29 +0200 rebase: add option --tool/-t for 'pull --rebase'
Adrian Buehlmann <adrian@cadifra.com> [Fri, 27 May 2011 10:03:29 +0200] rev 14444
rebase: add option --tool/-t for 'pull --rebase' This makes 'pull --rebase' consistent with the merge command, which already provides that option to control the merges
Fri, 27 May 2011 11:01:44 +0200 subrepo: refactor writestate for clarity
Martin Geisler <mg@aragost.com> [Fri, 27 May 2011 11:01:44 +0200] rev 14443
subrepo: refactor writestate for clarity
Thu, 26 May 2011 17:15:35 -0500 cmdutil: make private copies of option lists to avoid sharing monkeypatches
Matt Mackall <mpm@selenic.com> [Thu, 26 May 2011 17:15:35 -0500] rev 14442
cmdutil: make private copies of option lists to avoid sharing monkeypatches
Thu, 26 May 2011 19:00:47 +0300 record: fix options placeholder
Idan Kamara <idankk86@gmail.com> [Thu, 26 May 2011 19:00:47 +0300] rev 14441
record: fix options placeholder
Wed, 25 May 2011 08:38:58 -0700 subrepo: bare git repos considered dirty
Paul Molodowitch <pm@stanfordalumni.org> [Wed, 25 May 2011 08:38:58 -0700] rev 14440
subrepo: bare git repos considered dirty Currently, if there is a bare git subrepo, but it is at the "right" revision, calling dirty() will error because diff-index does not work on bare repos. This patch makes it so bare subrepos are always considered dirty.
Thu, 26 May 2011 00:53:23 +0300 dispatch: use the request to store the ui object
Idan Kamara <idankk86@gmail.com> [Thu, 26 May 2011 00:53:23 +0300] rev 14439
dispatch: use the request to store the ui object and check if we got one before creating. note that the contents of the ui object might change after dispatch() returns (by options passed through --config for example), to ensure it doesn't, pass a copy() of it.
Thu, 26 May 2011 00:44:11 +0300 dispatch: wrap dispatch related information in a request class
Idan Kamara <idankk86@gmail.com> [Thu, 26 May 2011 00:44:11 +0300] rev 14438
dispatch: wrap dispatch related information in a request class currently only stores the arguments.
Thu, 26 May 2011 22:51:02 +0800 patch: restore the previous output of 'diff --stat'
Steven Brown <StevenGBrown@gmail.com> [Thu, 26 May 2011 22:51:02 +0800] rev 14437
patch: restore the previous output of 'diff --stat' Restore the previous diffstat behaviour of scaling by the maximum number of changes to a single file. Changeset f03f08240c32 modified the diffstat to be scaled by the total number of changes. This seems to have been unintentional.
Tue, 24 May 2011 17:48:16 +0200 wireproto: enable optional args for known() for future extensibility
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 24 May 2011 17:48:16 +0200] rev 14436
wireproto: enable optional args for known() for future extensibility Firstly, I think we should do this for all new wire commands, just to be on the safe side. So I want to get this into the 1.9 release. Secondly, there actually is potential here that sometimes the server can know that the number of its nodes which can possibly still be undecided on the client is small. It might then just send them along directly (cutting short the end game). This, however, requires walking the graph on the server, which can be expensive, so for the moment we're not actually doing it.
Thu, 26 May 2011 17:15:35 -0500 context: make forget work like commands.forget
Matt Mackall <mpm@selenic.com> [Thu, 26 May 2011 17:15:35 -0500] rev 14435
context: make forget work like commands.forget Switch users of wctx.delete(..., False) to forget.
Thu, 26 May 2011 17:15:35 -0500 dirstate: rename forget to drop
Matt Mackall <mpm@selenic.com> [Thu, 26 May 2011 17:15:35 -0500] rev 14434
dirstate: rename forget to drop It has substantially different semantics from forget at the command layer, so change it to avoid confusion. We can't simply combine it with remove because we need to explicitly drop non-added files in some cases like commit.
Thu, 26 May 2011 10:46:34 +0200 minirst: read test input from stdin
Martin Geisler <mg@aragost.com> [Thu, 26 May 2011 10:46:34 +0200] rev 14433
minirst: read test input from stdin
Thu, 26 May 2011 11:11:34 +0200 tests: update monotone version requirement
Sune Foldager <cryo@cyanite.org> [Thu, 26 May 2011 11:11:34 +0200] rev 14432
tests: update monotone version requirement
Wed, 25 May 2011 10:06:17 +0200 test-git-import: test patching existing copy targets
Patrick Mezard <pmezard@gmail.com> [Wed, 25 May 2011 10:06:17 +0200] rev 14431
test-git-import: test patching existing copy targets
Tue, 24 May 2011 17:30:00 -0500 httprepo: handle large lengths by bypassing the len() operator
Matt Mackall <mpm@selenic.com> [Tue, 24 May 2011 17:30:00 -0500] rev 14430
httprepo: handle large lengths by bypassing the len() operator
Tue, 24 May 2011 14:52:23 +0200 workingctx.remove: don't stat files again after unlinking
Adrian Buehlmann <adrian@cadifra.com> [Tue, 24 May 2011 14:52:23 +0200] rev 14429
workingctx.remove: don't stat files again after unlinking we already know at this point that they have been unlinked
Tue, 24 May 2011 17:16:31 -0500 httprepo: send URL redirection notices to stderr (issue2828)
Matt Mackall <mpm@selenic.com> [Tue, 24 May 2011 17:16:31 -0500] rev 14428
httprepo: send URL redirection notices to stderr (issue2828)
Tue, 24 May 2011 19:17:22 +0300 record: alias qrecord to qnew -i/--interactive
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:17:22 +0300] rev 14427
record: alias qrecord to qnew -i/--interactive
Tue, 24 May 2011 19:17:19 +0300 record: add qrefresh -i/--interactive
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:17:19 +0300] rev 14426
record: add qrefresh -i/--interactive interactively select changes to refresh
Tue, 24 May 2011 19:17:04 +0300 record: add an option to backup all wc modifications
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:17:04 +0300] rev 14425
record: add an option to backup all wc modifications Also, don't create a backup dir if we have no files to backup. This is essential for qrefresh --interactive. Since we can't select individual files to qrefresh without eliminating already present changes, we have to backup all changes in the working copy to avoid refreshing unaccepted hunks. (thanks to Patrick for the idea)
Tue, 24 May 2011 19:17:02 +0300 record: check patch name is valid before prompting in qrecord
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:17:02 +0300] rev 14424
record: check patch name is valid before prompting in qrecord
Tue, 24 May 2011 19:16:51 +0300 mq: use checkpatchname
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:16:51 +0300] rev 14423
mq: use checkpatchname This also fixes a bug where qrename would allow renaming a patch to a reserved name.
Tue, 24 May 2011 19:16:51 +0300 mq: wrap patch file name checks in a function
Idan Kamara <idankk86@gmail.com> [Tue, 24 May 2011 19:16:51 +0300] rev 14422
mq: wrap patch file name checks in a function
Tue, 24 May 2011 13:30:10 -0500 pure parsers: properly detect corrupt index files
Augie Fackler <durin42@gmail.com> [Tue, 24 May 2011 13:30:10 -0500] rev 14421
pure parsers: properly detect corrupt index files This new Python code should be equivalent in behavior to the if statement at line 312 of parsers.c. Without this, the pure-python parsers improperly ignore truncated revlogs as created in test-verify.t.
Tue, 24 May 2011 14:08:20 +0200 workingctx: unlink paths while holding the wlock
Adrian Buehlmann <adrian@cadifra.com> [Tue, 24 May 2011 14:08:20 +0200] rev 14420
workingctx: unlink paths while holding the wlock
Tue, 24 May 2011 16:12:01 +0200 wireproto: do not hash when heads == ['force']
Martin Geisler <mg@aragost.com> [Tue, 24 May 2011 16:12:01 +0200] rev 14419
wireproto: do not hash when heads == ['force'] Changeset 88f0e41d8802 introduced the unbundlehash capability and unconditionally hashed the heads on the client side. By mistake, the heads were also cased in the heads == ['force'] case.
Tue, 24 May 2011 14:21:04 +0200 patch: remove EOL support from linereader class
Patrick Mezard <pmezard@gmail.com> [Tue, 24 May 2011 14:21:04 +0200] rev 14418
patch: remove EOL support from linereader class This was only used when reading patched files which is now done by backends.
Mon, 23 May 2011 22:49:10 -0500 subrepo: handle local added subrepo case correctly
Matt Mackall <mpm@selenic.com> [Mon, 23 May 2011 22:49:10 -0500] rev 14417
subrepo: handle local added subrepo case correctly
Mon, 23 May 2011 23:22:47 +0300 graphlog: remove unused arg from _wrapcmd
Idan Kamara <idankk86@gmail.com> [Mon, 23 May 2011 23:22:47 +0300] rev 14416
graphlog: remove unused arg from _wrapcmd
Mon, 23 May 2011 23:09:00 +0300 extensions: raise when trying to find an extension that failed to load
Idan Kamara <idankk86@gmail.com> [Mon, 23 May 2011 23:09:00 +0300] rev 14415
extensions: raise when trying to find an extension that failed to load extensions that depend on other extensions (such as record) use this pattern to check if the dependant extension is available: try: mq = extensions.find('mq') except KeyError: return but since if an error occurs while loading an extension it leaves its entry in the _extensions map as None, we want to raise in that situation too. (rather than adding another check if the return value is None)
Mon, 23 May 2011 15:56:31 +0200 remove: clarify help text about added files never being deleted from disk
Adrian Buehlmann <adrian@cadifra.com> [Mon, 23 May 2011 15:56:31 +0200] rev 14414
remove: clarify help text about added files never being deleted from disk
Wed, 18 May 2011 09:12:27 +0200 pure: provide more correct implementation of posixfile for Windows
Adrian Buehlmann <adrian@cadifra.com> [Wed, 18 May 2011 09:12:27 +0200] rev 14413
pure: provide more correct implementation of posixfile for Windows requires ctypes Why is posixfile a class? Because the implementation needs to use the Python library call os.fdopen [1], which sets the 'name' attribute on the Python file object it creates to the mostly meaningless string '<fdopen>', since file descriptors don't have a name. But users of posixfile depend on the name attribute [2] being set to a proper value, like Python's built-in 'open' function sets it on file objects. Python file's name attribute is read-only, so we can't just assign to it after the file object has alrady been created. To solve this problem, we save the name of the file on a wrapper object, and delegate the file function calls to the wrapped (private) file object using __getattr__. [1] http://docs.python.org/library/os.html#os.fdopen [2] http://docs.python.org/library/stdtypes.html#file.name
Mon, 23 May 2011 20:35:10 +0200 bundlerepo: make getremotechanges support filtering of incoming
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 23 May 2011 20:35:10 +0200] rev 14412
bundlerepo: make getremotechanges support filtering of incoming Extensions can hook discovery.findcommonincoming to filter out unwanted remote changesets. This patch makes getremotechanges respect the changed remote heads returned by such extensions.
Mon, 23 May 2011 20:32:29 +0200 tests: add tests for discovery/pull without cgsubset
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 23 May 2011 20:32:29 +0200] rev 14411
tests: add tests for discovery/pull without cgsubset
Mon, 23 May 2011 20:31:39 +0200 tests: add tests for partial pulls with treediscovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 23 May 2011 20:31:39 +0200] rev 14410
tests: add tests for partial pulls with treediscovery
Mon, 23 May 2011 20:31:04 +0200 tests: support multiple caps in notcapable
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Mon, 23 May 2011 20:31:04 +0200] rev 14409
tests: support multiple caps in notcapable
Sun, 22 May 2011 16:10:03 +0300 record: use cmdutil.command decorator
Idan Kamara <idankk86@gmail.com> [Sun, 22 May 2011 16:10:03 +0300] rev 14408
record: use cmdutil.command decorator
Sun, 22 May 2011 16:10:02 +0300 record: suggest the right command when running non interactively
Idan Kamara <idankk86@gmail.com> [Sun, 22 May 2011 16:10:02 +0300] rev 14407
record: suggest the right command when running non interactively
Sun, 22 May 2011 11:03:15 +0200 applyupdates: audit merged files
Adrian Buehlmann <adrian@cadifra.com> [Sun, 22 May 2011 11:03:15 +0200] rev 14406
applyupdates: audit merged files protects changing flags on merged files (util.setflags call on line 341)
Sat, 21 May 2011 23:21:12 +0200 applyupdates: audit path on flag changes
Adrian Buehlmann <adrian@cadifra.com> [Sat, 21 May 2011 23:21:12 +0200] rev 14405
applyupdates: audit path on flag changes we're using the auditor of the repo wopener, since this is a path that belongs to the tree we're updating to
Sat, 21 May 2011 23:13:59 +0200 opener: add audit function
Adrian Buehlmann <adrian@cadifra.com> [Sat, 21 May 2011 23:13:59 +0200] rev 14404
opener: add audit function
Sat, 21 May 2011 15:09:15 -0500 templatekw: use diffstatsum in diffstat keyword
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:09:15 -0500] rev 14403
templatekw: use diffstatsum in diffstat keyword
Sat, 21 May 2011 15:06:38 -0500 patch: use diffstatsum in diffstat
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:06:38 -0500] rev 14402
patch: use diffstatsum in diffstat
Sat, 21 May 2011 15:06:36 -0500 patch: add diffstatsum helper
Matt Mackall <mpm@selenic.com> [Sat, 21 May 2011 15:06:36 -0500] rev 14401
patch: add diffstatsum helper
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
(0) -10000 -3000 -1000 -240 +240 +1000 +3000 +10000 +30000 tip