注意: 虽然 JavaScript 对于本网站不是必需的,但您与内容的互动将受到限制。请开启 JavaScript 以获得完整的体验。

Python 3.12.12

发布日期: 2025年10月9日

这是 Python 3.12 的一个安全修复版本

注意: 您正在查看的是 Python 3.12.12,这是旧版 3.12 系列的一个安全问题修复版本Python 3.14 现在是 Python 3 最新的功能发布系列。在此处获取 3.14.x 的最新版本

此版本中的安全内容

XML 相关

归档相关

  • gh-130577tarfile 现在会验证归档文件,以确保成员偏移量为非负数。
  • gh-139700:现在会检查 zip64 中央目录记录末端的一致性。如果 ZIP 文件前没有前缀字节,则增加了对带有“zip64 可扩展数据”记录的支持。

HTML 解析相关

  • gh-135661:根据 HTML5 标准,修复了 html.parser.HTMLParser 中对开始和结束标签的解析。
  • 不再接受 </ 和标签名之间的空白字符。例如:</ script> 不会结束 script 部分。
  • 垂直制表符 (\v) 和非 ASCII 空白字符不再被识别为空白。唯一的空白字符是 \t\n\r\f 和空格。
  • 空字符 (U+0000) 不再结束标签名。
  • 结束标签中标签名后的属性和斜杠现在将被忽略,而不是在带引号的属性值中第一个 > 后终止。例如:</script/foo=">"/>
  • 在开始和结束标签中,最后一个属性和闭合 > 之间的多个斜杠和空白字符现在将被忽略。例如:<a foo=bar/ //>
  • 属性名和值之间的多个 = 不再被折叠。例如:<a foo==bar> 会产生一个名为“foo”的属性,其值为“=bar”。
  • gh-135661:根据 HTML5 标准,修复了 html.parser.HTMLParser 中的 CDATA 部分解析:] ]>]] > 不再结束 CDATA 部分。添加了私有方法 _set_support_cdata(),可用于指定如何解析 <[CDATA[——是作为外部内容(SVG 或 MathML)中的 CDATA 部分,还是作为 HTML 命名空间中的无效注释。
  • gh-102555:根据 HTML5 标准,修复了 html.parser.HTMLParser 中的注释解析。--!> 现在会结束注释。-- > 不再结束注释。支持异常结束的空注释 <--><--->
  • gh-135462:修复了在 html.parser.HTMLParser 中处理特殊构造的输入时出现的二次复杂度问题。现在会根据 HTML5 规范处理文件结束错误——注释和声明会自动闭合,标签则被忽略。
  • gh-118350:修复了 html.parser.HTMLParser 对可转义原始文本模式(“textarea”和“title”元素)的支持。
  • gh-86155html.parser.HTMLParser.close()<script> 标签未闭合时不再丢失数据。

无安装程序

根据 PEP 693 中规定的发布日程,Python 3.12 现已进入其生命周期的“仅安全修复”阶段:3.12 分支仅接受安全修复,并且这些修复将以不定期、仅源码的形式发布,直到 2028 年 10 月。Python 3.12 不再接收常规的错误修复,也不再为其提供二进制安装程序。Python 3.12.10 是 Python 3.12 最后一个包含二进制安装程序的完整错误修复版本

完整更新日志

文件

版本 操作系统 描述 MD5 校验和 文件大小 Sigstore SBOM GPG
Gzip 压缩的源码包 源码发布版 4fcf63eed7dd8dd3f0d00cfd5921a681 26.0 MB .sigstore SPDX SIG
XZ 压缩的源码包 源码发布版 04feb01316c7bb1b448001adbc63dd23 19.8 MB .sigstore SPDX SIG