DataBiosphere / toil

A scalable, efficient, cross-platform (Linux/macOS) and easy-to-use workflow engine in pure Python.
http://toil.ucsc-cgl.org/.
Apache License 2.0
901 stars 240 forks source link

toil partially incompatible with Python 3.13 due to removal of "pipes" from the standard library #5119

Closed mr-c closed 1 month ago

mr-c commented 1 month ago

https://github.com/DataBiosphere/toil/blob/9aeca838cc4ae313ee89fcfa7405740afdbffd0a/src/toil/provisioners/node.py#L282

Maybe try shlex.quote or switching to use subprocess.run at

https://github.com/DataBiosphere/toil/blob/9aeca838cc4ae313ee89fcfa7405740afdbffd0a/src/toil/provisioners/node.py#L285

xref https://bugs.debian.org/1084681

Dear maintainer(s),

Python 3.13 removes a large amount of so called 'dead battery' libraries from the standard library. As such, code that imports these libraries will no longer work in Python 3.13, which is the targeted version for [Debian]Trixie.

The following removed libraries were found in this package:

pipes: src/toil/provisioners/node.py:16

See this link for more details: https://peps.python.org/pep-0594/#deprecated-modules

Cheers,

┆Issue is synchronized with this Jira Story ┆Issue Number: TOIL-1656

stxue1 commented 1 month ago

I think I remember replacing another usage of pipes.quote with shlex.quote as well. IIRC they are (or should be) interexchangeable.