Update: I fixed the root issue of https://bugs.python.org/issue33694 it was a race condition in ProactorEventLoop, so specific to Windows. test_asyncio *should* now pass on all Windows CIs. I leave the issue open a few days to check if the issue is really fixed. Victor 2018-06-07 18:38 GMT+02:00 Brett Cannon <brett@python.org>:
On Thu, 7 Jun 2018 at 06:08 Victor Stinner <vstinner@redhat.com> wrote:
2018-06-07 5:36 GMT+02:00 Brett Cannon <brett@python.org>:
In the meanwhile, AppVeyor seems stable again. Would it be possible to re-enable it in all stable branches?
It was never turned off, but if you mean make it required again then yes.
Yes, I mean making it required again... but yesterday I made progress on the super annoying test_asyncio random failure, and it seems like a major regression in ProactorEventLoop on Windows: https://bugs.python.org/issue33694
Calling pause_reading() / resume_reading() of a proactor transport can lead to data loss :-(
Right now, I would prefer to not make any Windows CI required, until the test is either fixed or skipped. The failure rate is way too high (25% at least, maybe even 50%?).
I'm working on a fix, but it's super complex :-( I would need an IOCP guru and an asyncio guru to help me here. Maybe the short term fix is to first skip the test, since the bug is know well identified, and I'm easily able to reproduce the failure.
I'll leave that call up to you since you're putting in the work. If you disable the test then I'm comfortable with making AppVeyor required again, otherwise with a failure rate that high we shouldn't require any Windows status check.