martinvonz (Martin von Zweigbergk)
User

Projects

User Details

User Since
Jun 28 2017, 5:28 PM (64 w, 4 d)

Recent Activity

Fri, Sep 21

martinvonz closed D4693: debugdirstate: deprecate --nodates in favor of --no-dates.
Fri, Sep 21, 8:30 PM
martinvonz committed rHG7e99b02768ef: debugdirstate: deprecate --nodates in favor of --no-dates.
debugdirstate: deprecate --nodates in favor of --no-dates
Fri, Sep 21, 8:29 PM
martinvonz created D4693: debugdirstate: deprecate --nodates in favor of --no-dates.
Fri, Sep 21, 1:05 PM
martinvonz closed D4692: narrow: remove hack to read narowspec from shared .hg directory.
Fri, Sep 21, 12:58 PM
martinvonz committed rHG543f26ece6cf: narrow: remove hack to read narowspec from shared .hg directory.
narrow: remove hack to read narowspec from shared .hg directory
Fri, Sep 21, 12:58 PM
martinvonz created D4692: narrow: remove hack to read narowspec from shared .hg directory.
Fri, Sep 21, 12:43 PM
martinvonz closed D4665: meld: enable auto-merge.
Fri, Sep 21, 7:40 AM
martinvonz committed rHGf803bcb902ad: meld: enable auto-merge.
meld: enable auto-merge
Fri, Sep 21, 7:40 AM

Thu, Sep 20

martinvonz closed D4669: fileserverclient: release memory as files are processed.
Thu, Sep 20, 4:12 PM
martinvonz committed rFBHGX1d371c3c606b: fileserverclient: release memory as files are processed.
fileserverclient: release memory as files are processed
Thu, Sep 20, 4:12 PM
martinvonz closed D4668: fileserverclient: don't wait for all batches getfiles before processing.
Thu, Sep 20, 4:11 PM
martinvonz committed rFBHGX3566090ff7e3: fileserverclient: don't wait for all batches getfiles before processing.
fileserverclient: don't wait for all batches getfiles before processing
Thu, Sep 20, 4:11 PM
martinvonz closed D4666: fastannotate: process files as they arrive.
Thu, Sep 20, 8:26 AM
martinvonz committed rHG63c2b44bbe60: setdiscovery: access future.result() inside command executor.
setdiscovery: access future.result() inside command executor
Thu, Sep 20, 8:26 AM
martinvonz closed D4667: setdiscovery: access future.result() inside command executor.
Thu, Sep 20, 8:26 AM
martinvonz committed rHGd8a7690ccc74: fastannotate: process files as they arrive.
fastannotate: process files as they arrive
Thu, Sep 20, 8:26 AM
martinvonz created D4669: fileserverclient: release memory as files are processed.
Thu, Sep 20, 1:11 AM
martinvonz created D4668: fileserverclient: don't wait for all batches getfiles before processing.
Thu, Sep 20, 1:11 AM
martinvonz added a dependent revision for D4668: fileserverclient: don't wait for all batches getfiles before processing: D4669: fileserverclient: release memory as files are processed.
Thu, Sep 20, 1:10 AM
martinvonz added a reviewer for D4667: setdiscovery: access future.result() inside command executor: indygreg.
Thu, Sep 20, 12:32 AM
martinvonz added a reviewer for D4666: fastannotate: process files as they arrive: indygreg.
Thu, Sep 20, 12:32 AM
martinvonz created D4667: setdiscovery: access future.result() inside command executor.
Thu, Sep 20, 12:32 AM
martinvonz created D4666: fastannotate: process files as they arrive.
Thu, Sep 20, 12:32 AM
martinvonz added a dependent revision for D4666: fastannotate: process files as they arrive: D4667: setdiscovery: access future.result() inside command executor.
Thu, Sep 20, 12:32 AM

Wed, Sep 19

martinvonz created D4665: meld: enable auto-merge.
Wed, Sep 19, 3:09 PM

Tue, Sep 18

martinvonz added a comment to D4483: wireprotov2: add phases to "changesetdata" command.

It's worth noting that when phase data is being requested, the
server will also emit changeset records for nodes in the bases
specified by the "noderange" argument. This is to ensure that
phase-only updates for nodes the client has are available to the
client, even if no new changesets will be transferred.

Tue, Sep 18, 6:57 PM

Mon, Sep 17

martinvonz accepted D4614: narrow: use diffmatcher to send only new filelogs in non-ellipses widening.

Nice! That was a lot simpler than I expected. I expected some changes would be needed on the client to prevent it from stripping the existing file nodes, but I suppose is still does that and it still works because it re-applies that stripped bundle afterwards.

Mon, Sep 17, 1:07 PM
martinvonz added inline comments to D4606: narrow: when writing treemanifests, skip inspecting directories outside narrow.
Mon, Sep 17, 11:55 AM

Thu, Sep 13

martinvonz closed D4586: rfl: remove assignment to cg1packer.
Thu, Sep 13, 6:17 PM
martinvonz committed rFBHGX3567ff51e382: rfl: remove assignment to cg1packer.
rfl: remove assignment to cg1packer
Thu, Sep 13, 6:17 PM
martinvonz closed D4585: rfl: "drop" support for hg <= 2.7.
Thu, Sep 13, 6:17 PM
martinvonz committed rFBHGX8b27fe42c1dd: rfl: "drop" support for hg <= 2.7.
rfl: "drop" support for hg <= 2.7
Thu, Sep 13, 6:17 PM
martinvonz created D4586: rfl: remove assignment to cg1packer.
Thu, Sep 13, 6:14 PM
martinvonz created D4585: rfl: "drop" support for hg <= 2.7.
Thu, Sep 13, 6:14 PM
martinvonz added a dependent revision for D4585: rfl: "drop" support for hg <= 2.7: D4586: rfl: remove assignment to cg1packer.
Thu, Sep 13, 6:14 PM
martinvonz added a comment to D4579: basestore: stop looking at the Nth item of an N-length revlog.

Probably a consequence of https://www.mercurial-scm.org/repo/hg/rev/a3dacabd476b or some other commit in that series.

Thu, Sep 13, 5:41 PM
martinvonz added a comment to D4572: localrepo: document and test bug around opening shared repos.

FIWI, I don't think I would expect the .hg/hgrc of the source repo to be loaded. I don't think I'd be surprised if I configured an extension in the source repo and had to configure that in the share as well for it to work.

Thu, Sep 13, 12:50 PM

Wed, Sep 12

martinvonz closed D4549: localrepo: move check for existing repo into createrepository().
Wed, Sep 12, 9:48 PM
martinvonz closed D4550: localrepo: use urllocalpath() for path to create repo too.
Wed, Sep 12, 9:48 PM
martinvonz committed rHG76b58f240821: localrepo: use urllocalpath() for path to create repo too.
localrepo: use urllocalpath() for path to create repo too
Wed, Sep 12, 9:48 PM
martinvonz committed rHGe471cb2852ea: localrepo: move check for existing repo into createrepository().
localrepo: move check for existing repo into createrepository()
Wed, Sep 12, 9:48 PM
martinvonz updated the diff for D4550: localrepo: use urllocalpath() for path to create repo too.
Wed, Sep 12, 5:51 PM
martinvonz updated the diff for D4549: localrepo: move check for existing repo into createrepository().
Wed, Sep 12, 5:50 PM
martinvonz updated the diff for D4548: localrepo: fix a mixmatched arg name in createrepository() docstring.
Wed, Sep 12, 5:50 PM
martinvonz added a comment to D4549: localrepo: move check for existing repo into createrepository().
In D4549#69559, @pulkit wrote:

test-init.t and test-mq.t says hi!

Wed, Sep 12, 5:15 PM
martinvonz closed D4548: localrepo: fix a mixmatched arg name in createrepository() docstring.
Wed, Sep 12, 4:24 PM
martinvonz committed rHGa64a965b3610: localrepo: fix a mixmatched arg name in createrepository() docstring.
localrepo: fix a mixmatched arg name in createrepository() docstring
Wed, Sep 12, 4:24 PM
martinvonz retitled D4548: localrepo: fix a mixmatched arg name in createrepository() docstring from localrepo: fix a mixmatches arg name in createrepository() docstring to localrepo: fix a mixmatched arg name in createrepository() docstring.
Wed, Sep 12, 3:24 PM
martinvonz created D4550: localrepo: use urllocalpath() for path to create repo too.
Wed, Sep 12, 3:24 PM
martinvonz created D4549: localrepo: move check for existing repo into createrepository().
Wed, Sep 12, 3:23 PM
martinvonz created D4548: localrepo: fix a mixmatched arg name in createrepository() docstring.
Wed, Sep 12, 3:23 PM
martinvonz added a dependent revision for D4549: localrepo: move check for existing repo into createrepository(): D4550: localrepo: use urllocalpath() for path to create repo too.
Wed, Sep 12, 3:23 PM
martinvonz added a dependent revision for D4548: localrepo: fix a mixmatched arg name in createrepository() docstring: D4549: localrepo: move check for existing repo into createrepository().
Wed, Sep 12, 3:23 PM

Tue, Sep 11

martinvonz closed D4531: tests: drop extra "file:" prefix from paths in narrow test.
Tue, Sep 11, 7:44 PM
martinvonz committed rHG0a5f7e16ec96: tests: drop extra "file:" prefix from paths in narrow test.
tests: drop extra "file:" prefix from paths in narrow test
Tue, Sep 11, 7:44 PM
martinvonz added a reviewer for D4531: tests: drop extra "file:" prefix from paths in narrow test: pulkit.
Tue, Sep 11, 7:14 PM
martinvonz created D4531: tests: drop extra "file:" prefix from paths in narrow test.
Tue, Sep 11, 7:14 PM
martinvonz accepted D4526: narrow: validate spec files are well-formed during clone (BC).
Tue, Sep 11, 6:38 PM
martinvonz accepted D4522: narrowspec: limit patterns to path: and rootfilesin: (BC).
Tue, Sep 11, 6:35 PM
martinvonz added inline comments to D4526: narrow: validate spec files are well-formed during clone (BC).
Tue, Sep 11, 6:23 PM
martinvonz added a comment to D4529: narrow: mark wire proto capability names experimental and versioned.

Unfortunately we likely can never ship either the narrow or ellipsis capability as stable because it would confuse 4.7 clients, which will presumably have a different understanding of what narrow and ellipsis mean. But at least now it is clear from the strings that the feature is experimental and we have a way of versioning its semantics until it stabilizes.

Tue, Sep 11, 6:20 PM
martinvonz closed D4529: narrow: mark wire proto capability names experimental and versioned.
Tue, Sep 11, 6:18 PM
martinvonz closed D4528: narrow: move wire proto capabilities to narrowwirepeer.
Tue, Sep 11, 6:18 PM
martinvonz committed rHG576b92928cc7: narrow: mark wire proto capability names experimental and versioned.
narrow: mark wire proto capability names experimental and versioned
Tue, Sep 11, 6:18 PM
martinvonz committed rHGe82da0fcc7c5: narrow: move wire proto capabilities to narrowwirepeer.
narrow: move wire proto capabilities to narrowwirepeer
Tue, Sep 11, 6:18 PM
martinvonz committed rHG2862e9b868c5: narrow: check "narrow" wire protocol capability, not bundle2 capability.
narrow: check "narrow" wire protocol capability, not bundle2 capability
Tue, Sep 11, 6:18 PM
martinvonz closed D4527: narrow: check "narrow" wire protocol capability, not bundle2 capability.
Tue, Sep 11, 6:18 PM
martinvonz accepted D4525: narrow: validate patterns on incoming bundle2 part.
Tue, Sep 11, 6:17 PM
martinvonz accepted D4524: narrowspec: validate patterns when loading and saving spec file.
Tue, Sep 11, 6:16 PM
martinvonz accepted D4523: narrow: validate patterns returned by expandnarrow.
Tue, Sep 11, 6:15 PM
martinvonz added inline comments to D4522: narrowspec: limit patterns to path: and rootfilesin: (BC).
Tue, Sep 11, 6:13 PM
martinvonz requested changes to D4522: narrowspec: limit patterns to path: and rootfilesin: (BC).
Tue, Sep 11, 6:10 PM
martinvonz added inline comments to D4522: narrowspec: limit patterns to path: and rootfilesin: (BC).
Tue, Sep 11, 6:04 PM
martinvonz added a comment to D4522: narrowspec: limit patterns to path: and rootfilesin: (BC).

Looking through this code a bit more, it appears that there is a not-in-core "remote expansion" wire protocol command that recognizes the include: prefix and asks the server to expand it. This series will stop that from working.

I didn't notice this at first because we have no tests for it.

I think Google's server relies on this feature.

@martinvonz how do you want to proceed? Should we nuke the include: feature in core? Or do you want me to refactor this series to support the include: on user-provided commands?

Tue, Sep 11, 6:00 PM
martinvonz created D4529: narrow: mark wire proto capability names experimental and versioned.
Tue, Sep 11, 5:56 PM
martinvonz created D4528: narrow: move wire proto capabilities to narrowwirepeer.
Tue, Sep 11, 5:56 PM
martinvonz added a dependent revision for D4528: narrow: move wire proto capabilities to narrowwirepeer: D4529: narrow: mark wire proto capability names experimental and versioned.
Tue, Sep 11, 5:56 PM
martinvonz added a dependent revision for D4527: narrow: check "narrow" wire protocol capability, not bundle2 capability: D4528: narrow: move wire proto capabilities to narrowwirepeer.
Tue, Sep 11, 5:56 PM
martinvonz created D4527: narrow: check "narrow" wire protocol capability, not bundle2 capability.
Tue, Sep 11, 5:56 PM
martinvonz accepted D4341: sparse: add local files to temporaryfiles if they exist out of sparse.
Tue, Sep 11, 12:38 PM
martinvonz accepted D4340: tests: show that merging with sparse is broken when rename is involved.
Tue, Sep 11, 12:37 PM
martinvonz accepted D4374: narrowspec: fix a typoed 'supported'.
Tue, Sep 11, 12:36 PM
martinvonz accepted D4520: narrow: build the known set of nodes only when ellipses is enabled.
Tue, Sep 11, 11:47 AM
martinvonz accepted D4521: narrow: add narrow and ellipses as server capabilities.
Tue, Sep 11, 11:47 AM

Mon, Sep 10

martinvonz added a comment to D4521: narrow: add narrow and ellipses as server capabilities.
In D4521#69012, @pulkit wrote:

checking bundle2 capability which does not scale outside of bundle2 world.

Is your goal to use narrowness without ellipsis nodes with a changegroup1 server? Can we split this patch up so it just splits up the "narrow" capability into "narrow" and "ellipsis" and then we can consider cg1 support in a separate patch?

No, that's not a goal. The goal is to make a wireprotocol command and prevent using pull to exchange data atleast for non-ellipsis cases.

Mon, Sep 10, 5:06 PM
martinvonz added inline comments to D4520: narrow: build the known set of nodes only when ellipses is enabled.
Mon, Sep 10, 1:53 PM
martinvonz requested changes to D4521: narrow: add narrow and ellipses as server capabilities.
Mon, Sep 10, 1:48 PM
martinvonz added a comment to D4521: narrow: add narrow and ellipses as server capabilities.

checking bundle2 capability which does not scale outside of bundle2 world.

Mon, Sep 10, 1:47 PM
martinvonz accepted D4476: verify: make output less confusing (issue5924).

Thanks!

Mon, Sep 10, 12:12 PM
martinvonz requested changes to D4341: sparse: add local files to temporaryfiles if they exist out of sparse.
Mon, Sep 10, 11:41 AM
martinvonz added a comment to D4341: sparse: add local files to temporaryfiles if they exist out of sparse.
In D4341#67539, @pulkit wrote:

Maybe the current state is not very helpful in reviewing. The traceback which I am trying to fix is this:

   $ hg merge
+  Traceback (most recent call last):
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/scmutil.py", line 161, in callcatch
+      return func()
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/dispatch.py", line 344, in _runcatchfunc
+      return _dispatch(req)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/dispatch.py", line 982, in _dispatch
+      cmdpats, cmdoptions)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/dispatch.py", line 728, in runcommand
+      ret = _runcommand(ui, options, cmd, d)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/dispatch.py", line 990, in _runcommand
+      return cmdfunc()
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/dispatch.py", line 979, in <lambda>
+      d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/util.py", line 1531, in check
+      return func(*args, **kwargs)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/commands.py", line 3785, in merge
+      labels=labels, abort=abort)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/hg.py", line 904, in merge
+      labels=labels)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/merge.py", line 2177, in update
+      stats = applyupdates(repo, actions, wc, p2, overwrite, labels=labels)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/merge.py", line 1584, in applyupdates
+      ms.add(fcl, fco, fca, f)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/merge.py", line 493, in add
+      self._repo.vfs.write('merge/' + hash, fcl.data())
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/context.py", line 1685, in data
+      return self._repo.wread(self._path)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/localrepo.py", line 1212, in wread
+      data = self.wvfs.read(filename)
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/vfs.py", line 78, in read
+      with self(path, 'rb') as fp:
+    File "/place/vartmp/hgtests.nx0HIy/install/lib/python/mercurial/vfs.py", line 409, in __call__
+      fp = util.posixfile(f, mode)
+  IOError: [Errno 2] $ENOENT$: '$TESTTMP/mvtest/a'
   abort: $ENOENT$: $TESTTMP/mvtest/a
   [255]

The error comes when we try to read a working-fctx which is not present in working directory. I don't think applyupdates is the right place to add logic about updating sparse checkouts. The best way I could figure out is that explicitly take care that f2 is loaded while merging.

Mon, Sep 10, 11:36 AM
martinvonz committed rHG77a2f6d805f2: lazyancestors: reuse __iter__ implementation in __contains__.
lazyancestors: reuse __iter__ implementation in __contains__
Mon, Sep 10, 7:43 AM
martinvonz closed D4508: lazyancestors: reuse __iter__ implementation in __contains__.
Mon, Sep 10, 7:43 AM
martinvonz committed rHGb6a0e06b0f7d: lazyancestors: extract __iter__ to free function.
lazyancestors: extract __iter__ to free function
Mon, Sep 10, 7:43 AM
martinvonz closed D4517: lazyancestors: extract __iter__ to free function.
Mon, Sep 10, 7:43 AM
martinvonz updated the diff for D4508: lazyancestors: reuse __iter__ implementation in __contains__.
Mon, Sep 10, 3:06 AM
martinvonz created D4517: lazyancestors: extract __iter__ to free function.
Mon, Sep 10, 3:06 AM
martinvonz added a comment to D4508: lazyancestors: reuse __iter__ implementation in __contains__.
In D4508#68864, @yuja wrote:

+ self._containsseen = set()
+ self._containsiter = iter(self)

Perhaps iter() needs to be extracted to a free function to avoid
reference cycle.

Mon, Sep 10, 2:50 AM

Sat, Sep 8

martinvonz committed rHG8eb2145ff0fb: ancestors: add nullrev to set from the beginning.
ancestors: add nullrev to set from the beginning
Sat, Sep 8, 4:41 AM
martinvonz closed D4507: ancestors: add nullrev to set from the beginning.
Sat, Sep 8, 4:41 AM