D4520: narrow: build the known set of nodes only when ellipses is enabled
pulkit (Pulkit Goyal)
phabricator at mercurial-scm.org
Tue Sep 11 17:18:04 UTC 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG294c571490f0: narrow: build the known set of nodes only when ellipses is enabled (authored by pulkit, committed by ).
CHANGED PRIOR TO COMMIT
https://phab.mercurial-scm.org/D4520?vs=10874&id=10881#toc
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D4520?vs=10874&id=10881
REVISION DETAIL
https://phab.mercurial-scm.org/D4520
AFFECTED FILES
hgext/narrow/narrowcommands.py
CHANGE DETAILS
diff --git a/hgext/narrow/narrowcommands.py b/hgext/narrow/narrowcommands.py
--- a/hgext/narrow/narrowcommands.py
+++ b/hgext/narrow/narrowcommands.py
@@ -180,14 +180,17 @@
kwargs['oldexcludepats'] = exclude
kwargs['includepats'] = include
kwargs['excludepats'] = exclude
- kwargs['known'] = [node.hex(ctx.node()) for ctx in
- repo.set('::%ln', pullop.common)
- if ctx.node() != node.nullid]
- if not kwargs['known']:
- # Mercurial serialized an empty list as '' and deserializes it as
- # [''], so delete it instead to avoid handling the empty string on the
- # server.
- del kwargs['known']
+ # calculate known nodes only in ellipses cases because in non-ellipses cases
+ # we have all the nodes
+ if narrowbundle2.ELLIPSESCAP in pullop.remote.capabilities():
+ kwargs['known'] = [node.hex(ctx.node()) for ctx in
+ repo.set('::%ln', pullop.common)
+ if ctx.node() != node.nullid]
+ if not kwargs['known']:
+ # Mercurial serializes an empty list as '' and deserializes it as
+ # [''], so delete it instead to avoid handling the empty string on
+ # the server.
+ del kwargs['known']
extensions.wrapfunction(exchange,'_pullbundle2extraprepare',
pullbundle2extraprepare)
To: pulkit, durin42, #hg-reviewers, martinvonz
Cc: martinvonz, mercurial-devel
More information about the Mercurial-devel
mailing list