Tue, 06 Dec 2022 12:10:31 +0100 bundle: when forcing acceptance of incoming delta also accept snapshot
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 06 Dec 2022 12:10:31 +0100] rev 49886
bundle: when forcing acceptance of incoming delta also accept snapshot Snapshot where never considered reusable and the unbundling side always tried to find a delta from them. In the `forced` mode this is counter-productive because it will either connect two delta-tree that should not be connected or it will spend potentially a lot of time because creating a full snapshot anyway. So in this mode, we accept the full snapshot as is. This changeset is benchmarked with its children so please do not split them apart when landing.
Wed, 07 Dec 2022 20:05:19 +0100 delta-find: properly report full snapshot used from cache as such
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Dec 2022 20:05:19 +0100] rev 49885
delta-find: properly report full snapshot used from cache as such The number of tries and the delta base is reported differently so we missed there detection initially.
Wed, 07 Dec 2022 22:40:54 +0100 test-acl: glob the payload size again
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Dec 2022 22:40:54 +0100] rev 49884
test-acl: glob the payload size again This size of bundle-2 payload are irrelevant for this test and only appears in its output because other pieces of the debug output are important. We glob it these number before they get in our way again.
Tue, 29 Nov 2022 15:41:28 -0800 amend: add a --draft option to set phase to draft
Martin von Zweigbergk <martinvonz@google.com> [Tue, 29 Nov 2022 15:41:28 -0800] rev 49883
amend: add a --draft option to set phase to draft Some users create commits in secret phase by default and then want to make them draft so they can be uploaded. This patch adds a --draft option for that. We already have a flag for changing the phase to secret, so it seems consistent to have one for draft.
Tue, 29 Nov 2022 13:07:16 -0800 commit: add --draft option to use draft phase
Martin von Zweigbergk <martinvonz@google.com> [Tue, 29 Nov 2022 13:07:16 -0800] rev 49882
commit: add --draft option to use draft phase
Tue, 29 Nov 2022 14:40:17 -0800 tests: use graph log in test-phases.t
Martin von Zweigbergk <martinvonz@google.com> [Tue, 29 Nov 2022 14:40:17 -0800] rev 49881
tests: use graph log in test-phases.t It's hard to tell that the phases are ordered correctly without seeing the graph.
Tue, 29 Nov 2022 13:31:01 -0800 commit: move check for incompatible args earlier
Martin von Zweigbergk <martinvonz@google.com> [Tue, 29 Nov 2022 13:31:01 -0800] rev 49880
commit: move check for incompatible args earlier I think it makes sense to check the command line arguments as early as possible, so we don't have to wait for a repo lock to tell the user that they passed invalid arguments.
Mon, 07 Nov 2022 22:30:30 -0500 delta-find: add a delta-reuse policy that blindly accepts incoming deltas
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 07 Nov 2022 22:30:30 -0500] rev 49879
delta-find: add a delta-reuse policy that blindly accepts incoming deltas When this policy is set, incoming deltas are blindly accepted without regard for the validity of the chain they build.
Sat, 03 Dec 2022 01:24:34 +0100 delta-find: add a `delta-reuse-policy` on configuration `path`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 01:24:34 +0100] rev 49878
delta-find: add a `delta-reuse-policy` on configuration `path` That option allows to control the behavior on a per-path basis, opening the way to treating pulls from central servers differently than other operations.
Sat, 03 Dec 2022 01:31:23 +0100 changegroup: add `delta_base_reuse_policy` argument
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 01:31:23 +0100] rev 49877
changegroup: add `delta_base_reuse_policy` argument The argument available through function from changegroup.apply to `revlog.apply` allow to override the revlog configuration in terms of delta-base-reuse policy when searching for a delta to store a revision. It will be put to use in the next changesets.
Sat, 03 Dec 2022 01:16:22 +0100 bundleoperation: optionnaly record the `remote` that produced the bundle
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 01:16:22 +0100] rev 49876
bundleoperation: optionnaly record the `remote` that produced the bundle We have the information at hand, and the peer now have knownledge of its `path` object, which constaints useful behavior configuration. So the simpler seems to be to pass that object around so it can be used if needed.
Mon, 05 Dec 2022 03:23:46 +0100 delta-find: add a test checking various simple behavior
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Dec 2022 03:23:46 +0100] rev 49875
delta-find: add a test checking various simple behavior There are enough work happening in this area that it is worth having a dedicated test for it. So far we add to small test checking that the "best" parent is picked as the delta base and that this behavior can be controlled during commit and unbundle.
Fri, 02 Dec 2022 19:34:01 +0100 peer: pass the `path` to the statichttp peer
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 19:34:01 +0100] rev 49874
peer: pass the `path` to the statichttp peer We now have all peer able to receive and store a `path` object. Hooray.
Sat, 03 Dec 2022 06:16:58 +0100 peer: get the `path` object down to the sshpeer
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 06:16:58 +0100] rev 49873
peer: get the `path` object down to the sshpeer Same logic as the other peers.
Sat, 03 Dec 2022 06:16:45 +0100 logexchange: use the proper accessors to get the remote url
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 06:16:45 +0100] rev 49872
logexchange: use the proper accessors to get the remote url There is an official method, let us use it. this will prevent a crash when the private attribute disappear.
Sat, 03 Dec 2022 00:24:28 +0100 peer: get the `path` object down to the httppeer
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 00:24:28 +0100] rev 49871
peer: get the `path` object down to the httppeer One more peer with a path stored.
Sat, 03 Dec 2022 05:53:13 +0100 path: fix `url.copy` dropping the port
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 05:53:13 +0100] rev 49870
path: fix `url.copy` dropping the port The copy method have been wrong for a while, but the new code reveals it.
Fri, 02 Dec 2022 18:19:59 +0100 peer: pass the `path` object to `make_peer`
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 18:19:59 +0100] rev 49869
peer: pass the `path` object to `make_peer` We don't do anything with it yet, but we can start implementing it for each peer type starting now.
Fri, 02 Dec 2022 18:18:57 +0100 path: allow to copy a path while adjusting the url
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 18:18:57 +0100] rev 49868
path: allow to copy a path while adjusting the url This will be used by `scheme` in the next changesets.
Sat, 03 Dec 2022 00:19:23 +0100 peer: store the path object used to build a peer from a repo
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 00:19:23 +0100] rev 49867
peer: store the path object used to build a peer from a repo This is the simplest case, we so starts with it.
Fri, 02 Dec 2022 17:41:44 +0100 peer: build a `path` object on the fly when needed
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 17:41:44 +0100] rev 49866
peer: build a `path` object on the fly when needed So now, we always have a `path` object around when building the peer
Sat, 03 Dec 2022 00:16:07 +0100 peer: have `repo.peer` take an optional `path` argument
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 00:16:07 +0100] rev 49865
peer: have `repo.peer` take an optional `path` argument We are ready to start to actually set the value now.
Sat, 03 Dec 2022 00:13:50 +0100 peer: add a `path` attribute to peer
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 00:13:50 +0100] rev 49864
peer: add a `path` attribute to peer It will start being set in the coming changesets.
Sat, 03 Dec 2022 00:00:41 +0100 peer: have a common constructor and use it
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 00:00:41 +0100] rev 49863
peer: have a common constructor and use it For now it does not do much, but we will extend it to also store a path object soon.
Fri, 02 Dec 2022 18:04:51 +0100 peer: use a dedicated name for the `peer` constructor
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 18:04:51 +0100] rev 49862
peer: use a dedicated name for the `peer` constructor We want to change the argument it takes, so we rather make them different function.
Fri, 02 Dec 2022 18:04:37 +0100 peer: dissolve `_peerlookup` into its last two callers
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 18:04:37 +0100] rev 49861
peer: dissolve `_peerlookup` into its last two callers This is about to need more changes and the function won't be useful. We do it early to clarify later changes.
Sat, 03 Dec 2022 03:45:45 +0100 peer: stop having a `peer()` method on `peer()`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 03:45:45 +0100] rev 49860
peer: stop having a `peer()` method on `peer()` This is already a peer, why do you want a peer if you already have one.
Sat, 03 Dec 2022 03:45:39 +0100 clone: explicitly detect the need to fetch a peer
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Dec 2022 03:45:39 +0100] rev 49859
clone: explicitly detect the need to fetch a peer Instead of having `peer()` method on all `peer()` for this usecase, we could simply handle it explicitly.
Fri, 02 Dec 2022 19:15:04 +0100 addbranchrevs: explicitly detect the need to fetch a peer
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 19:15:04 +0100] rev 49858
addbranchrevs: explicitly detect the need to fetch a peer Instead of having `peer()` method on all `peer()` for this usecase, we could simply handle it explicitly.
Fri, 02 Dec 2022 17:01:54 +0100 path: pass `path` to `peer` in `hg clone`
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Dec 2022 17:01:54 +0100] rev 49857
path: pass `path` to `peer` in `hg clone` We directly use the `path` object to build the `peer` object.
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 tip