新闻和更新

SQLAlchemy 1.1.0 发布
永久链接

SQLAlchemy 1.1.0 版本现已发布。

版本 1.1.0 是 1.1 系列中的第一个正式版本,在三个 beta 版本之后发布。该版本代表了自 1.0 版本发布以来过去十八个月的新功能开发。 非常长的新功能列表侧重于 Core,特别是在 SQL 语法领域,这些语法要么仅由 Postgresql 数据库支持,要么最常用于 Postgresql 数据库,并且开发工作得到了高度参与的社区的大力协助,他们有时为新功能工作了数周。

主要的新 SQL 功能包括

  • 公用表表达式 (CTE) 支持 INSERT、UPDATE、DELETE
  • 支持 Postgresql upsert - INSERT..ON CONFLICT (DO UPDATE | DO NOTHING)
  • 支持 MySQL 的 JSON 类型
  • 支持窗口函数中的 RANGE 和 ROWS 规范
  • 支持 Postgresql 的 SQL LATERAL 关键字
  • 支持 TABLESAMPLE
  • Core 和 ORM 支持 FULL OUTER JOIN
  • 支持 IS DISTINCT FROM 和 IS NOT DISTINCT FROM
  • 支持 WITHIN GROUP, ARRAY_AGG
  • 支持 FOR UPDATE SKIP LOCKED / FOR NO KEY UPDATE / FOR KEY SHARE

还有许多新的 ORM 功能,包括一个新的 “raise” 加载器,可防止意外的惰性加载,用于 Session 对象的新事件钩子,允许跟踪对象生命周期的所有阶段,以及用于存储序列化对象结构的列的新 “mutable” 集合。

除了新的 SQL 语法和 ORM 功能外,还有大量的 ORM 和执行引擎修复和改进,以及绝对最少的可能令人惊讶的行为更改。 然而,与往常一样,在很多领域,以前不起作用的东西现在可以工作了; 用户应仔细查看 1.1 版本的新特性? 中的完整迁移说明系列,以了解已更改内容的完整范围。

1.1.0 以及所有 beta 版本的完整变更日志位于 变更日志; 我们要感谢为此次发布做出贡献的众多贡献者。

SQLAlchemy 1.1.0 可在 下载页面 上获取。