mercurial-devel merge requestshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests2022-05-26T13:58:25Zhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/118revlog delta debugging2022-05-26T13:58:25ZPierre-Yves Davidrevlog delta debuggingA series of change to make it simpler to inspect revlog deltaA series of change to make it simpler to inspect revlog deltaPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/130bundle: quick fix to ludicrous performance penalty2022-05-26T14:36:29ZPierre-Yves Davidbundle: quick fix to ludicrous performance penaltyWe tried a `hg bundle --base ':(tip^)' --rev 'all()'` on a large repository and
it spent 3 minutes on this 2 list comprehensions. This change remove this cost.
There are still a lot of low hanging fruits as the command still take 30
sec...We tried a `hg bundle --base ':(tip^)' --rev 'all()'` on a large repository and
it spent 3 minutes on this 2 list comprehensions. This change remove this cost.
There are still a lot of low hanging fruits as the command still take 30
seconds. However this is a trivial patch with a massive speedup so I'll just
sent it.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/125worker.py improvements2022-05-30T07:53:04ZManuel Jacobworker.py improvementshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/136tests: work around non-thread-safeness of sysconfig.get_config_var()2022-05-30T08:08:24ZManuel Jacobtests: work around non-thread-safeness of sysconfig.get_config_var()https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/135tests: add hg10 requirement to test-check-module-imports.t2022-05-30T09:15:29ZAnton Shestakovtests: add hg10 requirement to test-check-module-imports.t---
name: Official Review
about: Submit a series for review
---
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 d...---
name: Official Review
about: Submit a series for review
---
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/Heptapodhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/134more testing for delta against nullrev2022-05-30T09:45:28ZPierre-Yves Davidmore testing for delta against nullrevHaving a bit more testing won't hurt.Having a bit more testing won't hurt.Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/137chg: ignore already closed fds when cleaning up2022-06-02T09:23:49ZRaphaël Gomèschg: ignore already closed fds when cleaning upThis should fix this error we see in the CI from time to time:
```
--- /tmp/mercurial-ci/tests/test-chg.t
+++ /tmp/mercurial-ci/tests/test-chg.t.err
@@ -187,6 +187,26 @@
$ chg bulkwrite --pager=on --color no --config ui.formatted=Tru...This should fix this error we see in the CI from time to time:
```
--- /tmp/mercurial-ci/tests/test-chg.t
+++ /tmp/mercurial-ci/tests/test-chg.t.err
@@ -187,6 +187,26 @@
$ chg bulkwrite --pager=on --color no --config ui.formatted=True
paged! 'going to write massive data\n'
killed! (?)
+ Traceback (most recent call last):
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 509, in _serverequest
+ sv.cleanup()
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 382, in cleanup
+ self._restoreio()
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 461, in _restoreio
+ os.close(fd)
+ OSError: [Errno 9] Bad file descriptor
+ Traceback (most recent call last):
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 693, in _acceptnewconnection
+ self._runworker(conn)
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 744, in _runworker
+ prereposetups=[self._reposetup],
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/commandserver.py", line 509, in _serverequest
+ sv.cleanup()
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 382, in cleanup
+ self._restoreio()
+ File "/tmp/hgtests._uvojvqb/install/lib/python/mercurial/chgserver.py", line 461, in _restoreio
+ os.close(fd)
+ OSError: [Errno 9] Bad file descriptor
[255]
```https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/133narrow_widen_acl: enforce narrowacl in narrow_widen2022-06-02T14:23:27Zidlsoftnarrow_widen_acl: enforce narrowacl in narrow_widenhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/144Merging stable into default2022-06-02T15:06:39ZRaphaël GomèsMerging stable into defaultRaphaël GomèsRaphaël Gomèshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/153rust: relax im-rc dependency to allow minor updates2022-06-07T08:30:10ZRaphaël Gomèsrust: relax im-rc dependency to allow minor updatesThis is Mads's patch, queued for CI.This is Mads's patch, queued for CI.Raphaël GomèsRaphaël Gomèshttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/138node: stop converting binascii.Error to TypeError in bin()2022-06-07T09:22:20ZManuel Jacobnode: stop converting binascii.Error to TypeError in bin()https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/139better debug-revlog-index2022-06-07T09:56:03ZPierre-Yves Davidbetter debug-revlog-indexPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/126hghave: make black version regex work with newer versions of black2022-06-07T10:02:16ZManuel Jacobhghave: make black version regex work with newer versions of blackhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/141mr-template: drop the "title and description"2022-06-07T10:25:26ZPierre-Yves Davidmr-template: drop the "title and description"Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/146worker: avoid potential partial write of pickled data2022-06-07T11:06:35ZManuel Jacobworker: avoid potential partial write of pickled datahttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/140ci: drop the phabricator refresh step2022-06-07T12:11:03ZPierre-Yves Davidci: drop the phabricator refresh stepPierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/149search-discovery-case: update documentation of a function2022-06-07T12:44:28ZPierre-Yves Davidsearch-discovery-case: update documentation of a functionWe return data, it is simpler when we know what these data means.We return data, it is simpler when we know what these data means.Pierre-Yves DavidPierre-Yves Davidhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/142demandimport: eagerly load msvcrt module on PyPy2022-06-07T13:24:06ZManuel Jacobdemandimport: eagerly load msvcrt module on PyPyhttps://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/152parsers: drop one extra argument to PyErr_Format2022-06-07T13:36:47ZAnton Shestakovparsers: drop one extra argument to PyErr_FormatGCC gave the following warning during `make local`:
```
mercurial/cext/parsers.c: In function 'dirstate_item_from_v1_data':
mercurial/cext/parsers.c:413:30: warning: too many arguments for format [-Wformat-extra-args]
413 | ...GCC gave the following warning during `make local`:
```
mercurial/cext/parsers.c: In function 'dirstate_item_from_v1_data':
mercurial/cext/parsers.c:413:30: warning: too many arguments for format [-Wformat-extra-args]
413 | "unknown state: `%c` (%d, %d, %d)", state, mode,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
To reproduce, you might need to add the -Wformat-extra-args flag, because it
isn't present for me when building for the default python3. But I can see this
warning while simply building 6.1 with `make PYTHON=python2 clean local`.
I don't think this NULL was useful, because other instances of PyErr_Format()
don't have any NULLs as the final argument, but keep in mind that I don't know
python's C API.https://foss.heptapod.net/mercurial/mercurial-devel/-/merge_requests/143py3: don’t subscript socket.error2022-06-07T14:23:09ZManuel Jacobpy3: don’t subscript socket.error