Wed, 02 Jan 2019 10:31:14 +0100 vfs: raise NotImplementedError in abstractvfs._auditvfs
Boris Feld <boris.feld@octobus.net> [Wed, 02 Jan 2019 10:31:14 +0100] rev 41095
vfs: raise NotImplementedError in abstractvfs._auditvfs This make sure that auditing is implemented.
Wed, 02 Jan 2019 10:29:36 +0100 vfs: handle _auditpath in proxyvfs
Boris Feld <boris.feld@octobus.net> [Wed, 02 Jan 2019 10:29:36 +0100] rev 41094
vfs: handle _auditpath in proxyvfs Just forward the call to the underlying vfs.
Wed, 02 Jan 2019 10:29:12 +0100 vfs: fix proxyvfs inheritance
Boris Feld <boris.feld@octobus.net> [Wed, 02 Jan 2019 10:29:12 +0100] rev 41093
vfs: fix proxyvfs inheritance The proxyvfs class is designed to overwrite some of the vfs logic. Yet, it did not use normal class inheritance. This is becoming an issue as `abstractvfs` method could take precedence over their `proxyvfs` version. We fix the inheritance chain to be as expected.
Wed, 26 Dec 2018 13:44:37 +0100 vfs: also audit rename
Boris Feld <boris.feld@octobus.net> [Wed, 26 Dec 2018 13:44:37 +0100] rev 41092
vfs: also audit rename Renaming through the vfs is not used in many places, and none of them seems to be a security risk. However, it is still worthwhile to run the auditing on rename file to perform developer-warning level checks.
Wed, 26 Dec 2018 13:44:23 +0100 vfs: add a `_auditpath` to abstract vfs
Boris Feld <boris.feld@octobus.net> [Wed, 26 Dec 2018 13:44:23 +0100] rev 41091
vfs: add a `_auditpath` to abstract vfs We are about to make `rename` audit path. Since rename lives in the `abstractvfs` layer, we need it to be aware of auditing to some extent. The default implementation is no-op because multiple existing vfs are not using auditing at all right now (eg: fncachevfs).
Sun, 02 Jul 2017 04:51:03 +0200 vfs: makes all audited path relative
Boris Feld <boris.feld@octobus.net> [Sun, 02 Jul 2017 04:51:03 +0200] rev 41090
vfs: makes all audited path relative Only auditing relative path helps the vfs warning logic.
Fri, 21 Dec 2018 13:17:58 +0100 debugupgraderepo: add a --no-backup mode
Boris Feld <boris.feld@octobus.net> [Fri, 21 Dec 2018 13:17:58 +0100] rev 41089
debugupgraderepo: add a --no-backup mode The process has been around for a while and is pretty safe now. Having an automated way to clean up the old data is useful when running many different conversion to compare delta algorithm.
Fri, 13 Jul 2018 03:05:30 +0200 upgrade: add '-' in optimization name
Boris Feld <boris.feld@octobus.net> [Fri, 13 Jul 2018 03:05:30 +0200] rev 41088
upgrade: add '-' in optimization name The older name `redeltaall` was hard to type and read. The newer form should be more user-friendly. We keep backward compatibility with the old form (at least for a while). Having to use different form depending on the version is very impractical and error prone.
Fri, 21 Dec 2018 05:27:30 +0100 revlog: add test case for _findsnapshots
Boris Feld <boris.feld@octobus.net> [Fri, 21 Dec 2018 05:27:30 +0100] rev 41087
revlog: add test case for _findsnapshots Testing the method directly is more robust.
Fri, 21 Dec 2018 05:27:38 +0100 revlog: use the native implementation of issnapshot
Boris Feld <boris.feld@octobus.net> [Fri, 21 Dec 2018 05:27:38 +0100] rev 41086
revlog: use the native implementation of issnapshot In some sparserevlog case where a lot of the history has to be searched for a snapshot, the cost of issnashot cost becomes significant. The computation done by the method is fairly low level, a native implementation provide a very significant speedup. example affected manifest write before: 0.490375s after: 0.114989s (-76%)
Mon, 17 Dec 2018 10:57:13 +0100 revlog: add a native implementation of issnapshot
Boris Feld <boris.feld@octobus.net> [Mon, 17 Dec 2018 10:57:13 +0100] rev 41085
revlog: add a native implementation of issnapshot This will be used in the next changesets
Mon, 17 Dec 2018 10:51:36 +0100 revlog: more efficient implementation for issnapshot
Boris Feld <boris.feld@octobus.net> [Mon, 17 Dec 2018 10:51:36 +0100] rev 41084
revlog: more efficient implementation for issnapshot We avoid multiple method calls and tuple creation, this provides a significant speedup in some case: example affected manifest write before: 0.815520s after: 0.487767s (-40%)
Sun, 30 Dec 2018 16:14:42 +0100 revlog: clarify the non sparse-revlog case in `issnapshot`
Boris Feld <boris.feld@octobus.net> [Sun, 30 Dec 2018 16:14:42 +0100] rev 41083
revlog: clarify the non sparse-revlog case in `issnapshot` If we are not using sparse-revlog, there is only one type of snapshot, the full one.
Sun, 30 Dec 2018 22:46:54 -0500 exthelper: switch to using the registrar merging method
Matt Harbison <matt_harbison@yahoo.com> [Sun, 30 Dec 2018 22:46:54 -0500] rev 41082
exthelper: switch to using the registrar merging method
Sun, 30 Dec 2018 21:52:26 -0500 registrar: add a method to merge registrar instances
Matt Harbison <matt_harbison@yahoo.com> [Sun, 30 Dec 2018 21:52:26 -0500] rev 41081
registrar: add a method to merge registrar instances This provides sanity checking beyond simply merging the underlying dictionaries.
Sat, 29 Dec 2018 01:51:02 -0500 phabricator: ensure that the return of urlopener.open() is closed
Matt Harbison <matt_harbison@yahoo.com> [Sat, 29 Dec 2018 01:51:02 -0500] rev 41080
phabricator: ensure that the return of urlopener.open() is closed No problem observed, just an oversight noticed while reading documentation.
Thu, 20 Dec 2018 09:59:16 +0100 revlog: fix pure python slicing test when chain contains nullrev
Boris Feld <boris.feld@octobus.net> [Thu, 20 Dec 2018 09:59:16 +0100] rev 41079
revlog: fix pure python slicing test when chain contains nullrev The revlog mock used in the test was not behaving the same as its C counterpart.
Sun, 30 Dec 2018 17:31:57 +0900 merge with stable
Yuya Nishihara <yuya@tcha.org> [Sun, 30 Dec 2018 17:31:57 +0900] rev 41078
merge with stable
Thu, 27 Dec 2018 15:19:46 -0800 remotefilelog: fix bug in maybesparsematch returning alwaysmatcher
Kyle Lippincott <spectral@google.com> [Thu, 27 Dec 2018 15:19:46 -0800] rev 41077
remotefilelog: fix bug in maybesparsematch returning alwaysmatcher The description of the method says that it should return None if sparse is not used in this repository; since sparse.matcher() returns alwaysmatcher if sparse is not enabled, I'm using that as the signal to return None here to preserve the previous behavior. Differential Revision: https://phab.mercurial-scm.org/D5487
Fri, 28 Dec 2018 12:51:47 -0800 procutil: correct spelling of uninterruptable -> uninterruptible
Kyle Lippincott <spectral@google.com> [Fri, 28 Dec 2018 12:51:47 -0800] rev 41076
procutil: correct spelling of uninterruptable -> uninterruptible Differential Revision: https://phab.mercurial-scm.org/D5488
Fri, 28 Dec 2018 18:14:10 -0500 help: show advanced, experimental and deprecated extensions with --verbose
Matt Harbison <matt_harbison@yahoo.com> [Fri, 28 Dec 2018 18:14:10 -0500] rev 41075
help: show advanced, experimental and deprecated extensions with --verbose I noticed that phabricator and absorb weren't showing up, no matter what. There's a related problem where commands for these extensions *do* show up without --verbose. I'm not sure what the point of hiding the extensions, but not the commands is.
Fri, 28 Dec 2018 17:45:27 -0500 help: remove a duplicate category name entry for TOPIC_CATEGORY_NONE
Matt Harbison <matt_harbison@yahoo.com> [Fri, 28 Dec 2018 17:45:27 -0500] rev 41074
help: remove a duplicate category name entry for TOPIC_CATEGORY_NONE
Fri, 28 Dec 2018 17:33:13 -0500 phabricator: assign commands to help categories
Matt Harbison <matt_harbison@yahoo.com> [Fri, 28 Dec 2018 17:33:13 -0500] rev 41073
phabricator: assign commands to help categories `phabsend` and `phabupdate` seem pretty close to `email`. `phabread` is a little less close, but can be trivially used to actually import patches.
Fri, 28 Dec 2018 00:53:58 -0500 largefiles: eliminate an unnecessary import of configitems
Matt Harbison <matt_harbison@yahoo.com> [Fri, 28 Dec 2018 00:53:58 -0500] rev 41072
largefiles: eliminate an unnecessary import of configitems Thanks to Yuya for pointing this out.
Fri, 28 Dec 2018 00:51:02 -0500 exthelper: add some examples for using registrar aliases
Matt Harbison <matt_harbison@yahoo.com> [Fri, 28 Dec 2018 00:51:02 -0500] rev 41071
exthelper: add some examples for using registrar aliases Maybe it's my general lack of python knowledge, but how to use these would be way too obscure for me otherwise.
Thu, 27 Dec 2018 23:46:35 -0500 exthelper: reintroduce the ability to register filesets
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 23:46:35 -0500] rev 41070
exthelper: reintroduce the ability to register filesets Same mechanism as revsets earlier in this series. The LFS extension is updated to provide test coverage.
Thu, 27 Dec 2018 21:55:22 -0500 exthelper: reintroduce the ability to register templates
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:55:22 -0500] rev 41069
exthelper: reintroduce the ability to register templates Same mechanism as revsets earlier in this series. The LFS extension is updated to provide test coverage. This also seems to make the test failure around issue6033 mentioned in 0a7f582f6f1f much less regular on Windows.
Thu, 27 Dec 2018 21:46:03 -0500 extensions: deprecate extsetup without a `ui` argument (API)
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:46:03 -0500] rev 41068
extensions: deprecate extsetup without a `ui` argument (API) 9.5 years should be enough time, but there were some tests for the old style still (which are now updated). Exthelper doesn't fallback to the old API, so this is for consistency. .. api:: The extension hook ``extsetup`` without a `ui` argument has been deprecated, and will be removed in the next version. Add a `ui` argument to avoid the deprecation warning.
Thu, 27 Dec 2018 21:27:43 -0500 largefiles: port revset registration to exthelper
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:27:43 -0500] rev 41067
largefiles: port revset registration to exthelper This tests the merge code that wasn't tested in the previous patch.
Thu, 27 Dec 2018 21:26:17 -0500 exthelper: reintroduce the ability to register revsets
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:26:17 -0500] rev 41066
exthelper: reintroduce the ability to register revsets I think this is what Yuya and Boris agreed on.[1] This happens *after* the extsetup phase now (and after the _aftercallback notifications). But this is trivial, mergeable between exthelper instances, and doesn't need to have the extension name supplied when registering. The test needed updating so that extsetup() takes a `ui` argument, as exthelper isn't trying to be backward compatible with 1.3.1. [1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-December/125888.html
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 tip