keisen / tf-keras-vis

Neural network visualization toolkit for tf.keras
https://keisen.github.io/tf-keras-vis-docs/
MIT License
311 stars 45 forks source link

Feature request: Support Python 3.10 #82

Closed bersbersbers closed 2 years ago

bersbersbers commented 2 years ago

Python 3.10 is at version 3.10.2 already, and still pip install tf-keras-vis installs tf-keras-vis==0.1.0 because that is the latest version without indications of minor versions on PyPI. All later versions indicate minor versions, but exclude 3.10.

bersbersbers commented 2 years ago

(I also tried pip install git+https://github.com/keisen/tf-keras-vis, and not even that is working:

ERROR: Package 'tf-keras-vis' requires a different Python: 3.10.0 not in '<3.10,>=3.6'
bersbersbers commented 2 years ago

I noticed some progress towards TF 2.8.0 in https://github.com/keisen/tf-keras-vis/commit/a98538076e07fbf5d2316be82f047eeae51b85d6. Since TF 2.8.0 supports Python 3.10, would it make sense to include Python 3.10 there as well?

keisen commented 2 years ago

Thank you for letting us know that. I'm going to add support for Python 3.10.x.

bersbersbers commented 2 years ago

Thanks, v0.8.1 is very heplful.

I wonder what happens with Python 3.11/TF2.9 in the future. Will there again be a time where the newest TF (pre-)release can be installed and tested (be it nightly or rc) without being able to even install tf-keras-vis?

Looking at the marginal differences between 0.8.0 and 0.8.1 (I have not seen a single functional change), I wonder if a viable way going forward would be to remove the upper version limit (the <3.11 part). In fact, people trying out Python 3.11.0a5 these days will hit the same problem as I did for Python 3.10: pip will serve them tf-keras-vis v0.1.0 which almost surely is not what you want.

I think I would remove <3.11 and consider adding a warning such as the tensorflow-addons guys do it here, basically telling 3.11 users that they are using tf-keras-vis on an untested Python (in this case) version. https://github.com/tensorflow/addons/blob/master/tensorflow_addons/utils/ensure_tf_install.py

A potential benefit for you would be that get feedback from early adopters, helping you to become aware of differences in Python behavior early on.