sapling/mercurial
Peter Arrenbrecht 6a8e51ae73 bundle: don't send too many changesets (Issue1704)
The fast path in changegroupsubset can send too many csets. This happens
because it uses the parents of all bases as common nodes and then goes
forward from this again. If a base has a parent that has another child,
which is -not- a base, then this other child will nevertheless end up in
the changegroup.

The fix is to not use findmissing(), but use nodesbetween() instead, as
do the slow path and incoming/outgoing.

The change to test-notify.out is correct, because it actually hits this
bug, as can be seen by glog'ing the two repos:

@    22c88
|\
| o  0a184
| |
o |  0647d
|/
o  cb9a9

and

o  0647d
|
@  cb9a9

It used to pull 0647d again, which is unnecessary.
2009-11-07 12:28:30 +01:00
..
hgweb hgweb: treat rev as raw-rev if user agent is hg 2009-11-06 22:46:46 +01:00
pure compat: use open() instead of file() everywhere 2009-07-05 11:01:30 +02:00
__init__.py Add back links from file revisions to changeset revisions 2005-05-03 13:16:10 -08:00
ancestor.py ancestor: use set instead of dict 2009-05-17 03:53:13 +02:00
archival.py archive: add branch and tag informations to the .hg_archival.txt file 2009-08-11 09:04:02 +02:00
base85.c Some additional space/tab cleanups 2008-10-20 15:19:05 +02:00
bdiff.c bdiff: gradually enable the popularity hack 2009-10-03 23:36:08 +02:00
bundlerepo.py bundlerepo: keep the bundlerevlog interface in sync with revlog 2009-10-31 16:42:51 +01:00
byterange.py byterange: backport fix from upstream 2009-11-02 17:54:19 +01:00
changegroup.py Improve some docstrings relating to changegroups and prepush(). 2009-09-08 17:58:59 -04:00
changelog.py changelog: do not use a mutable default value 2009-10-31 16:49:27 +01:00
cmdutil.py cmdutil: fix bug in finddate() implementation 2009-10-30 09:54:39 +01:00
commands.py clone: simplify help text 2009-11-09 17:28:40 -02:00
config.py Merge with crew-stable 2009-09-19 13:55:18 +02:00
context.py filectx: shortcut unrelated files in ancestor() (issue1327) 2009-11-07 14:07:45 -06:00
copies.py do not attempt to translate ui.debug output 2009-09-19 01:15:38 +02:00
demandimport.py demandimport: blacklist gtk 2009-09-17 17:39:43 -05:00
diffhelpers.c Handle patches with misformatted empty lines 2007-11-01 17:15:50 -05:00
dirstate.py remove unused imports 2009-10-31 16:56:58 +01:00
dispatch.py pychecker: remove unused local variables 2009-10-31 17:04:46 +01:00
encoding.py encoding: fix issue with non-standard UTF-8 CTYPE on OS X 2009-10-10 12:00:43 +02:00
error.py Make distinct lookup error for localrepo.lookup 2009-08-31 10:58:33 -05:00
extensions.py pychecker: remove unused local variables 2009-10-31 17:04:46 +01:00
fancyopts.py some modernization cleanups, forward compatibility 2009-05-13 14:08:39 +02:00
filelog.py filelog encoding: move the encoding/decoding into store 2009-05-20 18:35:47 +02:00
filemerge.py merge: supply base node to merge tools in the environment 2009-11-04 15:18:19 +01:00
graphmod.py graphlog: don't pass filectxs to the templater (issue1896) 2009-11-06 08:27:17 +01:00
hbisect.py bisect: limit considered set to descendants of first good rev 2009-10-12 14:59:28 -05:00
help.py help: add "hg help config" topic 2009-11-07 22:12:50 +01:00
hg.py Branch name printed since 00655544b9f3 now in local encoding. 2009-11-07 23:35:46 +01:00
hook.py hook: only redirect stdout if it and stderr are valid files 2009-10-28 21:35:57 +01:00
httprepo.py Sometimes pushing to an HTTP repo fails with a useless message. 2009-10-17 14:00:41 -04:00
i18n.py i18n: remove unnecessary os.path.normpath call 2009-10-03 18:58:25 +02:00
ignore.py ignore: separate pattern extraction from match compilation 2009-07-09 15:14:42 -07:00
keepalive.py keepalive: handle broken pipes gracefully during large POSTs 2009-11-02 11:03:22 -05:00
localrepo.py bundle: don't send too many changesets (Issue1704) 2009-11-07 12:28:30 +01:00
lock.py lock: catch specific exceptions 2009-10-31 18:10:52 +01:00
lsprof.py merge with crew-stable 2009-08-05 17:21:29 +02:00
lsprofcalltree.py drop unused imports 2009-05-14 15:35:46 +02:00
mail.py patchbomb: fix handling of email addresses with Unicode domains (IDNA) 2009-11-05 10:49:28 +01:00
manifest.py manifest/revlog: do not let the revlog cache mutable objects 2009-09-04 10:47:55 +02:00
match.py split local and stdlib module imports (eases migration issues) 2009-07-05 11:06:09 +02:00
mdiff.py replace "i in range(len(xs))" with "i, x in enumerate(xs)" 2009-05-26 22:59:52 +02:00
merge.py submerge: properly deal with overwrites 2009-11-08 10:29:52 -06:00
minirst.py minirst: update module docstring 2009-11-07 03:22:03 +01:00
mpatch.c allow Mercurial to compile on Haiku 2008-09-17 10:22:35 +02:00
node.py put license and copyright info into comment blocks 2009-04-26 01:13:08 +02:00
osutil.c osutil: fix compilation with -ansi 2009-08-14 11:18:23 +02:00
parsers.c parsers.c: parse_manifest: fixing refcount of flags 2009-08-27 14:15:04 +02:00
patch.py diff: add --inverse option 2009-11-05 15:18:56 +01:00
posix.py util: move rename into posix.py and windows.py 2009-10-07 20:32:07 +02:00
repair.py localrepo: add destroyed() method for strip/rollback to use (issue548). 2009-07-16 10:39:41 -04:00
repo.py improve code readability 2009-09-09 11:12:36 +02:00
revlog.py pychecker: remove unused local variables 2009-10-31 17:04:46 +01:00
simplemerge.py separate import lines from mercurial and general python modules 2009-04-28 17:40:46 +02:00
sshrepo.py do not attempt to translate ui.debug output 2009-09-19 01:15:38 +02:00
sshserver.py sshrepo: move mkstemp() out of the try block, we don't use the exception 2009-11-07 13:25:25 +01:00
statichttprepo.py localrepo: rename in-memory tag cache instance attributes (issue548). 2009-07-16 10:39:41 -04:00
store.py store: eliminate reference cycle in fncachestore 2009-07-14 14:05:07 +02:00
streamclone.py Merge with -stable 2009-09-30 21:42:51 -05:00
strutil.py updated license to be explicit about GPL version 2 2009-04-26 01:08:54 +02:00
subrepo.py submerge: properly deal with overwrites 2009-11-08 10:29:52 -06:00
tags.py remove unused imports 2009-10-31 16:56:58 +01:00
templatefilters.py templater: readable dates older than 24 months revert to ISO8601 (issue1006) 2009-11-05 15:19:54 +01:00
templater.py templater: remove support for ## template variables 2009-08-20 10:41:56 +02:00
transaction.py transaction: always remove empty journal on abort 2009-11-02 10:19:14 +01:00
ui.py ui: refer to "hg help config" when no username is set 2009-11-07 22:13:09 +01:00
url.py keepalive: handle broken pipes gracefully during large POSTs 2009-11-02 11:03:22 -05:00
util.py util: sort paths in walkrepos() (fixes test failures in test-hgwebdir) 2009-11-06 22:54:51 +01:00
verify.py verify: report existence of journal 2009-11-02 10:15:04 +01:00
win32.py coding style: use a space after comma 2009-07-22 23:12:54 +02:00
windows.py Merge with stable 2009-10-11 13:54:19 -05:00