Wed, 04 Mar 2020 15:10:11 +0100 rust-pathauditor: use interior mutability for use in multi-threaded contexts
Raphaël Gomès <rgomes@octobus.net> [Wed, 04 Mar 2020 15:10:11 +0100] rev 44545
rust-pathauditor: use interior mutability for use in multi-threaded contexts The usual recommendation for using `RwLock` or `Mutex` is that if there are about as many write as there are reads, use `Mutex`, and if there are more reads than writes, use `RwLock`. If after the main bottleneck (i.e. parallel traversal) is removed this shows up on profiles, we should investigate using the `parking_lot` since we don't need a poisoning API, or maybe move to different types of caches entirely. Differential Revision: https://phab.mercurial-scm.org/D8213
Wed, 04 Mar 2020 15:12:08 +0100 rust-pathauditor: actually populate the `audited_dirs` cache
Raphaël Gomès <rgomes@octobus.net> [Wed, 04 Mar 2020 15:12:08 +0100] rev 44544
rust-pathauditor: actually populate the `audited_dirs` cache I forgot this when rewriting this logic during the review process. Differential Revision: https://phab.mercurial-scm.org/D8212
Wed, 04 Mar 2020 15:10:03 +0100 rust-pathauditor: actually split Windows shortname aliases at `~`
Raphaël Gomès <rgomes@octobus.net> [Wed, 04 Mar 2020 15:10:03 +0100] rev 44543
rust-pathauditor: actually split Windows shortname aliases at `~` Right now, splitting with a max of 1 parts is useless. Differential Revision: https://phab.mercurial-scm.org/D8211
Thu, 05 Mar 2020 10:24:45 +0100 debuginstall: add entry about re2 Rust bindings when applicable
Raphaël Gomès <rgomes@octobus.net> [Thu, 05 Mar 2020 10:24:45 +0100] rev 44542
debuginstall: add entry about re2 Rust bindings when applicable Differential Revision: https://phab.mercurial-scm.org/D8226
Thu, 05 Mar 2020 10:24:10 +0100 rust-cpython: add `debug` module to expose debug information to Python
Raphaël Gomès <rgomes@octobus.net> [Thu, 05 Mar 2020 10:24:10 +0100] rev 44541
rust-cpython: add `debug` module to expose debug information to Python This will be mostly used in `debuginstall`. Differential Revision: https://phab.mercurial-scm.org/D8225
Fri, 24 Jan 2020 11:06:01 +0100 rust-status: use bare hg status fastpath from Python
Raphaël Gomès <rgomes@octobus.net> [Fri, 24 Jan 2020 11:06:01 +0100] rev 44540
rust-status: use bare hg status fastpath from Python This change also adds a test case for subrepos. Repeating the benchmark information from the `hg-core` commit: On the Netbeans repository: C: 840ms Rust+C: 556ms Mozilla Central with the one pattern that causes a fallback removed: C: 2.315s Rust+C: 1.700s Differential Revision: https://phab.mercurial-scm.org/D7931
Fri, 17 Jan 2020 15:09:02 +0100 rust-status: update rust-cpython bridge to account for the changes in core
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 15:09:02 +0100] rev 44539
rust-status: update rust-cpython bridge to account for the changes in core Differential Revision: https://phab.mercurial-scm.org/D7930
Fri, 17 Jan 2020 15:43:46 +0100 rust-status: add bare `hg status` support in hg-core
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 15:43:46 +0100] rev 44538
rust-status: add bare `hg status` support in hg-core A lot of performance remains to be gained, most notably by doing more things in parallel, but also by caching, not falling back to Python but switching to another regex engine, etc.. I have measured on multiple repositories that this change, when in combination with the next two patches, improve bare `hg status` performance, and has no observable impact when falling back (because it does so early). On the Netbeans repository: C: 840ms Rust+C: 556ms Mozilla Central with the one pattern that causes a fallback removed: C: 2.315s Rust+C: 1.700 s Differential Revision: https://phab.mercurial-scm.org/D7929
(0) -30000 -10000 -3000 -1000 -300 -100 -30 -10 -8 +8 +10 +30 +100 +300 +1000 +3000 tip