sqlframe 3.43.4__tar.gz → 3.43.6__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.
- {sqlframe-3.43.4 → sqlframe-3.43.6}/PKG-INFO +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/bigquery.md +4 -4
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/databricks.md +4 -4
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/duckdb.md +4 -3
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/postgres.md +4 -4
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/redshift.md +2 -2
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/snowflake.md +5 -5
- {sqlframe-3.43.4 → sqlframe-3.43.6}/setup.py +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/_version.py +3 -3
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/dataframe.py +21 -5
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/functions.py +5 -5
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/operations.py +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/util.py +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/readwriter.py +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/session.py +6 -5
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe.egg-info/PKG-INFO +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe.egg-info/requires.txt +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_dataframe.py +21 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_int_functions.py +1 -1
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.github/CODEOWNERS +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.github/workflows/main.workflow.yaml +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.github/workflows/publish.workflow.yaml +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.gitignore +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.pre-commit-config.yaml +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/.readthedocs.yaml +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/LICENSE +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/Makefile +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/README.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/add_chatgpt_support.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/adding_ai_to_meal.jpeg +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/hype_train.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/nonsense_sql.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/openai_full_rewrite.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/sunny_shake_head_no.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/but_wait_theres_more.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/cake.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/you_get_pyspark_api.gif +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/sqlframe_universal_dataframe_api.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/configuration.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/bigquery.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/duckdb.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/images/SF.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/images/favicon.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/docs/postgres.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/images/SF.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/images/favicon.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/index.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/requirements.txt +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/spark.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/standalone.md +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/docs/stylesheets/extra.css +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/mkdocs.yml +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/mypy.ini +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/pytest.ini +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/renovate.json +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/setup.cfg +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/LICENSE +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/_typing.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/decorators.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/exceptions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/function_alternatives.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/mixins/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/mixins/catalog_mixins.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/mixins/dataframe_mixins.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/mixins/readwriter_mixins.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/mixins/table_mixins.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/normalize.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/readerwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/transforms.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/base/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/bigquery/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/databricks/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/duckdb/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/postgres/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/py.typed +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/redshift/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/snowflake/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/functions.pyi +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/spark/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/group.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/readwriter.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/standalone/window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/testing/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe/testing/utils.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe.egg-info/SOURCES.txt +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe.egg-info/dependency_links.txt +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/sqlframe.egg-info/top_level.txt +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/common_fixtures.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/conftest.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee.csv +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee.json +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/.part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/_delta_log/.00000000000000000000.json.crc +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/_delta_log/00000000000000000000.json +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_delta/part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/employee_extra_line.csv +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/issue_219.csv +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/netflix_daily_top_10.parquet +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds1.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds10.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds11.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds12.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds13.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds14.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds15.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds16.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds17.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds18.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds19.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds2.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds20.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds21.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds22.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds23.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds24.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds25.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds26.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds27.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds28.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds29.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds3.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds30.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds31.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds32.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds33.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds34.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds35.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds36.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds37.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds38.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds39.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds4.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds40.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds41.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds42.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds43.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds44.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds45.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds46.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds47.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds48.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds49.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds5.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds50.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds51.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds52.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds53.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds54.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds55.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds56.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds57.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds58.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds59.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds6.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds60.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds61.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds62.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds63.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds64.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds65.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds66.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds67.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds68.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds69.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds7.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds70.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds71.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds72.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds73.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds74.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds75.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds76.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds77.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds78.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds79.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds8.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds80.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds81.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds82.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds83.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds84.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds85.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds86.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds87.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds88.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds89.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds9.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds90.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds91.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds92.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds93.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds94.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds95.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds96.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds97.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds98.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/fixtures/tpcds/tpcds99.sql +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/bigquery/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/bigquery/test_bigquery_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/bigquery/test_bigquery_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/bigquery/test_bigquery_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/databricks/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/databricks/test_databricks_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/databricks/test_databricks_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/databricks/test_databricks_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_reader.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_duckdb_udf.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/duck/test_tpcds.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/postgres/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/postgres/test_postgres_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/postgres/test_postgres_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/postgres/test_postgres_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/postgres/test_postgres_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/redshift/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/redshift/test_redshift_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/redshift/test_redshift_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/snowflake/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/snowflake/test_snowflake_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/snowflake/test_snowflake_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/snowflake/test_snowflake_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/spark/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/spark/test_spark_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/spark/test_spark_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_reader.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_table.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_engine_writer.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/engines/test_int_testing.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/fixtures.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/test_int_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/test_int_dataframe_stats.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/test_int_grouped_data.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/integration/test_int_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/bigquery/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/bigquery/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/conftest.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/databricks/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/databricks/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/duck/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/duck/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/duck/test_reader_options.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/postgres/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/postgres/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/redshift/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/redshift/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/snowflake/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/snowflake/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/spark/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/spark/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/spark/test_reader_options.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/__init__.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/fixtures.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_column.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_dataframe.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_dataframe_writer.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_functions.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_session.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_session_case_sensitivity.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_types.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/standalone/test_window.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/test_activate.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/test_base_reader_options.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/test_catalog.py +0 -0
- {sqlframe-3.43.4 → sqlframe-3.43.6}/tests/unit/test_util.py +0 -0
@@ -684,7 +684,7 @@ update_expr = table_employee.update(
|
|
684
684
|
where=table_employee["id"] == 1,
|
685
685
|
)
|
686
686
|
|
687
|
-
#
|
687
|
+
# Executes the update statement
|
688
688
|
update_expr.execute()
|
689
689
|
|
690
690
|
# Show the result
|
@@ -712,7 +712,7 @@ delete_expr = table_employee.delete(
|
|
712
712
|
where=table_employee["id"] == 1,
|
713
713
|
)
|
714
714
|
|
715
|
-
#
|
715
|
+
# Executes the delete statement
|
716
716
|
delete_expr.execute()
|
717
717
|
|
718
718
|
# Show the result
|
@@ -767,7 +767,7 @@ merge_expr = table_employee.merge(
|
|
767
767
|
],
|
768
768
|
)
|
769
769
|
|
770
|
-
#
|
770
|
+
# Executes the merge statement
|
771
771
|
merge_expr.execute()
|
772
772
|
|
773
773
|
# Show the result
|
@@ -823,7 +823,7 @@ merge_expr = table_employee.merge(
|
|
823
823
|
],
|
824
824
|
)
|
825
825
|
|
826
|
-
#
|
826
|
+
# Executes the merge statement
|
827
827
|
merge_expr.execute()
|
828
828
|
|
829
829
|
# Show the result
|
@@ -227,7 +227,7 @@ update_expr = table_employee.update(
|
|
227
227
|
where=table_employee["id"] == 1,
|
228
228
|
)
|
229
229
|
|
230
|
-
#
|
230
|
+
# Executes the update statement
|
231
231
|
update_expr.execute()
|
232
232
|
|
233
233
|
# Show the result
|
@@ -255,7 +255,7 @@ delete_expr = table_employee.delete(
|
|
255
255
|
where=table_employee["id"] == 1,
|
256
256
|
)
|
257
257
|
|
258
|
-
#
|
258
|
+
# Executes the delete statement
|
259
259
|
delete_expr.execute()
|
260
260
|
|
261
261
|
# Show the result
|
@@ -310,7 +310,7 @@ merge_expr = table_employee.merge(
|
|
310
310
|
],
|
311
311
|
)
|
312
312
|
|
313
|
-
#
|
313
|
+
# Executes the merge statement
|
314
314
|
merge_expr.execute()
|
315
315
|
|
316
316
|
# Show the result
|
@@ -366,7 +366,7 @@ merge_expr = table_employee.merge(
|
|
366
366
|
],
|
367
367
|
)
|
368
368
|
|
369
|
-
#
|
369
|
+
# Executes the merge statement
|
370
370
|
merge_expr.execute()
|
371
371
|
|
372
372
|
# Show the result
|
@@ -250,7 +250,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
250
250
|
* SQLFrame Specific: Get the SQL representation of the WindowSpec
|
251
251
|
* [stat](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.stat.html)
|
252
252
|
* [toArrow](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.toArrow.html)
|
253
|
-
* SQLFrame Specific Argument: `batch_size` sets the number of rows to read per-batch and returns a `
|
253
|
+
* SQLFrame Specific Argument: `batch_size` sets the number of rows to read per-batch and returns a `RecordBatchReader`
|
254
254
|
* [toDF](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.toDF.html)
|
255
255
|
* [toPandas](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.toPandas.html)
|
256
256
|
* [union](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.union.html)
|
@@ -478,6 +478,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
478
478
|
* [sumDistinct](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.sumDistinct.html)
|
479
479
|
* [sum_distinct](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.sum_distinct.html)
|
480
480
|
* [tan](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.tan.html)
|
481
|
+
* [tanh](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.tanh.html)
|
481
482
|
* [timestamp_add](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.timestamp_add.html)
|
482
483
|
* [timestamp_seconds](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.timestamp_seconds.html)
|
483
484
|
* [toDegrees](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.toDegrees.html)
|
@@ -634,7 +635,7 @@ update_expr = table_employee.update(
|
|
634
635
|
where=table_employee["id"] == 1,
|
635
636
|
)
|
636
637
|
|
637
|
-
#
|
638
|
+
# Executes the update statement
|
638
639
|
update_expr.execute()
|
639
640
|
|
640
641
|
# Show the result
|
@@ -662,7 +663,7 @@ delete_expr = table_employee.delete(
|
|
662
663
|
where=table_employee["id"] == 1,
|
663
664
|
)
|
664
665
|
|
665
|
-
#
|
666
|
+
# Executes the delete statement
|
666
667
|
delete_expr.execute()
|
667
668
|
|
668
669
|
# Show the result
|
@@ -621,7 +621,7 @@ update_expr = table_employee.update(
|
|
621
621
|
where=table_employee["id"] == 1,
|
622
622
|
)
|
623
623
|
|
624
|
-
#
|
624
|
+
# Executes the update statement
|
625
625
|
update_expr.execute()
|
626
626
|
|
627
627
|
# Show the result
|
@@ -649,7 +649,7 @@ delete_expr = table_employee.delete(
|
|
649
649
|
where=table_employee["id"] == 1,
|
650
650
|
)
|
651
651
|
|
652
|
-
#
|
652
|
+
# Executes the delete statement
|
653
653
|
delete_expr.execute()
|
654
654
|
|
655
655
|
# Show the result
|
@@ -704,7 +704,7 @@ merge_expr = table_employee.merge(
|
|
704
704
|
],
|
705
705
|
)
|
706
706
|
|
707
|
-
#
|
707
|
+
# Executes the merge statement
|
708
708
|
merge_expr.execute()
|
709
709
|
|
710
710
|
# Show the result
|
@@ -760,7 +760,7 @@ merge_expr = table_employee.merge(
|
|
760
760
|
],
|
761
761
|
)
|
762
762
|
|
763
|
-
#
|
763
|
+
# Executes the merge statement
|
764
764
|
merge_expr.execute()
|
765
765
|
|
766
766
|
# Show the result
|
@@ -209,7 +209,7 @@ update_expr = table_employee.update(
|
|
209
209
|
where=table_employee["id"] == 1,
|
210
210
|
)
|
211
211
|
|
212
|
-
#
|
212
|
+
# Executes the update statement
|
213
213
|
update_expr.execute()
|
214
214
|
|
215
215
|
# Show the result
|
@@ -237,7 +237,7 @@ delete_expr = table_employee.delete(
|
|
237
237
|
where=table_employee["id"] == 1,
|
238
238
|
)
|
239
239
|
|
240
|
-
#
|
240
|
+
# Executes the delete statement
|
241
241
|
delete_expr.execute()
|
242
242
|
|
243
243
|
# Show the result
|
@@ -309,7 +309,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
309
309
|
* [array_except](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_except.html)
|
310
310
|
* [array_intersect](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_intersect.html)
|
311
311
|
* [array_join](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_join.html)
|
312
|
-
* Null values are
|
312
|
+
* Null values are represented as nothing instead of NULL. Ex: "a," instead of "a,NULL"
|
313
313
|
* [array_max](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_max.html)
|
314
314
|
* [array_min](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_min.html)
|
315
315
|
* [array_position](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.array_position.html)
|
@@ -335,7 +335,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
335
335
|
* [bool_and](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.bool_and.html)
|
336
336
|
* [bool_or](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.bool_or.html)
|
337
337
|
* [bround](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.bround.html)
|
338
|
-
* [Input must be a fixed-point
|
338
|
+
* [Input must be a fixed-point number](https://docs.snowflake.com/en/sql-reference/data-types-numeric.html#label-data-types-for-fixed-point-numbers)
|
339
339
|
* [btrim](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.btrim.html)
|
340
340
|
* [call_function](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.call_function.html)
|
341
341
|
* [cbrt](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.cbrt.html)
|
@@ -677,7 +677,7 @@ update_expr = table_employee.update(
|
|
677
677
|
where=table_employee["id"] == 1,
|
678
678
|
)
|
679
679
|
|
680
|
-
#
|
680
|
+
# Executes the update statement
|
681
681
|
update_expr.execute()
|
682
682
|
|
683
683
|
# Show the result
|
@@ -705,7 +705,7 @@ delete_expr = table_employee.delete(
|
|
705
705
|
where=table_employee["id"] == 1,
|
706
706
|
)
|
707
707
|
|
708
|
-
#
|
708
|
+
# Executes the delete statement
|
709
709
|
delete_expr.execute()
|
710
710
|
|
711
711
|
# Show the result
|
@@ -760,7 +760,7 @@ merge_expr = table_employee.merge(
|
|
760
760
|
],
|
761
761
|
)
|
762
762
|
|
763
|
-
#
|
763
|
+
# Executes the merge statement
|
764
764
|
merge_expr.execute()
|
765
765
|
|
766
766
|
# Show the result
|
@@ -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 = '3.43.
|
32
|
-
__version_tuple__ = version_tuple = (3, 43,
|
31
|
+
__version__ = version = '3.43.6'
|
32
|
+
__version_tuple__ = version_tuple = (3, 43, 6)
|
33
33
|
|
34
|
-
__commit_id__ = commit_id = '
|
34
|
+
__commit_id__ = commit_id = 'g7c6cd19ef'
|
@@ -361,15 +361,31 @@ class BaseDataFrame(t.Generic[SESSION, WRITER, NA, STAT, GROUP_DATA]):
|
|
361
361
|
|
362
362
|
def _replace_cte_names_with_hashes(self, expression: exp.Select):
|
363
363
|
replacement_mapping = {}
|
364
|
-
|
364
|
+
seen_hashes: t.Dict[str, exp.Identifier] = {}
|
365
|
+
cte_indices_to_remove = []
|
366
|
+
|
367
|
+
for i, cte in enumerate(expression.ctes):
|
365
368
|
old_name_id = cte.args["alias"].this
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
369
|
+
cte_hash = self._create_hash_from_expression(cte.this)
|
370
|
+
|
371
|
+
if cte_hash in seen_hashes:
|
372
|
+
# Duplicate CTE found - map its old name to the existing hash
|
373
|
+
replacement_mapping[old_name_id] = seen_hashes[cte_hash]
|
374
|
+
cte_indices_to_remove.append(i)
|
375
|
+
else:
|
376
|
+
# New unique CTE - process normally
|
377
|
+
new_hashed_id = exp.to_identifier(cte_hash, quoted=old_name_id.args["quoted"])
|
378
|
+
seen_hashes[cte_hash] = new_hashed_id
|
379
|
+
replacement_mapping[old_name_id] = new_hashed_id
|
380
|
+
|
370
381
|
expression = expression.transform(replace_id_value, replacement_mapping).assert_is(
|
371
382
|
exp.Select
|
372
383
|
)
|
384
|
+
|
385
|
+
# Remove duplicate CTEs by index in reverse order to avoid index shifting
|
386
|
+
for idx in reversed(cte_indices_to_remove):
|
387
|
+
del expression.args["with"].expressions[idx]
|
388
|
+
|
373
389
|
return expression
|
374
390
|
|
375
391
|
def _create_cte_from_expression(
|
@@ -309,7 +309,7 @@ def factorial(col: ColumnOrName) -> Column:
|
|
309
309
|
if session._is_bigquery:
|
310
310
|
return factorial_from_case_statement(col)
|
311
311
|
|
312
|
-
return Column.
|
312
|
+
return Column.invoke_expression_over_column(col, expression.Factorial)
|
313
313
|
|
314
314
|
|
315
315
|
@meta()
|
@@ -385,9 +385,9 @@ def tan(col: ColumnOrName) -> Column:
|
|
385
385
|
return Column.invoke_expression_over_column(col, expression.Tan)
|
386
386
|
|
387
387
|
|
388
|
-
@meta(
|
388
|
+
@meta()
|
389
389
|
def tanh(col: ColumnOrName) -> Column:
|
390
|
-
return Column.
|
390
|
+
return Column.invoke_expression_over_column(col, expression.Tanh)
|
391
391
|
|
392
392
|
|
393
393
|
@meta()
|
@@ -4886,7 +4886,7 @@ def parse_url(
|
|
4886
4886
|
)
|
4887
4887
|
|
4888
4888
|
|
4889
|
-
@meta(unsupported_engines="
|
4889
|
+
@meta(unsupported_engines=["bigquery", "snowflake"])
|
4890
4890
|
def pi() -> Column:
|
4891
4891
|
"""Returns Pi.
|
4892
4892
|
|
@@ -4901,7 +4901,7 @@ def pi() -> Column:
|
|
4901
4901
|
|3.141592653589793|
|
4902
4902
|
+-----------------+
|
4903
4903
|
"""
|
4904
|
-
return Column.
|
4904
|
+
return Column.invoke_expression_over_column(None, expression.Pi)
|
4905
4905
|
|
4906
4906
|
|
4907
4907
|
@meta(unsupported_engines="*")
|
@@ -78,7 +78,7 @@ def operation(
|
|
78
78
|
|
79
79
|
# Here decorate a function (self: _BaseGroupedData[DF], *args, **kwargs) -> DF
|
80
80
|
# Hence we work with t.Callable[Concatenate[_BaseGroupedData[DF], P], DF]
|
81
|
-
# We simplify the parameters, as Pyright (used for VSCode autocomplete) doesn't
|
81
|
+
# We simplify the parameters, as Pyright (used for VSCode autocomplete) doesn't understand this
|
82
82
|
def group_operation(
|
83
83
|
op: Operation,
|
84
84
|
) -> t.Callable[[t.Callable[P, DF]], t.Callable[P, DF]]:
|
@@ -7,10 +7,7 @@ from sqlframe.base.session import _BaseSession
|
|
7
7
|
from sqlframe.base.util import soundex
|
8
8
|
from sqlframe.duckdb.catalog import DuckDBCatalog
|
9
9
|
from sqlframe.duckdb.dataframe import DuckDBDataFrame
|
10
|
-
from sqlframe.duckdb.readwriter import
|
11
|
-
DuckDBDataFrameReader,
|
12
|
-
DuckDBDataFrameWriter,
|
13
|
-
)
|
10
|
+
from sqlframe.duckdb.readwriter import DuckDBDataFrameReader, DuckDBDataFrameWriter
|
14
11
|
from sqlframe.duckdb.table import DuckDBTable
|
15
12
|
from sqlframe.duckdb.udf import DuckDBUDFRegistration
|
16
13
|
|
@@ -42,7 +39,11 @@ class DuckDBSession(
|
|
42
39
|
def __init__(self, conn: t.Optional[DuckDBPyConnection] = None, *args, **kwargs):
|
43
40
|
import duckdb
|
44
41
|
from duckdb import InvalidInputException
|
45
|
-
|
42
|
+
|
43
|
+
try: # Available from duckdb 1.4.1
|
44
|
+
from duckdb.sqltypes import VARCHAR
|
45
|
+
except ImportError:
|
46
|
+
from duckdb.typing import VARCHAR
|
46
47
|
|
47
48
|
if not hasattr(self, "_conn"):
|
48
49
|
conn = conn or duckdb.connect()
|
@@ -4,6 +4,7 @@ import pytest
|
|
4
4
|
|
5
5
|
from sqlframe.base import types
|
6
6
|
from sqlframe.duckdb import DuckDBDataFrame, DuckDBSession
|
7
|
+
from sqlframe.duckdb import functions as F
|
7
8
|
|
8
9
|
pytest_plugins = ["tests.integration.fixtures"]
|
9
10
|
|
@@ -266,3 +267,23 @@ def test_explain(duckdb_employee: DuckDBDataFrame, capsys):
|
|
266
267
|
└───────────────────────────┘
|
267
268
|
""".strip()
|
268
269
|
)
|
270
|
+
|
271
|
+
|
272
|
+
def test_duplicate_cte(duckdb_session: DuckDBSession):
|
273
|
+
con = duckdb_session._conn
|
274
|
+
|
275
|
+
con.execute("CREATE VIEW foo AS SELECT 'a' as key, 1 as idx")
|
276
|
+
con.execute("CREATE VIEW bar AS SELECT 'b' as key, 2 as smth")
|
277
|
+
|
278
|
+
foo = duckdb_session.table("foo").filter(F.col("idx") == 1)
|
279
|
+
bar = duckdb_session.table("bar").filter(F.col("smth") == 2)
|
280
|
+
|
281
|
+
df = foo.join(bar, "key", "left")
|
282
|
+
|
283
|
+
df = df.unionByName(df)
|
284
|
+
|
285
|
+
results = duckdb_session._collect(expressions=df._get_expressions(optimize=True))
|
286
|
+
assert results == [
|
287
|
+
types.Row(key="a", idx=1, smth=None),
|
288
|
+
types.Row(key="a", idx=1, smth=None),
|
289
|
+
]
|
@@ -4424,7 +4424,7 @@ def test_parse_url(get_session_and_func, get_func):
|
|
4424
4424
|
|
4425
4425
|
def test_pi(get_session_and_func, get_func):
|
4426
4426
|
session, pi = get_session_and_func("pi")
|
4427
|
-
assert session.range(1).select(pi()).first()[0]
|
4427
|
+
assert session.range(1).select(pi()).first()[0] in (math.pi, 3.141592654)
|
4428
4428
|
|
4429
4429
|
|
4430
4430
|
def test_pmod(get_session_and_func, get_func):
|
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
|
{sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif
RENAMED
File without changes
|
File without changes
|
{sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/openai_full_rewrite.png
RENAMED
File without changes
|
{sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png
RENAMED
File without changes
|
{sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png
RENAMED
File without changes
|
{sqlframe-3.43.4 → sqlframe-3.43.6}/blogs/images/add_chatgpt_support/sunny_shake_head_no.gif
RENAMED
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
|
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
|