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.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.16.0¶
注意
此提供程序版本仅适用于 Airflow 2.8+,如Apache Airflow 提供程序支持策略中所述。
错误修复¶
修复: 删除已弃用的导入 (#41461)
其他¶
将 提供程序中 的最低 Airflow 版本 提升至 Airflow 2.8.0 (#41396)
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.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.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.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.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 的初始版本。添加了 SQLColumnCheckOperator
和 SQLTableCheckOperator
。将 DBApiHook
、SQLSensor
和 ConnectorProtocol
移动到 provider。