doit icon indicating copy to clipboard operation
doit copied to clipboard

Pickle error on pypy3.8

Open schettino72 opened this issue 4 years ago • 8 comments

See https://github.com/cloudpipe/cloudpickle/pull/454

schettino72 avatar Dec 08 '21 09:12 schettino72

Whoops. Pinning cloudpickle<2.0 got lost, and now doit does not work with PyPy.

mattip avatar Jul 10 '22 20:07 mattip

Apparently the pin would not help. Any use of cloudpickle does not work with PyPy.

mattip avatar Jul 11 '22 05:07 mattip

I guess it will take a while for upstream to solve this...

So I have made cloudpickle an optional import on code. It is still installed by default unless on pypy. (on version 0.37 - unreleased as of now).

Note some tests related to DBM are also failing on pypy...

schettino72 avatar Jul 23 '22 14:07 schettino72

Thanks. Where can I see the failing tests?

mattip avatar Jul 25 '22 08:07 mattip

@mattip https://github.com/pydoit/doit/runs/7481585043?check_suite_focus=true#step:13:911 Problem might be just with doit test suite. I will check on my next "open source time slot".

schettino72 avatar Jul 25 '22 18:07 schettino72

I fixed the failing tests. PyPy 3.8 & 3.9 are now part of CI again.

I will keep this issue open until cloudpickle works with PyPy again...

schettino72 avatar Jul 31 '22 21:07 schettino72

Thanks!

mattip avatar Jul 31 '22 21:07 mattip

DBM are also failing on pypy...

This module is also unvendored in e.g. pyodide, which makes patching required to get doit to import.

Seems like leaving the cloudpickle dependency optional, and making dbm a lazier import is a fine path: no dependencies are my favorite dependencies for a low-level tool.

bollwyvl avatar May 02 '23 14:05 bollwyvl