QUVA-Lab / e2cnn

E(2)-Equivariant CNNs Library for Pytorch
https://quva-lab.github.io/e2cnn/
Other
597 stars 75 forks source link

Compatibility with python 3.6 #6

Closed arnab39 closed 4 years ago

arnab39 commented 4 years ago

Is there a way I can use this library with python 3.6 as well?

Gabri95 commented 4 years ago

Hi @arnab39

I think the only dependencies on Python 3.7 are annotations. Probably, this statement in particular:

from __future__ import annotations

I think that by removing all type annotations and this import statement from the library, you should be able to use it with Python 3.6.

Unfortunately, I did not think about this when writing the library but I see this can indeed be problematic as many systems do not support the newest versions of Python yet. Still, I would like to keep annotations as I find them quite useful so, for the moment, I do not plan to directly support Python 3.6. If I find a convenient and maintainable solution, I could provide two versions of the code in the future.

If anyone has some suggestions, please let me know. I will keep this issue open.

Thanks for your question Gabriele

Gabri95 commented 4 years ago

In the end, I chose to open another branch here: https://github.com/QUVA-Lab/e2cnn/tree/legacy_py3.6 It is just a copy of the branch master where I removed the

from __future__ import annotations

to remove the dependency from Python 3.7 I will try to keep this branch updated with the main branch, but if there are better solutions, please let me know

Gabriele