mercurial-devel merge requestshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests2024-03-28T15:56:36Zhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/819extdiff: use pager, including color support options2024-03-28T15:56:36ZSteveextdiff: use pager, including color support optionsI wanted to try out difftastic as an external diff command for mercurial. It works, but it doesn't run the output through the pager. And if I use --pager=yes to force it, then I lose color. difft has a --color=auto option, but if it is p...I wanted to try out difftastic as an external diff command for mercurial. It works, but it doesn't run the output through the pager. And if I use --pager=yes to force it, then I lose color. difft has a --color=auto option, but if it is piping to a pager then its auto option will suppress color. And if I use --color=always, then I run into problems when piping the output to a file or through grep or whatever.
My solutions here may be controversial. First, I send the extdiff program's output through a pager by default. This might break some programs, especially GUIs. Perhaps it would be better to either default to not paginating but allow turning it on. Or perhaps basing the default on isgui.
Second, I achieved both pagination and coloring by allowing additional command line options to be specified that are only used if the pager is being used. This allows
```
[extdiff]
mydiff = difft
mydiff.pagecmdopts = --color=always
```https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/801Draft: Rust inner revlog2024-03-28T11:31:50ZRaphaël GomèsDraft: Rust inner revlog
<!--
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/824various unbundle and debug::unbundle cleanup and optimization2024-03-28T09:31:04ZPierre-Yves Davidvarious unbundle and debug::unbundle cleanup and optimization
<!--
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/825perf::stream-consume: use the source repository config when applying2024-03-28T07:49:40ZPierre-Yves Davidperf::stream-consume: use the source repository config when applying
<!--
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/823improve stream v32024-03-28T07:44:27ZPierre-Yves Davidimprove stream v3
<!--
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/822perf-stream-locked-section: actually use v1 generation when requested2024-03-28T07:41:28ZPierre-Yves Davidperf-stream-locked-section: actually use v1 generation when requested
<!--
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/817exchange: add option to disable pulling after cloning from clonebundle2024-03-27T14:50:14ZZeger Van de Vannetexchange: add option to disable pulling after cloning from clonebundle@mathias.de_mare
Adds an option to not pull after downloading a clonebundle,as a workaround for an issue we sporadically notice:
For example:
* we have a bundle built at revision a
* we pull using clonebundle rev-a
* revision b is pus...@mathias.de_mare
Adds an option to not pull after downloading a clonebundle,as a workaround for an issue we sporadically notice:
For example:
* we have a bundle built at revision a
* we pull using clonebundle rev-a
* revision b is pushed
* after unpacking the clonebundle, a pull is done which does not find any new changes:
```
finished applying clone bundle
remote: obsolete feature not enabled but 23 markers found!
searching for changes
no changes found
```
* then it fails: `remote: abort: 00changelog@<rev-b>: no node`https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/796Draft: improving file add/addremove/copy/rename warnings2024-02-28T03:19:03ZAnton ShestakovDraft: improving file add/addremove/copy/rename warningshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/758Draft: changelog: always return fresh extra dict for changeset2024-02-04T00:21:18ZManuel JacobDraft: changelog: always return fresh extra dict for changeset<!--
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/740Draft: Experiment around storing the manifest as a "forest" of persistent bin...2023-12-26T13:41:26ZPierre-Yves DavidDraft: Experiment around storing the manifest as a "forest" of persistent binary tree<!--
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
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/725Draft: we dropped Python 3.5 support, but not these bits2023-12-20T17:24:40ZAnton ShestakovDraft: we dropped Python 3.5 support, but not these bits<!--
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/735Draft: introduce an changeset discovery sampling based on chain coverage2023-12-13T22:45:54ZFlorian HornDraft: introduce an changeset discovery sampling based on chain coverageThis new way of sampling is the result of research from Laurent Bulteau,
Pierre-Yves David and Florian Horn. This first implementation is basic and will
be improved further in this series of changesets.
Building and maintening the chain...This new way of sampling is the result of research from Laurent Bulteau,
Pierre-Yves David and Florian Horn. This first implementation is basic and will
be improved further in this series of changesets.
Building and maintening the chain coverage is currently CPU expensive enough
that the method is not competitive time-wise with the exponential sampling used
so far. However having the implementation is useful to compare the performance
in terms of communication (query and roundtrips) and access if a more time
efficient implementation would be useful.
- hal-03830513: https://dumas.ccsd.cnrs.fr/LIGM_MOA/hal-03830513v1
- https://www.sciencedirect.com/science/article/pii/S1877050923010049?via%3DihubPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/712Draft: faster disco2023-11-26T21:41:13ZPierre-Yves DavidDraft: faster disco<!--
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
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/706archive: defer opening the output until a file is matched2023-11-22T09:05:01ZJörg Sonnenbergerarchive: defer opening the output until a file is matchedNote: this can be considered a BC change. We should decide on what the correct behavior for empty archives is, this is one variant, dropping the error is the other.Note: this can be considered a BC change. We should decide on what the correct behavior for empty archives is, this is one variant, dropping the error is the other.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/689narrow: add a test for linkrev computation done during widen2023-11-07T13:26:23ZPierre-Yves Davidnarrow: add a test for linkrev computation done during widen<!--
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
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/360Draft: extdiff: don't run gui programs when in a cli-only environment2023-10-10T06:14:56ZLudovic ChabantDraft: extdiff: don't run gui programs when in a cli-only environmentWhen some machine is both available as a desktop interface and as SSH, you might have some local config that uses a GUI diff/merge tool. If mercurial tries to invoke it in an SSH session, it can result in weird errors or session freezes....When some machine is both available as a desktop interface and as SSH, you might have some local config that uses a GUI diff/merge tool. If mercurial tries to invoke it in an SSH session, it can result in weird errors or session freezes. The same problem can happen if reusing the same config across machines that could incorrectly bring GUI tools into a SSH-only server. Anyway, this change displays an error message instead of trying to spawn a GUI tool in a terminal-only session.
This can be bypassed by specifying `--config mergetool.foo.gui=False` in the invocation.Ludovic ChabantLudovic Chabanthttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/354Draft: doc: generate separate commands/topics/extension pages2023-10-10T06:10:41ZLudovic ChabantDraft: doc: generate separate commands/topics/extension pages<!--
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
-->Ludovic ChabantLudovic Chabanthttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/674Draft: revlog refactor: simplify data reading arguments2023-10-09T10:35:55ZPierre-Yves DavidDraft: revlog refactor: simplify data reading arguments<!--
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
-->Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/678Draft: hgweb: fix search query encoding (issue6769)2023-10-09T02:12:12ZAnton ShestakovDraft: hgweb: fix search query encoding (issue6769)Imported from https://bz.mercurial-scm.org/show_bug.cgi?id=6769Imported from https://bz.mercurial-scm.org/show_bug.cgi?id=6769https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/651Draft: hgweb: use web.baseurl config in hgweb2023-10-09T02:12:12ZManuel JacobDraft: hgweb: use web.baseurl config in hgweb<!--
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
-->