j2cli icon indicating copy to clipboard operation
j2cli copied to clipboard

Replace deprecated imp module with importlib

Open hugovk opened this issue 1 year ago • 5 comments

This project uses the imp module which has been deprecated since Python 3.4 and removed in 3.12:

Python 3.12 is set for release on 2023-10-02 and this library is one of the top 5,000 most-downloaded from PyPI.

Please could you upgrade to use importlib? The imp docs have suggestions on what to use to replace each function and constant.

hugovk avatar Apr 29 '23 11:04 hugovk

Unfortunately this code uses imp.load_source which is not part of the imp documented API, so replacing it will be non-trivial.

kpfleming avatar Jul 05 '23 17:07 kpfleming

I just had to upgrade to python 3.12, and can no longer use j2cli. Any updates on this? Time just ran out (for me anyway).

jvilhuber avatar Jul 11 '23 16:07 jvilhuber

If you don't need to use --filters or --tests, you can use the fork at https://github.com/kpfleming/j2cli; it has that functionality removed so that it will be compatible with Python 3.12. Over the next week I'll be re-implementing that functionality in a way that is more well supported and extensible.

kpfleming avatar Jul 11 '23 17:07 kpfleming

It took 2 weeks... but I've now published Jinjanator which resolves this issue by adding a much more flexible and less invasive plugin mechanism. It's being tested against Python 3.12 already.

kpfleming avatar Jul 24 '23 19:07 kpfleming

Hi! This project gets some interest, but sadly, I'm not maintaining it =\

Maintainer wanted! Discussion: Maintainer Wanted

kolypto avatar Feb 10 '24 16:02 kolypto