From issues-reply at bitbucket.org Tue Apr 4 03:13:33 2017 From: issues-reply at bitbucket.org (chrysn) Date: Tue, 04 Apr 2017 07:13:33 -0000 Subject: [pypy-issue] Issue #2527: socket does not support sendmsg / recvmsg methods (pypy/pypy) Message-ID: <20170404071333.11236.39053@celery-worker-105.ash1.bb-inf.net> New issue 2527: socket does not support sendmsg / recvmsg methods https://bitbucket.org/pypy/pypy/issues/2527/socket-does-not-support-sendmsg-recvmsg chrysn: pypy3 v5.7.1 does not support the socket.sendmsg() method, which is part of Python3 since 3.3. The system call is necessary when exchanging UDP packages with many peers (similar to sendto), and the local interfaces addresses or receiving ICMP errors is relevant. An example user is the aiocoap library. The recvmsg method is its analogous receiving method. Please consider adding the the sendmsg / recvmsg pair to PyPy. From issues-reply at bitbucket.org Tue Apr 4 10:14:19 2017 From: issues-reply at bitbucket.org (jim_r) Date: Tue, 04 Apr 2017 14:14:19 -0000 Subject: [pypy-issue] Issue #2528: PyPy follows incorrect execution path. (pypy/pypy) Message-ID: <20170404141419.8776.92796@celery-worker-101.ash1.bb-inf.net> New issue 2528: PyPy follows incorrect execution path. https://bitbucket.org/pypy/pypy/issues/2528/pypy-follows-incorrect-execution-path jim_r: Under PyPy 5.7.1 (and also PyPy 5.7.0, PyPy 5.6.0) the attached program (pypy-bug.py) aborts after 3.3s. However, if the assertion at line 108 in the code is not commented out the program runs to completion (in 1.36s), and the assertion is not triggered. I believe that the error occurs because the program is following an execution path that should not be possible. The program is a simplified version of the program I wrote to provide a constructive demonstration of the solution to Enigma 1137, see [ [https://enigmaticcode.wordpress.com/2016/12/09/enigma-1137-on-off-on-off/#comment-5256](Link URL) ]. At some point in the recursive solve() routine, execution is falling off the bottom of the function (and returning None). However it should always return a list value. The point of return from the function depends on the length of the list "lights". If it is even, a value is returned at line 105. If it is odd, it is returned at 114, provided a switch was found that operates an odd number of lights. In my comment on the Enigmatic Code site I provide a mathematical proof that shows this is always the case, so it should not be possible to for execution to run off the end of the function. (Which is why I tried adding the assertion at l ine 108, and was surprised to find that this caused the error to go away). I am using PyPy 5.7.0 provided by MacPorts. (But I checked that the program also fails on PyPy 5.7.1 downloaded from pypy.org). % pypy --version Python 2.7.13 (fa3249d55d15b9829e1be69cdf45b5a44cec902d, Mar 27 2017, 13:41:37) [PyPy 5.7.0 with GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] My machine is a 13" MacBook Pro (Late 2011), running OS X 10.12.4. Under standard Pythons on my system (also provided by MacPorts) the program runs to completion much faster than under PyPy (537ms for Python 2.7.13, 547ms for Python 3.6.1). The program does **NOT** abort when the "--jit off" parameter is passed to pypy (and in this case I get an execution time of 1.48s). I have various older downloads of PyPy on my system, and of these the program only fails on pypy-4.0.1 and pypy-5.0.0. The list of versions and execution time is given below: pypy3-2.3.1-osx64 1.53s pypy3-2.1-beta1-osx64 3.50s pypy-5.0.0-osx64 **FAIL** 2.50s pypy-4.0.1-osx64 **FAIL** 4.00s pypy-2.5.1-osx64 1.36s pypy-2.5.0-osx64 1.47s pypy-2.4.0-osx64 1.46s pypy-2.3.1-osx64 1.51s pypy-2.3-osx64 1.48s pypy-2.2.1-osx64 1.46s pypy-2.1 1.08s pypy-2.0.2 1.05s pypy-2.0-beta2 1.09s pypy-2.0-beta1 1.05s pypy-1.9 1.07s pypy-1.8 1.10s pypy-1.7 962ms From issues-reply at bitbucket.org Wed Apr 5 10:17:49 2017 From: issues-reply at bitbucket.org (Ronan Lamy) Date: Wed, 05 Apr 2017 14:17:49 -0000 Subject: [pypy-issue] Issue #2529: Remove regrverbose script (pypy/pypy) Message-ID: <20170405141749.3581.92056@celery-worker-107.ash1.bb-inf.net> New issue 2529: Remove regrverbose script https://bitbucket.org/pypy/pypy/issues/2529/remove-regrverbose-script Ronan Lamy: Nowadays, the documented way of running the CPython test suite is to use `python -m test`. We should probably just use that instead of `pypy/tool/pytest/run-script/regrverbose.py` (already the case on py3.5) and delete regrverbose.py. Are there any reasons to keep it that I'm not aware of? From issues-reply at bitbucket.org Wed Apr 5 15:29:50 2017 From: issues-reply at bitbucket.org (mattip) Date: Wed, 05 Apr 2017 19:29:50 -0000 Subject: [pypy-issue] Issue #2530: segfault with ThreadPool, pandas (pypy/pypy) Message-ID: <20170405192950.34389.69261@celery-worker-107.ash1.bb-inf.net> New issue 2530: segfault with ThreadPool, pandas https://bitbucket.org/pypy/pypy/issues/2530/segfault-with-threadpool-pandas mattip: I can install pandas using pip install (it takes a while to build):: ``` #!shell pip install pandas ``` using the 5.7.1 release on Ubuntu 16.04, I get a segfault when running this code (distilled from a pandas test). If I remove the ``from __future__ ...`` the segfault disappears (???) ``` #!python from __future__ import division from multiprocessing.pool import ThreadPool from pandas import read_csv, read_table from pandas.compat import BytesIO, range import pandas.util.testing as tm class TestMultithreadTests(object): engine = 'python' def read_csv(self, *args): ret = read_csv(*args, engine='python') return ret def test_multithread_stringio_read_csv(self): # see gh-11786 max_row_range = 10000 num_files = 100 bytes_to_df = [ '\n'.join( ['%d,%d,%d' % (i, i, i) for i in range(max_row_range)] ).encode() for j in range(num_files)] files = [BytesIO(b) for b in bytes_to_df] # read all files in many threads pool = ThreadPool(8) results = pool.map(self.read_csv, files) first_result = results[0] for result in results: tm.assert_frame_equal(first_result, result) if __name__ == '__main__': t = TestMultithreadTests() t.test_multithread_stringio_read_csv() ``` From issues-reply at bitbucket.org Thu Apr 6 09:54:11 2017 From: issues-reply at bitbucket.org (Serge G) Date: Thu, 06 Apr 2017 13:54:11 -0000 Subject: [pypy-issue] Issue #2531: parallel requests in threads: segmentation fault (pypy/pypy) Message-ID: <20170406135411.24729.53769@celery-worker-106.ash1.bb-inf.net> New issue 2531: parallel requests in threads: segmentation fault https://bitbucket.org/pypy/pypy/issues/2531/parallel-requests-in-threads-segmentation Serge G: I use [`concurrent.futures.ThreadPoolExecutor`](https://docs.python.org/3/library/concurrent.futures.html) trying send post requests with [`requests`](http://docs.python-requests.org/en/master/) library. When there is only worker, everything works good. Also everything is ok with cpython. But when I try run script with pypy and set 2 and more workers, I get **Segmentation fault** shortly after script starting. `Python 2.7.13 (fa3249d55d15b9829e1be69cdf45b5a44cec902d, Mar 21 2017, 11:06:49)` `[PyPy 5.7.0 with GCC 4.8.3 20140911 (Red Hat 4.8.3-9)` Probably this is known limitation? I also unable run concurrent requests via eventlet library (receiving *ChunkedEncodingError Connection broken: Bad file descriptor*). From issues-reply at bitbucket.org Thu Apr 6 15:09:51 2017 From: issues-reply at bitbucket.org (Jason Madden) Date: Thu, 06 Apr 2017 19:09:51 -0000 Subject: [pypy-issue] Issue #2532: PyPy3: AttributeError: 'Frame' object has no attribute 'clear' (pypy/pypy) Message-ID: <20170406190951.22501.30702@celery-worker-107.ash1.bb-inf.net> New issue 2532: PyPy3: AttributeError: 'Frame' object has no attribute 'clear' https://bitbucket.org/pypy/pypy/issues/2532/pypy3-attributeerror-frame-object-has-no Jason Madden: Running PyPy3-3.5-5.7.1-beta from pyenv on Ubuntu 14.04 (Travis CI) for the gevent unit tests. When there is code that uses `TestCase.assertRaises`, the following stack trace may be raised (https://travis-ci.org/gevent/gevent/jobs/219394025#L456): ``` File "test__event.py", line 146, in test_set_exception self.assertRaises(greentest.ExpectedException, s1.get) File "/home/travis/.runtimes/versions/pypy3.5_571/lib-python/3/unittest/case.py", line 728, in assertRaises return context.handle('assertRaises', args, kwargs) File "/home/travis/.runtimes/versions/pypy3.5_571/lib-python/3/unittest/case.py", line 177, in handle callable_obj(*args, **kwargs) File "/home/travis/.runtimes/versions/pypy3.5_571/lib-python/3/unittest/case.py", line 201, in __exit__ traceback.clear_frames(tb) File "/home/travis/.runtimes/versions/pypy3.5_571/lib-python/3/traceback.py", line 216, in clear_frames tb.tb_frame.clear() AttributeError: 'Frame' object has no attribute 'clear' ``` The [docs](https://docs.python.org/3/library/traceback.html#traceback.clear_frames) indicated that `clear_frames` was added in 3.4 and the call from unittest was added in [issue 9815](http://bugs.python.org/issue9815) slightly later. (Apologies if this is a known issue, if so I didn't find it anywhere.) From issues-reply at bitbucket.org Fri Apr 7 16:51:15 2017 From: issues-reply at bitbucket.org (rowillia) Date: Fri, 07 Apr 2017 20:51:15 -0000 Subject: [pypy-issue] Issue #2533: Error (pypy/pypy) Message-ID: <20170407205115.20240.79803@celery-worker-108.ash1.bb-inf.net> New issue 2533: Error https://bitbucket.org/pypy/pypy/issues/2533/error rowillia: Minimal repro: Works in CPython, fails in PyPy - ```python # requires rtree==0.8.3 from rtree import index def generator(): yield (0, (0.0, 0.0, 1.0, 1.0), {'id': '1', 'polygon': 'hello'}) idx = index.Index(generator()) ``` Exception in PyPy: ``` File "/usr/lib/pypy/lib_pypy/_ctypes/function.py", line 280, in f return to_call(*args) File "/usr/local/lib/service_venv_pypy/site-packages/rtree/index.py", line 713, in py_next_item p_mins[0] = ctypes.cast(mins, ctypes.POINTER(ctypes.c_double)) File "/usr/lib/pypy/lib_pypy/_ctypes/pointer.py", line 116, in __setitem__ store_reference(self, index, cobj._objects) File "/usr/lib/pypy/lib_pypy/_ctypes/basics.py", line 23, in store_reference while '_index' in where.__dict__: AttributeError: 'NoneType' object has no attribute '__dict__' Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/service_venv_pypy/site-packages/rtree/index.py", line 264, in __init__ self.handle = self._create_idx_from_stream(stream) File "/usr/local/lib/service_venv_pypy/site-packages/rtree/index.py", line 728, in _create_idx_from_stream return IndexStreamHandle(self.properties.handle, stream) File "/usr/local/lib/service_venv_pypy/site-packages/rtree/index.py", line 854, in __init__ self._ptr = self._create(*args, **kwargs) File "/usr/lib/pypy/lib_pypy/_ctypes/function.py", line 720, in __call__ return CFuncPtr.__call__(self, *args) File "/usr/lib/pypy/lib_pypy/_ctypes/function.py", line 354, in __call__ result, forced = self._do_errcheck(result, errcheckargs) File "/usr/lib/pypy/lib_pypy/_ctypes/function.py", line 398, in _do_errcheck v = self._errcheck_(result, self, tuple(args)) File "/usr/local/lib/service_venv_pypy/site-packages/rtree/core.py", line 28, in check_void raise RTreeError(msg) RTreeError: Error in "Index_CreateWithStream": IllegalArgumentException: Region::combineRegion: Region has different number of dimensions. ``` RTree has an issue open leading me to believe this is the real exception: ``` File "/usr/lib/pypy/lib_pypy/_ctypes/function.py", line 280, in f return to_call(*args) File "/usr/local/lib/service_venv_pypy/site-packages/rtree/index.py", line 713, in py_next_item p_mins[0] = ctypes.cast(mins, ctypes.POINTER(ctypes.c_double)) File "/usr/lib/pypy/lib_pypy/_ctypes/pointer.py", line 116, in __setitem__ store_reference(self, index, cobj._objects) File "/usr/lib/pypy/lib_pypy/_ctypes/basics.py", line 23, in store_reference while '_index' in where.__dict__: AttributeError: 'NoneType' object has no attribute '__dict__' ``` Here is the snipped of code that's failing: https://github.com/Toblerity/rtree/blob/master/rtree/index.py#L713 ```python darray = ctypes.c_double * dimension mins = darray() maxs = darray() .... for i in range(dimension): mins[i] = coordinates[i*2] maxs[i] = coordinates[(i*2)+1] p_mins[0] = ctypes.cast(mins, ctypes.POINTER(ctypes.c_double)) # Fails in PyPy, not CPython ``` Version Info: ``` $ python -V Python 2.7.12 (5.6.0+dfsg-0~ppa2~ubuntu14.04, Nov 11 2016, 17:08:28) [PyPy 5.6.0 with GCC 4.8.4] ``` From issues-reply at bitbucket.org Sat Apr 8 01:45:48 2017 From: issues-reply at bitbucket.org (Tristan Seligmann) Date: Sat, 08 Apr 2017 05:45:48 -0000 Subject: [pypy-issue] Issue #2534: JIT crash (pypy/pypy) Message-ID: <20170408054548.38274.59976@celery-worker-101.ash1.bb-inf.net> New issue 2534: JIT crash https://bitbucket.org/pypy/pypy/issues/2534/jit-crash Tristan Seligmann: Already reported this on IRC (and Armin Rigo looked into it some), but filing this to keep better track. The crash: ``` RPython traceback: File "rpython_jit_metainterp_11.c", line 16475, in send_loop_to_backend File "rpython_jit_backend_x86.c", line 1327, in Assembler386_assemble_loop File "rpython_jit_backend_x86.c", line 4220, in RegAlloc_prepare_loop File "rpython_jit_backend_x86.c", line 7455, in RegAlloc__prepare File "rpython_jit_backend_llsupport.c", line 17062, in compute_vars_longevity Fatal RPython error: AssertionError Aborted (core dumped) ``` Last part of the JIT log: https://s3.amazonaws.com/bucket.mithrandi.net/log-trimmed.xz Happens with PyPy 5.7.1 and not with PyPy 5.6.0. From issues-reply at bitbucket.org Sun Apr 9 06:04:13 2017 From: issues-reply at bitbucket.org (David Naylor) Date: Sun, 09 Apr 2017 10:04:13 -0000 Subject: [pypy-issue] Issue #2535: [patch] fix compilation of CFFI modules when GCC isn't installed (pypy/pypy) Message-ID: <20170409100413.7906.5701@celery-worker-105.ash1.bb-inf.net> New issue 2535: [patch] fix compilation of CFFI modules when GCC isn't installed https://bitbucket.org/pypy/pypy/issues/2535/patch-fix-compilation-of-cffi-modules-when David Naylor: On FreeBSD 11+ GCC isn't installed by default, instead relying on Clang. However, regardless of the compiler used there is usually a way to reference the default compiler (namely, using the 'cc' command). The attached patch changes sysconfig_pypy.py to prefer using the generic name 'cc' and 'c++' instead of 'gcc' and 'g++', respectively. From issues-reply at bitbucket.org Sun Apr 9 06:11:23 2017 From: issues-reply at bitbucket.org (David Naylor) Date: Sun, 09 Apr 2017 10:11:23 -0000 Subject: [pypy-issue] Issue #2536: [patch] bsdtar does allow of overriding of user/group (pypy/pypy) Message-ID: <20170409101123.39785.79153@celery-worker-101.ash1.bb-inf.net> New issue 2536: [patch] bsdtar does allow of overriding of user/group https://bitbucket.org/pypy/pypy/issues/2536/patch-bsdtar-does-allow-of-overriding-of David Naylor: The attached patch creates a specific invocation of tar that sets the user/group appropriately for FreeBSD From issues-reply at bitbucket.org Mon Apr 10 09:59:40 2017 From: issues-reply at bitbucket.org (Serge G) Date: Mon, 10 Apr 2017 13:59:40 -0000 Subject: [pypy-issue] Issue #2537: erequests (requests with eventlet): bad file descriptor / segmentation fault (pypy/pypy) Message-ID: <20170410135940.40251.65331@celery-worker-107.ash1.bb-inf.net> New issue 2537: erequests (requests with eventlet): bad file descriptor / segmentation fault https://bitbucket.org/pypy/pypy/issues/2537/erequests-requests-with-eventlet-bad-file Serge G: Using [erequests](https://github.com/saghul/erequests) library causes either segmentation fault or exceptions like following: ``` Traceback (most recent call last): File "/home/hadoop/stats/experiments/to_report_pypy_threading_actually.py", line 104, in main() File "/home/hadoop/stats/experiments/to_report_pypy_threading_actually.py", line 100, in main read_events_parallel_threads() File "/home/hadoop/stats/experiments/to_report_pypy_threading_actually.py", line 74, in read_events_parallel_threads for res in results: File "/home/hadoop/pypy2-v5.7.0-src/site-packages/concurrent/futures/_base.py", line 581, in result_iterator yield future.result() File "/home/hadoop/pypy2-v5.7.0-src/site-packages/concurrent/futures/_base.py", line 405, in result return self.__get_result() File "/home/hadoop/pypy2-v5.7.0-src/site-packages/concurrent/futures/thread.py", line 55, in run result = self.fn(*self.args, **self.kwargs) File "/home/hadoop/stats/experiments/to_report_pypy_threading_actually.py", line 63, in _post_helper return requests.post(*arg_d['args'], **arg_d['kwargs']) File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/api.py", line 110, in post return request('post', url, data=data, json=json, **kwargs) File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/api.py", line 56, in request return session.request(method=method, url=url, **kwargs) File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/sessions.py", line 488, in request resp = self.send(prep, **send_kwargs) File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/sessions.py", line 641, in send r.content File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/models.py", line 797, in content self._content = bytes().join(self.iter_content(CONTENT_CHUNK_SIZE)) or bytes() File "/home/hadoop/pypy2-v5.7.0-src/site-packages/requests/models.py", line 722, in generate raise ChunkedEncodingError(e) ChunkedEncodingError: ("Connection broken: error(9, 'Bad file descriptor')", error(9, 'Bad file descriptor')) ``` Also this happens if just import library once and then use usual standard [`requests`](http://docs.python-requests.org/en/master/) library. ``` Python 2.7.13 (fa3249d55d15b9829e1be69cdf45b5a44cec902d, Mar 21 2017, 11:06:49) [PyPy 5.7.0 with GCC 4.8.3 20140911 (Red Hat 4.8.3-9) ``` From issues-reply at bitbucket.org Wed Apr 12 15:49:55 2017 From: issues-reply at bitbucket.org (Dan Villiom Podlaski Christiansen) Date: Wed, 12 Apr 2017 19:49:55 -0000 Subject: [pypy-issue] Issue #2538: _ssl_build.py fails on macOS with the py3.5 (pypy/pypy) Message-ID: <20170412194955.31089.26381@celery-worker-108.ash1.bb-inf.net> New issue 2538: _ssl_build.py fails on macOS with the py3.5 https://bitbucket.org/pypy/pypy/issues/2538/_ssl_buildpy-fails-on-macos-with-the-py35 Dan Villiom Podlaski Christiansen: `lib_pypy/_ssl_build.py` fails on macOS with undefined symbols such as `_PyPyErr_NoMemory`. The patch below fixes it, and I was able to translate and package a pypy3 VM on my Mac ??is it ok to push? ``` #!diff # HG changeset patch # User Dan Villiom Podlaski Christiansen # Date 1492025965 -7200 # Wed Apr 12 21:39:25 2017 +0200 # Branch py3.5 # Node ID cfaf8a2a21a456a3d6ce8dcc08b484a25ac06e5c # Parent a25d530e67738b1638b694325509abc73c55ff9b fix building SSL on macOS The Darwin linker has rather different semantics from most other linkers, and tends to require that dynamic libraries define all their symbols. As a result, the ssl module fails to link with undefined references to PyPy-internal symbols; we fix this by marking the library as embedded, so the library links against libpypy3-c.dylib. diff --git a/lib_pypy/_ssl_build.py b/lib_pypy/_ssl_build.py --- a/lib_pypy/_ssl_build.py +++ b/lib_pypy/_ssl_build.py @@ -49,5 +49,9 @@ ffi = build_ffi_for_binding( extra_link_args=extra_link_args(compiler_type()), ) +if sys.platform == 'darwin': + # link against libpypy library on macOS + ffi._embedding = '' + if __name__ == '__main__': ffi.compile() ``` Responsible: danchr From issues-reply at bitbucket.org Thu Apr 13 04:32:13 2017 From: issues-reply at bitbucket.org (Brecht Machiels) Date: Thu, 13 Apr 2017 08:32:13 -0000 Subject: [pypy-issue] Issue #2539: PyPy3 5.7.1: regression from PyPy3 5.5.0a1 (pypy/pypy) Message-ID: <20170413083213.34519.28439@celery-worker-108.ash1.bb-inf.net> New issue 2539: PyPy3 5.7.1: regression from PyPy3 5.5.0a1 https://bitbucket.org/pypy/pypy/issues/2539/pypy3-571-regression-from-pypy3-550a1 Brecht Machiels: rinohtype crashes on PyPy3 5.7.1. It worked fine on PyPy3 5.5.0a1. This is the traceback: ``` #!python Traceback (most recent call last): File "/tmp/pypy/pypy3-v5.7.1-src/lib-python/3/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/tmp/pypy/pypy3-v5.7.1-src/lib-python/3/runpy.py", line 85, in _run_code exec(code, run_globals) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/tool.py", line 281, in main() File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/tool.py", line 268, in main document.render(input_root) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/document.py", line 446, in render self.backend_document.write(file) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/__init__.py", line 122, in write self.cos_document.write(file) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 540, in write self.catalog.register_indirect(self) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 287, in register_indirect item.register_indirect(document, visited) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 287, in register_indirect item.register_indirect(document, visited) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 287, in register_indirect item.register_indirect(document, visited) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 287, in register_indirect item.register_indirect(document, visited) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 286, in register_indirect for item in self.children(): File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 369, in children for item in self.values(): File "/3/_collections_abc.py", line 696, in __iter__ File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 326, in wrapper return method(obj, key, *args, **kwargs) File "/tmp/pypy/pypy3-v5.7.1-src/site-packages/rinoh/backend/pdf/cos.py", line 351, in __getitem__ return super().__getitem__(key).object KeyError: Name(Font) ``` The KeyError is raised in [cos.py on line 351](https://github.com/brechtm/rinohtype/blob/v0.3.1/src/rinoh/backend/pdf/cos.py#L351). I seem to remember running into a similar problem before with PyPy. Can't remember the details though. From issues-reply at bitbucket.org Thu Apr 20 06:13:19 2017 From: issues-reply at bitbucket.org (Tobias Oberstein) Date: Thu, 20 Apr 2017 10:13:19 -0000 Subject: [pypy-issue] Issue #2540: Missing pypy3/armhf builder (pypy/pypy) Message-ID: <20170420101319.32303.60117@celery-worker-106.ash1.bb-inf.net> New issue 2540: Missing pypy3/armhf builder https://bitbucket.org/pypy/pypy/issues/2540/missing-pypy3-armhf-builder Tobias Oberstein: It would be nice to have ready built tarballs for `pypy3/armhf` at https://bitbucket.org/pypy/pypy/downloads/. In fact, seems like currently only `amd64` is built for pypy3. From issues-reply at bitbucket.org Thu Apr 20 07:48:40 2017 From: issues-reply at bitbucket.org (Mikhail Fedorov) Date: Thu, 20 Apr 2017 11:48:40 -0000 Subject: [pypy-issue] Issue #2541: Old version of openssl and expat are used in pypy (pypy/pypy) Message-ID: <20170420114840.6540.68764@celery-worker-106.ash1.bb-inf.net> New issue 2541: Old version of openssl and expat are used in pypy https://bitbucket.org/pypy/pypy/issues/2541/old-version-of-openssl-and-expat-are-used Mikhail Fedorov: Current version of pypy includes old versions of expat and openssl components. Can you update it to latest expat 2.2.0 and openssl 1.0.1k versions libpypy-c.dll contains expat 2.1.0 Known CVEs in version 2.1.0 CVE-2016-0718 CVE-2016-4472 CVE-2016-5300 CVE-2012-6702 CVE-2015-1283 libpypy-c.dll contains openssl 1.0.1i Known CVEs in version 1.0.1i CVE-2016-EOL CVE-2016-6304 CVE-2016-2183 CVE-2016-6303 CVE-2016-6302 CVE-2016-2182 CVE-2016-2180 CVE-2016-2177 CVE-2016-2178 CVE-2016-2179 CVE-2016-2181 CVE-2016-6306 CVE-2016-2107 CVE-2016-2105 CVE-2016-2106 CVE-2016-2109 CVE-2016-2176 CVE-2016-0800 CVE-2016-0705 CVE-2016-0798 CVE-2016-0797 CVE-2016-0799 CVE-2016-0702 CVE-2015-3197 CVE-2015-3194 CVE-2015-3195 CVE-2015-1793 CVE-2015-3196 CVE-2015-1788 CVE-2015-1789 CVE-2015-1790 CVE-2015-1792 CVE-2015-1791 CVE-2015-0286 CVE-2015-0287 CVE-2015-0289 CVE-2015-0293 CVE-2015-0209 CVE-2015-0288 CVE-2014-3571 CVE-2015-0206 CVE-2014-3569 CVE-2014-3572 CVE-2015-0204 CVE-2015-0205 CVE-2014-8275 CVE-2014-3570 CVE-2014-3513 CVE-2014-3567 CVE-2014-3566 CVE-2014-3568 From issues-reply at bitbucket.org Thu Apr 20 11:07:51 2017 From: issues-reply at bitbucket.org (Timothy Watts) Date: Thu, 20 Apr 2017 15:07:51 -0000 Subject: [pypy-issue] Issue #2542: Not implemented: sandboxing for external function 'opendir' in ubuntu 16.04 (pypy/pypy) Message-ID: <20170420150751.33159.22988@celery-worker-106.ash1.bb-inf.net> New issue 2542: Not implemented: sandboxing for external function 'opendir' in ubuntu 16.04 https://bitbucket.org/pypy/pypy/issues/2542/not-implemented-sandboxing-for-external Timothy Watts: In the process of updating my base image from 14.04 to 16.04 I noticed that the sandbox is not quite working. It works in 14.04. I've been attempting to create a `do_ll_os__ll_os_opendir` function and things like that but I feel like I'm poking in the dark. # ubuntu 16.04 normal pypy ``` [~]>sudo docker run -it ubuntu:16.04 bash root at 934cb20e2062:/# apt-get update; apt-get install pypy pypy.sandbox root at 934cb20e2062:/# pypy <- normal pypy works Python 2.7.10 (5.1.2+dfsg-1~16.04, Jun 16 2016, 17:37:42) [PyPy 5.1.2 with GCC 5.3.1 20160413] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>> import os; os.listdir('/tmp') [] KeyboardInterrupt >>>> ``` pypy.sandbox ``` root at 934cb20e2062:/# pypy-sandbox --tmp=/tmp <-- now in pyp-sandbox 'import site' failed Python 2.7.10 (5.1.2+dfsg-1~16.04, Jun 16 2016, 20:12:38) [PyPy 5.1.2 with GCC 5.3.1 20160413] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>> import os; os.listdir('/tmp') Not implemented: sandboxing for external function 'opendir' Traceback (most recent call last): File "", line 1, in OSError: [Errno 0] Success: '/tmp' >>>> ``` # ubuntu 14.04 (works) ``` root at b14167dcdf5b:/# pypy-sandbox --tmp /tmp 'import site' failed Python 2.7.3 (2.2.1+dfsg-1ubuntu0.3, Sep 30 2015, 17:43:43) [PyPy 2.2.1 with GCC 4.8.4] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>> import os; os.listdir('/tmp') [] >>>> ``` From issues-reply at bitbucket.org Sat Apr 22 15:28:44 2017 From: issues-reply at bitbucket.org (tinche) Date: Sat, 22 Apr 2017 19:28:44 -0000 Subject: [pypy-issue] Issue #2543: Sigsegv from Cython (pypy/pypy) Message-ID: <20170422192844.6122.25062@celery-worker-101.ash1.bb-inf.net> New issue 2543: Sigsegv from Cython https://bitbucket.org/pypy/pypy/issues/2543/sigsegv-from-cython tinche: Hello, I'm working on a feature for the attrs library. As part of that feature I need to wrap the member_descriptor descriptor from ordinary slot classes. In order to speed this up, I'm using Cython. I'm not really sure if this or the Cython mailing list is the right place to ask this, but since I've had better luck here in the past I'm posting this here first :) A quick reproducer: Ubuntu 17.04/amd64, make a PyPy 5.7.1 venv, pip install Cython, download https://gist.github.com/Tinche/678a2f97f656421ab65338ea678df354 and https://gist.github.com/Tinche/111ccd2f46c9ba303b8e441d2e0fcddb. Uncomment the last line in t.py to trigger the crash. This code seems to work on CPython (and it speeds up attribute access a lot there). I'm not even sure doing this on PyPy is worthwhile, but as long as it crashes I can't be sure :) I'll be the first to admit I don't have a lot of experience writing Cython or C, so maybe there's an amateur mistake in there. For example, I tried putting in a few Py_INCREFs to maybe stop PyPy from moving objects around but it doesn't seem to help. Thanks in advance: :) (from https://mail.python.org/pipermail/pypy-dev/2017-April/015124.html) From issues-reply at bitbucket.org Sat Apr 22 18:04:18 2017 From: issues-reply at bitbucket.org (Ben Longbons) Date: Sat, 22 Apr 2017 22:04:18 -0000 Subject: [pypy-issue] Issue #2544: str.casefold is wrong for some codepoints (Cherokee) (pypy/pypy) Message-ID: <20170422220418.13187.32590@celery-worker-105.ash1.bb-inf.net> New issue 2544: str.casefold is wrong for some codepoints (Cherokee) https://bitbucket.org/pypy/pypy/issues/2544/strcasefold-is-wrong-for-some-codepoints Ben Longbons: Under python, '\uab70' correctly casefolds to '\u13a0'. Under pypy, it does not. Curiously, .lower() and .upper() work correctly on pypy. Note that Cherokee casefolds to upper rather than lower, since uppercase were added first and casefolding is stable. From issues-reply at bitbucket.org Mon Apr 24 06:17:30 2017 From: issues-reply at bitbucket.org (Mihnea Saracin) Date: Mon, 24 Apr 2017 10:17:30 -0000 Subject: [pypy-issue] Issue #2545: Segfault using futurist library (pypy/pypy) Message-ID: <20170424101730.23204.35039@celery-worker-108.ash1.bb-inf.net> New issue 2545: Segfault using futurist library https://bitbucket.org/pypy/pypy/issues/2545/segfault-using-futurist-library Mihnea Saracin: Hello, I`ve been using futurist library (using pip install futurist) and got the following segfault. It uses threads and sometimes it crashes. To collect the trace I have a pypy compiled with --lldebug ?withmod-faulthandler ?withmod-_vmprof. My OS is Linux Mint 18.1 Serena with kernel 4.4.0-53 and GCC 5.4.0. I've banged my head over this issue for some days now, and managed to reduce it to a small Python script (attached to this issue), but I don't know how to continue. Do you have any ideas on how can I approach this? Thank you, Mihnea ``` #!gdb Program terminated with signal SIGABRT, Aborted. #0 0x00007ffff2d27428 in __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. [Current thread is 1 (Thread 0x7fffeefab700 (LWP 8816))] (gdb) bt #0 0x00007ffff2d27428 in __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 #1 0x00007ffff2d2902a in __GI_abort () at abort.c:89 #2 0x00007ffff60f4ae0 in RPyAssertFailed (filename=filename at entry=0x7ffff6280951 "rpython_memory_gc.c", lineno=lineno at entry=19121, function=function at entry=0x7ffff6281880 <__FUNCTION__.403983> "pypy_g_IncrementalMiniMarkGC_visit", msg=msg at entry=0x7ffff627f840 "pinned object in 'objects_to_trace'") at support.c:20 #3 0x00007ffff5ccb267 in pypy_g_IncrementalMiniMarkGC_visit (l_obj_79068=0x7fffe57e14e8, l_self_25111=0x7ffff69aee20 ) at rpython_memory_gc.c:19121 #4 pypy_g_IncrementalMiniMarkGC_visit_all_objects_step (l_self_25090=l_self_25090 at entry=0x7ffff69aee20 , l_size_to_track_0=l_size_to_track_0 at entry=94371840) at rpython_memory_gc.c:16569 #5 0x00007ffff5cd2a39 in pypy_g_IncrementalMiniMarkGC_major_collection_step (l_self_25077=l_self_25077 at entry=0x7ffff69aee20 , l_reserving_size_3=l_reserving_size_3 at entry=0) at rpython_memory_gc.c:15376 #6 0x00007ffff5cd391a in pypy_g_IncrementalMiniMarkGC_minor_collection_with_majo (l_self_25060=l_self_25060 at entry=0x7ffff69aee20 , l_extrasize_1=l_extrasize_1 at entry=0) at rpython_memory_gc.c:12227 #7 0x00007ffff5cd7c22 in pypy_g_IncrementalMiniMarkGC_minor_collection_with_majo (l_extrasize_1=0, l_self_25060=0x7ffff69aee20 ) at rpython_memory_gc.c:7319 #8 pypy_g_IncrementalMiniMarkGC_collect_and_reserve (l_self_25019=0x7ffff69aee20 , l_totalsize_25634=392) at rpython_memory_gc.c:7312 #9 0x00007ffff5cda3f4 in pypy_g_IncrementalMiniMarkGC_malloc_fixedsize (l_self_25029=0x7ffff69aee20 , l_typeid_22=, l_size_87=, l_needs_finalizer_1=, l_is_finalizer_light_2=, l_contains_weakptr_2=) at rpython_memory_gc.c:8441 #10 0x00007fffef6b9bf7 in ?? () #11 0x0000000000000000 in ?? () ``` From issues-reply at bitbucket.org Tue Apr 25 08:25:59 2017 From: issues-reply at bitbucket.org (Thomas Markovich) Date: Tue, 25 Apr 2017 12:25:59 -0000 Subject: [pypy-issue] Issue #2546: PyPy segfault in Python Extensions Module (pypy/pypy) Message-ID: <20170425122559.19266.94902@celery-worker-101.ash1.bb-inf.net> New issue 2546: PyPy segfault in Python Extensions Module https://bitbucket.org/pypy/pypy/issues/2546/pypy-segfault-in-python-extensions-module Thomas Markovich: Hi, I get a segfault in pypy while trying to run the tests for the lru-dict module (https://github.com/amitdev/lru-dict). This is all that is required to reproduce: ``` $ git clone https://github.com/amitdev/lru-dict.git $ pypy setup develop $ pypy test/test_lru.py [1] 47345 segmentation fault pypy test/test_lru.py $ pypy --version Python 2.7.13 (1aa2d8e03cdfab54b7121e93fda7e98ea88a30bf, Apr 03 2017, 21:27:31) [PyPy 5.7.1 with GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] ``` Compare this with cPython: ``` $ python setup.py develop $ python test/test_lru.py ...................... ---------------------------------------------------------------------- Ran 22 tests in 0.051s OK $ python --version Python 2.7.13 ``` From issues-reply at bitbucket.org Sat Apr 29 17:01:50 2017 From: issues-reply at bitbucket.org (Nathaniel Smith) Date: Sat, 29 Apr 2017 21:01:50 -0000 Subject: [pypy-issue] Issue #2547: ssl.SSLObject.server_side is missing in py35 branch (pypy/pypy) Message-ID: <20170429210150.12098.62045@celery-worker-101.ash1.bb-inf.net> New issue 2547: ssl.SSLObject.server_side is missing in py35 branch https://bitbucket.org/pypy/pypy/issues/2547/sslsslobjectserver_side-is-missing-in-py35 Nathaniel Smith: It shows up in `dir`, but if you try to access it you get an `AttributeError`: ``` >>>> import ssl >>>> ctx = ssl.create_default_context() >>>> so = ctx.wrap_bio(ssl.MemoryBIO(), ssl.MemoryBIO()) >>>> "server_side" in dir(so) True >>>> so.server_side Traceback (most recent call last): File "", line 1, in File "/home/njs/pypy/pypy3-v5.7.0-linux64/lib-python/3/ssl.py", line 568, in server_side return self._sslobj.server_side AttributeError: '_SSLSocket' object has no attribute 'server_side' ``` (That's with 5.7.0, but my [CI system says](https://travis-ci.org/python-trio/trio/jobs/227139948) this is also broken on the latest nightly.) >From a quick check against [the 3.5 docs](https://docs.python.org/3.5/library/ssl.html#ssl.SSLObject) it looks like this is the only `SSLObject` attribute that has this problem. Weirdly, `ssl.SSLSocket.server_side` seems to work fine; it's just `ssl.SSLObject` that's broken. From issues-reply at bitbucket.org Sat Apr 29 20:14:42 2017 From: issues-reply at bitbucket.org (strombrg) Date: Sun, 30 Apr 2017 00:14:42 -0000 Subject: [pypy-issue] Issue #2548: pypy3 returns inappropriate errno for utime of a nonexistent file (pypy/pypy) Message-ID: <20170430001442.22615.39678@celery-worker-105.ash1.bb-inf.net> New issue 2548: pypy3 returns inappropriate errno for utime of a nonexistent file https://bitbucket.org/pypy/pypy/issues/2548/pypy3-returns-inappropriate-errno-for strombrg: For the following test script, the 2 pypy3's return errno 25. They probably should return errno 2, like the others tested. Thanks much for pypy! #!/usr/local/pypy3-5.7.1/bin/pypy3 #!/usr/local/pypy3-5.5.0/bin/pypy3 #!/usr/local/cpython-2.7/bin/python #!/usr/local/pypy-5.3.1/bin/pypy #!/usr/local/jython-2.7.0/bin/jython #!/usr/local/cpython-3.6/bin/python3 import os import sys def main(): try: os.utime('nonexistent', None) # except (OSError, IOError): except OSError: dummy, errno, dummy = sys.exc_info() print(errno) print('hi') main()