-
Notifications
You must be signed in to change notification settings - Fork 3k
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} Bump cryptography from 2.8 to 3.3.2 #15687
{Packaging} Bump cryptography from 2.8 to 3.3.2 #15687
Conversation
Bumps [cryptography](https://github.com/pyca/cryptography) from 2.8 to 3.2. - [Release notes](https://github.com/pyca/cryptography/releases) - [Changelog](https://github.com/pyca/cryptography/blob/master/CHANGELOG.rst) - [Commits](pyca/cryptography@2.8...3.2) Signed-off-by: dependabot[bot] <[email protected]>
Thank you for your contribution dependabot[bot]! We will review the pull request and get back to you soon. |
cryptography |
triggered by a bot. |
The new version deprecated OpenSSL 1.0.2 support. The bump could be risky. |
Holding this PR open until we do a full regression test and related investigations. |
The latest PyJWT 2.0.1 requires https://github.com/jpadilla/pyjwt/blob/3993ce1d3503b58cf74699a89ba9e5c18ef9b556/setup.cfg#L55 cryptography>=3.3.1,<4.0.0 We have to bump to at least 3.3.1, otherwise PyJWT will fail (#16416). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No regression in live tests for keyvault.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Locally verified live tests for managed HSM could pass for 3.3.2
…src/azure-cli/cryptography-3.2
…b.com:Azure/azure-cli into dependabot/pip/src/azure-cli/cryptography-3.2
@@ -47,6 +47,7 @@ | |||
'argcomplete~=1.8', | |||
'azure-cli-telemetry==1.0.6.*', | |||
'colorama~=0.4.1', | |||
'cryptography>=3.2,<3.4', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
adal
relies on cryptography
, so moved it to azure-cli-core
.
3.4+
versions rely on rust and cause install issues on some platforms. Let's set the upper bound for now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3.4+
versions rely on rust and cause install issues on some platforms. Let's set the upper bound for now.
The original discussion: pyca/cryptography#5771
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point. I will submit issues to azure-devops
(submitted Azure/azure-devops-cli-extension#1108). Machine learning team is working on a new extension to replace the old one, I will request a cleaning of their dependnecies.
@@ -131,7 +131,6 @@ | |||
'azure-synapse-accesscontrol~=0.2.0', | |||
'azure-synapse-artifacts~=0.3.0', | |||
'azure-synapse-spark~=0.2.0', | |||
'cryptography>=2.3.1,<3.0.0', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will remove the dependency here impacting extensions etc? since we don't want extension directly depend on azure-cli-core?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
azure-cli
will always install azure-cli-core
, so moving the dependency version specifier to azure-cli-core
will have no impact on azure-cli
and extensions. Previously, pip install azure-cli-core
individually will fail as azure-cli-core
indirectly depends on cryptography
through adal
, but it's not pinned there.
Is there any particular reason why the minimum version needs to be 3.3.2 now? Bumping major components like cryptography to much newer versions causes a lot of headaches for enterprise distributions package maintainers. |
This is not true. The current azure-cli/src/azure-cli-core/setup.py Line 51 in 55d511a
so the minimum version is
Per the change log of cryptography,
In the future, we will eventually bump to Thanks for understanding. |
That was not my point. My point is, it's not a good idea to raise the minimum version numbers in the dependencies when you are actually not making use of any newer API. Linux distributions are packaging the Azure SDK/CLI to ship it to their customers and customers want a newer version of the SDK/CLI in the distribution from time to time. So, if upstream is regularly bumping the dependency versions without actually requiring the new upstream version of - let's say - cryptography, you are forcing distributions to update the cryptography dependency as well which is not easy since a lot of other packages depend on cryptography and we risk potential breakage of other software that we ship to customers if we just upgrade cryptography. That's why upstream projects should not bump version dependencies unless it's actually necessary. Or, at least, add a comment that it will work with older versions XYZ as well as long as these receive security support.
The dependencies in
(Enterprise) Linux distributions provide maintain security support even for older packages. So, if a package like cryptography suffers from a vulnerability, we actually backport the patch to fix the vulnerability as we can't just update the package without having to fear breakage.
There are projects like
My point is: Please don't bump dependency versions for packages like cryptography unless you actually need any functionality of the new version. Linux distributions maintain security updates for older versions, so we don't randomly update packages like cryptography unless we actually need a new feature. Please be more considerate of enterprise users, they are your main paying customers in the public cloud. |
We currently ship python-cryptography 2.8 in both SUSE Linux Enterprise 12 and 15. So, if you could go down to 2.8 - if possible - that would be great. If it's not possible, we will have to upgrade python-cryptography when we update azure-cli to newer versions which will then take a little longer. |
OK. |
Hi @glaubitz, we are pending on your reply for #19639 (comment) to get #19639 merged. :) |
Bumps cryptography from 2.8 to 3.2.
Changelog
Sourced from cryptography's changelog.
... (truncated)
Commits
c9e6522
3.2 release (#5508)58494b4
Attempt to mitigate Bleichenbacher attacks on RSA decryption (#5507)cf9bd6a
move blinding to init on both RSA public and private (#5506)bf4b962
be more verbose in the 102 deprecation notice (#5505)ada53e7
make the regexes for branches more strict (#5504)8be1d4b
Stop using @master for GH actions (#5503)08a97cc
Bump actions/upload-artifact from v1 to v2.2.0 (#5502)52a0e44
Add a dependabot configuration to bump our github actions (#5501)611c4a3
PKCS7SignatureBuilder now supports new option NoCerts when signing (#5500)836a92a
chunking didn't actually work (#5499)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase
will rebase this PR@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it@dependabot merge
will merge this PR after your CI passes on it@dependabot squash and merge
will squash and merge this PR after your CI passes on it@dependabot cancel merge
will cancel a previously requested merge and block automerging@dependabot reopen
will reopen this PR if it is closed@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)@dependabot use these labels
will set the current labels as the default for future PRs for this repo and language@dependabot use these reviewers
will set the current reviewers as the default for future PRs for this repo and language@dependabot use these assignees
will set the current assignees as the default for future PRs for this repo and language@dependabot use this milestone
will set the current milestone as the default for future PRs for this repo and languageYou can disable automated security fix PRs for this repo from the Security Alerts page.