On 19.04.2020 14:47, Johan Corveleyn wrote:
> On Sun, Apr 19, 2020 at 10:49 AM Yasuhito FUTATSUKI <futat...@poem.co.jp> 
> wrote:
>> On 2020/04/19 3:26, Johan Corveleyn wrote:
>>> On Fri, Apr 17, 2020 at 11:21 PM Yasuhito FUTATSUKI <futat...@poem.co.jp> 
>>> wrote:
>>>> On 2020/04/17 5:53, Johan Corveleyn wrote:
>>>>
>>>>> Running the testsuite with Py 3.8.2 with PYTHONLEGACYWINDOWSSTDIO
>>>>> defined in the environment allows it to complete. It results in 68
>>>>> FAILS (for ra_local x fsfs). See attached fails.log.
>>>> I hope a part of the problems may fixed by attached patch, however,
>>>> I can't see why these test was passed in Python 2.7.
>>> Thanks! That fixes two of the tests. These two now pass after applying
>>> your patch (so feel free to commit -- I also checked again with Python
>>> 2.7 and still all tests successful):
>> Thank you for testing. I commited it in r1876707.
>>
>> One more fix.
>>> FAIL:  blame_tests.py 18: blame_youngest_to_oldest
>> The patch attached address to this one.
> Confirmed! Thanks :-).
>
> Would you also have an idea on how to fix the PYTHONLEGACYWINDOWSSTDIO issue?
> I mean: would it ever be possible to run the testsuite without
> defining that envvar? Or will that remain necessary?


Depending on how the testsuite is implemented, which I forget in detail,
it might be. The os.dup2() method allows child processes to inherit the
redirected standard handles. Reassigning os.stdout will not do that.
There might be a way to maintain the inheritance behaviour by creating
child processes differently.

So yeah ... this is a bit of serious nonsense from the Python devs.
Breaking decades' worth of legacy code is never a good idea.

-- Brane

Reply via email to