sqlframe 3.43.6__tar.gz → 3.43.8__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.6 → sqlframe-3.43.8}/PKG-INFO +1 -1
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/duckdb.md +1 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/postgres.md +1 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/snowflake.md +2 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/setup.py +4 -2
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/__init__.py +4 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/_version.py +3 -3
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/functions.py +18 -12
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe.egg-info/PKG-INFO +1 -1
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe.egg-info/requires.txt +3 -2
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_int_functions.py +1 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/test_int_dataframe.py +23 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_functions.py +2 -2
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.github/CODEOWNERS +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.github/workflows/main.workflow.yaml +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.github/workflows/publish.workflow.yaml +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.gitignore +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.pre-commit-config.yaml +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/.readthedocs.yaml +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/LICENSE +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/Makefile +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/README.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/add_chatgpt_support.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/adding_ai_to_meal.jpeg +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/hype_train.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/nonsense_sql.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/openai_full_rewrite.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/sunny_shake_head_no.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/but_wait_theres_more.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/cake.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/you_get_pyspark_api.gif +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/sqlframe_universal_dataframe_api.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/bigquery.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/configuration.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/databricks.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/bigquery.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/duckdb.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/images/SF.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/images/favicon.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/docs/postgres.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/images/SF.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/images/favicon.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/index.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/redshift.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/requirements.txt +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/spark.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/standalone.md +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/docs/stylesheets/extra.css +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/mkdocs.yml +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/mypy.ini +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/pytest.ini +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/renovate.json +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/setup.cfg +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/LICENSE +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/_typing.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/decorators.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/exceptions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/function_alternatives.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/mixins/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/mixins/catalog_mixins.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/mixins/dataframe_mixins.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/mixins/readwriter_mixins.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/mixins/table_mixins.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/normalize.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/operations.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/readerwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/transforms.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/util.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/base/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/bigquery/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/databricks/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/duckdb/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/postgres/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/py.typed +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/redshift/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/snowflake/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/functions.pyi +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/spark/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/functions.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/group.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/readwriter.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/standalone/window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/testing/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe/testing/utils.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe.egg-info/SOURCES.txt +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe.egg-info/dependency_links.txt +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/sqlframe.egg-info/top_level.txt +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/common_fixtures.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/conftest.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee.csv +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee.json +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/.part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/_delta_log/.00000000000000000000.json.crc +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/_delta_log/00000000000000000000.json +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_delta/part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/employee_extra_line.csv +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/issue_219.csv +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/netflix_daily_top_10.parquet +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds1.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds10.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds11.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds12.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds13.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds14.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds15.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds16.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds17.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds18.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds19.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds2.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds20.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds21.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds22.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds23.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds24.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds25.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds26.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds27.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds28.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds29.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds3.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds30.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds31.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds32.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds33.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds34.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds35.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds36.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds37.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds38.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds39.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds4.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds40.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds41.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds42.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds43.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds44.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds45.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds46.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds47.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds48.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds49.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds5.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds50.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds51.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds52.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds53.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds54.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds55.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds56.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds57.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds58.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds59.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds6.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds60.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds61.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds62.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds63.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds64.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds65.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds66.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds67.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds68.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds69.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds7.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds70.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds71.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds72.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds73.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds74.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds75.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds76.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds77.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds78.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds79.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds8.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds80.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds81.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds82.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds83.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds84.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds85.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds86.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds87.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds88.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds89.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds9.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds90.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds91.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds92.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds93.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds94.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds95.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds96.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds97.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds98.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/fixtures/tpcds/tpcds99.sql +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/bigquery/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/bigquery/test_bigquery_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/bigquery/test_bigquery_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/bigquery/test_bigquery_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/databricks/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/databricks/test_databricks_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/databricks/test_databricks_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/databricks/test_databricks_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_reader.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_duckdb_udf.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/duck/test_tpcds.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/postgres/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/postgres/test_postgres_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/postgres/test_postgres_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/postgres/test_postgres_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/postgres/test_postgres_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/redshift/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/redshift/test_redshift_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/redshift/test_redshift_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/snowflake/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/snowflake/test_snowflake_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/snowflake/test_snowflake_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/snowflake/test_snowflake_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/spark/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/spark/test_spark_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/spark/test_spark_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_reader.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_table.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_engine_writer.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/engines/test_int_testing.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/fixtures.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/test_int_dataframe_stats.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/test_int_grouped_data.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/integration/test_int_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/bigquery/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/bigquery/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/conftest.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/databricks/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/databricks/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/duck/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/duck/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/duck/test_reader_options.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/postgres/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/postgres/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/redshift/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/redshift/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/snowflake/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/snowflake/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/spark/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/spark/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/spark/test_reader_options.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/__init__.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/fixtures.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_column.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_dataframe.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_dataframe_writer.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_session.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_session_case_sensitivity.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_types.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/standalone/test_window.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/test_activate.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/test_base_reader_options.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/test_catalog.py +0 -0
- {sqlframe-3.43.6 → sqlframe-3.43.8}/tests/unit/test_util.py +0 -0
|
@@ -397,6 +397,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
|
397
397
|
* [left](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.left.html)
|
|
398
398
|
* [length](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.length.html)
|
|
399
399
|
* [levenshtein](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.levenshtein.html)
|
|
400
|
+
* [like](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.like.html)
|
|
400
401
|
* [lit](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.lit.html)
|
|
401
402
|
* [ln](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.ln.html)
|
|
402
403
|
* [locate](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.locate.html)
|
|
@@ -392,6 +392,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
|
392
392
|
* [left](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.left.html)
|
|
393
393
|
* [length](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.length.html)
|
|
394
394
|
* [levenshtein](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.levenshtein.html)
|
|
395
|
+
* [like](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.like.html)
|
|
395
396
|
* [lit](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.lit.html)
|
|
396
397
|
* [ln](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.ln.html)
|
|
397
398
|
* [locate](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.locate.html)
|
|
@@ -389,6 +389,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
|
389
389
|
* [e](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.e.html)
|
|
390
390
|
* [element_at](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.element_at.html)
|
|
391
391
|
* [endswith](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.Column.endswith.html)
|
|
392
|
+
* [equal_null](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.equal_null.html)
|
|
392
393
|
* [exp](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.exp.html)
|
|
393
394
|
* [explode](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.explode.html)
|
|
394
395
|
* [expm1](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.expm1.html)
|
|
@@ -426,6 +427,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
|
426
427
|
* [length](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.length.html)
|
|
427
428
|
* [levenshtein](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.levenshtein.html)
|
|
428
429
|
* threshold is not supported
|
|
430
|
+
* [like](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.like.html)
|
|
429
431
|
* [lit](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.lit.html)
|
|
430
432
|
* [ln](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.ln.html)
|
|
431
433
|
* [locate](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.functions.locate.html)
|
|
@@ -20,7 +20,7 @@ setup(
|
|
|
20
20
|
python_requires=">=3.9",
|
|
21
21
|
install_requires=[
|
|
22
22
|
"prettytable<4",
|
|
23
|
-
"sqlglot>=24.0.0,<27.
|
|
23
|
+
"sqlglot>=24.0.0,<27.30",
|
|
24
24
|
"typing_extensions",
|
|
25
25
|
"more-itertools",
|
|
26
26
|
],
|
|
@@ -32,12 +32,14 @@ setup(
|
|
|
32
32
|
"dev": [
|
|
33
33
|
"duckdb>=1.2,<1.5",
|
|
34
34
|
"findspark>=2,<3",
|
|
35
|
+
# 3.0.0 dropped support for Python 3.9 and this is needed by pytest-postgresql
|
|
36
|
+
"mirakuru<3.0.0",
|
|
35
37
|
"mypy>=1.10.0,<1.19",
|
|
36
38
|
"openai>=1.30,<3",
|
|
37
39
|
"pandas>=2,<3",
|
|
38
40
|
"pandas-stubs>=2,<3",
|
|
39
41
|
"psycopg>=3.1,<4",
|
|
40
|
-
"pyarrow>=10,<
|
|
42
|
+
"pyarrow>=10,<23",
|
|
41
43
|
"pyspark>=2,<3.6",
|
|
42
44
|
"pytest>=8.2.0,<8.5",
|
|
43
45
|
"pytest-forked",
|
|
@@ -6,6 +6,10 @@ import typing as t
|
|
|
6
6
|
from contextlib import contextmanager
|
|
7
7
|
from unittest.mock import MagicMock
|
|
8
8
|
|
|
9
|
+
from sqlglot.dialects import spark
|
|
10
|
+
|
|
11
|
+
spark.Spark.Generator.readparquet_sql = lambda self, x: x.sql(dialect="duckdb") # type: ignore
|
|
12
|
+
|
|
9
13
|
if t.TYPE_CHECKING:
|
|
10
14
|
from sqlframe.base.session import CONN
|
|
11
15
|
|
|
@@ -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.8'
|
|
32
|
+
__version_tuple__ = version_tuple = (3, 43, 8)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g371f414f3'
|
|
@@ -60,7 +60,11 @@ def lit(value: t.Optional[t.Any] = None) -> Column:
|
|
|
60
60
|
if isinstance(value, str):
|
|
61
61
|
return Column(expression.Literal.string(value))
|
|
62
62
|
if isinstance(value, float) and value in {float("inf"), float("-inf")}:
|
|
63
|
-
return Column(
|
|
63
|
+
return Column(
|
|
64
|
+
expression.cast(
|
|
65
|
+
expression.Literal.string(str(value)), to=expression.DataType.Type.FLOAT
|
|
66
|
+
)
|
|
67
|
+
)
|
|
64
68
|
return Column(value)
|
|
65
69
|
|
|
66
70
|
|
|
@@ -414,7 +418,7 @@ def radians(col: ColumnOrName) -> Column:
|
|
|
414
418
|
if session._is_bigquery:
|
|
415
419
|
return radians_bgutil(col)
|
|
416
420
|
|
|
417
|
-
return Column.
|
|
421
|
+
return Column.invoke_expression_over_column(col, expression.Radians)
|
|
418
422
|
|
|
419
423
|
|
|
420
424
|
toRadians = radians
|
|
@@ -1078,7 +1082,7 @@ def hour(col: ColumnOrName) -> Column:
|
|
|
1078
1082
|
if session._is_bigquery or session._is_postgres:
|
|
1079
1083
|
return hour_from_extract(col)
|
|
1080
1084
|
|
|
1081
|
-
return Column.
|
|
1085
|
+
return Column.invoke_expression_over_column(col, expression.Hour)
|
|
1082
1086
|
|
|
1083
1087
|
|
|
1084
1088
|
@meta()
|
|
@@ -1090,7 +1094,7 @@ def minute(col: ColumnOrName) -> Column:
|
|
|
1090
1094
|
if session._is_bigquery or session._is_postgres:
|
|
1091
1095
|
return minute_from_extract(col)
|
|
1092
1096
|
|
|
1093
|
-
return Column.
|
|
1097
|
+
return Column.invoke_expression_over_column(col, expression.Minute)
|
|
1094
1098
|
|
|
1095
1099
|
|
|
1096
1100
|
@meta()
|
|
@@ -1102,7 +1106,7 @@ def second(col: ColumnOrName) -> Column:
|
|
|
1102
1106
|
if session._is_bigquery or session._is_postgres:
|
|
1103
1107
|
return second_from_extract(col)
|
|
1104
1108
|
|
|
1105
|
-
return Column.
|
|
1109
|
+
return Column.invoke_expression_over_column(col, expression.Second)
|
|
1106
1110
|
|
|
1107
1111
|
|
|
1108
1112
|
@meta()
|
|
@@ -1398,7 +1402,7 @@ def next_day(col: ColumnOrName, dayOfWeek: str) -> Column:
|
|
|
1398
1402
|
if session._is_bigquery:
|
|
1399
1403
|
return next_day_bgutil(col, dayOfWeek)
|
|
1400
1404
|
|
|
1401
|
-
return Column.
|
|
1405
|
+
return Column.invoke_expression_over_column(col, expression.NextDay, expression=lit(dayOfWeek))
|
|
1402
1406
|
|
|
1403
1407
|
|
|
1404
1408
|
@meta()
|
|
@@ -2160,7 +2164,7 @@ def bit_count(col: ColumnOrName) -> Column:
|
|
|
2160
2164
|
if session._is_duckdb:
|
|
2161
2165
|
return Column.invoke_anonymous_function(col, "BIT_COUNT")
|
|
2162
2166
|
|
|
2163
|
-
return Column.invoke_expression_over_column(col, expression.
|
|
2167
|
+
return Column.invoke_expression_over_column(col, expression.BitwiseCount)
|
|
2164
2168
|
|
|
2165
2169
|
|
|
2166
2170
|
@meta(unsupported_engines="*")
|
|
@@ -3308,9 +3312,9 @@ def endswith(str: ColumnOrName, suffix: ColumnOrName) -> Column:
|
|
|
3308
3312
|
)
|
|
3309
3313
|
|
|
3310
3314
|
|
|
3311
|
-
@meta(unsupported_engines="
|
|
3315
|
+
@meta(unsupported_engines=["bigquery", "duckdb", "postgres"])
|
|
3312
3316
|
def equal_null(col1: ColumnOrName, col2: ColumnOrName) -> Column:
|
|
3313
|
-
return Column.
|
|
3317
|
+
return Column.invoke_expression_over_column(col1, expression.EqualNull, expression=col2)
|
|
3314
3318
|
|
|
3315
3319
|
|
|
3316
3320
|
@meta(unsupported_engines="*")
|
|
@@ -4108,7 +4112,7 @@ def left(str: ColumnOrName, len: ColumnOrName) -> Column:
|
|
|
4108
4112
|
return Column.invoke_expression_over_column(str, expression.Left, expression=len)
|
|
4109
4113
|
|
|
4110
4114
|
|
|
4111
|
-
@meta(unsupported_engines="
|
|
4115
|
+
@meta(unsupported_engines="bigquery")
|
|
4112
4116
|
def like(
|
|
4113
4117
|
str: ColumnOrName, pattern: ColumnOrName, escapeChar: t.Optional["Column"] = None
|
|
4114
4118
|
) -> Column:
|
|
@@ -6805,7 +6809,7 @@ def weekday(col: ColumnOrName) -> Column:
|
|
|
6805
6809
|
return Column.invoke_anonymous_function(col, "weekday")
|
|
6806
6810
|
|
|
6807
6811
|
|
|
6808
|
-
@meta(unsupported_engines="
|
|
6812
|
+
@meta(unsupported_engines=["bigquery", "duckdb", "postgres"])
|
|
6809
6813
|
def width_bucket(
|
|
6810
6814
|
v: ColumnOrName,
|
|
6811
6815
|
min: ColumnOrName,
|
|
@@ -6854,7 +6858,9 @@ def width_bucket(
|
|
|
6854
6858
|
+----------------------------+
|
|
6855
6859
|
"""
|
|
6856
6860
|
numBucket = lit(numBucket) if isinstance(numBucket, int) else numBucket
|
|
6857
|
-
return Column.
|
|
6861
|
+
return Column.invoke_expression_over_column(
|
|
6862
|
+
v, expression.WidthBucket, min_value=min, max_value=max, num_buckets=numBucket
|
|
6863
|
+
)
|
|
6858
6864
|
|
|
6859
6865
|
|
|
6860
6866
|
@meta(unsupported_engines=["*", "spark"])
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
more-itertools
|
|
2
2
|
prettytable<4
|
|
3
|
-
sqlglot<27.
|
|
3
|
+
sqlglot<27.30,>=24.0.0
|
|
4
4
|
typing_extensions
|
|
5
5
|
|
|
6
6
|
[bigquery]
|
|
@@ -13,13 +13,14 @@ databricks-sql-connector[pyarrow]<5,>=3.6
|
|
|
13
13
|
[dev]
|
|
14
14
|
duckdb<1.5,>=1.2
|
|
15
15
|
findspark<3,>=2
|
|
16
|
+
mirakuru<3.0.0
|
|
16
17
|
mypy<1.19,>=1.10.0
|
|
17
18
|
openai<3,>=1.30
|
|
18
19
|
pandas-stubs<3,>=2
|
|
19
20
|
pandas<3,>=2
|
|
20
21
|
pre-commit<5,>=3.7
|
|
21
22
|
psycopg<4,>=3.1
|
|
22
|
-
pyarrow<
|
|
23
|
+
pyarrow<23,>=10
|
|
23
24
|
pyspark<3.6,>=2
|
|
24
25
|
pytest-forked
|
|
25
26
|
pytest-postgresql<8,>=6
|
|
@@ -122,6 +122,7 @@ def get_types() -> t.Callable:
|
|
|
122
122
|
({"cola": 1}, {"cola": 1}),
|
|
123
123
|
(Row(**{"cola": 1, "colb": "test"}), Row(**{"cola": 1, "colb": "test"})),
|
|
124
124
|
(datetime.timedelta(1), datetime.timedelta(1)),
|
|
125
|
+
(float("inf"), float("inf")),
|
|
125
126
|
],
|
|
126
127
|
)
|
|
127
128
|
def test_lit(get_session_and_func, arg, expected):
|
|
@@ -2938,3 +2938,26 @@ def test_join_filter_join_filter(
|
|
|
2938
2938
|
)
|
|
2939
2939
|
|
|
2940
2940
|
assert result == dfs_result
|
|
2941
|
+
|
|
2942
|
+
|
|
2943
|
+
# https://github.com/eakmanrq/sqlframe/issues/542
|
|
2944
|
+
def test_float_infinity(
|
|
2945
|
+
pyspark_employee: PySparkDataFrame,
|
|
2946
|
+
get_df: t.Callable[[str], BaseDataFrame],
|
|
2947
|
+
compare_frames: t.Callable,
|
|
2948
|
+
):
|
|
2949
|
+
session = pyspark_employee.sparkSession
|
|
2950
|
+
data = {"a": [1, 2, 3], "b": [4, 5, 6], "i": [0, 1, 2]}
|
|
2951
|
+
rows = [
|
|
2952
|
+
{key: value[i] for key, value in data.items()}
|
|
2953
|
+
for i in range(len(data[next(iter(data.keys()))]))
|
|
2954
|
+
]
|
|
2955
|
+
df = session.createDataFrame(rows) # type: ignore
|
|
2956
|
+
df = df.withColumns({"b": F.col("a") != F.lit(float("inf"))})
|
|
2957
|
+
|
|
2958
|
+
employee = get_df("employee")
|
|
2959
|
+
sf_session = employee.session
|
|
2960
|
+
dfs = sf_session.createDataFrame(rows)
|
|
2961
|
+
dfs = dfs.withColumns({"b": SF.col("a") != SF.lit(float("inf"))})
|
|
2962
|
+
|
|
2963
|
+
compare_frames(df, dfs, compare_schema=False, sort=True)
|
|
@@ -57,8 +57,8 @@ def test_invoke_anonymous(name, func):
|
|
|
57
57
|
),
|
|
58
58
|
(SF.lit({"cola": 1, "colb": "test"}), "MAP('cola', 1, 'colb', 'test')"),
|
|
59
59
|
(SF.lit(Row(cola=1, colb="test")), "STRUCT(1 AS cola, 'test' AS colb)"),
|
|
60
|
-
(SF.lit(float("inf")), "'inf'"),
|
|
61
|
-
(SF.lit(float("-inf")), "'-inf'"),
|
|
60
|
+
(SF.lit(float("inf")), "CAST('inf' AS FLOAT)"),
|
|
61
|
+
(SF.lit(float("-inf")), "CAST('-inf' AS FLOAT)"),
|
|
62
62
|
],
|
|
63
63
|
)
|
|
64
64
|
def test_lit(expression, expected):
|
|
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.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif
RENAMED
|
File without changes
|
|
File without changes
|
{sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/openai_full_rewrite.png
RENAMED
|
File without changes
|
{sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png
RENAMED
|
File without changes
|
{sqlframe-3.43.6 → sqlframe-3.43.8}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png
RENAMED
|
File without changes
|
{sqlframe-3.43.6 → sqlframe-3.43.8}/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
|
|
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
|