Tue, 07 Jan 2020 12:09:36 +0100 mmap: add a size argument to mmapread
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 07 Jan 2020 12:09:36 +0100] rev 44036
mmap: add a size argument to mmapread With this argument, we can control the size of the mmap created. (previously it was always the whole file. Differential Revision: https://phab.mercurial-scm.org/D7808
Tue, 07 Jan 2020 12:26:37 +0100 revlogutils: move the NodeMap class in a dedicated nodemap module
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 07 Jan 2020 12:26:37 +0100] rev 44035
revlogutils: move the NodeMap class in a dedicated nodemap module We will introduce more nodemap related code, so it make sense to move the existing code in that module first. Differential Revision: https://phab.mercurial-scm.org/D7809
Sun, 29 Dec 2019 21:10:04 -0500 rcutil: drop the `defaultrcpath()` method (API)
Matt Harbison <matt_harbison@yahoo.com> [Sun, 29 Dec 2019 21:10:04 -0500] rev 44034
rcutil: drop the `defaultrcpath()` method (API) The resource based code can service py2, py3 and an oxidized executable, so there's no reason to leave this around. It was flagged as an API change when it was introduced, so flagging it again. Differential Revision: https://phab.mercurial-scm.org/D7777
Sun, 29 Dec 2019 21:06:34 -0500 ui: add the ability to apply `defaultrc` configs from resources
Matt Harbison <matt_harbison@yahoo.com> [Sun, 29 Dec 2019 21:06:34 -0500] rev 44033
ui: add the ability to apply `defaultrc` configs from resources We will want the ability to cat out these resources, but the same would apply to templates, so I'm going to wait for the dust to settle on that. Reading the default config directly from the filesystem is still in place for now. Differential Revision: https://phab.mercurial-scm.org/D7776
Sun, 29 Dec 2019 20:51:44 -0500 ui: refactor `readconfig()` into a form that can consume resources
Matt Harbison <matt_harbison@yahoo.com> [Sun, 29 Dec 2019 20:51:44 -0500] rev 44032
ui: refactor `readconfig()` into a form that can consume resources The old form can't completely go away, because files outside of packages still need to be read. The name passed in here is a tuple of `package name, resource` as needed by the resource API. I like the idea of stating the config file is embedded in the executable by listing is as `exe!package.resource`. This would be consistent with how `debuginstall` points to the executable for the python executable, lib, and installed modules. While in practice the filesystem path is available from the backing ResourceReader when the resource is opened, it is a relative path on py2 and absolute on py3. Further, while this would show in the `hg config` output for each option if set as such here, it doesn't show in the `reading from...` line when `--debug` is used. The file isn't actually open where that prints, so there's no way I see to get that info there. So I opted for the simple prefix to distinguish resources from files. Differential Revision: https://phab.mercurial-scm.org/D7775
Sun, 29 Dec 2019 20:35:34 -0500 resourceutil: implement `contents()` to iterate over resources in a package
Matt Harbison <matt_harbison@yahoo.com> [Sun, 29 Dec 2019 20:35:34 -0500] rev 44031
resourceutil: implement `contents()` to iterate over resources in a package Differential Revision: https://phab.mercurial-scm.org/D7774
Sun, 29 Dec 2019 20:32:56 -0500 resourceutil: implement `is_resource()`
Matt Harbison <matt_harbison@yahoo.com> [Sun, 29 Dec 2019 20:32:56 -0500] rev 44030
resourceutil: implement `is_resource()` This will be needed when iterating resources. Differential Revision: https://phab.mercurial-scm.org/D7773
Sat, 28 Dec 2019 23:35:13 -0500 resourceutil: don't limit resources to the `mercurial` package
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 23:35:13 -0500] rev 44029
resourceutil: don't limit resources to the `mercurial` package This should make things a little clearer, in that it now requires the full package name to access a resource. But the real motivation is that `extensions._disabledpaths()` walks the `hgext` directory looking for bundled extensions. This in turn feeds, among other things: 1) Listing disabled extensions in `hg help extensions` 2) Indicating that an unknown command is in a non-enabled extension 3) Displaying help for non-enabled extensions 4) Generating documentation 5) Announcing LFS is auto-enabled (or not) when cloning from an LFS source The filesystem based ResourceReader will happily return *.py and *.pyc, but the one supplied by PyOxidizer doesn't. Presumably we can change that. The only other idea I had here is for setup.py to generate a text file containing the list of extensions, but that doesn't seem great when running from source. Differential Revision: https://phab.mercurial-scm.org/D7772
Sat, 28 Dec 2019 23:08:57 -0500 setup: include `defaultrc` in the package list
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 23:08:57 -0500] rev 44028
setup: include `defaultrc` in the package list This is needed to access the config files via the resourceutil framework, which is needed to embed the config files when uing PyOxidizer. Differential Revision: https://phab.mercurial-scm.org/D7771
Tue, 24 Dec 2019 20:17:40 +0300 tests: update test-releasenotes-formatting.t output
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 24 Dec 2019 20:17:40 +0300] rev 44027
tests: update test-releasenotes-formatting.t output The output seems to be left outdated because running this test requires fuzzy-wuzzy which is not generally installed. Differential Revision: https://phab.mercurial-scm.org/D7723
Sat, 28 Dec 2019 02:11:51 -0500 tests: fix a copy/paste name duplication in storage.py
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 02:11:51 -0500] rev 44026
tests: fix a copy/paste name duplication in storage.py Flagged by PyCharm as a redeclared name without usage, because the name matches the function immediately preceding it. But since this differs by doing regular reads instead of raw reads, I assume we still want it. But I don't see either function being called anywhere. Differential Revision: https://phab.mercurial-scm.org/D7769
Sat, 28 Dec 2019 02:02:34 -0500 commit: change default `editor` parameter to None
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 02:02:34 -0500] rev 44025
commit: change default `editor` parameter to None Flagged by PyCharm as a boolean not being callable later where it is used. There's no actual bug here because of `if editor` checks before using. Differential Revision: https://phab.mercurial-scm.org/D7768
Sat, 28 Dec 2019 01:51:17 -0500 cleanup: drop redundant character escapes outside of `[]`
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 01:51:17 -0500] rev 44024
cleanup: drop redundant character escapes outside of `[]` Flagged by PyCharm. `@`, `:`, `<`, `>`, and `{` aren't special characters. (I'm a bit surprised that it doesn't also want to unescape `}` in schemes.py.) Differential Revision: https://phab.mercurial-scm.org/D7767
Sat, 28 Dec 2019 01:35:05 -0500 cleanup: drop redundant character escapes from `[]` character sets
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 01:35:05 -0500] rev 44023
cleanup: drop redundant character escapes from `[]` character sets Flagged by PyCharm. Most special characters lose their special meaning inside square brackets. The `-` in util.py doesn't need to be escaped because it is the last character in the set. Differential Revision: https://phab.mercurial-scm.org/D7766
Sat, 28 Dec 2019 01:12:19 -0500 cleanup: replace contiguous spaces in regex patterns with an explicit count
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Dec 2019 01:12:19 -0500] rev 44022
cleanup: replace contiguous spaces in regex patterns with an explicit count Flagged by PyCharm, this form should be more readable. Differential Revision: https://phab.mercurial-scm.org/D7765
Mon, 30 Dec 2019 12:17:02 -0500 mq: avoid using `__file__` to compare modules
Matt Harbison <matt_harbison@yahoo.com> [Mon, 30 Dec 2019 12:17:02 -0500] rev 44021
mq: avoid using `__file__` to compare modules This fixes ~70 tests when using an oxidized executable, bringing the current failure count down to 92 (with 110 skips) when templates/ is copied next to the executable. Differential Revision: https://phab.mercurial-scm.org/D7778
Tue, 31 Dec 2019 16:24:38 -0500 util: avoid referencing `time.clock()` on Windows when missing (issue6238)
Matt Harbison <matt_harbison@yahoo.com> [Tue, 31 Dec 2019 16:24:38 -0500] rev 44020
util: avoid referencing `time.clock()` on Windows when missing (issue6238) It's been removed in 3.8, and issues a deprecation warning since 3.3. Differential Revision: https://phab.mercurial-scm.org/D7780
Mon, 30 Dec 2019 23:53:53 -0500 py3: replace `time.clock()` with `time.perf_counter()`
Matt Harbison <matt_harbison@yahoo.com> [Mon, 30 Dec 2019 23:53:53 -0500] rev 44019
py3: replace `time.clock()` with `time.perf_counter()` The former was removed in 3.8. The util function uses `time.clock()` if the latter is unavailable. Differential Revision: https://phab.mercurial-scm.org/D7779
Wed, 08 Jan 2020 09:59:34 -0800 tests: fix a "naked exception" issue in test-remotefilelog-prefetch.t
Kyle Lippincott <spectral@google.com> [Wed, 08 Jan 2020 09:59:34 -0800] rev 44018
tests: fix a "naked exception" issue in test-remotefilelog-prefetch.t Differential Revision: https://phab.mercurial-scm.org/D7811
Thu, 12 Dec 2019 18:31:17 +0100 rust-index: add a `experimental.rust.index` option to use the wrapper
Georges Racinet <georges.racinet@octobus.net> [Thu, 12 Dec 2019 18:31:17 +0100] rev 44017
rust-index: add a `experimental.rust.index` option to use the wrapper Now we can start putting this wrapper on the test and benchmark grill. Differential Revision: https://phab.mercurial-scm.org/D7660
Wed, 11 Dec 2019 18:10:20 +0100 rust-index: use the new method in shortesthexnodeidprefix
Georges Racinet <georges.racinet@octobus.net> [Wed, 11 Dec 2019 18:10:20 +0100] rev 44016
rust-index: use the new method in shortesthexnodeidprefix This code can now run with both a Rust or a C index. Differential Revision: https://phab.mercurial-scm.org/D7659
Thu, 12 Dec 2019 03:39:14 +0100 rust-index: expose a method to retrieve the C index
Georges Racinet <georges.racinet@octobus.net> [Thu, 12 Dec 2019 03:39:14 +0100] rev 44015
rust-index: expose a method to retrieve the C index The code for `shortesthexnodeidprefix` need to access the actual C index. For now we grant its wish and expose a method to do so. Once we have the nodemap in Rust, we will be able to implement the same feature from rust and we will be able to drop this method. Differential Revision: https://phab.mercurial-scm.org/D7658
Thu, 12 Dec 2019 18:11:44 +0100 rust-index: handle `MixedIndex` in `pyindex_to_graph`
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 12 Dec 2019 18:11:44 +0100] rev 44014
rust-index: handle `MixedIndex` in `pyindex_to_graph` On the long run we will want to implement the Graph trait directly in Rust, but for now we take the path with the least amount of change to focus on the coming persistent NodeMap code. We test this new code through with the lazy ancestors code. Differential Revision: https://phab.mercurial-scm.org/D7657
Fri, 13 Dec 2019 19:52:26 +0100 rust-index: make it possible to clone the struct referencing the C index
Georges Racinet <georges.racinet@octobus.net> [Fri, 13 Dec 2019 19:52:26 +0100] rev 44013
rust-index: make it possible to clone the struct referencing the C index If we are to hand over the C index object to other code, we need to be able to create a new python reference to it. Differential Revision: https://phab.mercurial-scm.org/D7656
Fri, 06 Dec 2019 20:40:02 -0500 match: resolve filesets against the passed `cwd`, not the current one
Matt Harbison <matt_harbison@yahoo.com> [Fri, 06 Dec 2019 20:40:02 -0500] rev 44012
match: resolve filesets against the passed `cwd`, not the current one This allows filesets to be resolved relative to `repo.root`, the same as other patterns are since f02d3c0eed18. The current example in contrib/ wasn't working from the tests directory because of this. Differential Revision: https://phab.mercurial-scm.org/D7570
Thu, 12 Dec 2019 14:28:31 -0800 fix: correct the clang-format example hgrc so that it actually works
Kyle Lippincott <spectral@google.com> [Thu, 12 Dec 2019 14:28:31 -0800] rev 44011
fix: correct the clang-format example hgrc so that it actually works There are three changes here: * Remove -i from `command`, it causes fix to eat your file and empty it out * Add `set:` to pattern, otherwise this is interpreted as just a glob * Switch `listfile:` to `include:`; `listfile:` is relative to the current working directory, while `include:` is relative to the repo root. This makes it so that you don't receive errors when running outside of the repo root about being unable to find the file. Differential Revision: https://phab.mercurial-scm.org/D7618
Wed, 18 Dec 2019 00:41:12 -0500 inno: drop support for Windows 95/98/ME
Matt Harbison <matt_harbison@yahoo.com> [Wed, 18 Dec 2019 00:41:12 -0500] rev 44010
inno: drop support for Windows 95/98/ME Differential Revision: https://phab.mercurial-scm.org/D7696
Wed, 25 Dec 2019 19:03:07 +0100 rust-matchers: fixing cargo doc
Georges Racinet <georges.racinet@octobus.net> [Wed, 25 Dec 2019 19:03:07 +0100] rev 44009
rust-matchers: fixing cargo doc Block quotes marked as `ignore` are still parsed as Rust source examples. Differential Revision: https://phab.mercurial-scm.org/D7783
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -28 +28 +50 +100 +300 +1000 +3000 tip