cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
Rhy0lite has quit [Quit: This computer has gone to sleep]
<arigo>
I must still be missing something. It seems you say that test_rposix fails because of a mismatch of libc versions, did I misunderstood it?
<mattip>
all I can safely say is that for me rposix/test/test_rposix.py fails on win32, and that topic branch fixes the failures
<mattip>
my hypothesis is that the failure is due to mixing runtimes, but now you say they pass, so I am confused
<arigo>
OK, then all I say is that replacing os.open() with rposix.open() is not a valid fix because we'd like RPython code that uses os.open() to continue working untranslated
<arigo>
note that I'm running the tests in the old environment, with "VC++ for Python"
<arigo>
I guess nowadays they should be run with a newer VC, which would explain why they pass for me only
<mattip>
but it is reporting "vsver 160"?
<arigo>
confusingly, yes
<arigo>
but maybe distutils.msvccompiler.get_build_version() returns the old VC for Python
<arigo>
and the other code reporting "vsver 160" uses another logic to find it
<arigo>
(just a guess)
<mattip>
do the tests_rposix.py tests run to completion for you?
<arigo>
yes
<arigo>
11 passed, 19 skipped
<mattip>
huh. There should be 48 passed, 26 skipped
<arigo>
is there a specific test that fails for you, which I could try locally?
<mattip>
for me, test_os_write never kills the test run
<mattip>
s/never/always/
<mattip>
never completes, kills the test run
<arigo>
right, for me too if I run in an environment without "VC++ for Python"
<arigo>
...OK, now also in an environment with "VC++ for Python"
<mattip>
but that topic branch should complete the entire test run successfully
<arigo>
sorry, I have no clue at all what's going on here, you better ignore me I guess
<mattip>
ok. I will push ahead on that topic branch to make all rpython/rlib tests pass
<arigo>
it did pass with 11 passed, 19 skipped *once* in *some* environment, and now it no longer does or the environment is subtly different or something
<mattip>
I think the rpython code (not tests) that use os.open is safe as long as it stays with os.* functions and does not mix in rposix variants
<arigo>
which is not completely possible because of some Python3-only functions which are not in os on Python2, but yes, I see the point and I don't want to prevent you from going ahead
<arigo>
we risk obscure failures on pypy/module/posix on py3.6, but maybe we don't or we can just skip them or something
<mattip>
I will put it on a non-topic branch for review and testing
<mattip>
but as for os2rposix which only changes test_rposix.py (and clears the win32 failures): does it seem reasonable to merge?
<mattip>
(where "it on an non-topic branch" refers to the pastebin change and subsequent changes to make it work)
<arigo>
go ahead, just please revert it if you figure out soon a proper fix in ll2ctypes that also fixes that issue
<mattip>
I fear the "fix" will be more of the same: converting os.* calls to rposix.* ones in tests
<mattip>
but not in rpython code (since things JustWork right now)