mercurial-devel merge requestshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests2024-02-23T12:37:27Zhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/787disable the Rust index for repository without non persistent nodemap2024-02-23T12:37:27ZPierre-Yves Daviddisable the Rust index for repository without non persistent nodemapSee commit messages for rationalSee commit messages for rationalPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/789phase further improvement performance (advance boundary)2024-02-23T12:12:24ZPierre-Yves Davidphase further improvement performance (advance boundary)Now that I cornered `advanceboundary` in a relevant benchmark, I can make it faster.
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in y...Now that I cornered `advanceboundary` in a relevant benchmark, I can make it faster.
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/784rust-index: improve phases performance2024-02-23T12:12:23ZRaphaël Gomèsrust-index: improve phases performanceDepends on (at least part of) https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/780
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should...Depends on (at least part of) https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/780
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/780Optimization of phase performance2024-02-23T12:12:23ZPierre-Yves DavidOptimization of phase performancePierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/788debug: add a debug::unbundle command that simulate the unbundle from a push2024-02-23T10:00:05ZPierre-Yves Daviddebug: add a debug::unbundle command that simulate the unbundle from a push
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/785perf: support --template on perf::phases2024-02-22T21:59:10ZPierre-Yves Davidperf: support --template on perf::phasesThis makes the command usable in poulpe benchmarkThis makes the command usable in poulpe benchmarkPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/772RFC: annotate: limit output to range of lines2024-02-21T18:44:22ZZeger Van de VannetRFC: annotate: limit output to range of linesInspired by the `-L` flag for `git blame`: limit the output of the `annotate` command to the given range of lines.
It re-uses the logic for the `-L` flag to `log` and in the current implementation only works for a single file, but it sh...Inspired by the `-L` flag for `git blame`: limit the output of the `annotate` command to the given range of lines.
It re-uses the logic for the `-L` flag to `log` and in the current implementation only works for a single file, but it should be possible to extend to multiple `-L` flags to list multiple files at once.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/767unbundle: faster computation of changed heads2024-02-21T14:54:18ZArseniy Alekseyevunbundle: faster computation of changed heads<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informatio...<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/783Merge stable into default2024-02-21T12:15:00ZRaphaël GomèsMerge stable into default
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/781hg-core: separate timestamp and extra methods2024-02-21T10:12:03ZArun Kulshreshthahg-core: separate timestamp and extra methodsTimestamp line parsing was recently implemented in !778. The API introduced in that implementation requires always parsing both the timestamp itself as well as the extras whenever either is desired.
Moreover, if either parsing step fai...Timestamp line parsing was recently implemented in !778. The API introduced in that implementation requires always parsing both the timestamp itself as well as the extras whenever either is desired.
Moreover, if either parsing step fails, the entire operation fails, so a corrupt extra would prevent access to the timestamp. (This wasn't an issue in the original implementation because corrupt extras were simply ignored, but we subsequently added validation before merging the previous MR.)
This MR proposes a better API with separate `timestamp` and `extra` methods on `ChangelogRevisionData`. The underlying logic remains the same; it's just exposed in a more user-friendly way.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/782debugformat: fix formatting for compression level2024-02-21T09:36:07ZPierre-Yves Daviddebugformat: fix formatting for compression level
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/778hg-core: implement timestamp line parsing2024-02-20T18:42:50ZArun Kulshreshthahg-core: implement timestamp line parsingParse a changelog entry's timestamp line into a `chrono::DateTime` and a map of commit extras. `chrono` was chosen because it is already used by `rhg`, and therefore doesn't seem like an overly opinionated choice.
Some things that migh...Parse a changelog entry's timestamp line into a `chrono::DateTime` and a map of commit extras. `chrono` was chosen because it is already used by `rhg`, and therefore doesn't seem like an overly opinionated choice.
Some things that might be notable for reviewers:
- The implementation attempts to support floating-point timestamps, since it seems like these are supported by the Python code (though I've never encountered them in practice).
- I've only implemented the minimal required unescaping functionality instead of fully reimplementing Python's [`codecs.escape_decode`](https://github.com/python/cpython/blob/b3f0b698daf2438a6e59d5d19ccb34acdba0bffc/Objects/bytesobject.c#L1047). It should correctly undo the escaping done by `changelog._string_escape` while not requiring a workaround present in the Python unescaping code to avoid unintentionally unescaping things that look like octal escape sequences.
- Based on my reading of the Python code, it appears that the intention is to limit keys to ASCII alphanumeric characters plus hyphens and underscores, so the keys are decoded into `Strings` for convenience. Values are left as bytes. That said, I'm unsure if this was the right choice or if it would be better to just leave the keys as bytes as well.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/775doc: document that labels must have a dot in them to have an effect2024-02-19T12:11:25ZJordi Gutiérrez Hermosodoc: document that labels must have a dot in them to have an effect
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/777cext: fix potential memory leaks of list items appended with PyList_Append2024-02-19T10:15:13ZArseniy Alekseyevcext: fix potential memory leaks of list items appended with PyList_Append
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/776crecord: add search functionality (issue6834)2024-02-19T10:06:54ZJordi Gutiérrez Hermosocrecord: add search functionality (issue6834)
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/774dispatch: don't attempt to import debugger as bytestring2024-02-15T09:42:49ZJordi Gutiérrez Hermosodispatch: don't attempt to import debugger as bytestring
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/773debugsetparents: fix Marmoutian docstring2024-02-15T08:59:55ZJordi Gutiérrez Hermosodebugsetparents: fix Marmoutian docstring
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informati...
<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/771docs: fix broken `make` in `docs/`2024-02-14T09:34:55ZMartin von Zweigbergkdocs: fix broken `make` in `docs/`<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informatio...<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Mercurial ReviewMercurial Reviewhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/770docs: fix broken `make` in `docs/`2024-02-13T22:25:17ZMartin von Zweigbergkdocs: fix broken `make` in `docs/`<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informatio...<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Mercurial ReviewMercurial Reviewhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/769docs: fix broken `make` in `docs/`2024-02-13T21:36:42ZMartin von Zweigbergkdocs: fix broken `make` in `docs/`<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant informatio...<!--
Welcome to the Mercurial Merge Request creation process:
* Set a simple title for your MR,
* All important information should be contained in your changesets' content or description,
* You can add some workflow-relevant information here (eg: when this depends on another MR),
* If your changes are not ready for review yet, click `Start the title with Draft:` under the title.
More details here:
* https://www.mercurial-scm.org/wiki/ContributingChanges
* https://www.mercurial-scm.org/wiki/Heptapod
-->Mercurial ReviewMercurial Review