- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
事情进展顺利,直到我的一个项目开始在每个地方打印它,在每次执行的顶部,至少打印一次:
local/lib/python2.7/site-packages/cryptography/hazmat/primitives/constant_time.py:26: CryptographyDeprecationWarning: Support for your Python version is deprecated. The next version of cryptography will remove support. Please upgrade to a 2.7.x release that supports hmac.compare_digest as soon as possible.
我不知道它为什么会开始,它会破坏应用程序/工具的输出,尤其是当它被其他工具捕获和使用时。就像整个时间的许多困难一样,我相当确定它与 urllib
相关,并且通过关联,requests
。更糟糕的是,我有太多项目和交叉依赖项,以至于我无法通过调用 warnings.filterwarnings()
来更新所有导入和分支以抑制警告。
我有 Python 2.7.6 。显然这在 2.7.7 中消失了。只是,我有一些系统有 2.7.6,但我没有看到警告。因此,某些东西可能会或可能不会在一个版本中禁用它们,我可能无意中将其替换为另一个版本。
我的 Ubuntu、Python、urllib、请求(带有安全选项)、加密和 hmac 都是相同的版本/构建在打印警告的系统和不打印警告的系统上。
网上似乎没有相关的警告或公告,而且似乎任何相关项目在这一点上都是静态/稳定的(尽管可以通过 PIP 安装“hmac”,但它已经八年没有改变了)。
最佳答案
我遇到这个错误已经有一段时间了。对于我的环境,将 Python 升级到高于 2.7.6 的版本是一件痛苦的事情。更简单的解决方案是使用 pip 降级密码模块:
pip2.7 install cryptography==2.2.2
我认为最好的解决方案是升级你的 python 版本
关于python - 令人讨厌的 CryptographyDeprecationWarning 因为到处都缺少 hmac.compare_time 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51778764/
这个问题在这里已经有了答案: How to silence EllipticCurvePublicNumbers.encode_point CryptographyDeprecationWarnin
这个问题在这里已经有了答案: How to silence EllipticCurvePublicNumbers.encode_point CryptographyDeprecationWarnin
INFO:Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) INFO:Started reloader process [27
这个问题在这里已经有了答案: How to silence EllipticCurvePublicNumbers.encode_point CryptographyDeprecationWarnin
事情进展顺利,直到我的一个项目开始在每个地方打印它,在每次执行的顶部,至少打印一次: local/lib/python2.7/site-packages/cryptography/hazmat/pri
加密弃用警告: encode_point has been deprecated on EllipticCurvePublicNumbers and will be removed in a futu
我是一名优秀的程序员,十分优秀!