sqlglot 27.28.0__tar.gz → 27.28.1__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 sqlglot might be problematic. Click here for more details.

Files changed (228) hide show
  1. {sqlglot-27.28.0 → sqlglot-27.28.1}/CHANGELOG.md +162 -0
  2. {sqlglot-27.28.0 → sqlglot-27.28.1}/PKG-INFO +1 -1
  3. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/_version.py +3 -3
  4. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.egg-info/PKG-INFO +1 -1
  5. {sqlglot-27.28.0 → sqlglot-27.28.1}/.gitignore +0 -0
  6. {sqlglot-27.28.0 → sqlglot-27.28.1}/.gitpod.yml +0 -0
  7. {sqlglot-27.28.0 → sqlglot-27.28.1}/.pre-commit-config.yaml +0 -0
  8. {sqlglot-27.28.0 → sqlglot-27.28.1}/CONTRIBUTING.md +0 -0
  9. {sqlglot-27.28.0 → sqlglot-27.28.1}/LICENSE +0 -0
  10. {sqlglot-27.28.0 → sqlglot-27.28.1}/MANIFEST.in +0 -0
  11. {sqlglot-27.28.0 → sqlglot-27.28.1}/Makefile +0 -0
  12. {sqlglot-27.28.0 → sqlglot-27.28.1}/README.md +0 -0
  13. {sqlglot-27.28.0 → sqlglot-27.28.1}/pyproject.toml +0 -0
  14. {sqlglot-27.28.0 → sqlglot-27.28.1}/setup.cfg +0 -0
  15. {sqlglot-27.28.0 → sqlglot-27.28.1}/setup.py +0 -0
  16. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/__init__.py +0 -0
  17. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/__main__.py +0 -0
  18. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/_typing.py +0 -0
  19. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/__init__.py +0 -0
  20. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/athena.py +0 -0
  21. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/bigquery.py +0 -0
  22. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/clickhouse.py +0 -0
  23. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/databricks.py +0 -0
  24. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/dialect.py +0 -0
  25. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/doris.py +0 -0
  26. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/dremio.py +0 -0
  27. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/drill.py +0 -0
  28. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/druid.py +0 -0
  29. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/duckdb.py +0 -0
  30. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/dune.py +0 -0
  31. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/exasol.py +0 -0
  32. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/fabric.py +0 -0
  33. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/hive.py +0 -0
  34. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/materialize.py +0 -0
  35. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/mysql.py +0 -0
  36. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/oracle.py +0 -0
  37. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/postgres.py +0 -0
  38. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/presto.py +0 -0
  39. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/prql.py +0 -0
  40. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/redshift.py +0 -0
  41. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/risingwave.py +0 -0
  42. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/singlestore.py +0 -0
  43. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/snowflake.py +0 -0
  44. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/solr.py +0 -0
  45. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/spark.py +0 -0
  46. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/spark2.py +0 -0
  47. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/sqlite.py +0 -0
  48. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/starrocks.py +0 -0
  49. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/tableau.py +0 -0
  50. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/teradata.py +0 -0
  51. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/trino.py +0 -0
  52. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/dialects/tsql.py +0 -0
  53. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/diff.py +0 -0
  54. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/errors.py +0 -0
  55. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/executor/__init__.py +0 -0
  56. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/executor/context.py +0 -0
  57. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/executor/env.py +0 -0
  58. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/executor/python.py +0 -0
  59. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/executor/table.py +0 -0
  60. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/expressions.py +0 -0
  61. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/generator.py +0 -0
  62. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/helper.py +0 -0
  63. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/jsonpath.py +0 -0
  64. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/lineage.py +0 -0
  65. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/__init__.py +0 -0
  66. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/annotate_types.py +0 -0
  67. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/canonicalize.py +0 -0
  68. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/eliminate_ctes.py +0 -0
  69. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/eliminate_joins.py +0 -0
  70. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/eliminate_subqueries.py +0 -0
  71. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/isolate_table_selects.py +0 -0
  72. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/merge_subqueries.py +0 -0
  73. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/normalize.py +0 -0
  74. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/normalize_identifiers.py +0 -0
  75. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/optimize_joins.py +0 -0
  76. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/optimizer.py +0 -0
  77. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/pushdown_predicates.py +0 -0
  78. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/pushdown_projections.py +0 -0
  79. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/qualify.py +0 -0
  80. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/qualify_columns.py +0 -0
  81. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/qualify_tables.py +0 -0
  82. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/scope.py +0 -0
  83. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/simplify.py +0 -0
  84. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/optimizer/unnest_subqueries.py +0 -0
  85. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/parser.py +0 -0
  86. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/planner.py +0 -0
  87. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/py.typed +0 -0
  88. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/schema.py +0 -0
  89. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/serde.py +0 -0
  90. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/time.py +0 -0
  91. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/tokens.py +0 -0
  92. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/transforms.py +0 -0
  93. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot/trie.py +0 -0
  94. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.egg-info/SOURCES.txt +0 -0
  95. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.egg-info/dependency_links.txt +0 -0
  96. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.egg-info/requires.txt +0 -0
  97. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.egg-info/top_level.txt +0 -0
  98. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglot.png +0 -0
  99. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/Cargo.lock +0 -0
  100. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/Cargo.toml +0 -0
  101. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/benches/dialect_settings.json +0 -0
  102. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/benches/long.rs +0 -0
  103. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/benches/token_type_settings.json +0 -0
  104. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/benches/tokenizer_dialect_settings.json +0 -0
  105. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/benches/tokenizer_settings.json +0 -0
  106. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/pyproject.toml +0 -0
  107. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/src/lib.rs +0 -0
  108. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/src/settings.rs +0 -0
  109. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/src/token.rs +0 -0
  110. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/src/tokenizer.rs +0 -0
  111. {sqlglot-27.28.0 → sqlglot-27.28.1}/sqlglotrs/src/trie.rs +0 -0
  112. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/__init__.py +0 -0
  113. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/__init__.py +0 -0
  114. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_athena.py +0 -0
  115. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_bigquery.py +0 -0
  116. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_clickhouse.py +0 -0
  117. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_databricks.py +0 -0
  118. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_dialect.py +0 -0
  119. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_doris.py +0 -0
  120. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_dremio.py +0 -0
  121. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_drill.py +0 -0
  122. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_druid.py +0 -0
  123. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_duckdb.py +0 -0
  124. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_dune.py +0 -0
  125. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_exasol.py +0 -0
  126. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_fabric.py +0 -0
  127. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_hive.py +0 -0
  128. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_materialize.py +0 -0
  129. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_mysql.py +0 -0
  130. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_oracle.py +0 -0
  131. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_pipe_syntax.py +0 -0
  132. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_postgres.py +0 -0
  133. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_presto.py +0 -0
  134. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_prql.py +0 -0
  135. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_redshift.py +0 -0
  136. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_risingwave.py +0 -0
  137. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_singlestore.py +0 -0
  138. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_snowflake.py +0 -0
  139. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_solr.py +0 -0
  140. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_spark.py +0 -0
  141. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_sqlite.py +0 -0
  142. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_starrocks.py +0 -0
  143. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_tableau.py +0 -0
  144. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_teradata.py +0 -0
  145. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_trino.py +0 -0
  146. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/dialects/test_tsql.py +0 -0
  147. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/identity.sql +0 -0
  148. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/jsonpath/LICENSE +0 -0
  149. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/jsonpath/cts.json +0 -0
  150. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/annotate_functions.sql +0 -0
  151. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/annotate_types.sql +0 -0
  152. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/canonicalize.sql +0 -0
  153. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/eliminate_ctes.sql +0 -0
  154. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/eliminate_joins.sql +0 -0
  155. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/eliminate_subqueries.sql +0 -0
  156. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/isolate_table_selects.sql +0 -0
  157. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/merge_subqueries.sql +0 -0
  158. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/normalize.sql +0 -0
  159. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/normalize_identifiers.sql +0 -0
  160. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/optimize_joins.sql +0 -0
  161. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/optimizer.sql +0 -0
  162. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/pushdown_cte_alias_columns.sql +0 -0
  163. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/pushdown_predicates.sql +0 -0
  164. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/pushdown_projections.sql +0 -0
  165. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/qualify_columns.sql +0 -0
  166. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/qualify_columns__invalid.sql +0 -0
  167. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/qualify_columns__with_invisible.sql +0 -0
  168. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/qualify_columns_ddl.sql +0 -0
  169. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/qualify_tables.sql +0 -0
  170. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/quote_identifiers.sql +0 -0
  171. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/simplify.sql +0 -0
  172. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/call_center.csv.gz +0 -0
  173. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/catalog_page.csv.gz +0 -0
  174. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/catalog_returns.csv.gz +0 -0
  175. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/catalog_sales.csv.gz +0 -0
  176. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/customer.csv.gz +0 -0
  177. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/customer_address.csv.gz +0 -0
  178. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/customer_demographics.csv.gz +0 -0
  179. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/date_dim.csv.gz +0 -0
  180. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/household_demographics.csv.gz +0 -0
  181. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/income_band.csv.gz +0 -0
  182. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/inventory.csv.gz +0 -0
  183. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/item.csv.gz +0 -0
  184. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/promotion.csv.gz +0 -0
  185. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/reason.csv.gz +0 -0
  186. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/ship_mode.csv.gz +0 -0
  187. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/store.csv.gz +0 -0
  188. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/store_returns.csv.gz +0 -0
  189. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/store_sales.csv.gz +0 -0
  190. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/time_dim.csv.gz +0 -0
  191. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/tpc-ds.sql +0 -0
  192. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/warehouse.csv.gz +0 -0
  193. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/web_page.csv.gz +0 -0
  194. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/web_returns.csv.gz +0 -0
  195. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/web_sales.csv.gz +0 -0
  196. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-ds/web_site.csv.gz +0 -0
  197. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/customer.csv.gz +0 -0
  198. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/lineitem.csv.gz +0 -0
  199. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/nation.csv.gz +0 -0
  200. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/orders.csv.gz +0 -0
  201. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/part.csv.gz +0 -0
  202. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/partsupp.csv.gz +0 -0
  203. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/region.csv.gz +0 -0
  204. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/supplier.csv.gz +0 -0
  205. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/tpc-h/tpc-h.sql +0 -0
  206. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/optimizer/unnest_subqueries.sql +0 -0
  207. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/partial.sql +0 -0
  208. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/fixtures/pretty.sql +0 -0
  209. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/gen_fixtures.py +0 -0
  210. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/helpers.py +0 -0
  211. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_build.py +0 -0
  212. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_dialect_imports.py +0 -0
  213. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_diff.py +0 -0
  214. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_docs.py +0 -0
  215. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_executor.py +0 -0
  216. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_expressions.py +0 -0
  217. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_generator.py +0 -0
  218. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_helper.py +0 -0
  219. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_jsonpath.py +0 -0
  220. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_lineage.py +0 -0
  221. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_optimizer.py +0 -0
  222. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_parser.py +0 -0
  223. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_schema.py +0 -0
  224. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_serde.py +0 -0
  225. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_time.py +0 -0
  226. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_tokens.py +0 -0
  227. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_transforms.py +0 -0
  228. {sqlglot-27.28.0 → sqlglot-27.28.1}/tests/test_transpile.py +0 -0
@@ -1,6 +1,167 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ ## [v27.28.0] - 2025-10-21
5
+ ### :boom: BREAKING CHANGES
6
+ - due to [`2238ac2`](https://github.com/tobymao/sqlglot/commit/2238ac27478bd272ba39928bbec1075c4191ee1b) - transpile timestamp literals in datediff fixes [#6083](https://github.com/tobymao/sqlglot/pull/6083) *(PR [#6086](https://github.com/tobymao/sqlglot/pull/6086) by [@georgesittas](https://github.com/georgesittas))*:
7
+
8
+ transpile timestamp literals in datediff fixes #6083 (#6086)
9
+
10
+ - due to [`c49ba0e`](https://github.com/tobymao/sqlglot/commit/c49ba0eee21f7776703d2a26c6641b4a32a1cff7) - Annotate type for snowflake WIDTH_BUCKET function *(PR [#6078](https://github.com/tobymao/sqlglot/pull/6078) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
11
+
12
+ Annotate type for snowflake WIDTH_BUCKET function (#6078)
13
+
14
+ - due to [`fbc1f13`](https://github.com/tobymao/sqlglot/commit/fbc1f1335eecaaaab4fc93ddbb74611a4df0aea7) - annotate type for Snowflake CONVERT_TIMEZONE function *(PR [#6076](https://github.com/tobymao/sqlglot/pull/6076) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*:
15
+
16
+ annotate type for Snowflake CONVERT_TIMEZONE function (#6076)
17
+
18
+ - due to [`70e977c`](https://github.com/tobymao/sqlglot/commit/70e977c5edfb495529d38a9096cb40762a9b5d7b) - annotate type for Snowflake DATE_TRUNC function *(PR [#6080](https://github.com/tobymao/sqlglot/pull/6080) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*:
19
+
20
+ annotate type for Snowflake DATE_TRUNC function (#6080)
21
+
22
+ - due to [`e9cf146`](https://github.com/tobymao/sqlglot/commit/e9cf146a4a6cd78f6a59c195e7ec12240b836e5e) - annotate type for Snowflake DATE_PART function *(PR [#6079](https://github.com/tobymao/sqlglot/pull/6079) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*:
23
+
24
+ annotate type for Snowflake DATE_PART function (#6079)
25
+
26
+ - due to [`5109890`](https://github.com/tobymao/sqlglot/commit/510989043d18baa17502a971262462814a2eb5be) - VALUES with ORDER BY/LIMIT/OFFSET *(PR [#6094](https://github.com/tobymao/sqlglot/pull/6094) by [@geooo109](https://github.com/geooo109))*:
27
+
28
+ VALUES with ORDER BY/LIMIT/OFFSET (#6094)
29
+
30
+ - due to [`6fe5824`](https://github.com/tobymao/sqlglot/commit/6fe58247888c326093618657fb027e482d82d107) - Annotate type for hour, minute, second functions *(PR [#6100](https://github.com/tobymao/sqlglot/pull/6100) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
31
+
32
+ Annotate type for hour, minute, second functions (#6100)
33
+
34
+ - due to [`a4d07a0`](https://github.com/tobymao/sqlglot/commit/a4d07a07eefbdaf88d30df2310a9533afdc75a82) - Annotate type for snowflake EXTRACT function *(PR [#6099](https://github.com/tobymao/sqlglot/pull/6099) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
35
+
36
+ Annotate type for snowflake EXTRACT function (#6099)
37
+
38
+ - due to [`483770b`](https://github.com/tobymao/sqlglot/commit/483770b816fab14b7eb7222974ed2c99045302a7) - Annotate type for snowflake TIME_SLICE function *(PR [#6098](https://github.com/tobymao/sqlglot/pull/6098) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
39
+
40
+ Annotate type for snowflake TIME_SLICE function (#6098)
41
+
42
+ - due to [`06f40f9`](https://github.com/tobymao/sqlglot/commit/06f40f900ce693ba4203514e422cba8cda0dbb07) - don't simplify x XOR x due to NULL semantics *(PR [#6115](https://github.com/tobymao/sqlglot/pull/6115) by [@geooo109](https://github.com/geooo109))*:
43
+
44
+ don't simplify x XOR x due to NULL semantics (#6115)
45
+
46
+ - due to [`c286cee`](https://github.com/tobymao/sqlglot/commit/c286cee54ab93e1fd0b3be658f7e767e3e00afe9) - Annotate type for snowflake MONTHNAME function *(PR [#6116](https://github.com/tobymao/sqlglot/pull/6116) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
47
+
48
+ Annotate type for snowflake MONTHNAME function (#6116)
49
+
50
+ - due to [`1a34788`](https://github.com/tobymao/sqlglot/commit/1a34788025bdd8a018c4bb9214f72152e68bdd14) - Annotate type for snowflake PREVIOUS_DAY function *(PR [#6117](https://github.com/tobymao/sqlglot/pull/6117) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
51
+
52
+ Annotate type for snowflake PREVIOUS_DAY function (#6117)
53
+
54
+ - due to [`533faf8`](https://github.com/tobymao/sqlglot/commit/533faf87b6df351070b565dd1fe9ce4e13b6c46e) - transpile duckdb `READ_PARQUET` to `parquet.<path>` closes [#6122](https://github.com/tobymao/sqlglot/pull/6122) *(commit by [@georgesittas](https://github.com/georgesittas))*:
55
+
56
+ transpile duckdb `READ_PARQUET` to `parquet.<path>` closes #6122
57
+
58
+ - due to [`cd4e557`](https://github.com/tobymao/sqlglot/commit/cd4e557658b1384f36c9a1ef9da5a09b893229b1) - Annotate type for snowflake RANDOM function *(PR [#6124](https://github.com/tobymao/sqlglot/pull/6124) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*:
59
+
60
+ Annotate type for snowflake RANDOM function (#6124)
61
+
62
+ - due to [`fe63d84`](https://github.com/tobymao/sqlglot/commit/fe63d84f1bd365b22221f348d79c0546aa3118b0) - annotate type for Snowflake MONTHS_BETWEEN function *(PR [#6120](https://github.com/tobymao/sqlglot/pull/6120) by [@fivetran-MichaelLee](https://github.com/fivetran-MichaelLee))*:
63
+
64
+ annotate type for Snowflake MONTHS_BETWEEN function (#6120)
65
+
66
+ - due to [`598d09b`](https://github.com/tobymao/sqlglot/commit/598d09b036d938c90a44955d67175ea868090ba2) - annotate type for Snowflake DATEADD function *(PR [#6089](https://github.com/tobymao/sqlglot/pull/6089) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*:
67
+
68
+ annotate type for Snowflake DATEADD function (#6089)
69
+
70
+ - due to [`b98bcee`](https://github.com/tobymao/sqlglot/commit/b98bcee148ba426816e166dbfa9ba8e0979aae21) - Annotate type for snowflake next_day function *(PR [#6125](https://github.com/tobymao/sqlglot/pull/6125) by [@fivetran-ashashankar](https://github.com/fivetran-ashashankar))*:
71
+
72
+ Annotate type for snowflake next_day function (#6125)
73
+
74
+ - due to [`e2129c6`](https://github.com/tobymao/sqlglot/commit/e2129c6766ca1f10ff6663bec98be984abb33c91) - Do not consider BIT_COUNT an aggregate function *(PR [#6135](https://github.com/tobymao/sqlglot/pull/6135) by [@VaggelisD](https://github.com/VaggelisD))*:
75
+
76
+ Do not consider BIT_COUNT an aggregate function (#6135)
77
+
78
+ - due to [`d136414`](https://github.com/tobymao/sqlglot/commit/d136414e520270ac9ab2fd8e9df4691d269b3af0) - avoid simplifying AND with NULL *(PR [#6148](https://github.com/tobymao/sqlglot/pull/6148) by [@geooo109](https://github.com/geooo109))*:
79
+
80
+ avoid simplifying AND with NULL (#6148)
81
+
82
+ - due to [`3a334f3`](https://github.com/tobymao/sqlglot/commit/3a334f376b9766b6b99fdf195ae763bb44976ec4) - annotate type for boolnot snowflake function *(PR [#6141](https://github.com/tobymao/sqlglot/pull/6141) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*:
83
+
84
+ annotate type for boolnot snowflake function (#6141)
85
+
86
+ - due to [`99949cc`](https://github.com/tobymao/sqlglot/commit/99949ccd3ff81b524edeae437d874b86250dbb5b) - avoid needlessly copying in lineage *(PR [#6150](https://github.com/tobymao/sqlglot/pull/6150) by [@georgesittas](https://github.com/georgesittas))*:
87
+
88
+ avoid needlessly copying in lineage (#6150)
89
+
90
+ - due to [`4e36f9d`](https://github.com/tobymao/sqlglot/commit/4e36f9dd6a854b378c9bbf6b2e9811045affc63d) - Annotate type for snowflake TIMEADD function *(PR [#6134](https://github.com/tobymao/sqlglot/pull/6134) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
91
+
92
+ Annotate type for snowflake TIMEADD function (#6134)
93
+
94
+
95
+ ### :sparkles: New Features
96
+ - [`c49ba0e`](https://github.com/tobymao/sqlglot/commit/c49ba0eee21f7776703d2a26c6641b4a32a1cff7) - **optimizer**: Annotate type for snowflake WIDTH_BUCKET function *(PR [#6078](https://github.com/tobymao/sqlglot/pull/6078) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
97
+ - [`fbc1f13`](https://github.com/tobymao/sqlglot/commit/fbc1f1335eecaaaab4fc93ddbb74611a4df0aea7) - **optimizer**: annotate type for Snowflake CONVERT_TIMEZONE function *(PR [#6076](https://github.com/tobymao/sqlglot/pull/6076) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
98
+ - [`70e977c`](https://github.com/tobymao/sqlglot/commit/70e977c5edfb495529d38a9096cb40762a9b5d7b) - **optimizer**: annotate type for Snowflake DATE_TRUNC function *(PR [#6080](https://github.com/tobymao/sqlglot/pull/6080) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
99
+ - [`e9cf146`](https://github.com/tobymao/sqlglot/commit/e9cf146a4a6cd78f6a59c195e7ec12240b836e5e) - **optimizer**: annotate type for Snowflake DATE_PART function *(PR [#6079](https://github.com/tobymao/sqlglot/pull/6079) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
100
+ - [`cdf3b1b`](https://github.com/tobymao/sqlglot/commit/cdf3b1b34dc044064d0a5ba7ff22723b8ae33e5d) - **optimizer**: Annotate type for snowflake add_months function *(PR [#6097](https://github.com/tobymao/sqlglot/pull/6097) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
101
+ - [`6fe5824`](https://github.com/tobymao/sqlglot/commit/6fe58247888c326093618657fb027e482d82d107) - **optimizer**: Annotate type for hour, minute, second functions *(PR [#6100](https://github.com/tobymao/sqlglot/pull/6100) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
102
+ - [`483770b`](https://github.com/tobymao/sqlglot/commit/483770b816fab14b7eb7222974ed2c99045302a7) - **optimizer**: Annotate type for snowflake TIME_SLICE function *(PR [#6098](https://github.com/tobymao/sqlglot/pull/6098) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
103
+ - [`071a995`](https://github.com/tobymao/sqlglot/commit/071a9954aad220c1e13ba7a6714a083058a8e03f) - **tsql**: add support for iso_week on DATEPART *(PR [#6111](https://github.com/tobymao/sqlglot/pull/6111) by [@lBilali](https://github.com/lBilali))*
104
+ - :arrow_lower_right: *addresses issue [#6110](https://github.com/tobymao/sqlglot/issues/6110) opened by [@lBilali](https://github.com/lBilali)*
105
+ - [`c286cee`](https://github.com/tobymao/sqlglot/commit/c286cee54ab93e1fd0b3be658f7e767e3e00afe9) - **optimizer**: Annotate type for snowflake MONTHNAME function *(PR [#6116](https://github.com/tobymao/sqlglot/pull/6116) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
106
+ - [`1a34788`](https://github.com/tobymao/sqlglot/commit/1a34788025bdd8a018c4bb9214f72152e68bdd14) - **optimizer**: Annotate type for snowflake PREVIOUS_DAY function *(PR [#6117](https://github.com/tobymao/sqlglot/pull/6117) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
107
+ - [`533faf8`](https://github.com/tobymao/sqlglot/commit/533faf87b6df351070b565dd1fe9ce4e13b6c46e) - **spark**: transpile duckdb `READ_PARQUET` to `parquet.<path>` closes [#6122](https://github.com/tobymao/sqlglot/pull/6122) *(commit by [@georgesittas](https://github.com/georgesittas))*
108
+ - [`cd4e557`](https://github.com/tobymao/sqlglot/commit/cd4e557658b1384f36c9a1ef9da5a09b893229b1) - **optimizer**: Annotate type for snowflake RANDOM function *(PR [#6124](https://github.com/tobymao/sqlglot/pull/6124) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*
109
+ - [`fe63d84`](https://github.com/tobymao/sqlglot/commit/fe63d84f1bd365b22221f348d79c0546aa3118b0) - **optimizer**: annotate type for Snowflake MONTHS_BETWEEN function *(PR [#6120](https://github.com/tobymao/sqlglot/pull/6120) by [@fivetran-MichaelLee](https://github.com/fivetran-MichaelLee))*
110
+ - [`7cb7598`](https://github.com/tobymao/sqlglot/commit/7cb7598e13260aa45c851dc620b4994ddfa089fe) - **optimizer**: Annotate type for snowflake TIME_FROM_PARTS function *(PR [#6119](https://github.com/tobymao/sqlglot/pull/6119) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
111
+ - [`598d09b`](https://github.com/tobymao/sqlglot/commit/598d09b036d938c90a44955d67175ea868090ba2) - **optimizer**: annotate type for Snowflake DATEADD function *(PR [#6089](https://github.com/tobymao/sqlglot/pull/6089) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
112
+ - [`b98bcee`](https://github.com/tobymao/sqlglot/commit/b98bcee148ba426816e166dbfa9ba8e0979aae21) - **optimizer**: Annotate type for snowflake next_day function *(PR [#6125](https://github.com/tobymao/sqlglot/pull/6125) by [@fivetran-ashashankar](https://github.com/fivetran-ashashankar))*
113
+ - [`fe1927f`](https://github.com/tobymao/sqlglot/commit/fe1927f28600e2d8863a4e7f06e6a21bf6ff7f9c) - **duckdb**: Transpile unix_micros to epoch_us *(PR [#6127](https://github.com/tobymao/sqlglot/pull/6127) by [@vchan](https://github.com/vchan))*
114
+ - [`a531f10`](https://github.com/tobymao/sqlglot/commit/a531f107235c29ac6a7e627a323f00b8ecf7023d) - **duckdb**: transpile TimeSub *(PR [#6142](https://github.com/tobymao/sqlglot/pull/6142) by [@toriwei](https://github.com/toriwei))*
115
+ - [`b1a9dff`](https://github.com/tobymao/sqlglot/commit/b1a9dfff52a0ffbb0b7c8bfedb0a90e245b97851) - make qualify faster by owly resetting scope when needed *(PR [#6081](https://github.com/tobymao/sqlglot/pull/6081) by [@tobymao](https://github.com/tobymao))*
116
+ - [`3a334f3`](https://github.com/tobymao/sqlglot/commit/3a334f376b9766b6b99fdf195ae763bb44976ec4) - **optimizer**: annotate type for boolnot snowflake function *(PR [#6141](https://github.com/tobymao/sqlglot/pull/6141) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*
117
+ - [`4e36f9d`](https://github.com/tobymao/sqlglot/commit/4e36f9dd6a854b378c9bbf6b2e9811045affc63d) - **optimizer**: Annotate type for snowflake TIMEADD function *(PR [#6134](https://github.com/tobymao/sqlglot/pull/6134) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
118
+
119
+ ### :bug: Bug Fixes
120
+ - [`2238ac2`](https://github.com/tobymao/sqlglot/commit/2238ac27478bd272ba39928bbec1075c4191ee1b) - **duckdb**: transpile timestamp literals in datediff fixes [#6083](https://github.com/tobymao/sqlglot/pull/6083) *(PR [#6086](https://github.com/tobymao/sqlglot/pull/6086) by [@georgesittas](https://github.com/georgesittas))*
121
+ - [`bef541c`](https://github.com/tobymao/sqlglot/commit/bef541cec36f8c4295f815c3f5cd22491738901b) - **parser**: query mods and set ops in FROM-first syntax *(PR [#6092](https://github.com/tobymao/sqlglot/pull/6092) by [@geooo109](https://github.com/geooo109))*
122
+ - :arrow_lower_right: *fixes issue [#6088](https://github.com/tobymao/sqlglot/issues/6088) opened by [@denis-komarov](https://github.com/denis-komarov)*
123
+ - :arrow_lower_right: *fixes issue [#6091](https://github.com/tobymao/sqlglot/issues/6091) opened by [@denis-komarov](https://github.com/denis-komarov)*
124
+ - :arrow_lower_right: *fixes issue [#6093](https://github.com/tobymao/sqlglot/issues/6093) opened by [@denis-komarov](https://github.com/denis-komarov)*
125
+ - [`5109890`](https://github.com/tobymao/sqlglot/commit/510989043d18baa17502a971262462814a2eb5be) - **parser**: VALUES with ORDER BY/LIMIT/OFFSET *(PR [#6094](https://github.com/tobymao/sqlglot/pull/6094) by [@geooo109](https://github.com/geooo109))*
126
+ - :arrow_lower_right: *fixes issue [#6087](https://github.com/tobymao/sqlglot/issues/6087) opened by [@denis-komarov](https://github.com/denis-komarov)*
127
+ - [`4b062c8`](https://github.com/tobymao/sqlglot/commit/4b062c850bd9867be0d622f3f526762fa2b72302) - consume more syntax for cubes/rollups fixes [#6101](https://github.com/tobymao/sqlglot/pull/6101) *(commit by [@georgesittas](https://github.com/georgesittas))*
128
+ - [`f00866a`](https://github.com/tobymao/sqlglot/commit/f00866aeb8b7f51e27173c688225fe16d777eb1a) - **duckdb**: 1 arg FORMAT func *(PR [#6109](https://github.com/tobymao/sqlglot/pull/6109) by [@geooo109](https://github.com/geooo109))*
129
+ - :arrow_lower_right: *fixes issue [#6108](https://github.com/tobymao/sqlglot/issues/6108) opened by [@erindru](https://github.com/erindru)*
130
+ - [`77dfd5a`](https://github.com/tobymao/sqlglot/commit/77dfd5a41bb9ce5450e0f6b7a78c953c8ade14d5) - lineage does not modify sql input if expression *(PR [#6113](https://github.com/tobymao/sqlglot/pull/6113) by [@snovik75](https://github.com/snovik75))*
131
+ - :arrow_lower_right: *fixes issue [#6112](https://github.com/tobymao/sqlglot/issues/6112) opened by [@snovik75](https://github.com/snovik75)*
132
+ - [`06f40f9`](https://github.com/tobymao/sqlglot/commit/06f40f900ce693ba4203514e422cba8cda0dbb07) - **optimizer**: don't simplify x XOR x due to NULL semantics *(PR [#6115](https://github.com/tobymao/sqlglot/pull/6115) by [@geooo109](https://github.com/geooo109))*
133
+ - :arrow_lower_right: *fixes issue [#6104](https://github.com/tobymao/sqlglot/issues/6104) opened by [@dllggyx](https://github.com/dllggyx)*
134
+ - [`03e2dff`](https://github.com/tobymao/sqlglot/commit/03e2dff9b074dc228cf3854ff1f4357e091aa9b3) - allow parsing `analyze` as an identifier fixes [#6123](https://github.com/tobymao/sqlglot/pull/6123) *(commit by [@georgesittas](https://github.com/georgesittas))*
135
+ - [`8744431`](https://github.com/tobymao/sqlglot/commit/874443148c8ec2a773dfaca5da10d3587a49de3e) - transpile bigquery DATETIME_DIFF to duckdb *(PR [#6126](https://github.com/tobymao/sqlglot/pull/6126) by [@toriwei](https://github.com/toriwei))*
136
+ - :arrow_lower_right: *fixes issue [#6107](https://github.com/tobymao/sqlglot/issues/6107) opened by [@izeigerman](https://github.com/izeigerman)*
137
+ - [`b94e81b`](https://github.com/tobymao/sqlglot/commit/b94e81b42b89c75625b2da779c0f53777d9b6b48) - **optimizer**: avoid removing string literals from WHERE clause *(PR [#6131](https://github.com/tobymao/sqlglot/pull/6131) by [@geooo109](https://github.com/geooo109))*
138
+ - :arrow_lower_right: *fixes issue [#6128](https://github.com/tobymao/sqlglot/issues/6128) opened by [@dllggyx](https://github.com/dllggyx)*
139
+ - [`e2129c6`](https://github.com/tobymao/sqlglot/commit/e2129c6766ca1f10ff6663bec98be984abb33c91) - **optimizer**: Do not consider BIT_COUNT an aggregate function *(PR [#6135](https://github.com/tobymao/sqlglot/pull/6135) by [@VaggelisD](https://github.com/VaggelisD))*
140
+ - :arrow_lower_right: *fixes issue [#6130](https://github.com/tobymao/sqlglot/issues/6130) opened by [@dllggyx](https://github.com/dllggyx)*
141
+ - [`03bfeed`](https://github.com/tobymao/sqlglot/commit/03bfeed56c5c2f143ce2e1be38d519f902d19961) - **starrocks**: disable IS TRUE/FALSE syntax support *(PR [#6145](https://github.com/tobymao/sqlglot/pull/6145) by [@petrikoro](https://github.com/petrikoro))*
142
+ - :arrow_lower_right: *fixes issue [#6144](https://github.com/tobymao/sqlglot/issues/6144) opened by [@petrikoro](https://github.com/petrikoro)*
143
+ - [`d136414`](https://github.com/tobymao/sqlglot/commit/d136414e520270ac9ab2fd8e9df4691d269b3af0) - **optimizer**: avoid simplifying AND with NULL *(PR [#6148](https://github.com/tobymao/sqlglot/pull/6148) by [@geooo109](https://github.com/geooo109))*
144
+ - :arrow_lower_right: *fixes issue [#6136](https://github.com/tobymao/sqlglot/issues/6136) opened by [@dllggyx](https://github.com/dllggyx)*
145
+ - [`1fd9991`](https://github.com/tobymao/sqlglot/commit/1fd99911a60f0543fbc79221a8c6a6f232ed0a2a) - **clickhouse**: NOT + IN precedence *(PR [#6149](https://github.com/tobymao/sqlglot/pull/6149) by [@georgesittas](https://github.com/georgesittas))*
146
+ - :arrow_lower_right: *fixes issue [#6143](https://github.com/tobymao/sqlglot/issues/6143) opened by [@mlipiev](https://github.com/mlipiev)*
147
+
148
+ ### :recycle: Refactors
149
+ - [`58dbce3`](https://github.com/tobymao/sqlglot/commit/58dbce30da5ab94af82247ab8a7eb85200d9b8af) - bq static type annotators *(PR [#6103](https://github.com/tobymao/sqlglot/pull/6103) by [@geooo109](https://github.com/geooo109))*
150
+ - [`c970235`](https://github.com/tobymao/sqlglot/commit/c97023549623fe5974d6bff57e64339eff74187e) - clean up MONTHNAME test *(commit by [@geooo109](https://github.com/geooo109))*
151
+
152
+ ### :wrench: Chores
153
+ - [`d36ba87`](https://github.com/tobymao/sqlglot/commit/d36ba8774a2a4b53c122e3b78086ce0f09e77244) - **optimizer**: add tests for Snowflake DATE_FROM_PARTS function *(PR [#6077](https://github.com/tobymao/sqlglot/pull/6077) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
154
+ - [`2bc05cf`](https://github.com/tobymao/sqlglot/commit/2bc05cf3bd53b874a1505c747e38f8a6a1dbf8c7) - **optimizer**: add tests for Snowflake DATEDIFF function *(PR [#6090](https://github.com/tobymao/sqlglot/pull/6090) by [@fivetran-BradfordPaskewitz](https://github.com/fivetran-BradfordPaskewitz))*
155
+ - [`a4d07a0`](https://github.com/tobymao/sqlglot/commit/a4d07a07eefbdaf88d30df2310a9533afdc75a82) - **optimizer**: Annotate type for snowflake EXTRACT function *(PR [#6099](https://github.com/tobymao/sqlglot/pull/6099) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
156
+ - [`ab1da2e`](https://github.com/tobymao/sqlglot/commit/ab1da2e54a83e29d708047d4b3f8abcc1094229d) - **optimizer**: add type annotation tests for snowflake LAST_DAY function *(PR [#6105](https://github.com/tobymao/sqlglot/pull/6105) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*
157
+ - [`4e24c0a`](https://github.com/tobymao/sqlglot/commit/4e24c0ad92e7071a1f1537886173e29999b46f72) - **optimizer**: add type annotation tests for snowflake TIMESTAMPDIFF function *(PR [#6138](https://github.com/tobymao/sqlglot/pull/6138) by [@fivetran-MichaelLee](https://github.com/fivetran-MichaelLee))*
158
+ - [`ae8571f`](https://github.com/tobymao/sqlglot/commit/ae8571fdec71587188e45fe087e1967f5ba641bc) - **optimizer**: add type annotation tests for snowflake TIMEDIFF *(PR [#6140](https://github.com/tobymao/sqlglot/pull/6140) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*
159
+ - [`3059320`](https://github.com/tobymao/sqlglot/commit/30593202b30001933f05747937975013754b75fa) - copy by default in `lineage` *(commit by [@georgesittas](https://github.com/georgesittas))*
160
+ - [`99949cc`](https://github.com/tobymao/sqlglot/commit/99949ccd3ff81b524edeae437d874b86250dbb5b) - avoid needlessly copying in lineage *(PR [#6150](https://github.com/tobymao/sqlglot/pull/6150) by [@georgesittas](https://github.com/georgesittas))*
161
+ - [`e7756d8`](https://github.com/tobymao/sqlglot/commit/e7756d8e9f347bfba3f861463890bf57e532cc54) - **optimizer**: add annotation tests for snowflake's BOOLXOR *(PR [#6154](https://github.com/tobymao/sqlglot/pull/6154) by [@fivetran-felixhuang](https://github.com/fivetran-felixhuang))*
162
+ - [`72e43e3`](https://github.com/tobymao/sqlglot/commit/72e43e3ea08f9dce5a32654060a56f2ee31bea8f) - **optimizer**: add type annotation tests for snowflake's TIMESTAMPADD function *(PR [#6146](https://github.com/tobymao/sqlglot/pull/6146) by [@fivetran-ashashankar](https://github.com/fivetran-ashashankar))*
163
+
164
+
4
165
  ## [v27.27.0] - 2025-10-13
5
166
  ### :boom: BREAKING CHANGES
6
167
  - due to [`c67276d`](https://github.com/tobymao/sqlglot/commit/c67276d5be970252e14d1817d8498fc9985222d9) - Annotate type for snowflake RADIANS function. *(PR [#6064](https://github.com/tobymao/sqlglot/pull/6064) by [@fivetran-amrutabhimsenayachit](https://github.com/fivetran-amrutabhimsenayachit))*:
@@ -7885,3 +8046,4 @@ Changelog
7885
8046
  [v27.25.0]: https://github.com/tobymao/sqlglot/compare/v27.24.2...v27.25.0
7886
8047
  [v27.26.0]: https://github.com/tobymao/sqlglot/compare/v27.25.2...v27.26.0
7887
8048
  [v27.27.0]: https://github.com/tobymao/sqlglot/compare/v27.26.0...v27.27.0
8049
+ [v27.28.0]: https://github.com/tobymao/sqlglot/compare/v27.27.0...v27.28.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlglot
3
- Version: 27.28.0
3
+ Version: 27.28.1
4
4
  Summary: An easily customizable SQL parser and transpiler
5
5
  Author-email: Toby Mao <toby.mao@gmail.com>
6
6
  License-Expression: MIT
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '27.28.0'
32
- __version_tuple__ = version_tuple = (27, 28, 0)
31
+ __version__ = version = '27.28.1'
32
+ __version_tuple__ = version_tuple = (27, 28, 1)
33
33
 
34
- __commit_id__ = commit_id = 'g72e43e3ea'
34
+ __commit_id__ = commit_id = 'g0c5387499'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlglot
3
- Version: 27.28.0
3
+ Version: 27.28.1
4
4
  Summary: An easily customizable SQL parser and transpiler
5
5
  Author-email: Toby Mao <toby.mao@gmail.com>
6
6
  License-Expression: MIT
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes