apache-airflow-providers-common-sql

變更日誌

1.21.0

注意

此供應商版本僅適用於 Airflow 2.9+,如 Apache Airflow 供應商支援政策 中所述。

警告

所有已棄用的類別、參數和功能都已從 Common SQL 供應商套件中移除。舊版供應商可能依賴 common.sql 的私有函數,導致使用者在不知情的情況下圍繞它們建立自訂程式碼來使用私有函數。此問題早已修復,但可能會影響舊版供應商的使用者。我們目前不認為這是一個重大變更,但我們明確列出變更以提高可見性。引入了以下重大變更

  • Hook
    • DbApiHook 中移除 _make_serializable 方法。改用 _make_common_data_structure

功能

  • 新增 output_processor 參數 SQLQueryOperator並修正 return_single_query_results 處理常式 None 作為 split_statements 傳遞時的錯誤 (#44781)

  • common SQL 處理常式 方法 common-sql-provider 移至 專用 模組 (#43747)

雜項

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

  • 修正 common SQL hook 中的 靜態 檢查 (#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 參數 設為範本,並 允許 傳遞 hook 參數,如 BaseSQLOperator 中所示 (#42891)

  • 允許 SqlSensor 中擷取 複寫 延遲 (#43107)

雜項

  • 修正 mypy 失敗 (#43206)

1.18.0

功能

  • feat(providers/common/sql): 新增 警告 連線 設定器 (#42736)

錯誤修正

  • FIX: 僅在 JdbcHook 中將 連線 傳遞至 sqlalchemy 引擎 (#42705)

1.17.1

錯誤修正

  • fix(providers/common/sql): 回溯相容性 新增 虛擬 連線 設定器 (#42490)

  • 變更 處理常式函數的 類型 提示 (#42275)

1.17.0

功能

注意

DB Hook 中的連線現在已快取,以避免在必須解析額外屬性時進行多次查閱。

  • 一般化 DbApiHook 中連線的 快取 提升 效能 (#40751)

雜項

  • feat: 記錄 供應商 postgres 用戶端 資料庫 訊息 (#40171)

  • 供應商中移除 已棄用的 soft_fail (#41710)

1.16.0

注意

此供應商版本僅適用於 Airflow 2.8+,如 Apache Airflow 供應商支援政策 中所述。

錯誤修正

  • fix: 移除 已棄用的 import (#41461)

雜項

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

1.15.0

功能

  • DB Hook 中的 連線 建立 SQLAlchemy 引擎,並為 insert_rows 方法新增 autocommit 參數 (#40669)

1.14.2

錯誤修正

  • FIX: 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)

雜項

  • refactor: insert_rows executemany 參數 不應 棄用,因為 對於某些 hook,我們 不希望 啟用 系統範圍的 supports_executemany 參數,這樣 我們 也可以 專用 情況下繼續使用它 (#39630)

  • 更快速的 'airflow_version' 匯入 (#39552)

  • 簡化 'airflow_version' 匯入 (#39497)

  • SqlSensor 新增 類型提示 (#39773)

1.13.0

注意

此供應商版本僅適用於 Airflow 2.7+,如 Apache Airflow 供應商支援政策 中所述。

功能

  • 'DbApiHook' 類別 新增 'sqlalchemy_url' 屬性 (#38871)

  • DbApiHook 中插入 列時,一律 使用 executemany 方法,因為它 快得多 (#38715)

錯誤修正

  • 修正 'DbApiHook.insert_rows' 'rows' 產生器時的問題 (#38972)

  • 修正 'update-common-sql-api-stubs' pre-commit 檢查 (#38915)

雜項

  • 供應商中的 最低 Airflow 版本 提升至 Airflow 2.7.0 (#39240)

  • openlineage, snowflake: 不要 Snowflake 執行 外部 查詢 (#39113)

1.12.0

功能

  • BaseSQLOperator 相關的 運算子 新增 hook_params template_fields (#38724)

  • 使 DbApiHook 'placeholder' 可在 UI 中設定 (#38528)

雜項

  • 取消棄用 'DBApiHookForTests._make_common_data_structure' (#38573)

1.11.1

錯誤修正

  • 'DbApiHook.insert_rows' 中將 'executemany' 關鍵字 參數 設為僅限關鍵字 (#37840)

  • 'pandas' 限制為 '<2.2' (#37748)

1.11.0

功能

  • 增強功能: 使用 fast executemany + SAP Hana 支援 增強 DbApiHook insert_rows 方法效能 (#37246)

錯誤修正

  • 修正 SQLThresholdCheckOperator falsey 值上的錯誤 (#37150)

雜項

  • feat: 將所有 類別、 函數、 方法 棄用 切換為 裝飾器 (#36876)

  • 新增 more-itertools 作為 common-sql 相依性 (#37359)

1.10.1

雜項

  • 所有 供應商和 airflow 設定 pandas 最低 相依性為 1.2.5 (#36698)

1.10.0

  • 使 ODBC "placeholder" 可在 UI 中設定 (#36000)

錯誤修正

  • DBApi 衍生 類別中傳回 通用 資料 結構

  • 如果 SQLCheckOperator 傳回 包含任何 False 值的字典,則會失敗 (#36273)

1.9.0

注意

此供應商版本僅適用於 Airflow 2.6+,如 Apache Airflow 供應商支援政策 中所述。

雜項

  • 供應商中的 最低 Airflow 版本 提升至 Airflow 2.6.0 (#36017)

  • common.sql 介紹新增 架構 決策 記錄 (#36015)

1.8.1

雜項

  • 新增 '_make_serializable' 方法,當 來自 游標的結果 不是 JSON 可序列化時,其他 SQL 運算子可以覆寫此方法 (#32319)

  • 移除 DbApiHook 的回溯相容性 繼承 (#35754)

1.8.0

注意

此供應商版本僅適用於 Airflow 2.5+,如 Apache Airflow 供應商支援政策 中所述。

錯誤修正

  • fix(providers/sql): 引發例外狀況時,尊重 soft_fail 引數 (#34199)

雜項

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

  • 供應商中使用 'airflow.exceptions.AirflowException' (#34511)

1.7.2

錯誤修正

  • 修正 BigQueryValueCheckOperator 可延遲模式 最佳化 (#34018)

雜項

  • 重構 供應商中的 regex (#33898)

1.7.1

雜項

  • 重構: 更佳的 百分比 格式 (#33595)

  • 重構: 簡化 較小 供應商中的 程式碼 (#33234)

1.7.0

功能

  • SQL 運算子新增 一個新的 參數,以 指定 conn id 欄位 (#30784)

1.6.2

雜項

  • 使 SQLExecute Query 簽章 與其他 SQL 運算子 一致 (#32974)

  • 擺脫 Python2 數值 遺跡 (#33050)

1.6.1

錯誤修正

  • 修正 '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

雜項

  • 帶回 預先安裝供應商的 min-airflow-version (#31469)

1.5.0 (已撤銷)

警告

此版本已撤銷,原因: 版本可能 導致 舊版 airflow 版本 不受限制地安裝,從而 導致 執行階段錯誤。

注意

此供應商版本僅適用於 Airflow 2.4+,如 Apache Airflow 供應商支援政策 中所述。

功能

  • SQL 運算子中新增 條件式 輸出 處理 (#31136)

雜項

  • SQL 表格 檢查中移除 雜訊 記錄 (#31037)

1.4.0

功能

  • 新增 選項以在 記錄中顯示 'SQLExecuteQueryOperator' 輸出 (#29954)

雜項

  • 修正 Common SQL 供應商的 Python API 文件 格式 (#29863)

1.3.4

錯誤修正

  • do_xcom_push=False  時,不要 處理 輸出 (#29599)

1.3.3

錯誤修正

  • 處理 Exasol 游標的 不合規 行為 (#28744)

1.3.2

錯誤修正

  • fIx 最近發佈的 isort 版本引入的 isort 問題 (#28434)

  • 修正 Common SQL 運算子的 範本 轉譯 (#28202)

  • SQLExecuteQueryOperator 中延遲至 hook 設定 split_statements (#28635)

雜項

  • 釐清 已更新 DbApiHook 文件字串 (#27966)

1.3.1

此版本修正了在重構常見部分時,common.sql 運算子中引入的一些錯誤

  • SQLExecuteQueryOperator 中的 _process_output 方法現在具有一致的語意和類型提示,它也可以修改衍生自 SQLExecuteQueryOperator 的運算子中傳回(並儲存在 XCom 中)的值。

  • 所有傳回結果的描述都儲存在 DBApiHook 中的 descriptions 屬性中

  • 是否傳回單一查詢結果值的最後一個游標描述現在透過 last_description 屬性在 DBApiHook 中公開。

運算子中的不一致導致 1.3.0 被撤銷 - 不應使用 1.3.0 - 如果您已安裝 1.3.0,請升級至 1.3.1

錯誤修正

  • 還原 common.sql 中已移除的(但 已使用的)方法 (#27843)

  • 修正 重構時引入的 Databricks SQL 運算子中的錯誤 (#27854)

  • common.sql 供應商提升至 1.3.1 (#27888)

  • 最終修正 SQL Hook 和 運算子的行為 (#27912)

1.3.0 (已撤銷)

警告

此版本已撤銷,原因:中斷 SQLExecute 的 Google 8.4.0 供應商

注意

此供應商版本僅適用於 Airflow 2.3+,如 Apache Airflow 供應商支援政策 中所述。

雜項

  • 所有 供應商的 最低 airflow 版本 移至 2.3.0 (#27196)

功能

  • 新增 SQLExecuteQueryOperator (#25717)

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

  • DbApiHook 一致的 insert_rows 記錄 (#26758)

錯誤修正

  • 常見 sql 錯誤修正和 改進 (#26761)

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

1.2.0

功能

  • 使 預留位置 樣式 可設定 (#25939)

  • 針對 pre-common-sql 供應商提供 更佳的 錯誤 訊息 (#26051)

錯誤修正

  • 修正 (並 測試) postgresql 上的 SQLTableCheckOperator (#25821)

  • 不要 Pandas 用於 SQLTableCheckOperator (#25822)

  • 捨棄 SQL hook 中的 分號 剝離 (#25855)

1.1.0

功能

  • 改善 工作流程 類型提示 ,使用 ParamSpec (#25173)

  • 將所有 「舊」 SQL 運算子 移至 common.sql 提供者 (#25350)

  • 棄用 hql 參數 並同步 DBApiHook 方法 API (#25299)

  • 統一 DbApiHook.run() 方法 覆寫它的 方法 (#23971)

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

Bug 修正

  • 允許 舊版 SqlSensor 使用 common.sql 提供者 (#25293)

  • 修正 fetch_all_handler & db-api 測試 ,針對它 (#25430)

  • 對齊 通用 SQL 提供者 標誌位置 (#25538)

  • 修正 SQL 分割字串 以包含 「無分號」 陳述式 (#25713)

1.0.0

提供者的初始版本。新增 SQLColumnCheckOperatorSQLTableCheckOperator。將 DBApiHookSQLSensorConnectorProtocol 移至提供者。

這篇文章對您有幫助嗎?