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

{Packaging} Remove azure-devtools as a dependency #15508

Merged
merged 4 commits into from
Oct 14, 2020

Conversation

fengzhou-msft
Copy link
Member

@fengzhou-msft fengzhou-msft commented Oct 13, 2020

Description

MSI package building failed in CI caused by building the latest yarl and multidict packages from source. Details in below comment.

These 2 packages are implicitly downloaded as they are in the dependency tree of azure-devtools. azure-devtools is only needed for development and testing and should be removed as a dependency in requirements.txt for building azure-cli packages. The setup.py for azure-cli does not contain azure-devtools.

yarl is used in storage-blob-preview, but the code has workaround when yarl is not available. So it's OK to remove it. Besides, if users install through pip install azure-cli, yarl is not installed either and we haven't received relative issues.

Testing Guide

Packages tested in build_test branch: https://dev.azure.com/azure-sdk/public/_build/results?buildId=573646&view=results

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.


This checklist is used to make sure that common guidelines for a pull request are followed.

@yonzhan
Copy link
Collaborator

yonzhan commented Oct 13, 2020

Packaging

@yonzhan yonzhan requested a review from jiasli October 13, 2020 11:53
@jiasli
Copy link
Member

jiasli commented Oct 14, 2020

Any reason why pinning these 2 dependencies fixes the issue?

@yungezz yungezz self-assigned this Oct 14, 2020
@yungezz yungezz added this to the S177 milestone Oct 14, 2020
@jiasli
Copy link
Member

jiasli commented Oct 14, 2020

When using yarl==1.6.0, pip is downloading yarl-1.6.0-cp36-cp36m-win32.whl (link), but now it seems yarl has dropped win32 support.

Azure CLI is still using a 32-bit Python:

set PYTHON_DOWNLOAD_URL="https://azurecliprod.blob.core.windows.net/util/Python368-32.zip"

Without the win32 wheel, pip will download source code yarl-1.6.2.tar.gz (link) and build a wheel which requires Python.h (link) which doesn't exist in https://azurecliprod.blob.core.windows.net/util/Python368-32.zip.

The same happens for multidict.

@fengzhou-msft fengzhou-msft changed the title {Packaging} Fix MSI building {Packaging} Remove azure-devtools as a dependency Oct 14, 2020
@fengzhou-msft fengzhou-msft marked this pull request as ready for review October 14, 2020 05:29
@fengzhou-msft fengzhou-msft merged commit c33ca88 into Azure:dev Oct 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants