新闻和更新

SQLAlchemy 2.0.0b1 发布
永久链接

我们很高兴地宣布 SQLAlchemy 2.0 的第一个 beta 版本现已发布。

2.0 系列代表了三年多的努力,旨在更新 SQLAlchemy 的使用模型和架构,以适应现代 Python 用途。 此更新的起源在于三个主要的 Python 范例,这些范例在 SQLAlchemy 2006 年首次发布后才出现:Python 3、pep-484 类型支持和 asyncio。 这也是对 Python 编程社区不断变化的性质的回应,该社区规模庞大,并且是许多新开发人员的家园,他们对严格性、易用性和文档的标准高于 16 年前的情况。

虽然 SQLAlchemy 1.4 系列引入了内部结构的主要架构更改,包括在 ORM 中集成 Core SQL 构造、完整的 SQL 缓存支持和 asyncio 支持,但 SQLAlchemy 2.0 系列现在在许多领域(包括最突出的领域)中利用了这种架构

  • 完整的 pep-484 类型支持以及与 mypy、pylance 等类型检查工具的本机兼容性,包括基于注释的声明式模型和完全类型化的 SQL 语句(确保您卸载所有sqlalchemy-stubs, sqlalchemy2-stubs软件包)
  • ORM 中性能更高的 INSERT 行为
  • 性能更高的表反射架构
  • 集成纯 SELECT、INSERT、UPDATE、DELETE 语句,包括对象 RETURNING,以及在正常 ORM 使用中的 upsert

SQLAlchemy 2.0 还最终确定了 1.4 中首次引入的大量 API 更改。 因此,即使 SQLAlchemy 1.4 提供了 非常全面的 升级路径,我们预计在本系列的开始阶段会出现很多问题,无论是项目适应更改还是新功能的用户,特别是声明式注释支持。 因此,我们希望 beta 系列将进行大量测试,并且我们可能会从 beta 版本转为候选版本,预计几个月后发布 2.0 最终版本。

有关 SQLAlchemy 2.0 中新增功能的概述,请参阅 SQLAlchemy 2.0 中的新功能? 文档。

2.0.0b1 的详细更新日志的链接位于 更新日志

SQLAlchemy 2.0.0b1 在 下载页面 上提供。