dbt-adapters 1.16.6__tar.gz → 1.17.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of dbt-adapters might be problematic. Click here for more details.

Files changed (251) hide show
  1. dbt_adapters-1.17.0/.changes/1.17.0.md +13 -0
  2. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/CHANGELOG.md +15 -1
  3. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/PKG-INFO +1 -1
  4. dbt_adapters-1.17.0/src/dbt/adapters/__about__.py +1 -0
  5. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/relation.py +18 -5
  6. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/contracts/relation.py +1 -0
  7. dbt_adapters-1.17.0/src/dbt/include/global_project/macros/materializations/functions/function.sql +16 -0
  8. dbt_adapters-1.17.0/src/dbt/include/global_project/macros/materializations/functions/helpers.sql +34 -0
  9. dbt_adapters-1.17.0/src/dbt/include/global_project/macros/materializations/functions/scalar.sql +38 -0
  10. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/snapshots/helpers.sql +14 -4
  11. dbt_adapters-1.16.6/src/dbt/adapters/__about__.py +0 -1
  12. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.0.0.md +0 -0
  13. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.1.0.md +0 -0
  14. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.1.1.md +0 -0
  15. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.10.0.md +0 -0
  16. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.10.1.md +0 -0
  17. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.10.2.md +0 -0
  18. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.10.3.md +0 -0
  19. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.10.4.md +0 -0
  20. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.11.0.md +0 -0
  21. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.12.0.md +0 -0
  22. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.13.0.md +0 -0
  23. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.13.1.md +0 -0
  24. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.13.2.md +0 -0
  25. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.0.md +0 -0
  26. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.1.md +0 -0
  27. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.3.md +0 -0
  28. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.4.md +0 -0
  29. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.5.md +0 -0
  30. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.6.md +0 -0
  31. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.7.md +0 -0
  32. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.14.8.md +0 -0
  33. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.15.1.md +0 -0
  34. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.15.2.md +0 -0
  35. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.15.3.md +0 -0
  36. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.15.md +0 -0
  37. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.0.md +0 -0
  38. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.1.md +0 -0
  39. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.2.md +0 -0
  40. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.3.md +0 -0
  41. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.4.md +0 -0
  42. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.5.md +0 -0
  43. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.16.6.md +0 -0
  44. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.2.1.md +0 -0
  45. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.3.0.md +0 -0
  46. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.3.1.md +0 -0
  47. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.3.2.md +0 -0
  48. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.3.3.md +0 -0
  49. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.4.0.md +0 -0
  50. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.4.1.md +0 -0
  51. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.5.0.md +0 -0
  52. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.6.0.md +0 -0
  53. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.6.1.md +0 -0
  54. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.7.0.md +0 -0
  55. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.7.1.md +0 -0
  56. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.7.2.md +0 -0
  57. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.8.0.md +0 -0
  58. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/1.9.0.md +0 -0
  59. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/header.tpl.md +0 -0
  60. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changes/unreleased/.gitkeep +0 -0
  61. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.changie.yaml +0 -0
  62. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/.gitignore +0 -0
  63. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/CONTRIBUTING.md +0 -0
  64. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/LICENSE +0 -0
  65. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/README.md +0 -0
  66. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/hatch.toml +0 -0
  67. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/pyproject.toml +0 -0
  68. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/__init__.py +0 -0
  69. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/__init__.py +0 -0
  70. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/README.md +0 -0
  71. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/__init__.py +0 -0
  72. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/column.py +0 -0
  73. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/connections.py +0 -0
  74. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/impl.py +0 -0
  75. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/meta.py +0 -0
  76. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/plugin.py +0 -0
  77. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/base/query_headers.py +0 -0
  78. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/cache.py +0 -0
  79. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/capability.py +0 -0
  80. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/catalogs/__init__.py +0 -0
  81. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/catalogs/_client.py +0 -0
  82. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/catalogs/_constants.py +0 -0
  83. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/catalogs/_exceptions.py +0 -0
  84. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/catalogs/_integration.py +0 -0
  85. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/clients/__init__.py +0 -0
  86. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/clients/jinja.py +0 -0
  87. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/contracts/__init__.py +0 -0
  88. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/contracts/connection.py +0 -0
  89. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/contracts/macros.py +0 -0
  90. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/README.md +0 -0
  91. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/__init__.py +0 -0
  92. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/adapter_types_pb2.py +0 -0
  93. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/base_types.py +0 -0
  94. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/logging.py +0 -0
  95. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/events/types.py +0 -0
  96. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/__init__.py +0 -0
  97. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/alias.py +0 -0
  98. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/cache.py +0 -0
  99. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/compilation.py +0 -0
  100. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/connection.py +0 -0
  101. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/exceptions/database.py +0 -0
  102. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/factory.py +0 -0
  103. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/protocol.py +0 -0
  104. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/py.typed +0 -0
  105. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/__init__.py +0 -0
  106. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/base.py +0 -0
  107. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/cursor.py +0 -0
  108. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/description.py +0 -0
  109. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/execute.py +0 -0
  110. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/fetchall.py +0 -0
  111. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/fetchmany.py +0 -0
  112. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/fetchone.py +0 -0
  113. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/cursor/rowcount.py +0 -0
  114. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/handle.py +0 -0
  115. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/record/serialization.py +0 -0
  116. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/reference_keys.py +0 -0
  117. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/relation_configs/README.md +0 -0
  118. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/relation_configs/__init__.py +0 -0
  119. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/relation_configs/config_base.py +0 -0
  120. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/relation_configs/config_change.py +0 -0
  121. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/relation_configs/config_validation.py +0 -0
  122. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/sql/__init__.py +0 -0
  123. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/sql/connections.py +0 -0
  124. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/sql/impl.py +0 -0
  125. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/adapters/utils.py +0 -0
  126. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/__init__.py +0 -0
  127. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/__init__.py +0 -0
  128. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/dbt_project.yml +0 -0
  129. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/docs/overview.md +0 -0
  130. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/apply_grants.sql +0 -0
  131. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/columns.sql +0 -0
  132. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/freshness.sql +0 -0
  133. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/indexes.sql +0 -0
  134. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/metadata.sql +0 -0
  135. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/persist_docs.sql +0 -0
  136. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/relation.sql +0 -0
  137. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/schema.sql +0 -0
  138. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/show.sql +0 -0
  139. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/timestamps.sql +0 -0
  140. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/adapters/validate_sql.sql +0 -0
  141. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/etc/datetime.sql +0 -0
  142. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/etc/statement.sql +0 -0
  143. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/generic_test_sql/accepted_values.sql +0 -0
  144. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/generic_test_sql/not_null.sql +0 -0
  145. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/generic_test_sql/relationships.sql +0 -0
  146. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/generic_test_sql/unique.sql +0 -0
  147. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/get_custom_name/get_custom_alias.sql +0 -0
  148. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/get_custom_name/get_custom_database.sql +0 -0
  149. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/get_custom_name/get_custom_schema.sql +0 -0
  150. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/configs.sql +0 -0
  151. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/hooks.sql +0 -0
  152. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/clone/can_clone_table.sql +0 -0
  153. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/clone/clone.sql +0 -0
  154. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/clone/create_or_replace_clone.sql +0 -0
  155. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/column_helpers.sql +0 -0
  156. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/incremental.sql +0 -0
  157. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/is_incremental.sql +0 -0
  158. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/merge.sql +0 -0
  159. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/on_schema_change.sql +0 -0
  160. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/incremental/strategies.sql +0 -0
  161. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/materialized_view.sql +0 -0
  162. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/table.sql +0 -0
  163. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/models/view.sql +0 -0
  164. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/seeds/helpers.sql +0 -0
  165. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/seeds/seed.sql +0 -0
  166. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/snapshots/snapshot.sql +0 -0
  167. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/snapshots/snapshot_merge.sql +0 -0
  168. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/snapshots/strategies.sql +0 -0
  169. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/tests/helpers.sql +0 -0
  170. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/tests/test.sql +0 -0
  171. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/tests/unit.sql +0 -0
  172. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/materializations/tests/where_subquery.sql +0 -0
  173. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/python_model/python.sql +0 -0
  174. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/column/columns_spec_ddl.sql +0 -0
  175. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/create.sql +0 -0
  176. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/create_backup.sql +0 -0
  177. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/create_intermediate.sql +0 -0
  178. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/drop.sql +0 -0
  179. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/drop_backup.sql +0 -0
  180. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/alter.sql +0 -0
  181. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/create.sql +0 -0
  182. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/drop.sql +0 -0
  183. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/refresh.sql +0 -0
  184. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/rename.sql +0 -0
  185. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/materialized_view/replace.sql +0 -0
  186. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/rename.sql +0 -0
  187. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/rename_intermediate.sql +0 -0
  188. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/replace.sql +0 -0
  189. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/schema.sql +0 -0
  190. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/table/create.sql +0 -0
  191. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/table/drop.sql +0 -0
  192. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/table/rename.sql +0 -0
  193. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/table/replace.sql +0 -0
  194. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/view/create.sql +0 -0
  195. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/view/drop.sql +0 -0
  196. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/view/rename.sql +0 -0
  197. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/relations/view/replace.sql +0 -0
  198. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/unit_test_sql/get_fixture_sql.sql +0 -0
  199. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/any_value.sql +0 -0
  200. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/array_append.sql +0 -0
  201. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/array_concat.sql +0 -0
  202. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/array_construct.sql +0 -0
  203. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/bool_or.sql +0 -0
  204. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/cast.sql +0 -0
  205. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/cast_bool_to_text.sql +0 -0
  206. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/concat.sql +0 -0
  207. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/data_types.sql +0 -0
  208. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/date.sql +0 -0
  209. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/date_spine.sql +0 -0
  210. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/date_trunc.sql +0 -0
  211. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/dateadd.sql +0 -0
  212. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/datediff.sql +0 -0
  213. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/equals.sql +0 -0
  214. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/escape_single_quotes.sql +0 -0
  215. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/except.sql +0 -0
  216. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/generate_series.sql +0 -0
  217. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/hash.sql +0 -0
  218. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/intersect.sql +0 -0
  219. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/last_day.sql +0 -0
  220. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/length.sql +0 -0
  221. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/listagg.sql +0 -0
  222. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/literal.sql +0 -0
  223. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/position.sql +0 -0
  224. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/replace.sql +0 -0
  225. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/right.sql +0 -0
  226. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/safe_cast.sql +0 -0
  227. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/macros/utils/split_part.sql +0 -0
  228. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/global_project/tests/generic/builtin.sql +0 -0
  229. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/src/dbt/include/py.typed +0 -0
  230. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/__init__.py +0 -0
  231. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/behavior_flag_tests/__init__.py +0 -0
  232. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/behavior_flag_tests/test_behavior_flags.py +0 -0
  233. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/behavior_flag_tests/test_empty_project.py +0 -0
  234. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/conftest.py +0 -0
  235. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/fixtures/__init__.py +0 -0
  236. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/fixtures/adapter.py +0 -0
  237. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/fixtures/catalog_integration.py +0 -0
  238. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/fixtures/connection_manager.py +0 -0
  239. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/fixtures/credentials.py +0 -0
  240. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/record/__init__.py +0 -0
  241. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/record/test_record_cursor.py +0 -0
  242. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/record/test_record_handle.py +0 -0
  243. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_adapter_factory.py +0 -0
  244. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_adapter_telemetry.py +0 -0
  245. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_base_adapter.py +0 -0
  246. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_cache.py +0 -0
  247. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_catalogs.py +0 -0
  248. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_column.py +0 -0
  249. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_events.py +0 -0
  250. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_relation.py +0 -0
  251. {dbt_adapters-1.16.6 → dbt_adapters-1.17.0}/tests/unit/test_sql_result.py +0 -0
@@ -0,0 +1,13 @@
1
+ ## dbt-adapters 1.17.0 - September 29, 2025
2
+
3
+ ### Features
4
+
5
+ - Initial framework for UDF support ([#1268](https://github.com/dbt-labs/dbt-adapters/issues/1268))
6
+
7
+ ### Fixes
8
+
9
+ - Fix duplicates when hard_deletes new_record is used with custom dbt_valid_to_current ([#1240](https://github.com/dbt-labs/dbt-adapters/issues/1240))
10
+ - Update function related global macros to use `default__` naming scheme ([#1356](https://github.com/dbt-labs/dbt-adapters/issues/1356))
11
+
12
+ ### Contributors
13
+ - [@jeremyyeo](https://github.com/jeremyyeo) ([#1240](https://github.com/dbt-labs/dbt-adapters/issues/1240))
@@ -10,6 +10,21 @@ and is generated by [Changie](https://github.com/miniscruff/changie)
10
10
  - Do not edit this file directly. This file is auto-generated using [changie](https://github.com/miniscruff/changie)
11
11
  - For details on how to document a change, see the [contributing guide](/CONTRIBUTING.md#changelog-entry)
12
12
 
13
+ ## dbt-adapters 1.17.0 - September 29, 2025
14
+
15
+ ### Features
16
+
17
+ - Initial framework for UDF support ([#1268](https://github.com/dbt-labs/dbt-adapters/issues/1268))
18
+
19
+ ### Fixes
20
+
21
+ - Fix duplicates when hard_deletes new_record is used with custom dbt_valid_to_current ([#1240](https://github.com/dbt-labs/dbt-adapters/issues/1240))
22
+ - Update function related global macros to use `default__` naming scheme ([#1356](https://github.com/dbt-labs/dbt-adapters/issues/1356))
23
+
24
+ ### Contributors
25
+ - [@jeremyyeo](https://github.com/jeremyyeo) ([#1240](https://github.com/dbt-labs/dbt-adapters/issues/1240))
26
+
27
+
13
28
  ## dbt-adapters 1.16.6 - September 03, 2025
14
29
 
15
30
  ### Under the Hood
@@ -20,7 +35,6 @@ and is generated by [Changie](https://github.com/miniscruff/changie)
20
35
  ### Contributors
21
36
  - [@jasonlin45](https://github.com/jasonlin45) ([#1308](https://github.com/dbt-labs/dbt-adapters/issues/1308))
22
37
 
23
-
24
38
  ## dbt-adapters 1.16.5 - August 19, 2025
25
39
 
26
40
  ### Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dbt-adapters
3
- Version: 1.16.6
3
+ Version: 1.17.0
4
4
  Summary: The set of adapter protocols and base functionality that supports integration with dbt-core
5
5
  Project-URL: Homepage, https://github.com/dbt-labs/dbt-adapters/tree/main/dbt-adapters
6
6
  Project-URL: Documentation, https://docs.getdbt.com
@@ -0,0 +1 @@
1
+ version = "1.17.0"
@@ -376,12 +376,17 @@ class BaseRelation(FakeAPIObject, Hashable):
376
376
  return hash(self.render())
377
377
 
378
378
  def __str__(self) -> str:
379
- rendered = self.render() if self.limit is None else self.render_limited()
379
+ # TODO: This function seems to have more if's than it needs to. We should see if we can simplify it.
380
+ if self.is_function:
381
+ # If it's a function we skip all special rendering logic and just return the raw render
382
+ rendered = self.render()
383
+ else:
384
+ rendered = self.render() if self.limit is None else self.render_limited()
380
385
 
381
- # Limited subquery is wrapped by the event time filter subquery, and not the other way around.
382
- # This is because in the context of resolving limited refs, we care more about performance than reliably producing a sample of a certain size.
383
- if self.event_time_filter:
384
- rendered = self.render_event_time_filtered(rendered)
386
+ # Limited subquery is wrapped by the event time filter subquery, and not the other way around.
387
+ # This is because in the context of resolving limited refs, we care more about performance than reliably producing a sample of a certain size.
388
+ if self.event_time_filter:
389
+ rendered = self.render_event_time_filtered(rendered)
385
390
 
386
391
  return rendered
387
392
 
@@ -426,6 +431,10 @@ class BaseRelation(FakeAPIObject, Hashable):
426
431
  def is_pointer(self) -> bool:
427
432
  return self.type == RelationType.PointerTable
428
433
 
434
+ @property
435
+ def is_function(self) -> bool:
436
+ return self.type == RelationType.Function
437
+
429
438
  @classproperty
430
439
  def Table(cls) -> str:
431
440
  return str(RelationType.Table)
@@ -450,6 +459,10 @@ class BaseRelation(FakeAPIObject, Hashable):
450
459
  def PointerTable(cls) -> str:
451
460
  return str(RelationType.PointerTable)
452
461
 
462
+ @classproperty
463
+ def Function(cls) -> str:
464
+ return str(RelationType.Function)
465
+
453
466
  @classproperty
454
467
  def get_relation_type(cls) -> Type[RelationType]:
455
468
  return RelationType
@@ -22,6 +22,7 @@ class RelationType(StrEnum):
22
22
  # this is a "catch all" that is better than `None` == external to anything dbt is aware of
23
23
  External = "external"
24
24
  PointerTable = "pointer_table"
25
+ Function = "function"
25
26
 
26
27
 
27
28
  class MaterializationContract(Protocol):
@@ -0,0 +1,16 @@
1
+ {% materialization function, default %}
2
+ {% set existing_relation = load_cached_relation(this) %}
3
+ {% set target_relation = this.incorporate(type=this.Function) %}
4
+
5
+ {{ run_hooks(pre_hooks) }}
6
+
7
+ {% set function_type_macro = get_function_macro('scalar', 'sql') %}
8
+ {% set build_sql = function_type_macro(target_relation) %}
9
+
10
+ {{ function_execute_build_sql(build_sql, existing_relation, target_relation) }}
11
+
12
+ {{ run_hooks(post_hooks) }}
13
+
14
+ {{ return({'relations': [target_relation]}) }}
15
+
16
+ {% endmaterialization %}
@@ -0,0 +1,34 @@
1
+ {% macro function_execute_build_sql(build_sql, existing_relation, target_relation) %}
2
+ {{ return(adapter.dispatch('function_execute_build_sql', 'dbt')(build_sql, existing_relation, target_relation)) }}
3
+ {% endmacro %}
4
+
5
+ {% macro default__function_execute_build_sql(build_sql, existing_relation, target_relation) %}
6
+
7
+ {% set grant_config = config.get('grants') %}
8
+
9
+ {% call statement(name="main") %}
10
+ {{ build_sql }}
11
+ {% endcall %}
12
+
13
+ {% set should_revoke = should_revoke(existing_relation, full_refresh_mode=True) %}
14
+ {% do apply_grants(target_relation, grant_config, should_revoke=should_revoke) %}
15
+
16
+ {% do persist_docs(target_relation, model) %}
17
+
18
+ {{ adapter.commit() }}
19
+
20
+ {% endmacro %}
21
+
22
+
23
+ {% macro get_function_macro(function_type, function_language) %}
24
+ {{ return(adapter.dispatch('get_function_macro', 'dbt')(function_type, function_language)) }}
25
+ {% endmacro %}
26
+
27
+ {% macro default__get_function_macro(function_type, function_language) %}
28
+ {% set macro_name = function_type ~ "_function_" ~ function_language %}
29
+ {% if not macro_name in context %}
30
+ {{ exceptions.raise_not_implemented(function_language ~ ' ' ~ function_type ~ ' function not implemented for adapter ' ~adapter.type()) }}
31
+ {% endif %}
32
+ {% set macro = context[macro_name] %}
33
+ {{ return(macro) }}
34
+ {% endmacro %}
@@ -0,0 +1,38 @@
1
+ {% macro scalar_function_sql(target_relation) %}
2
+ {{ return(adapter.dispatch('scalar_function_sql', 'dbt')(target_relation)) }}
3
+ {% endmacro %}
4
+
5
+ {% macro default__scalar_function_sql(target_relation) %}
6
+ {{ scalar_function_create_replace_signature_sql(target_relation) }}
7
+ {{ scalar_function_body_sql() }};
8
+ {% endmacro %}
9
+
10
+ {% macro scalar_function_create_replace_signature_sql(target_relation) %}
11
+ {{ return(adapter.dispatch('scalar_function_create_replace_signature_sql', 'dbt')(target_relation)) }}
12
+ {% endmacro %}
13
+
14
+ {% macro default__scalar_function_create_replace_signature_sql(target_relation) %}
15
+ CREATE OR REPLACE FUNCTION {{ target_relation.render() }} ({{ formatted_scalar_function_args_sql()}}) RETURNS {{ model.return_type.type }} AS
16
+ {% endmacro %}
17
+
18
+ {% macro formatted_scalar_function_args_sql() %}
19
+ {{ return(adapter.dispatch('formatted_scalar_function_args_sql', 'dbt')()) }}
20
+ {% endmacro %}
21
+
22
+ {% macro default__formatted_scalar_function_args_sql() %}
23
+ {% set args = [] %}
24
+ {% for arg in model.arguments -%}
25
+ {%- do args.append(arg.name ~ ' ' ~ arg.type) -%}
26
+ {%- endfor %}
27
+ {{ args | join(', ') }}
28
+ {% endmacro %}
29
+
30
+ {% macro scalar_function_body_sql() %}
31
+ {{ return(adapter.dispatch('scalar_function_body_sql', 'dbt')()) }}
32
+ {% endmacro %}
33
+
34
+ {% macro default__scalar_function_body_sql() %}
35
+ $$
36
+ {{ model.compiled_code }}
37
+ $$ LANGUAGE SQL;
38
+ {% endmacro %}
@@ -158,7 +158,12 @@
158
158
  and not (
159
159
  --avoid updating the record's valid_to if the latest entry is marked as deleted
160
160
  snapshotted_data.{{ columns.dbt_is_deleted }} = 'True'
161
- and snapshotted_data.{{ columns.dbt_valid_to }} is null
161
+ and
162
+ {% if config.get('dbt_valid_to_current') -%}
163
+ snapshotted_data.{{ columns.dbt_valid_to }} = {{ config.get('dbt_valid_to_current') }}
164
+ {%- else -%}
165
+ snapshotted_data.{{ columns.dbt_valid_to }} is null
166
+ {%- endif %}
162
167
  )
163
168
  {%- endif %}
164
169
  )
@@ -172,10 +177,10 @@
172
177
 
173
178
  select
174
179
  'insert' as dbt_change_type,
175
- {#
180
+ {#/*
176
181
  If a column has been added to the source it won't yet exist in the
177
182
  snapshotted table so we insert a null value as a placeholder for the column.
178
- #}
183
+ */#}
179
184
  {%- for col in source_sql_cols -%}
180
185
  {%- if col.name in snapshotted_cols -%}
181
186
  snapshotted_data.{{ adapter.quote(col.column) }},
@@ -202,7 +207,12 @@
202
207
  and not (
203
208
  --avoid inserting a new record if the latest one is marked as deleted
204
209
  snapshotted_data.{{ columns.dbt_is_deleted }} = 'True'
205
- and snapshotted_data.{{ columns.dbt_valid_to }} is null
210
+ and
211
+ {% if config.get('dbt_valid_to_current') -%}
212
+ snapshotted_data.{{ columns.dbt_valid_to }} = {{ config.get('dbt_valid_to_current') }}
213
+ {%- else -%}
214
+ snapshotted_data.{{ columns.dbt_valid_to }} is null
215
+ {%- endif %}
206
216
  )
207
217
 
208
218
  )
@@ -1 +0,0 @@
1
- version = "1.16.6"
File without changes
File without changes
File without changes
File without changes