如何仅针对macOS为可选Python依赖指定版本约束?
针对macOS的可选依赖版本约束解决方案
你可以通过平台环境标记结合版本条件实现仅针对macOS的Python版本限制,核心是利用sys_platform == "darwin"(Python中macOS对应的平台标识)来限定约束生效范围。
在setup.cfg中配置
在[options.extras_require]区块下,将可选依赖写成以下形式:
[options.extras_require] tf = tensorflow>=2.7.0; sys_platform != "darwin" tensorflow>=2.7.0; sys_platform == "darwin" and python_version < "3.11"
或合并为逻辑等价的单行写法:
[options.extras_require] tf = tensorflow>=2.7.0; (sys_platform == "darwin" and python_version < "3.11") or sys_platform != "darwin"
在pyproject.toml中配置
在[project.optional-dependencies]区块下,写法如下:
[project.optional-dependencies] tf = [ "tensorflow>=2.7.0; sys_platform != 'darwin'", "tensorflow>=2.7.0; sys_platform == 'darwin' and python_version < '3.11'" ]
说明
sys_platform == "darwin"精准匹配macOS系统,仅在该平台下触发python_version < "3.11"的版本约束;- Linux、Windows等其他系统将直接使用无版本限制的规则,安装
tensorflow>=2.7.0。
内容的提问来源于stack exchange,提问作者cbrnr
相关产品推荐
相关产品推荐

