Closed j4yk closed 8 years ago
Hm, this seems strange. Maybe this should be replaced with
system,node,release,version,machine =
platform.system(),platform.node(),platform.release(),platform.version(),platform.machine()
On 15 September 2015 at 17:21, j4yk notifications@github.com wrote:
Could you please verify or refute?
Error is
[translation:ERROR] FlowingError: [translation:ERROR] [translation:ERROR] getattr(<module 'os' from 'C:\Users\j4yk\Documents\d ev\HPI\rsqueakvm\.build\pypy-win32\lib-python\2.7\os.pyc'>, uname) always raises <type 'exceptions.AttributeError'>: 'module' object has no attribute 'un ame' [translation:ERROR] [translation:ERROR] In <FunctionGraph of (platform:1166)uname at 0x57069d0>: [translation:ERROR] Happened at file C:\Users\j4yk\Documents\dev\HPI\rsqueak vm.build\pypy-win32\lib-python\2.7\platform.py line 1188 [translation:ERROR] [translation:ERROR] system,node,release,version,machine = os.uname()
[translation:ERROR] [translation:ERROR] Processing block: [translation:ERROR] block@3 is a <class 'rpython.flowspace.flowcontext.SpamBloc k'> [translation:ERROR] in (platform:1303)system [translation:ERROR] containing the following operations: [translation:ERROR] v33 = simple_call((function uname)) [translation:ERROR] v34 = getitem(v33, (0)) [translation:ERROR] --end--
This was done in a Git Bash session but it does not work with cmd either: https://gist.github.com/j4yk/1f38525e08a31189678e
Works in the vagrant Linux box (although the Vagrantfile seems to need an update).
However, when compiling with JIT, i. e. leaving out the -O2 flag for the build script, it works. But I want to avoid that for frequent smoke-check builds because it takes so long.
— Reply to this email directly or view it on GitHub https://github.com/HPI-SWA-Lab/RSqueak/issues/108.
That code is in the Python standard library. But unfortunately the error message does not seem to tell me what called there.
Oops. That's strange. And shouldn't happen
It works without the platform lines introduced in 158c6c402394920c7151aa15e89c243f141d6af1.
We could calculate that stuff at translation time, right?
On 12.10.2015, at 18:26, Jakob Reschke notifications@github.com wrote:
It works without the platform lines introduced in 158c6c4.
� Reply to this email directly or view it on GitHub.
Tobias Pape Research School on Service-Oriented Systems Engineering Software Architecture Group | http://www.hpi.uni-potsdam.de/swa/
Hasso-Plattner-Institut f�r Softwaresystemtechnik GmbH | Universit�t Potsdam Prof.-Dr.-Helmert-Str. 2-3, D-14482 Potsdam, Germany Amtsgericht Potsdam, HRB 12184 | Gesch�ftsf�hrung: Prof. Dr. Christoph Meinel
platform.system()
probably so, but I think platform.version()
or platform.processor()
not.
Looking at the pypy/lib-python
implementation of platform
, it seems to be expected, that os.uname
sometimes does not work, however, they do not resort to the host platform
but implement their own:
That is user-level Python code, right? Maybe copying the uname implementation and changing the try-catch to something that causes the translation to skip uname if it is not available might work... but I do not particularly like that path.
Fixed this!
Could you please verify or refute?
Error is
This was done in a Git Bash session but it does not work with cmd either: https://gist.github.com/j4yk/1f38525e08a31189678e
Works in the vagrant Linux box (although the Vagrantfile seems to need an update).
However, when compiling with JIT, i. e. leaving out the -O2 flag for the build script, it works. But I want to avoid that for frequent smoke-check builds because it takes so long.