Azure / Azure/MachineLearningNotebooks

Dependency problems (docker/pywin32 and ruamel.yaml)

未關閉
#1,833 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Jupyter Notebook
星號
4.4k
分支
2.6k
PR 合併指標
30 天內沒有已合併 PR

描述

Hello everyone! I'm having problems with Azure packages because apparently, they have some broken dependencies. I'm reporting the following problems:

* `docker`: Required by `azureml-core`, `docker` is pinned to a version lower than `6.0.0` . However, older versions of this library pin `pywin32 227`, and any version of `pywin32` below `300` breaks `default_azure_credential` when using it in `Windows`. This would automatically break `Azure CLI Login` (in my case this is happening). Also, version `6.0.0` fixes `pywin32` I think azure should just update it to `6.0.0` in order to fix the problem
* `ruamel.yaml`: The package `azureml-pipeline-core` depends on `ruamel.yaml` pinned on a version below `16`. This lib requires to compile some binaries in `C` while installing, and any version below `16` uses an installation method not supported by `pip` versions over `20.1`. To solve this, I had to downgrade `pip`, or install it using `poetry`, which is a package manager able to fix this bug

Considering all `AzureML SDK` packages were developed using modular packages, I really recommend using `Poetry` to manage dependencies, and `dependabot` (or something similar) to update automatically update deps. it would reduce installation time, and would prevent future conflicts.

I think `Azure` should fix these problems before fully migrating to `SDK v2` since there are some features still in beta.

Related links:
- [ruamel#1](https://stackoverflow.com/questions/49868091/python-error-when-installing-ruamel-yaml-package-with-pip)
- [ruamel#2](https://stackoverflow.com/questions/70136750/cant-install-azure-packages-with-pip-ruamel-yaml-error)
- [ruamel#3](https://stackoverflow.com/questions/71967150/problem-installing-azure-pipeline-due-to-ruamel-yaml)

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

未指定目標檔案或測試。首先找出 azureml-core 和 azureml-pipeline-core 的相依性宣告,然後使用目前的 pip 在 Windows 上重現安裝;當已回報的 pywin32 和 ruamel.yaml 衝突不再阻礙所述的 Azure ML 工作流程時,即視為完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
azure, docker, python
領域
devops, machine-learning
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
25/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。