[Twisted-Python] Does anyone know why trunk is failing CI on PyPy 7.3.4?

Glyph glyph at twistedmatrix.com
Thu Apr 29 00:23:09 MDT 2021


It's merged.

On Wed, Apr 28, 2021, at 3:07 AM, Adi Roiban wrote:
> Hi
> 
> PR at https://github.com/twisted/twisted/pull/1592
> 
> I hope we can get a quick review and make the trunk green again :)
> 
> Cheeers
> 
> On Wed, 28 Apr 2021 at 10:30, Adi Roiban <adi at roiban.ro> wrote:
>> Hi,
>> 
>> A quick diff to fix it... and a ticket https://twistedmatrix.com/trac/ticket/10187
>> 
>> I will create a PR and we can refine the fix during the review.
>> 
>> 
>> diff --git a/src/twisted/words/protocols/irc.py b/src/twisted/words/protocols/irc.py
>> index 75300019b..a97abce2e 100644
>> --- a/src/twisted/words/protocols/irc.py
>> +++ b/src/twisted/words/protocols/irc.py
>> @@ -3678,10 +3678,10 @@ def ctcpExtract(message):
>>              normal_messages.append(messages.pop(0))
>>          odd = not odd
>>  
>> -    extended_messages[:] = filter(None, extended_messages)
>> -    normal_messages[:] = filter(None, normal_messages)
>> +    extended_messages[:] = list(filter(None, extended_messages))
>> +    normal_messages[:] = list(filter(None, normal_messages))
>>  
>> -    extended_messages[:] = map(ctcpDequote, extended_messages)
>> +    extended_messages[:] = list(map(ctcpDequote, extended_messages))
>> 
>> 
>> On Wed, 28 Apr 2021 at 10:01, Adi Roiban <adi at roiban.ro> wrote:
>>> Hi Wim,
>>> 
>>> Thanks for the report
>>> 
>>> On Tue, 27 Apr 2021 at 08:14, Wim Lewis <wiml at hhhh.org> wrote:
>>>> TLDR: Twisted appears broken on PyPy 7.3.4 (aka "3.7.10")?
>>>> 
>>>> I don't have time right now to set up a PyPy-capable environment and try 
>>>> to reproduce this, but perhaps someone does?
>>>> 
>>>> Long version:
>>>> 
>>>> Trunk has been broken since the last merge a week or so ago, but I 
>>>> don't think the breakage is due to that merge.  As an experiment I made 
>>>> a PR based off the last successful version of trunk, with a whitespace 
>>>> change, and it now fails CI as well. So I think the failure must be due 
>>>> to some change that isn't in Twisted or controlled-for by tox.
>>>> 
>>>> The failure in all cases is in the pypy-3.7-alldeps-nocov-posix task. 
>>>> Unlike our usual CI problems it doesn't seem to be a random failure: it 
>>>> fails all the time in the same place. But the place doesn't make sense 
>>>> to me. It's in the IRC CTCP tests, and they fail in the same ways each 
>>>> time (an expected response is not received).
>>>> 
>>>> The pair of CI runs closest to the change are these:
>>>> 
>>>> run 5793: https://github.com/twisted/twisted/runs/2328450554
>>>> run 5809: https://github.com/twisted/twisted/runs/2360415474
>>>> 
>>>> There are a lot of differences, but sys.version went from 3.7.9 to 
>>>> 3.7.10 between those runs, so that seems like the most likely culprit.
>>>> 
>>>> Last working:
>>>> >  sys.version              : 3.7.9 (7e6e2bb30ac5, Nov 18 2020, 10:55:52)
>>>> >  [PyPy 7.3.3-beta0 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
>>>> >  sys.prefix               : /opt/hostedtoolcache/PyPy/3.7.9/x64
>>>> >  sys.exec_prefix          : /opt/hostedtoolcache/PyPy/3.7.9/x64
>>>> >  sys.executable           : /opt/hostedtoolcache/PyPy/3.7.9/x64/bin/python
>>>> 
>>>> First broken:
>>>> >  sys.version              : 3.7.10 (51efa818fd9b, Apr 04 2021, 11:22:34)
>>>> >  [PyPy 7.3.4 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
>>>> >  sys.prefix               : /opt/hostedtoolcache/PyPy/3.7.10/x64
>>>> >  sys.exec_prefix          : /opt/hostedtoolcache/PyPy/3.7.10/x64
>>>> >  sys.executable           : /opt/hostedtoolcache/PyPy/3.7.10/x64/bin/python
>>>> 
>>>> PyPy's release notes for 7.3.4 don't list anything that jumps out at me:
>>>> 
>>>> https://doc.pypy.org/en/latest/whatsnew-pypy3-7.3.4.html
>>>> 
>>>> My guess would be some latent timing bug in Twisted that was uncovered 
>>>> by pypy execution time changes (I don't imagine that the CTCP code gets 
>>>> exercised very heavily these days) or perhaps PyPy got a bug.
>>>> 
>>>> 
>>>> Wim.
>>>> 
>>> 
>>> I have setup a pyp3.7.4 and I can reproduce it.
>>> 
>>> I see 3 options:
>>> 
>>> * Option A: Skip those tests on pypy  and open a separate ticket to fix the test
>>> * Option B: Pin pypy 3.7.9 for GHA and open a separate ticket to fix the test and unpin it
>>> * Option C: Just fix the tests :)
>>> 
>>> I am looking at option C for one hour... if I can't find a fix will look into option A.
>>> 
>>> Cheers
>>> 
>>> -- 
>>> Adi Roiban
>> 
>> 
>> -- 
>> Adi Roiban
> 
> 
> -- 
> Adi Roiban
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com <mailto:Twisted-Python%40twistedmatrix.com>
> https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20210428/e2089583/attachment.htm>


More information about the Twisted-Python mailing list