-
Notifications
You must be signed in to change notification settings - Fork 76
Closed
Description
Problem Description
After v.1.1.5, a fresh pip install bayesflow
on Apple Silicon (M1) fails due to conflicting dependencies:
ERROR: Cannot install bayesflow==1.1.1, bayesflow==1.1.2, bayesflow==1.1.3, bayesflow==1.1.4 and bayesflow==1.1.5 because these package versions have conflicting dependencies.
The conflict is caused by:
bayesflow 1.1.5 depends on tensorflow-macos<2.16 and >=2.10; sys_platform == "darwin" and platform_machine == "arm64"
bayesflow 1.1.4 depends on tensorflow-macos>=2.10; sys_platform == "darwin" and platform_machine == "arm64"
bayesflow 1.1.3 depends on tensorflow-macos>=2.10; sys_platform == "darwin" and platform_machine == "arm64"
bayesflow 1.1.2 depends on tensorflow-macos>=2.10; sys_platform == "darwin" and platform_machine == "arm64"
bayesflow 1.1.1 depends on tensorflow-macos>=2.10; sys_platform == "darwin" and platform_machine == "arm64"
Underlying Cause
After some initial research, this looks like a consequence of a breaking change in tensorflow 2.16.1: Apple Silicon users shall now use pip install tensorflow
(new) instead of pip install tensorflow-macos
(old).
Source: https://github.com/tensorflow/tensorflow/releases/tag/v2.16.1
BayesFlow's current setup.cfg
still differentiates between OS types to install either tensorflow
or tensorflow-macos
.
Solution
BayesFlow's setup.cfg
needs to be updated. If we decide to stop support for the legacy Apple x86 hardware (Intel chips), we can just remove the conditional statement in setup.cfg
and always install tensorflow
. Opinions appreciated.
Metadata
Metadata
Assignees
Labels
No labels