Wed, 18 Mar 2020 12:03:27 -0400 phabricator: remove duplicated byteskwargs conversion
Augie Fackler <augie@google.com> [Wed, 18 Mar 2020 12:03:27 -0400] rev 44577
phabricator: remove duplicated byteskwargs conversion Fixes things on Python 3. Differential Revision: https://phab.mercurial-scm.org/D8301
Tue, 17 Mar 2020 12:59:31 -0700 chistedit: support histedit.summary-template in curses histedit plan
Kyle Lippincott <spectral@google.com> [Tue, 17 Mar 2020 12:59:31 -0700] rev 44576
chistedit: support histedit.summary-template in curses histedit plan Differential Revision: https://phab.mercurial-scm.org/D8296
Mon, 22 Jul 2019 09:58:23 -0700 vfs: fix typo in comment (remove extra "l")
Kyle Lippincott <spectral@google.com> [Mon, 22 Jul 2019 09:58:23 -0700] rev 44575
vfs: fix typo in comment (remove extra "l") Differential Revision: https://phab.mercurial-scm.org/D8297
Thu, 12 Mar 2020 20:18:52 -0700 tests: make test-doctest.t automatically find files to run tests on
Kyle Lippincott <spectral@google.com> [Thu, 12 Mar 2020 20:18:52 -0700] rev 44574
tests: make test-doctest.t automatically find files to run tests on Differential Revision: https://phab.mercurial-scm.org/D8294
Fri, 13 Mar 2020 19:25:37 -0700 tests: make test-doctest.t module list match reality
Kyle Lippincott <spectral@google.com> [Fri, 13 Mar 2020 19:25:37 -0700] rev 44573
tests: make test-doctest.t module list match reality Differential Revision: https://phab.mercurial-scm.org/D8280
Thu, 12 Mar 2020 20:08:05 -0700 tests: remove doctest in narrowspec, it is broken
Kyle Lippincott <spectral@google.com> [Thu, 12 Mar 2020 20:08:05 -0700] rev 44572
tests: remove doctest in narrowspec, it is broken I think every item here is considered incorrect (if we fix doctest to run it), so let's just delete it. Differential Revision: https://phab.mercurial-scm.org/D8279
Fri, 13 Mar 2020 00:41:22 +0100 rust-core: add missing `Debug` traits
Raphaël Gomès <rgomes@octobus.net> [Fri, 13 Mar 2020 00:41:22 +0100] rev 44571
rust-core: add missing `Debug` traits Turns out you need them when trying to use `hg-core` as a library. Who knew. Differential Revision: https://phab.mercurial-scm.org/D8278
Thu, 12 Dec 2019 16:24:43 -0800 fix: refactor getrevstofix() to define revisions first, then validate them
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 16:24:43 -0800] rev 44570
fix: refactor getrevstofix() to define revisions first, then validate them This refactoring makes it easier to add a new way of specifying revisions (I'm about to add a `--source`, which adds the specified revisions and their descendants). Differential Revision: https://phab.mercurial-scm.org/D8285
Fri, 13 Dec 2019 15:14:57 -0800 fix: disallow `hg fix --all --working-dir`
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Dec 2019 15:14:57 -0800] rev 44569
fix: disallow `hg fix --all --working-dir` `--all` implies `--working-dir`, so it's probably a mistake if the user uses both. Differential Revision: https://phab.mercurial-scm.org/D8284
Thu, 12 Mar 2020 16:25:22 -0700 tests: simplify test-fix-topology.t slightly by using a `(case !)`
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Mar 2020 16:25:22 -0700] rev 44568
tests: simplify test-fix-topology.t slightly by using a `(case !)` Differential Revision: https://phab.mercurial-scm.org/D8283
Thu, 12 Mar 2020 14:50:00 -0700 tests: fix rebase test broken by earlier cleanup
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Mar 2020 14:50:00 -0700] rev 44567
tests: fix rebase test broken by earlier cleanup It turns out I broke one of the rebase tests in dd2833e4d660 (tests: use drawdag in test-rebase-collapse.t, 2018-03-18) and didn't notice until now. Differential Revision: https://phab.mercurial-scm.org/D8277
Fri, 13 Mar 2020 16:57:38 -0700 rebase: accept multiple --base arguments (BC)
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Mar 2020 16:57:38 -0700] rev 44566
rebase: accept multiple --base arguments (BC) Same reasoning as for the previous patch. Rebase has worked well with `--base 'A + B'` since 51e7c83e05ee (rebase: calculate ancestors for --base separately (issue5420), 2016-11-28). Differential Revision: https://phab.mercurial-scm.org/D8293
Fri, 13 Mar 2020 16:39:32 -0700 rebase: accept multiple --source arguments (BC)
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Mar 2020 16:39:32 -0700] rev 44565
rebase: accept multiple --source arguments (BC) I think it's a little surprising that `hg rebase -s A -s B` rebases only `B::` and ignores `A`. That's because the `-s` flag is not a repeated flag. This patch makes it a repeated flag. Differential Revision: https://phab.mercurial-scm.org/D8292
Fri, 13 Mar 2020 19:29:02 -0700 rebase: mention -r argument in synopsis
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Mar 2020 19:29:02 -0700] rev 44564
rebase: mention -r argument in synopsis I'm guessing that we simply forgot to mention it there. I was wondering if maybe `-r` was experimental as long as evolution is, but that doesn't seem to be the case (`-r` is not marked experimental). Differential Revision: https://phab.mercurial-scm.org/D8295
Fri, 13 Mar 2020 16:36:31 -0700 rebase: remove unused defaults argument values from _definedestmap()
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Mar 2020 16:36:31 -0700] rev 44563
rebase: remove unused defaults argument values from _definedestmap() The caller always provides values for these arguments. Differential Revision: https://phab.mercurial-scm.org/D8291
Sun, 16 Feb 2020 17:47:20 -0500 phabricator: add a config knob to create obsolete markers when importing
Matt Harbison <matt_harbison@yahoo.com> [Sun, 16 Feb 2020 17:47:20 -0500] rev 44562
phabricator: add a config knob to create obsolete markers when importing This too can get a tristate switch if desired. But if so, that needs to happen by having evolve add the option. Differential Revision: https://phab.mercurial-scm.org/D8138
Sun, 16 Feb 2020 17:17:41 -0500 phabricator: add a config knob to import in the secret phase
Matt Harbison <matt_harbison@yahoo.com> [Sun, 16 Feb 2020 17:17:41 -0500] rev 44561
phabricator: add a config knob to import in the secret phase For my use anyway, it's better to have a config knob that's always set than to try to remember a switch. But we can add a tristate switch if desired. Differential Revision: https://phab.mercurial-scm.org/D8137
Sun, 16 Feb 2020 16:13:36 -0500 phabricator: add a `phabimport` command
Matt Harbison <matt_harbison@yahoo.com> [Sun, 16 Feb 2020 16:13:36 -0500] rev 44560
phabricator: add a `phabimport` command I've had `alias.phabimport = $hg phabread --stack $1 | $hg import --bypass -` for a while now, and I suspect others do too. That's limited though, in that it can't use the information on Phabricator to restore it in the original location, so I'm making it a first class command. This doesn't do anything ambitious like that- this is mostly a simplification of `hg import` to get the equivalent of the alias mentioned above. The `--bypass` option is hardcoded to be enabled and the message about amending rejects dropped (rejects aren't created with `--bypass`), because editing patches on Phabricator seems like an unusual workflow. This will need other options, like `--obsolete` and `--secret`. I think these would be more useful as config settings, as I imagine the workflows are pretty fixed depending on roles. Reviewers who don't queue patches probably never want `--obsolete`, but may need `--secret`. Reviewers who do will want the former, but not the latter. I left `--stack` as an option, but that should probably be a config knob too (or at least default to on)- if the point of this is to avoid rejects, it doesn't make sense to skip dependencies in most cases. Evolve is going to need a fix to its wrapping of `cmdutil.tryimportone()`, as it currently assumes `opts` has an `obsolete` key. It's worked around for now. Differential Revision: https://phab.mercurial-scm.org/D8136
Thu, 12 Mar 2020 10:14:40 +0100 rust: update the README with more up-to-date and thorough information
Raphaël Gomès <rgomes@octobus.net> [Thu, 12 Mar 2020 10:14:40 +0100] rev 44559
rust: update the README with more up-to-date and thorough information Differential Revision: https://phab.mercurial-scm.org/D8274
Fri, 08 Dec 2017 02:29:02 +0100 transactions: convert changes['phases'] to list of ranges
Joerg Sonnenberger <joerg@bec.de> [Fri, 08 Dec 2017 02:29:02 +0100] rev 44558
transactions: convert changes['phases'] to list of ranges Consecutive revisions are often in the same phase, especially public revisions. This means that a dictionary keyed by the revision for the phase transitions is highly redundant. Build a list of (range, (old, new)) entries instead and aggressively merge ranges with the same transition. For the test case in issue5691, this reduces memory use by ~20MB. Differential Revision: https://phab.mercurial-scm.org/D8125
Wed, 11 Mar 2020 17:42:56 +0100 test-install: don't print Rust re2 bindings information if Rust is not in use
Raphaël Gomès <rgomes@octobus.net> [Wed, 11 Mar 2020 17:42:56 +0100] rev 44557
test-install: don't print Rust re2 bindings information if Rust is not in use Differential Revision: https://phab.mercurial-scm.org/D8273
Mon, 09 Mar 2020 21:35:36 -0400 tests: drop an extraneous (glob) from test-debugbackupbundle.t
Matt Harbison <matt_harbison@yahoo.com> [Mon, 09 Mar 2020 21:35:36 -0400] rev 44556
tests: drop an extraneous (glob) from test-debugbackupbundle.t Since this was not needed, it ends up causing the test to end with an error saying that the output changed, but with no diff and a message at the end saying "no result code from test". Differential Revision: https://phab.mercurial-scm.org/D8269
Sat, 29 Feb 2020 12:58:38 +0530 pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 29 Feb 2020 12:58:38 +0530] rev 44555
pull: add `--confirm` flag to confirm before writing changes This introduces a new flag to pull command `--confirm` and also a config option named `pull.confirm` which if used will prompt user describing changes which are pulled and asking whether to accept them or not. Differential Revision: https://phab.mercurial-scm.org/D8200
Sat, 29 Feb 2020 12:58:13 +0530 scmutil: add option to register summary callbacks as transaction validators
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 29 Feb 2020 12:58:13 +0530] rev 44554
scmutil: add option to register summary callbacks as transaction validators We have a list of summary callbacks which are run after the transaction is closed to show what has changed and what not. This patch makes it possible to register those callbacks as transaction validators so that we can show summary before committing the transaction and prompt user to accept the changes. The goal of this is to implement `pull --confirm`. Differential Revision: https://phab.mercurial-scm.org/D8199
Sat, 29 Feb 2020 12:56:37 +0530 transaction: add functionality to have multiple validators
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 29 Feb 2020 12:56:37 +0530] rev 44553
transaction: add functionality to have multiple validators This will help us in adding more validators which can aggregate data from transaction and prompt user whether to commit the transaction or not. The current target is to use this to implement `pull --confirm`. Differential Revision: https://phab.mercurial-scm.org/D8198
Wed, 04 Mar 2020 22:13:15 +0530 hgit: make sure repository is local before checking for store type
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 04 Mar 2020 22:13:15 +0530] rev 44552
hgit: make sure repository is local before checking for store type httppeer (and maybe others too) does not have a store attribute. This was causing `hg pull` being broken on a hg repository when the extension is enabled. localpeer.local() does returns a non-None value but I am not sure if it matters. Differential Revision: https://phab.mercurial-scm.org/D8217
Fri, 06 Mar 2020 18:08:23 +0100 hg-core: add function timing information
Raphaël Gomès <rgomes@octobus.net> [Fri, 06 Mar 2020 18:08:23 +0100] rev 44551
hg-core: add function timing information This change makes use of the newly added logging infrastructure to trace the execution time of some important calls. This approach is very much complementary to using a profiler and will not guard against out-of-order execution or other kinds of compiler optimizations. That said, it is useful to get a rough high-level idea of where time is spent. Differential Revision: https://phab.mercurial-scm.org/D8253
Fri, 06 Mar 2020 18:08:13 +0100 rust: add logging utils
Raphaël Gomès <rgomes@octobus.net> [Fri, 06 Mar 2020 18:08:13 +0100] rev 44550
rust: add logging utils This change adds the `log` crate, the community-approved logging facade backed by Rust core developers as well as the logging-consumer crate `simple_logger` to build a foundation for logging from Rust. Using this setup allows us to choose how to log depending on the way `hg-core` is used: if it's within the context of `hg-cpython`, we might not want to use it the same way as with a direct cli for example. Differential Revision: https://phab.mercurial-scm.org/D8252
Fri, 06 Mar 2020 17:51:24 +0100 rust-status: traverse working directory in parallel
Raphaël Gomès <rgomes@octobus.net> [Fri, 06 Mar 2020 17:51:24 +0100] rev 44549
rust-status: traverse working directory in parallel Using `rayon` for this task ensures that we are using the same work-stealing threadpool for everything. This change introduces `crossbeam` as an explicit dependency, although it is already a dependency of `rayon`. It provides better structures for multi-threaded tasks than the stdlib. Differential Revision: https://phab.mercurial-scm.org/D8251
Fri, 06 Mar 2020 17:51:03 +0100 rust-status: wrap `stat_dmap_entries` to ease profiling
Raphaël Gomès <rgomes@octobus.net> [Fri, 06 Mar 2020 17:51:03 +0100] rev 44548
rust-status: wrap `stat_dmap_entries` to ease profiling Differential Revision: https://phab.mercurial-scm.org/D8250
Fri, 06 Mar 2020 17:48:30 +0100 rust-status: refactor handling of unknown files
Raphaël Gomès <rgomes@octobus.net> [Fri, 06 Mar 2020 17:48:30 +0100] rev 44547
rust-status: refactor handling of unknown files Differential Revision: https://phab.mercurial-scm.org/D8249
Wed, 19 Feb 2020 11:14:30 +0100 rust-status: move to recursive traversal to prepare for parallel traversal
Raphaël Gomès <rgomes@octobus.net> [Wed, 19 Feb 2020 11:14:30 +0100] rev 44546
rust-status: move to recursive traversal to prepare for parallel traversal I have looked into traversing the working directory in parallel either by a recursive or an iterative algorithm. The recursive approach won quite decisively both in terms of performance and code readability. You can look at my experiment here: https://heptapod.octobus.net/Alphare/rayon-recursive-traversal The chance of a stack overflow happening because the directories get too nested seems slim. This change does not yet do anything in parallel. Differential Revision: https://phab.mercurial-scm.org/D8215
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
Thu, 06 Feb 2020 14:32:16 +0100 rust-status: add function for sequential traversal of the working directory
Raphaël Gomès <rgomes@octobus.net> [Thu, 06 Feb 2020 14:32:16 +0100] rev 44537
rust-status: add function for sequential traversal of the working directory This change also introduces helper structs to make things clearer. Differential Revision: https://phab.mercurial-scm.org/D7928
Thu, 06 Feb 2020 14:34:54 +0100 rust-status: add missing variants to `Dispatch` enum
Raphaël Gomès <rgomes@octobus.net> [Thu, 06 Feb 2020 14:34:54 +0100] rev 44536
rust-status: add missing variants to `Dispatch` enum Differential Revision: https://phab.mercurial-scm.org/D8088
Thu, 06 Feb 2020 14:28:35 +0100 rust-status: rename `StatusResult` to `DirstateStatus`
Raphaël Gomès <rgomes@octobus.net> [Thu, 06 Feb 2020 14:28:35 +0100] rev 44535
rust-status: rename `StatusResult` to `DirstateStatus` "Result" has a special meaning in the Rust world, this should be clearer. Differential Revision: https://phab.mercurial-scm.org/D8087
Thu, 06 Feb 2020 14:25:59 +0100 rust-status: refactor options into a `StatusOptions` struct
Raphaël Gomès <rgomes@octobus.net> [Thu, 06 Feb 2020 14:25:59 +0100] rev 44534
rust-status: refactor options into a `StatusOptions` struct Differential Revision: https://phab.mercurial-scm.org/D8086
Fri, 17 Jan 2020 15:37:24 +0100 rust-status: add util for listing a directory
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 15:37:24 +0100] rev 44533
rust-status: add util for listing a directory I debated moving it to utils, but it is not used anywhere else for now, and its skip behavior is pretty specific to status. Differential Revision: https://phab.mercurial-scm.org/D7927
Fri, 17 Jan 2020 11:53:31 +0100 rust-matchers: add `IgnoreMatcher`
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 11:53:31 +0100] rev 44532
rust-matchers: add `IgnoreMatcher` This is a big change but all of the pieces call each other, so it makes sense to have this all in one patch. Differential Revision: https://phab.mercurial-scm.org/D7925
Fri, 17 Jan 2020 11:32:02 +0100 rust-matchers: add `build_regex_match` function
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 11:32:02 +0100] rev 44531
rust-matchers: add `build_regex_match` function This function will be used to help build the upcoming `IncludeMatcher`. Differential Revision: https://phab.mercurial-scm.org/D7924
Fri, 17 Jan 2020 11:31:12 +0100 rust-matchers: add functions to get roots, dirs and parents from patterns
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 11:31:12 +0100] rev 44530
rust-matchers: add functions to get roots, dirs and parents from patterns These functions will be used to help build the upcoming `IncludeMatcher`. Differential Revision: https://phab.mercurial-scm.org/D7923
Fri, 17 Jan 2020 11:29:33 +0100 rust-matchers: add function to generate a regex matcher function
Raphaël Gomès <rgomes@octobus.net> [Fri, 17 Jan 2020 11:29:33 +0100] rev 44529
rust-matchers: add function to generate a regex matcher function This function will be used to help build the upcoming `IncludeMatcher`. While Re2 is still used and behind a feature flag, this function returns an error meant for fallback in the default case. Differential Revision: https://phab.mercurial-scm.org/D7922
Tue, 10 Mar 2020 16:04:30 +0100 run-tests: restrict Rust thread pool to 3 threads during tests
Raphaël Gomès <rgomes@octobus.net> [Tue, 10 Mar 2020 16:04:30 +0100] rev 44528
run-tests: restrict Rust thread pool to 3 threads during tests Differential Revision: https://phab.mercurial-scm.org/D8270
Fri, 28 Feb 2020 00:31:14 +0100 nodemap: make sure the nodemap docket is updated after the changelog
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 Feb 2020 00:31:14 +0100] rev 44527
nodemap: make sure the nodemap docket is updated after the changelog It is better to have a lagging nodemap than a nodemap pointing to node that does not exists yet. (strictly speaking, the order was already right, however we make it more explicit). Differential Revision: https://phab.mercurial-scm.org/D8188
Fri, 28 Feb 2020 00:29:18 +0100 nodemap: make sure hooks have access to an up-to-date version
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 28 Feb 2020 00:29:18 +0100] rev 44526
nodemap: make sure hooks have access to an up-to-date version We make sure hooks can read persistent nodemap data and that they access something up-to-date with the pending transaction. Differential Revision: https://phab.mercurial-scm.org/D8187
Thu, 27 Feb 2020 16:32:43 +0100 nodemap: track the tip_node for validation
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Feb 2020 16:32:43 +0100] rev 44525
nodemap: track the tip_node for validation Differential Revision: https://phab.mercurial-scm.org/D8184
Thu, 27 Feb 2020 15:42:04 +0100 nodemap: add a todo list for getting out of experimental
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 27 Feb 2020 15:42:04 +0100] rev 44524
nodemap: add a todo list for getting out of experimental This is all the requirement I can think off. More might be added as they emerge. The first ones are mostly simple technical matters that will be taken care of soon. The question about the "status" of the persistent nodemap and the revlogs that will use it requires more discussion and thinking. Differential Revision: https://phab.mercurial-scm.org/D8181
Tue, 18 Feb 2020 15:19:11 +0100 rust-nodemap: automatically use the rust index for persistent nodemap
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 18 Feb 2020 15:19:11 +0100] rev 44523
rust-nodemap: automatically use the rust index for persistent nodemap The persistent nodemap requires the rust index to be used to provides any gains. So we automatically enable it for revlog using the persistent nodemap. We keep it off for other revset because now that the rust revlog fully initialise the nodemap using it everywhere introduce a fairly significant regression (eg: hg diff moving from 0.8s to 2.3s on mozilla-try) Differential Revision: https://phab.mercurial-scm.org/D8164
Tue, 18 Feb 2020 18:32:55 +0100 nodemap: use data from the index in debugnodemap --dump-new
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 18 Feb 2020 18:32:55 +0100] rev 44522
nodemap: use data from the index in debugnodemap --dump-new It is better to run the actual code when generating a new nodemap cache from scratch. So we do. Differential Revision: https://phab.mercurial-scm.org/D8163
Wed, 12 Feb 2020 10:53:24 +0100 rust-nodemap: also clear Rust data in `clearcaches`
Georges Racinet <georges.racinet@octobus.net> [Wed, 12 Feb 2020 10:53:24 +0100] rev 44521
rust-nodemap: also clear Rust data in `clearcaches` Differential Revision: https://phab.mercurial-scm.org/D8161
Wed, 12 Feb 2020 10:53:19 +0100 rust-nodemap: add binding to `nodemap_update_data`
Georges Racinet <georges.racinet@octobus.net> [Wed, 12 Feb 2020 10:53:19 +0100] rev 44520
rust-nodemap: add binding to `nodemap_update_data` Differential Revision: https://phab.mercurial-scm.org/D8160
Wed, 12 Feb 2020 10:52:30 +0100 rust-nodemap: add binding for `nodemap_data_incremental`
Georges Racinet <georges.racinet@octobus.net> [Wed, 12 Feb 2020 10:52:30 +0100] rev 44519
rust-nodemap: add binding for `nodemap_data_incremental` Differential Revision: https://phab.mercurial-scm.org/D8159
Wed, 12 Feb 2020 10:51:17 +0100 rust-nodemap: add binding for `nodemap_data_all`
Georges Racinet <georges.racinet@octobus.net> [Wed, 12 Feb 2020 10:51:17 +0100] rev 44518
rust-nodemap: add binding for `nodemap_data_all` Differential Revision: https://phab.mercurial-scm.org/D8158
Wed, 12 Feb 2020 10:33:55 +0100 rust-nodemap: use proper Index API instead of using the C API
Raphaël Gomès <rgomes@octobus.net> [Wed, 12 Feb 2020 10:33:55 +0100] rev 44517
rust-nodemap: use proper Index API instead of using the C API Differential Revision: https://phab.mercurial-scm.org/D8157
Tue, 11 Feb 2020 16:30:28 +0100 rust-nodemap: add utils for propagating errors
Georges Racinet <georges.racinet@octobus.net> [Tue, 11 Feb 2020 16:30:28 +0100] rev 44516
rust-nodemap: add utils for propagating errors This also updates the copyright notice Differential Revision: https://phab.mercurial-scm.org/D8156
Tue, 11 Feb 2020 16:25:45 +0100 rust-nodemap: add utils to create `Node`s from Python objects
Georges Racinet <georges.racinet@octobus.net> [Tue, 11 Feb 2020 16:25:45 +0100] rev 44515
rust-nodemap: add utils to create `Node`s from Python objects Differential Revision: https://phab.mercurial-scm.org/D8155
Tue, 11 Feb 2020 16:23:06 +0100 rust-index: add `append` method to cindex/Index
Georges Racinet <georges.racinet@octobus.net> [Tue, 11 Feb 2020 16:23:06 +0100] rev 44514
rust-index: add `append` method to cindex/Index This will be used by `MixedIndex` in a later patch. Differential Revision: https://phab.mercurial-scm.org/D8154
(0) -30000 -10000 -3000 -1000 -300 -100 -64 +64 +100 +300 +1000 +3000 tip