mercurial-devel merge requestshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests2024-03-28T07:52:24Zhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/786Draft: more phase perfs2024-03-28T07:52:24ZPierre-Yves DavidDraft: more phase perfsFurther change that I set aside for now to focus on the first wave.
These changeset adds some complexity and I would like to see them move benchmark number before going forward.Further change that I set aside for now to focus on the first wave.
These changeset adds some complexity and I would like to see them move benchmark number before going forward.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/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/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/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/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/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/779branch cache : various cleanup and fixes2024-03-05T10:58:11ZPierre-Yves Davidbranch cache : various cleanup and fixescleaning things up and fixing various inconsistency and dropped check.cleaning things up and fixing various inconsistency and dropped check.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/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/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/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/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/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 Reviewhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/768Merge stable into default2024-02-12T16:25:52ZRaphaë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 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
-->Raphaël GomèsRaphaël Gomèshttps://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
-->