[pypy-dev] Problem with PyPy 5.10 and persistent module (ZODB)

Etienne Robillard tkadm30 at yandex.com
Tue Apr 10 15:08:25 EDT 2018


Hi,

I fixed this issue by patching cffi/verifier.py to create the temporary 
directory if not present.

Regards,

Etienne

--- cffi/verifier.py    2018-04-10 19:04:39.966728201 +0000
+++ /home/erob/ncvs/cffi/cffi/verifier.py       2018-04-10 
18:21:04.999299281 +0000
@@ -63,8 +63,6 @@
                                                k1, k2)
          suffix = _get_so_suffixes()[0]
          self.tmpdir = tmpdir or _caller_dir_pycache()
-        if not os.path.exists(self.tmpdir):
-            os.mkdir(self.tmpdir)
          self.sourcefilename = os.path.join(self.tmpdir, modulename + 
source_extension)
          self.modulefilename = os.path.join(self.tmpdir, modulename + 
suffix)
          self.ext_package = ext_package
Le 2018-04-10 à 06:35, Etienne Robillard a écrit :
> Hello,
>
> I'm trying to run ZODB 5.3.0 with PyPy 5.10 but getting an unexpected 
> error:
>
> erob at projectstreetwise:/home/www/projectstreetwise.org/trunk$ 
> bin/runzeo.sh
> Traceback (most recent call last):
>   File "/usr/local/pypy/bin/runzeo", line 11, in <module>
>     load_entry_point('ZEO==5.1.0', 'console_scripts', 'runzeo')()
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/ZEO-5.1.0-py2.7.egg/ZEO/runzeo.py", 
> line 390, in main
>     options.realize(args)
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/ZEO-5.1.0-py2.7.egg/ZEO/runzeo.py", 
> line 127, in realize
>     ZDOptions.realize(self, *a, **k)
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/zdaemon-4.2.0-py2.7.egg/zdaemon/zdoptions.py", 
> line 259, in realize
>     arg = handler(arg)
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/ZEO-5.1.0-py2.7.egg/ZEO/runzeo.py", 
> line 74, in handle_filename
>     from ZODB.config import FileStorage # That's a FileStorage *opener*!
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/ZODB-5.3.0-py2.7.egg/ZODB/__init__.py", 
> line 17, in <module>
>     from persistent import TimeStamp
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/persistent/__init__.py", 
> line 30, in <module>
>     from persistent.persistence import Persistent
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/persistent/persistence.py", 
> line 30, in <module>
>     from . import ring
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/persistent/ring.py", 
> line 161, in <module>
>     """, include_dirs=[this_dir])
>   File "/usr/local/pypy/pypy2-v5.10.0-linux64/lib_pypy/cffi/api.py", 
> line 444, in verify
>     lib = self.verifier.load_library()
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/lib_pypy/cffi/verifier.py", 
> line 103, in load_library
>     self._write_source()
>   File 
> "/usr/local/pypy/pypy2-v5.10.0-linux64/lib_pypy/cffi/verifier.py", 
> line 192, in _write_source
>     with open(self.sourcefilename, "w") as fp:
> IOError: [Errno 2] No such file or directory: 
> '/usr/local/pypy/pypy2-v5.10.0-linux64/site-packages/persistent/__pycache__/_cffi__g2deb1cb8xa682c2c7.c'
>
>
> Any ideas how to fix this problem?
>
>
> Thank you in advance.
>
>
> Etienne
>
>
> _______________________________________________
> pypy-dev mailing list
> pypy-dev at python.org
> https://mail.python.org/mailman/listinfo/pypy-dev

-- 
Etienne Robillard
tkadm30 at yandex.com
https://www.isotopesoftware.ca/



More information about the pypy-dev mailing list