Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tensorflow 2.14.0 published pypi metadata is missing platform specific dependencies installed via pip #62000

Open
dre-hh opened this issue Sep 28, 2023 · 3 comments
Assignees
Labels
stat:awaiting tensorflower Status - Awaiting response from tensorflower subtype:macOS macOS Build/Installation issues TF2.14 For issues related to Tensorflow 2.14.x type:build/install Build and install issues

Comments

@dre-hh
Copy link

dre-hh commented Sep 28, 2023

Issue type

Bug

Have you reproduced the bug with TensorFlow Nightly?

Yes

Source

binary

TensorFlow version

2.14.0

Custom code

No

OS platform and distribution

macOS-13.3-arm64-arm-64bit

Mobile device

No response

Python version

3.11

Bazel version

No response

GCC/compiler version

No response

CUDA/cuDNN version

No response

GPU model and memory

No response

Current behavior?

Tensorflow 2.14.0 still has wrong metadata published to pypi compared to what is actually installed
It does not list following platform specific dependencies.:

Requires-Dist: tensorflow-macos (==2.14.0) ; platform_system == "Darwin" and platform_machine == "arm64"
Requires-Dist: tensorflow-cpu-aws (==2.14.0) ; platform_system == "Linux" and (platform_machine == "arm64" or platform_machine == "aarch64")
Requires-Dist: tensorflow-intel (==2.14.0) ; platform_system == "Windows"

This leads to poetry not being able to install tensorflow properly.
See #61477

Standalone code to reproduce the issue

pip install tensorflow==2.14.0
cd python3.11/site-packages
cat tensorflow-2.14.0.dist-info/METADA

Requires-Dist: tensorflow-macos (==2.14.0) ; platform_system == "Darwin" and platform_machine == "arm64"
Requires-Dist: tensorflow-cpu-aws (==2.14.0) ; platform_system == "Linux" and (platform_machine == "arm64" or platform_machine == "aarch64")
Requires-Dist: tensorflow-intel (==2.14.0) ; platform_system == "Windows"

vs

curl -s https://pypi.org/pypi/tensorflow/2.14.0/json | jq '.info.requires_dist'

[
  "opt-einsum (>=2.3.2)",
  "absl-py (>=1.0.0)",
  "astunparse (>=1.6.0)",
  "flatbuffers (>=23.5.26)",
  "gast (!=0.5.0,!=0.5.1,!=0.5.2,>=0.2.1)",
  "google-pasta (>=0.1.1)",
  "h5py (>=2.9.0)",
  "libclang (>=13.0.0)",
  "ml-dtypes (==0.2.0)",
  "numpy (>=1.23.5)",
  "packaging",
  "protobuf (!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.20.3)",
  "setuptools",
  "six (>=1.12.0)",
  "termcolor (>=1.1.0)",
  "typing-extensions (>=3.6.6)",
  "wrapt (<1.15,>=1.11.0)",
  "tensorflow-io-gcs-filesystem (>=0.23.1)",
  "grpcio (<2.0,>=1.24.3)",
  "tensorboard (<2.15,>=2.14)",
  "tensorflow-estimator (<2.15,>=2.14.0)",
  "keras (<2.15,>=2.14.0)",
  "nvidia-cuda-runtime-cu11 (==11.8.89) ; extra == 'and-cuda'",
  "nvidia-cublas-cu11 (==11.11.3.6) ; extra == 'and-cuda'",
  "nvidia-cufft-cu11 (==10.9.0.58) ; extra == 'and-cuda'",
  "nvidia-cudnn-cu11 (==8.7.0.84) ; extra == 'and-cuda'",
  "nvidia-curand-cu11 (==10.3.0.86) ; extra == 'and-cuda'",
  "nvidia-cusolver-cu11 (==11.4.1.48) ; extra == 'and-cuda'",
  "nvidia-cusparse-cu11 (==11.7.5.86) ; extra == 'and-cuda'",
  "nvidia-nccl-cu11 (==2.16.5) ; extra == 'and-cuda'",
  "nvidia-cuda-cupti-cu11 (==11.8.87) ; extra == 'and-cuda'",
  "nvidia-cuda-nvcc-cu11 (==11.8.89) ; extra == 'and-cuda'",
  "tensorrt (==8.5.3.1) ; extra == 'and-cuda'"
]


### Relevant log output

_No response_
@google-ml-butler google-ml-butler bot added the type:bug Bug label Sep 28, 2023
@dre-hh dre-hh changed the title ensorflow 2.14.0 still has wrong metadata published to pypi compared to what is actually installed Tensorflow 2.14.0 has wrong metadata published to pypi compared to what is actually installed Sep 28, 2023
@dre-hh dre-hh changed the title Tensorflow 2.14.0 has wrong metadata published to pypi compared to what is actually installed Tensorflow 2.14.0 published pypi metadata is missing platform specific dependencies installed via pip Sep 28, 2023
@sushreebarsa sushreebarsa added type:build/install Build and install issues subtype:macOS macOS Build/Installation issues TF2.14 For issues related to Tensorflow 2.14.x and removed type:bug Bug labels Oct 3, 2023
@sachinprasadhs sachinprasadhs added the stat:awaiting tensorflower Status - Awaiting response from tensorflower label Oct 5, 2023
@sachinprasadhs
Copy link
Contributor

cc: @kulinseth , @learning-to-play

@thorbenk
Copy link

thorbenk commented Feb 9, 2024

When I run

poetry add "tensorflow==2.15.0.post1[and-cuda]"

I still get

Updating dependencies
Resolving dependencies... (0.6s)

Because tensorflow (2.15.0.post1) depends on tensorflow-intel (2.15.0.post1) which doesn't match any versions, tensorflow is forbidden.
So, because tf depends on tensorflow (2.15.0.post1), version solving failed.

I tried on tf-nightly as well, but there I already run into a different (more fundamental?) issue: #62928

@fuchspa
Copy link

fuchspa commented Feb 9, 2024

Hi there, on my Windows 10 machine I get the same error when trying to use the CPU version.

poetry add tensorflow==2.15.0.post1

yields

Because tensorflow (2.15.0.post1) depends on tensorflow-intel (2.15.0.post1) which doesn't match any versions, tensorflow is forbidden.
So, because tf depends on tensorflow (2.15.0.post1), version solving failed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stat:awaiting tensorflower Status - Awaiting response from tensorflower subtype:macOS macOS Build/Installation issues TF2.14 For issues related to Tensorflow 2.14.x type:build/install Build and install issues
Projects
None yet
Development

No branches or pull requests

5 participants