tensorflow / io

Dataset, streaming, and file system extensions maintained by TensorFlow SIG-IO
Apache License 2.0
701 stars 281 forks source link

Pip fails to install tensorflow-io-gcs-filesystem from master on Python 3.11 #1741

Open vient opened 1 year ago

vient commented 1 year ago

setup.py by default generates info for package tensorflow-io which depends on tensorflow-io-gcs-filesystem. It seems there is no way to say pip to pass additional parameters to egg_info command, --build-option and --install-option do not help in this case. Looks like the best course of action would be to split tensorflow-io-gcs-filesystem setup.py to some other place.

$ python -m pip install git+https://github.com/tensorflow/io.git#egg=tensorflow-io-gcs-filesystem
Defaulting to user installation because normal site-packages is not writeable
Collecting tensorflow-io-gcs-filesystem
  Cloning https://github.com/tensorflow/io.git to /tmp/pip-install-yi70ga20/tensorflow-io-gcs-filesystem_7436cd7d9a96460891ffb564829554da
  Running command git clone --filter=blob:none --quiet https://github.com/tensorflow/io.git /tmp/pip-install-yi70ga20/tensorflow-io-gcs-filesystem_7436cd7d9a96460891ffb564829554da
  Resolved https://github.com/tensorflow/io.git to commit 416bae51bc5bf5caf38f995983d4f277faa1dd9a
  Preparing metadata (setup.py) ... done
  WARNING: Generating metadata for package tensorflow-io-gcs-filesystem produced metadata for project name tensorflow-io. Fix your #egg=tensorflow-io-gcs-filesystem fragments.
Discarding git+https://github.com/tensorflow/io.git#egg=tensorflow-io-gcs-filesystem: Requested tensorflow-io from git+https://github.com/tensorflow/io.git#egg=tensorflow-io-gcs-filesystem has inconsistent name: expected 'tensorflow-io-gcs-filesystem', but metadata has 'tensorflow-io'
ERROR: Ignored the following versions that require a different python version: 0.28.0 Requires-Python >=3.7, <3.11
ERROR: Could not find a version that satisfies the requirement tensorflow-io-gcs-filesystem (unavailable) (from versions: none)
ERROR: No matching distribution found for tensorflow-io-gcs-filesystem (unavailable)
vient commented 1 year ago

Well, another solution would be to upload fixed 0.28.0 packages for 3.11 😃

$ python -m pip install tensorflow-io-gcs-filesystem
Defaulting to user installation because normal site-packages is not writeable
ERROR: Ignored the following versions that require a different python version: 0.28.0 Requires-Python >=3.7, <3.11
ERROR: Could not find a version that satisfies the requirement tensorflow-io-gcs-filesystem (from versions: none)
ERROR: No matching distribution found for tensorflow-io-gcs-filesystem
magahernandez commented 1 year ago

I have a the same dependencies error but trying to use poetry update with Python 3.11.1

 Because no versions of tensorflow-io-gcs-filesystem match >0.23.1,<0.24.0 || >0.24.0,<0.25.0 || >0.25.0,<0.26.0 || >0.26.0,<0.27.0 || >0.27.0,<0.28.0 || >0.28.0
   and tensorflow-io-gcs-filesystem (0.23.1) requires Python >=3.7, <3.11, tensorflow-io-gcs-filesystem is forbidden.
  And because tensorflow-io-gcs-filesystem (0.24.0) requires Python >=3.7, <3.11, tensorflow-io-gcs-filesystem is forbidden.
  And because tensorflow-io-gcs-filesystem (0.25.0) requires Python >=3.7, <3.11
   and tensorflow-io-gcs-filesystem (0.26.0) requires Python >=3.7, <3.11, tensorflow-io-gcs-filesystem is forbidden.
  And because tensorflow-io-gcs-filesystem (0.27.0) requires Python >=3.7, <3.11
   and tensorflow-io-gcs-filesystem (0.28.0) requires Python >=3.7, <3.11, tensorflow-io-gcs-filesystem is forbidden.
  So, because my-project depends on tensorflow (2.11.0) which depends on tensorflow-io-gcs-filesystem (>=0.23.1), version solving failed.