Ananto30/zero

Question: python version constraints

Closed this issue ยท 11 comments

GitHK commented

I see the package is currently constraint to python `>=3.9.
Being a library, I'd expect it not to have such a high requirement for python.
You do not have pinned dependencies which is great!

Dependencies python pins:

Any change it can be lowered to >=3.6? Might a PR to solve this help? I'd also add a few more git actions to build and test on separate versions of python when pushing.

Thanks for the help.

Thanks a lot @GitHK for your question and interest! The thing is, zero supports the async keyword out of the box. So usually the async matured through version 3.4 to 3.7. So 3.7 is usually the last version we can support technically. And also as you mentioned we are dependant on zeromq library that requires 3.6 or +.

So I am not sure enough do we need to go lower than 3.6. Please let me know your thoughts.

(Sorry for the late reply, was on vacation.)

GitHK commented

Ops, I was meaning to say: "have the same constraint as zeromq, meaning >=3.6 (bigger equal)".
I think this one will be useful for most users out there.

Oh my bad. I think we can! But may be 3.7 as the async functionality got matured enough on 3.7. What do you think?

GitHK commented

If something in particular from 3.7 was used, then limiting it to 3.7 is reasonable. But if possible I'd put it to 3.6 (I would not lower it to 3.6 if changes are required).

Got you! Thanks a lot for your suggestion and concern ๐Ÿ™ I will test and update that.

As we are allowing users to use dataclasses, the minimum version is 3.7 ๐Ÿ˜ž

Also, get_origin of typing was added on 3.8 ๐Ÿ˜ž https://docs.python.org/3/library/typing.html#typing.get_origin

GitHK commented

As we are allowing users to use dataclasses, the minimum version is 3.7 ๐Ÿ˜ž

For dataclasses you can use this for support prior to 3.6

GitHK commented

Also, get_origin of typing was added on 3.8 ๐Ÿ˜ž https://docs.python.org/3/library/typing.html#typing.get_origin

With this I am not familiar ๐Ÿ˜ž

So I can not get it to work with Python 3.8 then? ๐Ÿ˜ž

@Vortex93 I think it's possible to use with 3.8
I will try to test today, keep an eye for the related PR ๐Ÿ‘€