将 python 2.7.7 更新为 2.7.9 - 安全吗?

Update python 2.7.7 to 2.7.9 - is it safe?

我将从 Python 2.7.7 更新到 2.7.9(或更好的 2.7.10)版本。因为我有很多正在进行的项目,所以我必须非常小心。

我的问题是 - 更新到 2.7.9/10 版本是否安全?一切都会照常进行吗?

我从python official web下载msi并安装就够了吗?

Python 的次要版本升级(即 2.7.x 到 2.7.y)通常是向后兼容的,出现故障的风险很低。

有关 2.7.9 到 2.7.10 之间的所有详细信息,请参阅 https://hg.python.org/cpython/raw-file/15c95b7d81dc/Misc/NEWS。每个小版本之间都有相似的ChangeLog条目。

如果出现问题,您应该有一个关于如何恢复到 2.7.7 的回滚策略(带有估计的时间表)。

Python 2.7.9 特别有几个潜在的破坏性变化。来自 release page:

Python 2.7.9 includes several significant changes unprecedented in a "bugfix" release:

  • The entirety of Python 3.4's ssl module has been backported for Python 2.7.9. See PEP 466 for justification.
  • HTTPS certificate validation using the system's certificate store is now enabled by default. See PEP 476 for details.
  • SSLv3 has been disabled by default in [httplib and its reverse dependencies due to the POODLE attack.

这些更改导致了一些兼容性问题:

  1. 像 gevent 这样的库必须更新 monkey-patch SSL。 (参见 here。)
  2. 不安全的代码(例如,它没有验证证书)但由于不安全的默认设置而仍然有效的代码将不再有效。

#1 等问题可以通过更新受影响的库来解决,对于#2,"obviously broken" 可能比 "appears to work but not secure," 更好,但这些问题值得关注。

如果您不这样做 SSL/TLS,我认为您不必担心这些。