pepkit / looper

A job submitter for Portable Encapsulated Projects
http://looper.databio.org
BSD 2-Clause "Simplified" License
20 stars 7 forks source link

Please update code as per python 3.10 #340

Closed svsuresh closed 1 year ago

svsuresh commented 1 year ago

Due to deprecation of certain functions in python 3.10 (compared to python 3.9), looper fails to run when installed via pip.

For eg following code in Python/3.10/lib/python/site-packages/looper/pipeline_interface.py from collections import Mapping causes looper fails to run. I think this code is tested in python 3.9.

In python 3.10, it will be from collections.abc import Mapping as mapping is dropped from collections in collections.

Similar code change for 3.10 is from collections.abc import Iterable from collections import defaultdict for file: Python/3.10/lib/python/site-packages/looper/utils.py

Looper version: looper 1.3.2 OS: Ventura beta MacOS

nsheff commented 1 year ago

Related to #347

vreuter commented 1 year ago

This should be fixed by https://github.com/pepkit/looper/commit/0479c1e043515cc325ea2f94a2ef0b65221067ff

@nsheff the version bound bracketing scheme we discussed before would still be effective in this case, as this would be problematic for 3.10+, not just 3.10 specifically, so I don't think we should change the test matrix just on account of this. What do you think?