Thu, 23 Jul 2020 16:23:43 +0200 push: test the checks preventing pushing orphaness to a server stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 23 Jul 2020 16:23:43 +0200] rev 45195
push: test the checks preventing pushing orphaness to a server This is introduce a simple example, more are coming. See inline documentation for details.
Thu, 23 Jul 2020 16:57:56 +0200 exchange: backout changeset c26335fa4225 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 23 Jul 2020 16:57:56 +0200] rev 45194
exchange: backout changeset c26335fa4225 Changeset c26335fa4225 has good intends but introduce significant behavior regressions for multiple important cases. In short there are many case where push would have caught instability creation/propagation that are no longer covered. These behavior have been covered for many years and even if some related case are not currently caught, the covered one should not be regressed. The next four changesets introduce tests for some of these cases. However we could produce many more tests cases since the area is wide and they are many possible combination. (And we should cover them when getting back to this issue) Since 5.5 is one week away, the most reasonable approach seems to back this out while we devise a new way to move forward that preserve the current behavior, catch more issues and also improves the situation that c26335fa4225 target. In addition to the behavior change, c26335fa4225 also introduced output changes. These output changes does not requires a backout per-se, but are part of the same changeset. However they come with a couple of issues that also requires attention: 1) the bulk of the error message have been shoehorned into a multiple line abort message. This seems quite different from what we usually do. The abort message should be a compact and efficient message, with extra details being issued as normal error output beforehand. (with --verbose/--quiet) support. 2) the current output is unbounded, so if there is many (tens, hundreds, thousands, …) of unstable/obsolete changeset involved in the push, the output can quickly become a scary and un-usuable wall of text. So we need some limitation here (same as we have with the remote head list that says A, B , C and # others).
Fri, 24 Jul 2020 00:50:57 +0530 tests: glob 'mercurial.error' in test-phases.t stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 24 Jul 2020 00:50:57 +0530] rev 45193
tests: glob 'mercurial.error' in test-phases.t On python 2 with chg, `mercurial.error` is omitted while printing error. On other cases it's there in error message. I did tried to understand what might be the cause was unable to find one on quick skim through the code.
Thu, 23 Jul 2020 17:32:09 +0200 infinitepush: remove unused import to tempfile stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 23 Jul 2020 17:32:09 +0200] rev 45192
infinitepush: remove unused import to tempfile Spotted by test-check-pyflakes.t
Tue, 21 Jul 2020 01:04:19 +0200 relnotes: add release notes for relevant changes I did since the 5.4 release stable
Manuel Jacob <me@manueljacob.de> [Tue, 21 Jul 2020 01:04:19 +0200] rev 45191
relnotes: add release notes for relevant changes I did since the 5.4 release After having written the notes, I realized that the added points contain changes that were part of the 5.4.2 release. These were never included in any release notes. I asked on IRC whether they should be added to this file or not, but didn’t get an answer to this question. If they should not be added here, I can remove them. Differential Revision: https://phab.mercurial-scm.org/D8770
Mon, 20 Jul 2020 18:04:19 +0200 relnotes: fix indentation stable
Manuel Jacob <me@manueljacob.de> [Mon, 20 Jul 2020 18:04:19 +0200] rev 45190
relnotes: fix indentation The two points were written by me. For some reason, I missed the fact that the other points were indented by one space. Differential Revision: https://phab.mercurial-scm.org/D8769
Mon, 20 Jul 2020 17:57:31 +0200 relnotes: make spacing before new section consistent stable
Manuel Jacob <me@manueljacob.de> [Mon, 20 Jul 2020 17:57:31 +0200] rev 45189
relnotes: make spacing before new section consistent Differential Revision: https://phab.mercurial-scm.org/D8768
Wed, 22 Jul 2020 14:58:49 +0530 tests: make one of 'worker process exited' line option in test-chg.t stable
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 22 Jul 2020 14:58:49 +0530] rev 45188
tests: make one of 'worker process exited' line option in test-chg.t I investigated and it seems like under high load, the child process is already there and no new fork was created. Hence the process was not closed.
Wed, 22 Apr 2020 18:08:12 -0400 infinitepush: fix `{get,put}_args` formatting on Python 3 stable
Connor Sheehan <sheehan@mozilla.com> [Wed, 22 Apr 2020 18:08:12 -0400] rev 45187
infinitepush: fix `{get,put}_args` formatting on Python 3 Calling `.format()` on a byte-string does not work, thus causing an exception on Python 3. This commit adds a function to paper over the difference. Differential Revision: https://phab.mercurial-scm.org/D8781
Wed, 22 Apr 2020 17:59:17 -0400 infinitepush: replace `NamedTemporaryFile` with `pycompat.namedtempfile` stable
Connor Sheehan <sheehan@mozilla.com> [Wed, 22 Apr 2020 17:59:17 -0400] rev 45186
infinitepush: replace `NamedTemporaryFile` with `pycompat.namedtempfile` Fixes a Python 3 compat error when using the external bundle store. Differential Revision: https://phab.mercurial-scm.org/D8780
Mon, 20 Jul 2020 20:31:24 +0900 chgserver: discard buffered output before restoring fds (issue6207) stable
Yuya Nishihara <yuya@tcha.org> [Mon, 20 Jul 2020 20:31:24 +0900] rev 45185
chgserver: discard buffered output before restoring fds (issue6207) On Python 3, flush() appears not discarding buffered data on EPIPE, and the buffered data will be carried over to the restored stdout.
Tue, 21 Jul 2020 20:49:05 +0900 hghave: fix possible int('') in has_clang_format() stable
Yuya Nishihara <yuya@tcha.org> [Tue, 21 Jul 2020 20:49:05 +0900] rev 45184
hghave: fix possible int('') in has_clang_format()
Mon, 20 Jul 2020 22:16:26 +0530 Added signature for changeset 28163c5de797 stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 20 Jul 2020 22:16:26 +0530] rev 45183
Added signature for changeset 28163c5de797
Mon, 20 Jul 2020 22:16:13 +0530 Added tag 5.5rc0 for changeset 28163c5de797 stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 20 Jul 2020 22:16:13 +0530] rev 45182
Added tag 5.5rc0 for changeset 28163c5de797
Mon, 20 Jul 2020 21:56:27 +0530 merge default into stable for 5.5rc0 stable 5.5rc0
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 20 Jul 2020 21:56:27 +0530] rev 45181
merge default into stable for 5.5rc0
Sat, 18 Jul 2020 18:38:46 +0900 phases: move short-lived PyObject pointers to local scope
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:38:46 +0900] rev 45180
phases: move short-lived PyObject pointers to local scope It helps understand which object should be decrefed on goto release.
Sat, 18 Jul 2020 18:35:17 +0900 phases: rename variable used for owned dict of phasesets
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:35:17 +0900] rev 45179
phases: rename variable used for owned dict of phasesets The phaseroots variable is used for two different objects: borrowed set and owned dict of sets. It's hard to track which object should have to be decrefed on error return.
Sat, 18 Jul 2020 18:27:39 +0900 phases: leverage Py_BuildValue() to build PyInt and steal PyObject
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:27:39 +0900] rev 45178
phases: leverage Py_BuildValue() to build PyInt and steal PyObject "N" means "O" without incref, so we can just return the created tuple.
Sat, 18 Jul 2020 18:21:26 +0900 phases: make sure an exception should be set on error return
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:21:26 +0900] rev 45177
phases: make sure an exception should be set on error return This should never happen, but the code looks wrong without PyErr_Set*() call.
Sat, 18 Jul 2020 18:19:14 +0900 phases: fix clang-format error
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:19:14 +0900] rev 45176
phases: fix clang-format error
Sat, 18 Jul 2020 18:13:41 +0900 phases: fix error return with no exception from computephases()
Yuya Nishihara <yuya@tcha.org> [Sat, 18 Jul 2020 18:13:41 +0900] rev 45175
phases: fix error return with no exception from computephases() PySet_Check() does not set an exception.
Sun, 19 Jul 2020 17:35:41 +0900 osutil: fix excessive decref on tuple creation failure in listdir()
Yuya Nishihara <yuya@tcha.org> [Sun, 19 Jul 2020 17:35:41 +0900] rev 45174
osutil: fix excessive decref on tuple creation failure in listdir() The stat object would be freed on error for the same reason as the previous patch. makestat() can be inlined, but this patch doesn't change it. https://github.com/python/cpython/blob/2.7/Python/modsupport.c#L292 The __APPLE__ code is untested.
Sun, 19 Jul 2020 17:24:16 +0900 revlog: fix excessive decref on tuple creation failure in parse_index2()
Yuya Nishihara <yuya@tcha.org> [Sun, 19 Jul 2020 17:24:16 +0900] rev 45173
revlog: fix excessive decref on tuple creation failure in parse_index2() Since Py_BuildValue() steals the ownership of "N" arguments, these objects would already be freed if Py_BuildValue() returned NULL. https://github.com/python/cpython/blob/2.7/Python/modsupport.c#L292
Mon, 20 Jul 2020 17:38:01 +0200 tests: correctly match clang-format version >= 10
Manuel Jacob <me@manueljacob.de> [Mon, 20 Jul 2020 17:38:01 +0200] rev 45172
tests: correctly match clang-format version >= 10 The previous regex only matched the first digit, so "clang-format version 10.0.0" was recognized as version 1.
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 tip