Mon, 07 Jan 2019 21:57:23 +0900 test-amend: remove uninteresting fields from log output to deduplicate tests
Yuya Nishihara <yuya@tcha.org> [Mon, 07 Jan 2019 21:57:23 +0900] rev 41122
test-amend: remove uninteresting fields from log output to deduplicate tests We aren't testing the behavior of obsolescence-based amend.
Wed, 26 Dec 2018 17:36:53 +0300 pull: use opts.get('bookmark') instead of opts['bookmark']
Pulkit Goyal <pulkit@yandex-team.ru> [Wed, 26 Dec 2018 17:36:53 +0300] rev 41121
pull: use opts.get('bookmark') instead of opts['bookmark'] This is done because at places in hgsubversion, we call the function directly. I expect there might be more instances in extensions out there which calls commands.push() directly. So let's not require explicitly passing of bookmark value. The use of opts['bookmark'] was introduced in bad05a6afdc89cc58a2af320698ab29bd8de62d4. Differential Revision: https://phab.mercurial-scm.org/D5484
Fri, 04 Jan 2019 20:27:17 +0530 amend: add config option to update time to current in hg amend (issue5828)
Taapas Agrawal <taapas2897@gmail.com> [Fri, 04 Jan 2019 20:27:17 +0530] rev 41120
amend: add config option to update time to current in hg amend (issue5828) The given config option i.e. `rewrite.update-timestamp` updates date to current when //True//. However when only date is to be updated to current with the working directory clean and no other attributes changing then it does not amend as stated in issue 5828. Further when `--date` flag is specified along with the new config option then `--date` is given priority over the config option. Differential Revision: https://phab.mercurial-scm.org/D5491
Sun, 06 Jan 2019 15:25:10 -0500 tests: correct version check in clientreactor test
Augie Fackler <raf@durin42.com> [Sun, 06 Jan 2019 15:25:10 -0500] rev 41119
tests: correct version check in clientreactor test Experimentally, `(3, 6, 3)` is less than `sys.version_info` on an actual Python 3.6.3 installation. Let's just check `< (3, 6, 4)` instead of `<= (3, 6, 3)` so we stop seeing this bogus failure. Differential Revision: https://phab.mercurial-scm.org/D5502
Sun, 06 Jan 2019 15:17:03 -0500 py3: buildbot spotted more passing tests
Augie Fackler <raf@durin42.com> [Sun, 06 Jan 2019 15:17:03 -0500] rev 41118
py3: buildbot spotted more passing tests Differential Revision: https://phab.mercurial-scm.org/D5501
Sun, 06 Jan 2019 15:15:35 -0500 tests: add lots of b prefix goo to test-fastannotate-revmap.py
Augie Fackler <raf@durin42.com> [Sun, 06 Jan 2019 15:15:35 -0500] rev 41117
tests: add lots of b prefix goo to test-fastannotate-revmap.py All the paths are now bytes, so now things work correctly. # skip-blame just bytes/str issues in this test Differential Revision: https://phab.mercurial-scm.org/D5500
Sun, 06 Jan 2019 15:14:53 -0500 fastannotate: add a missing b prefix
Augie Fackler <raf@durin42.com> [Sun, 06 Jan 2019 15:14:53 -0500] rev 41116
fastannotate: add a missing b prefix Spotted while debugging a test failure, but this wasn't the problem. # skip-blame b prefix Differential Revision: https://phab.mercurial-scm.org/D5499
Thu, 06 Dec 2018 20:04:35 +0100 rust-cpython: using the new bindings from Python
Georges Racinet <gracinet@anybox.fr> [Thu, 06 Dec 2018 20:04:35 +0100] rev 41115
rust-cpython: using the new bindings from Python The Python callers detect if we have cpython or direct-ffi bindings and fallback to the Python implementation if none is present. This intermediate state allows to compare the three possibilities. Differential Revision: https://phab.mercurial-scm.org/D5442
Thu, 13 Dec 2018 18:53:40 +0100 rust-cpython: binding for LazyAncestors
Georges Racinet <gracinet@anybox.fr> [Thu, 13 Dec 2018 18:53:40 +0100] rev 41114
rust-cpython: binding for LazyAncestors The `mercurial.rustext.ancestor` module will not in the foreseeable future be a drop-in replacement for the pure `mercurial.ancestor`, because the Rust variants take the index at instantiation whereas the Python ones take a parents function. From the Python side, using the index from `ancestor` would leak internal details out of `mercurial.revlog`, and that's unwanted. Therefore, given that classes defined in `rust-cpython` have the same names in both language, we keep the Rust naming convention (CamelCase). Eventually, though, the ancestor module can be placed under control of `mercurial.policy`, but it will still be up to `revlog` to be aware of that and play the role of a factory for instantiation. Differential Revision: https://phab.mercurial-scm.org/D5441
Fri, 28 Dec 2018 03:28:02 +0100 discovery: move common heads computation inside partialdiscovery object
Boris Feld <boris.feld@octobus.net> [Fri, 28 Dec 2018 03:28:02 +0100] rev 41113
discovery: move common heads computation inside partialdiscovery object This remove one of the private attribute access. In additions, head tracking and computation is a typical operation we can speed up using Rust.
Fri, 28 Dec 2018 03:14:34 +0100 discovery: introduce a partialdiscovery object
Boris Feld <boris.feld@octobus.net> [Fri, 28 Dec 2018 03:14:34 +0100] rev 41112
discovery: introduce a partialdiscovery object This object will ultimately gather the data about common, undecided and missing revs in a single place and deal with most graph related computations. The goal is both to clarify the algorithm and to help provides a simple and clear API that can be reimplemented in Rust. For now, we only moved the `common` set in the object. In this commit, some direct access to the "private" `disco._common` attribute persist. They have not been removed yet because we won't need to expose a full API identical to `incrementalmissingancestors` and it seems simpler to access the attribute directly until the replacement is in place.
Fri, 14 Dec 2018 12:01:15 +0100 discovery: move handling of sampling special case inside sampling function
Boris Feld <boris.feld@octobus.net> [Fri, 14 Dec 2018 12:01:15 +0100] rev 41111
discovery: move handling of sampling special case inside sampling function The handling of cases where the number of revisions to sample is smaller than the sample size can be moved with the sample function themselves. This simplifies main logic, preparing a coming refactoring.
Fri, 04 Jan 2019 17:49:59 +0100 discovery: minor fix to some conditionals
Boris Feld <boris.feld@octobus.net> [Fri, 04 Jan 2019 17:49:59 +0100] rev 41110
discovery: minor fix to some conditionals Since `size` is the upper limit of the sample, we should include it in the check. Otherwize the `more` variable will be zero and the sampling will be useless
Thu, 20 Dec 2018 10:16:24 +0100 delta: reuse _findsnapshot call from previous stage
Boris Feld <boris.feld@octobus.net> [Thu, 20 Dec 2018 10:16:24 +0100] rev 41109
delta: reuse _findsnapshot call from previous stage Two different stage of the sparse-revlog logic needs the _findsnapshot data. To avoid recomputing it twice, make it possible to reuse the first computation in the second step. example affected manifest write before: 0.067141s after: 0.064252s (-5%) (total gain since start of series: 95%)
Thu, 20 Dec 2018 10:15:20 +0100 delta: have a native implementation of _findsnapshot
Boris Feld <boris.feld@octobus.net> [Thu, 20 Dec 2018 10:15:20 +0100] rev 41108
delta: have a native implementation of _findsnapshot The function might traverse a lot of revision, a native implementation get significantly faster. example affected manifest write before: 0.114989 after: 0.067141 (-42%)
Sun, 23 Dec 2018 12:39:20 +0900 transaction: do not overwrite atomic-temp files on error
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Dec 2018 12:39:20 +0900] rev 41107
transaction: do not overwrite atomic-temp files on error Even though the original files can be restored from the backup, it should be better to not write back a temporary file if we know it can be corrupted.
(0) -30000 -10000 -3000 -1000 -300 -100 -16 +16 +100 +300 +1000 +3000 +10000 tip