apache-airflow-providers-common-sql

更新日志

1.21.0

注意

此提供程序版本仅适用于 Airflow 2.9+,如Apache Airflow 提供程序支持策略中所述。

警告

所有已弃用的类、参数和功能都已从 Common SQL 提供程序包中删除。可能存在非常旧的提供程序版本依赖于 common.sql 的私有函数,因此用户可能在不知情的情况下围绕它们创建了自定义代码。这个问题早已修复,可能会影响非常旧的提供程序版本的用户。我们暂不认为这是一个重大更改,但我们会明确列出这些更改以提高可见性。引入了以下重大更改

  • 钩子
    • DbApiHook 中删除 _make_serializable 方法。改用 _make_common_data_structure

功能

  • SQLQueryOperator 添加 output_processor 参数, 并修复了当 None 作为 split_statements 传递时, return_single_query_results 处理程序的错误 (#44781)

  • common-sql-provider 公共 SQL 处理方法 移动到专用模块中 (#43747)

其他

  • 提供程序中 的最低 Airflow 版本 提升至 Airflow 2.9.0 (#44956)

  • 修复 公共 SQL 钩子中 的静态检查 (#44930)

  • SqlThresholdCheckOperator 添加了文档 (#44787)

  • 删除 Common SQL 中的 提供程序弃用项 (#44645)

  • 更新多个提供程序文档中的 DAG 示例链接 (#44034)

1.20.0

功能

  • DbApiHook、 PrestoHook TrinoHook 添加分号删除支持 (#41916)

1.19.0

功能

  • 功能: DbApiHook insert_rows 添加 fast_executemany 参数 (#43357)

  • 使 GenericTransfer 中的 conn id 参数可模板化, 并允许像 BaseSQLOperator 一样传递钩子参数 (#42891)

  • 允许在 SqlSensor 中捕获复制延迟 (#43107)

其他

  • 修复 mypy 失败 (#43206)

1.18.0

功能

  • feat(providers/common/sql): 为连接 设置器添加警告 (#42736)

错误修复

  • 修复: 仅将连接传递给 JdbcHook 中的 sqlalchemy 引擎 (#42705)

1.17.1

错误修复

  • fix(providers/common/sql): 为向后兼容性添加虚拟连接设置器 (#42490)

  • 更改了处理函数 的类型提示 (#42275)

1.17.0

功能

注意

现在,DB Hook 中的连接会被缓存,以避免在必须解析 extra 中的属性时进行多次查找。

  • 通用化 DbApiHook 的连接缓存 以提高性能 (#40751)

其他

  • feat: 记录 提供程序 postgres 的客户端数据库消息 (#40171)

  • 从提供程序中删除已弃用的 soft_fail (#41710)

1.16.0

注意

此提供程序版本仅适用于 Airflow 2.8+,如Apache Airflow 提供程序支持策略中所述。

错误修复

  • 修复: 删除已弃用的导入 (#41461)

其他

  • 提供程序中 的最低 Airflow 版本 提升至 Airflow 2.8.0 (#41396)

1.15.0

功能

  • DB Hook 中的连接创建 SQLAlchemy 引擎, 并为 insert_rows 方法添加 autocommit 参数 (#40669)

1.14.2

错误修复

  • 修复: DbApiHook.insert_rows 不必要地重新启动连接 (#40615)

其他

  • ruff 中启用强制执行 pydocstyle 规则 D213。 (#40448)

1.14.1

其他

  • 使用最低直接依赖关系解析实现每个提供程序的测试 (#39946)

  • 更新 Python 3.12 pandas 最低要求 (#40272)

  • 标准化 'BaseSQLOperator' 的模板字段, 并将 'database' 添加为模板字段 (#39826)

1.14.0

功能

  • SqlSensor 添加 'parameters' 作为模板字段 (#39588)

错误修复

  • DbAPiHook: 如果占位符为 None,则不要记录警告消息, 并确保警告消息格式正确 (#39690)

其他

  • 重构: `insert_rows` `executemany` 参数 不应被弃用, 因为对于某些钩子, 我们不希望启用 系统范围的 `supports_executemany` 参数。 这样我们也可以在特定情况下继续使用它 (#39630)

  • 更快的 `airflow_version` 导入 (#39552)

  • 简化 `airflow_version` 导入 (#39497)

  • `SqlSensor` 添加类型提示 (#39773)

1.13.0

注意

Apache Airflow 提供者支持策略 中所述,此提供者版本仅适用于 Airflow 2.7+。

特性

  • `DbApiHook` 类添加 `sqlalchemy_url` 属性 (#38871)

  • `DbApiHook` 中插入行时,始终使用 `executemany` 方法,因为这样速度快得多 (#38715)

Bug 修复

  • `rows` 是一个生成器时,修复 `DbApiHook.insert_rows` (#38972)

  • 修复 `update-common-sql-api-stubs` pre-commit 检查 (#38915)

其他

  • 将提供者中的最低 Airflow 版本提升到 Airflow 2.7.0 (#39240)

  • openlineage, snowflake: 不要为 Snowflake 运行外部查询 (#39113)

1.12.0

特性

  • BaseSQLOperator 相关的 Operator `template_fields` 添加 `hook_params` (#38724)

  • 使 `DbApiHook` `placeholder` UI 中可配置 (#38528)

其他

  • 取消弃用 `DBApiHookForTests._make_common_data_structure` (#38573)

1.11.1

Bug 修复

  • 仅在 `DbApiHook.insert_rows` 中使用 `executemany` 关键字参数 (#37840)

  • `pandas` 限制为 `<2.2` (#37748)

1.11.0

特性

  • 增强功能: 使用快速 executemany + SAP Hana 支持增强 `DbApiHook` `insert_rows` 方法的性能 (#37246)

Bug 修复

  • 修复 在虚假值上出现的 `SQLThresholdCheckOperator` 错误 (#37150)

其他

  • feat: 将所有类、函数和方法弃用切换为装饰器 (#36876)

  • 添加 more-itertools 作为 common-sql 的依赖项 (#37359)

1.10.1

其他

  • 将所有提供者和 airflow 的最低 pandas 依赖项设置为 1.2.5 (#36698)

1.10.0

  • 使 ODBC “placeholder” UI 中可配置 (#36000)

Bug 修复

  • DBApi 派生类中返回通用数据结构

  • 如果 `SQLCheckOperator` 返回带有任何 False 值的字典,则失败 (#36273)

1.9.0

注意

Apache Airflow 提供者支持策略 中所述,此提供者版本仅适用于 Airflow 2.6+。

其他

  • 将提供者中的最低 Airflow 版本提升到 Airflow 2.6.0 (#36017)

  • common.sql 的引入添加架构决策记录 (#36015)

1.8.1

其他

  • 添加 `_make_serializable` 方法,其他 SQL 运算符可以在 当光标的结果不是 JSON 可序列化时覆盖该方法 (#32319)

  • 删除 `DbApiHook` 的向后兼容继承 (#35754)

1.8.0

注意

Apache Airflow 提供者支持策略 中所述,此提供者版本仅适用于 Airflow 2.5+。

Bug 修复

  • fix(providers/sql): 当引发异常时,尊重 `soft_fail` 参数 (#34199)

其他

  • 提升提供者的最低 airflow 版本 (#34728)

  • 在提供者中使用 `airflow.exceptions.AirflowException` (#34511)

1.7.2

Bug 修复

  • 修复 `BigQueryValueCheckOperator` 可延迟模式优化 (#34018)

其他

  • 重构提供者中的正则表达式 (#33898)

1.7.1

其他

  • 重构: 更好的百分比格式化 (#33595)

  • 重构: 简化较小提供者中的代码 (#33234)

1.7.0

特性

  • SQL 运算符添加一个新参数,以指定连接 ID 字段 (#30784)

1.6.2

其他

  • 使 `SQLExecute` Query 签名与其他 SQL 运算符保持一致 (#32974)

  • 摆脱 Python2 的数字遗留物 (#33050)

1.6.1

Bug 修复

  • 修复 `SQLExecuteQueryOperator` 中的本地 OpenLineage 导入 (#32400)

其他

  • Openlineage 授权方法添加默认端口 (#32828)

  • `DbApiHook.run` 方法添加更准确的类型提示 (#31846)

1.6.0

特性

  • openlineage, common.sql:  OL SQL 解析器作为内部 OpenLineage 提供者 API 提供 (#31398)

其他

  • 传递 SQLAlchemy 引擎 来构造 信息 模式 查询。 (#32371)

1.5.2

其他

  • 移除 Python 3.7 支持 (#30963)

1.5.1

其他

  • 为预安装的 providers 带回 min-airflow-version (#31469)

1.5.0 (已撤销)

警告

此版本已因以下原因被撤销此版本可能导致旧版本 airflow 不受限制的安装,从而导致运行时错误。

注意

此provider版本仅适用于 Airflow 2.4+,如Apache Airflow provider 支持策略中所述。

功能特性

  • SQL 操作符中添加条件输出处理 (#31136)

其他

  • SQL 表检查中删除嘈杂的日志 (#31037)

1.4.0

功能特性

  • 添加选项以在日志中显示 'SQLExecuteQueryOperator' 的输出 (#29954)

其他

  • 修复 通用 SQL provider Python API 文档格式 (#29863)

1.3.4

Bug 修复

  • do_xcom_push=False 时,不处理输出 (#29599)

1.3.3

Bug 修复

  • 处理 Exasol 游标的不合规行为 (#28744)

1.3.2

Bug 修复

  • 修复 最近的 isort 版本引入的 isort 问题 (#28434)

  • 修复 通用 SQL 操作符的模板渲染 (#28202)

  • SQLExecuteQueryOperator 中,将 split_statements 推迟到钩子设置 (#28635)

其他

  • 澄清更新后的 DbApiHook 的文档字符串 (#27966)

1.3.1

此版本修复了在重构公共部分时在 common.sql 操作符中引入的一些错误

  • SQLExecuteQueryOperator 中的_process_output 方法现在具有一致的语义和类型,它还可以修改从 SQLExecuteQueryOperator 派生的操作符中返回(并存储在 XCom 中)的值。

  • 所有返回结果的描述都存储为 DBApiHook 中的 descriptions 属性

  • 游标的最后描述(是否返回单个查询结果值)现在通过 DBApiHook 中的 last_description 属性公开。

操作符中缺乏一致性导致 1.3.0 被撤销 - 不应使用 1.3.0 - 如果您安装了 1.3.0,请升级到 1.3.1

Bug 修复

  • 恢复 common.sql 中已删除(但已使用)的方法 (#27843)

  • 修复重构时引入的 Databricks SQL 操作符中的错误 (#27854)

  • common.sql provider 升级到 1.3.1 (#27888)

  • 最终修复 SQL 钩子和操作符的行为 (#27912)

1.3.0 (已撤销)

警告

此版本已因以下原因被撤销针对 SQLExecute 破坏 Google 8.4.0 provider

注意

此provider版本仅适用于 Airflow 2.3+,如Apache Airflow provider 支持策略中所述。

其他

  • 将所有 providers 的最低 airflow 版本移动到 2.3.0 (#27196)

功能特性

  • 添加 SQLExecuteQueryOperator (#25717)

  • DbApiHook.get_records DbApiHook.get_first 使用 DbApiHook.run (#26944)

  • DbApiHook 一致的 insert_rows 日志记录 (#26758)

Bug 修复

  • 通用 sql bug修复和改进 (#26761)

  • SQLCheckOperator.execute 中使用未使用的 SQLCheckOperator.parameters 。(#27599)

1.2.0

功能特性

  • 使占位符样式可配置 (#25939)

  • pre-common-sql providers 提供更好的错误消息 (#26051)

Bug 修复

  • 修复 postgresql 上的 SQLTableCheckOperator (并进行测试) (#25821)

  • 不要将 Pandas 用于 SQLTableCheckOperator (#25822)

  • SQL 钩子中放弃分号剥离 (#25855)

1.1.0

功能特性

  • 使用 ParamSpec 改进任务流类型提示 (#25173)

  • 将所有“旧”SQL操作符移动到 common.sql providers (#25350)

  • 弃用 hql 参数,并同步 DBApiHook 方法 API (#25299)

  • 使用覆盖它的方法统一 DbApiHook.run() 方法 (#23971)

  • 通用 SQLCheckOperators 各种功能更新 (#25164)

Bug 修复

  • 允许旧版 SqlSensor 使用 common.sql providers (#25293)

  • 修复 fetch_all_handler & db-api 测试 (#25430)

  • 对齐 通用 SQL provider 徽标位置 (#25538)

  • 修复 SQL 拆分字符串以包含“无分号”语句 (#25713)

1.0.0

provider 的初始版本。添加了 SQLColumnCheckOperatorSQLTableCheckOperator。将 DBApiHookSQLSensorConnectorProtocol 移动到 provider。

此条目是否有帮助?