sqlframe 3.34.0__tar.gz → 3.35.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sqlframe-3.34.0 → sqlframe-3.35.1}/PKG-INFO +1 -1
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/bigquery.md +1 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/duckdb.md +1 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/postgres.md +1 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/snowflake.md +1 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/setup.py +3 -3
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/_version.py +2 -2
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/dataframe.py +46 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/function_alternatives.py +0 -56
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/functions.py +3 -14
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/types.py +4 -4
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/session.py +1 -1
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe.egg-info/PKG-INFO +1 -1
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe.egg-info/requires.txt +3 -3
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/test_int_dataframe.py +17 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_dataframe.py +24 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_types.py +7 -7
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.github/CODEOWNERS +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.github/workflows/main.workflow.yaml +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.github/workflows/publish.workflow.yaml +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.gitignore +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.pre-commit-config.yaml +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/.readthedocs.yaml +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/LICENSE +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/Makefile +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/README.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/add_chatgpt_support.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/adding_ai_to_meal.jpeg +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/hype_train.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/nonsense_sql.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/openai_full_rewrite.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/sunny_shake_head_no.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/but_wait_theres_more.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/cake.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/you_get_pyspark_api.gif +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/sqlframe_universal_dataframe_api.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/configuration.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/databricks.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/bigquery.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/duckdb.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/images/SF.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/images/favicon.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/docs/postgres.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/images/SF.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/images/favicon.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/images/sqlframe_logo.png +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/index.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/redshift.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/requirements.txt +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/spark.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/standalone.md +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/docs/stylesheets/extra.css +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/mkdocs.yml +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/pytest.ini +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/renovate.json +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/setup.cfg +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/LICENSE +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/_typing.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/decorators.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/exceptions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/mixins/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/mixins/catalog_mixins.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/mixins/dataframe_mixins.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/mixins/readwriter_mixins.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/mixins/table_mixins.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/normalize.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/operations.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/readerwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/transforms.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/util.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/base/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/bigquery/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/databricks/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/duckdb/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/postgres/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/py.typed +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/redshift/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/snowflake/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/functions.pyi +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/spark/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/group.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/readwriter.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/standalone/window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/testing/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe/testing/utils.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe.egg-info/SOURCES.txt +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe.egg-info/dependency_links.txt +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/sqlframe.egg-info/top_level.txt +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/common_fixtures.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/conftest.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee.csv +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee.json +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/.part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/_delta_log/.00000000000000000000.json.crc +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/_delta_log/00000000000000000000.json +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00000-e5965c7b-e58f-4d3c-ad56-002876814e3a-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00002-3fed7f18-370f-4b16-b232-504d6194eb52-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00004-143c5da1-d5ab-4706-8e84-0d2a324c6894-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00006-64f07e25-c30e-4075-acc6-b3c69c4ce80b-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00008-89ccad8d-df73-4ad5-8850-82ef3884db60-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_delta/part-00010-812b3382-8c7f-4c4e-9bcd-09ce8664f6e0-c000.snappy.parquet +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/employee_extra_line.csv +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/issue_219.csv +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds1.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds10.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds11.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds12.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds13.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds14.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds15.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds16.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds17.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds18.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds19.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds2.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds20.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds21.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds22.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds23.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds24.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds25.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds26.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds27.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds28.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds29.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds3.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds30.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds31.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds32.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds33.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds34.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds35.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds36.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds37.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds38.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds39.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds4.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds40.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds41.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds42.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds43.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds44.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds45.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds46.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds47.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds48.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds49.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds5.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds50.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds51.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds52.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds53.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds54.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds55.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds56.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds57.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds58.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds59.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds6.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds60.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds61.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds62.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds63.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds64.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds65.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds66.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds67.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds68.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds69.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds7.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds70.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds71.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds72.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds73.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds74.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds75.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds76.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds77.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds78.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds79.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds8.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds80.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds81.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds82.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds83.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds84.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds85.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds86.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds87.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds88.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds89.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds9.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds90.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds91.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds92.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds93.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds94.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds95.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds96.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds97.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds98.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/fixtures/tpcds/tpcds99.sql +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/bigquery/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/bigquery/test_bigquery_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/bigquery/test_bigquery_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/bigquery/test_bigquery_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/databricks/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/databricks/test_databricks_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/databricks/test_databricks_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/databricks/test_databricks_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_reader.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_duckdb_udf.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/duck/test_tpcds.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/postgres/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/postgres/test_postgres_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/postgres/test_postgres_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/postgres/test_postgres_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/postgres/test_postgres_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/redshift/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/redshift/test_redshift_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/redshift/test_redshift_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/snowflake/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/snowflake/test_snowflake_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/snowflake/test_snowflake_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/snowflake/test_snowflake_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/spark/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/spark/test_spark_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/spark/test_spark_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_dataframe.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_reader.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_table.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_engine_writer.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_int_functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/engines/test_int_testing.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/fixtures.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/test_int_dataframe_stats.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/test_int_grouped_data.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/integration/test_int_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/types.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/bigquery/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/bigquery/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/conftest.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/databricks/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/databricks/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/duck/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/duck/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/duck/test_reader_options.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/postgres/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/postgres/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/redshift/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/redshift/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/snowflake/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/snowflake/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/spark/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/spark/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/spark/test_reader_options.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/__init__.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/fixtures.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_column.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_dataframe_writer.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_functions.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_session.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_session_case_sensitivity.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/standalone/test_window.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/test_activate.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/test_base_reader_options.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/test_catalog.py +0 -0
- {sqlframe-3.34.0 → sqlframe-3.35.1}/tests/unit/test_util.py +0 -0
@@ -295,6 +295,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
295
295
|
* [where](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.where.html)
|
296
296
|
* [withColumn](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumn.html)
|
297
297
|
* [withColumnRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnRenamed.html)
|
298
|
+
* [withColumnsRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnsRenamed.html)
|
298
299
|
* [write](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.write.html)
|
299
300
|
|
300
301
|
### Functions
|
@@ -260,6 +260,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
260
260
|
* [where](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.where.html)
|
261
261
|
* [withColumn](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumn.html)
|
262
262
|
* [withColumnRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnRenamed.html)
|
263
|
+
* [withColumnsRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnsRenamed.html)
|
263
264
|
* [write](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.write.html)
|
264
265
|
|
265
266
|
### Functions
|
@@ -273,6 +273,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
273
273
|
* [where](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.where.html)
|
274
274
|
* [withColumn](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumn.html)
|
275
275
|
* [withColumnRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnRenamed.html)
|
276
|
+
* [withColumnsRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnsRenamed.html)
|
276
277
|
* [write](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.write.html)
|
277
278
|
|
278
279
|
### Functions
|
@@ -290,6 +290,7 @@ See something that you would like to see supported? [Open an issue](https://gith
|
|
290
290
|
* [where](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.where.html)
|
291
291
|
* [withColumn](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumn.html)
|
292
292
|
* [withColumnRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnRenamed.html)
|
293
|
+
* [withColumnsRenamed](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.withColumnsRenamed.html)
|
293
294
|
* [write](https://spark.apache.org/docs/latest/api/python/reference/pyspark.sql/api/pyspark.sql.DataFrame.write.html)
|
294
295
|
|
295
296
|
### Functions
|
@@ -20,7 +20,7 @@ setup(
|
|
20
20
|
python_requires=">=3.9",
|
21
21
|
install_requires=[
|
22
22
|
"prettytable<4",
|
23
|
-
"sqlglot>=24.0.0,<26.
|
23
|
+
"sqlglot>=24.0.0,<26.26",
|
24
24
|
"typing_extensions",
|
25
25
|
],
|
26
26
|
extras_require={
|
@@ -31,14 +31,14 @@ setup(
|
|
31
31
|
"dev": [
|
32
32
|
"duckdb>=1.2,<1.4",
|
33
33
|
"findspark>=2,<3",
|
34
|
-
"mypy>=1.10.0,<1.
|
34
|
+
"mypy>=1.10.0,<1.17",
|
35
35
|
"openai>=1.30,<2",
|
36
36
|
"pandas>=2,<3",
|
37
37
|
"pandas-stubs>=2,<3",
|
38
38
|
"psycopg>=3.1,<4",
|
39
39
|
"pyarrow>=10,<21",
|
40
40
|
"pyspark>=2,<3.6",
|
41
|
-
"pytest>=8.2.0,<8.
|
41
|
+
"pytest>=8.2.0,<8.5",
|
42
42
|
"pytest-forked",
|
43
43
|
"pytest-postgresql>=6,<8",
|
44
44
|
"pytest-xdist>=3.6,<3.8",
|
@@ -1524,6 +1524,52 @@ class BaseDataFrame(t.Generic[SESSION, WRITER, NA, STAT, GROUP_DATA]):
|
|
1524
1524
|
raise ValueError("Tried to rename a column that doesn't exist")
|
1525
1525
|
return self.select.__wrapped__(self, *results, skip_update_display_name_mapping=True) # type: ignore
|
1526
1526
|
|
1527
|
+
@operation(Operation.SELECT)
|
1528
|
+
def withColumnsRenamed(self, colsMap: t.Dict[str, str]) -> Self:
|
1529
|
+
"""
|
1530
|
+
Returns a new :class:`DataFrame` by renaming multiple columns. If a non-existing column is
|
1531
|
+
provided, it will be silently ignored.
|
1532
|
+
|
1533
|
+
.. versionadded:: 3.5.0
|
1534
|
+
|
1535
|
+
Parameters
|
1536
|
+
----------
|
1537
|
+
colsMap : dict
|
1538
|
+
a dict of column name and new column name.
|
1539
|
+
|
1540
|
+
Returns
|
1541
|
+
-------
|
1542
|
+
:class:`DataFrame`
|
1543
|
+
DataFrame with renamed columns.
|
1544
|
+
|
1545
|
+
Examples
|
1546
|
+
--------
|
1547
|
+
>>> df = spark.createDataFrame([(2, "Alice"), (5, "Bob")], schema=["age", "name"])
|
1548
|
+
>>> df.withColumnsRenamed({"age": "years", "name": "firstName"}).show()
|
1549
|
+
+-----+---------+
|
1550
|
+
|years|firstName|
|
1551
|
+
+-----+---------+
|
1552
|
+
| 2| Alice|
|
1553
|
+
| 5| Bob|
|
1554
|
+
+-----+---------+
|
1555
|
+
"""
|
1556
|
+
expression = self.expression.copy()
|
1557
|
+
columns = self._get_outer_select_columns(expression)
|
1558
|
+
results = []
|
1559
|
+
|
1560
|
+
# Normalize the keys in colsMap
|
1561
|
+
normalized_cols_map = {self.session._normalize_string(k): v for k, v in colsMap.items()}
|
1562
|
+
|
1563
|
+
for column in columns:
|
1564
|
+
col_name = column.alias_or_name
|
1565
|
+
if col_name in normalized_cols_map:
|
1566
|
+
new_name = normalized_cols_map[col_name]
|
1567
|
+
column = column.alias(new_name)
|
1568
|
+
self._update_display_name_mapping([column], [new_name])
|
1569
|
+
results.append(column)
|
1570
|
+
|
1571
|
+
return self.select.__wrapped__(self, *results, skip_update_display_name_mapping=True) # type: ignore
|
1572
|
+
|
1527
1573
|
@operation(Operation.SELECT)
|
1528
1574
|
def withColumns(self, *colsMap: t.Dict[str, Column]) -> Self:
|
1529
1575
|
"""
|
@@ -999,27 +999,6 @@ def element_at_using_brackets(col: ColumnOrName, value: ColumnOrLiteral) -> Colu
|
|
999
999
|
)
|
1000
1000
|
|
1001
1001
|
|
1002
|
-
def array_remove_using_filter(col: ColumnOrName, value: ColumnOrLiteral) -> Column:
|
1003
|
-
lit = get_func_from_session("lit")
|
1004
|
-
col_func = get_func_from_session("col")
|
1005
|
-
|
1006
|
-
value = value if isinstance(value, Column) else lit(value)
|
1007
|
-
return Column(
|
1008
|
-
expression.Anonymous(
|
1009
|
-
this="LIST_FILTER",
|
1010
|
-
expressions=[
|
1011
|
-
col_func(col).column_expression,
|
1012
|
-
expression.Lambda(
|
1013
|
-
this=expression.NEQ(
|
1014
|
-
this=expression.Identifier(this="x"), expression=value.column_expression
|
1015
|
-
),
|
1016
|
-
expressions=[expression.Identifier(this="x")],
|
1017
|
-
),
|
1018
|
-
],
|
1019
|
-
)
|
1020
|
-
)
|
1021
|
-
|
1022
|
-
|
1023
1002
|
def array_union_using_list_concat(col1: ColumnOrName, col2: ColumnOrName) -> Column:
|
1024
1003
|
col_func = get_func_from_session("col")
|
1025
1004
|
|
@@ -1664,41 +1643,6 @@ def array_position_bgutil(col: ColumnOrName, value: ColumnOrLiteral) -> Column:
|
|
1664
1643
|
)
|
1665
1644
|
|
1666
1645
|
|
1667
|
-
def array_remove_bgutil(col: ColumnOrName, value: ColumnOrLiteral) -> Column:
|
1668
|
-
lit = get_func_from_session("lit")
|
1669
|
-
|
1670
|
-
value_col = value if isinstance(value, Column) else lit(value)
|
1671
|
-
|
1672
|
-
filter_subquery = expression.select(
|
1673
|
-
"*",
|
1674
|
-
).from_(
|
1675
|
-
expression.Unnest(
|
1676
|
-
expressions=[Column.ensure_col(col).column_expression],
|
1677
|
-
alias=expression.TableAlias(
|
1678
|
-
columns=[expression.to_identifier("x")],
|
1679
|
-
),
|
1680
|
-
)
|
1681
|
-
)
|
1682
|
-
|
1683
|
-
agg_subquery = (
|
1684
|
-
expression.select(
|
1685
|
-
expression.Anonymous(
|
1686
|
-
this="ARRAY_AGG",
|
1687
|
-
expressions=[expression.column("x")],
|
1688
|
-
),
|
1689
|
-
)
|
1690
|
-
.from_(filter_subquery.subquery("t"))
|
1691
|
-
.where(
|
1692
|
-
expression.NEQ(
|
1693
|
-
this=expression.column("x", "t"),
|
1694
|
-
expression=value_col.column_expression,
|
1695
|
-
)
|
1696
|
-
)
|
1697
|
-
)
|
1698
|
-
|
1699
|
-
return Column(agg_subquery.subquery())
|
1700
|
-
|
1701
|
-
|
1702
1646
|
def array_distinct_bgutil(col: ColumnOrName) -> Column:
|
1703
1647
|
return Column(
|
1704
1648
|
expression.Anonymous(
|
@@ -2268,21 +2268,10 @@ def element_at(col: ColumnOrName, value: ColumnOrLiteral) -> Column:
|
|
2268
2268
|
|
2269
2269
|
@meta()
|
2270
2270
|
def array_remove(col: ColumnOrName, value: ColumnOrLiteral) -> Column:
|
2271
|
-
from sqlframe.base.function_alternatives import (
|
2272
|
-
array_remove_bgutil,
|
2273
|
-
array_remove_using_filter,
|
2274
|
-
)
|
2275
|
-
|
2276
|
-
session = _get_session()
|
2277
|
-
|
2278
|
-
if session._is_bigquery:
|
2279
|
-
return array_remove_bgutil(col, value)
|
2280
|
-
|
2281
|
-
if session._is_duckdb:
|
2282
|
-
return array_remove_using_filter(col, value)
|
2283
|
-
|
2284
2271
|
value_col = value if isinstance(value, Column) else lit(value)
|
2285
|
-
return Column.
|
2272
|
+
return Column.invoke_expression_over_column(
|
2273
|
+
col, expression.ArrayRemove, expression=value_col.column_expression
|
2274
|
+
)
|
2286
2275
|
|
2287
2276
|
|
2288
2277
|
@meta(unsupported_engines="postgres")
|
@@ -104,22 +104,22 @@ class FloatType(DataType):
|
|
104
104
|
|
105
105
|
|
106
106
|
class ByteType(DataType):
|
107
|
-
def
|
107
|
+
def simpleString(self) -> str:
|
108
108
|
return "tinyint"
|
109
109
|
|
110
110
|
|
111
111
|
class IntegerType(DataType):
|
112
|
-
def
|
112
|
+
def simpleString(self) -> str:
|
113
113
|
return "int"
|
114
114
|
|
115
115
|
|
116
116
|
class LongType(DataType):
|
117
|
-
def
|
117
|
+
def simpleString(self) -> str:
|
118
118
|
return "bigint"
|
119
119
|
|
120
120
|
|
121
121
|
class ShortType(DataType):
|
122
|
-
def
|
122
|
+
def simpleString(self) -> str:
|
123
123
|
return "smallint"
|
124
124
|
|
125
125
|
|
@@ -51,7 +51,7 @@ class BigQuerySession(
|
|
51
51
|
super().__init__(conn or connect())
|
52
52
|
if self._client.default_query_job_config is None:
|
53
53
|
self._client.default_query_job_config = bigquery.QueryJobConfig()
|
54
|
-
self.default_dataset = default_dataset
|
54
|
+
self.default_dataset = default_dataset # type: ignore
|
55
55
|
|
56
56
|
@property
|
57
57
|
def _client(self) -> BigQueryClient:
|
@@ -1,5 +1,5 @@
|
|
1
1
|
prettytable<4
|
2
|
-
sqlglot<26.
|
2
|
+
sqlglot<26.26,>=24.0.0
|
3
3
|
typing_extensions
|
4
4
|
|
5
5
|
[bigquery]
|
@@ -12,7 +12,7 @@ databricks-sql-connector[pyarrow]<5,>=3.6
|
|
12
12
|
[dev]
|
13
13
|
duckdb<1.4,>=1.2
|
14
14
|
findspark<3,>=2
|
15
|
-
mypy<1.
|
15
|
+
mypy<1.17,>=1.10.0
|
16
16
|
openai<2,>=1.30
|
17
17
|
pandas-stubs<3,>=2
|
18
18
|
pandas<3,>=2
|
@@ -23,7 +23,7 @@ pyspark<3.6,>=2
|
|
23
23
|
pytest-forked
|
24
24
|
pytest-postgresql<8,>=6
|
25
25
|
pytest-xdist<3.8,>=3.6
|
26
|
-
pytest<8.
|
26
|
+
pytest<8.5,>=8.2.0
|
27
27
|
ruff<0.12,>=0.4.4
|
28
28
|
types-psycopg2<3,>=2.9
|
29
29
|
|
@@ -1835,6 +1835,23 @@ def test_with_columns_reference_another(
|
|
1835
1835
|
compare_frames(df, dfs)
|
1836
1836
|
|
1837
1837
|
|
1838
|
+
def test_with_columns_renamed(
|
1839
|
+
pyspark_employee: PySparkDataFrame,
|
1840
|
+
get_df: t.Callable[[str], BaseDataFrame],
|
1841
|
+
compare_frames: t.Callable,
|
1842
|
+
):
|
1843
|
+
employee = get_df("employee")
|
1844
|
+
df = pyspark_employee.withColumnsRenamed(
|
1845
|
+
{"fname": "first_name", "lname": "last_name", "nonexistent_col": "new_name"}
|
1846
|
+
)
|
1847
|
+
|
1848
|
+
dfs = employee.withColumnsRenamed(
|
1849
|
+
{"fname": "first_name", "lname": "last_name", "nonexistent_col": "new_name"}
|
1850
|
+
)
|
1851
|
+
|
1852
|
+
compare_frames(df, dfs)
|
1853
|
+
|
1854
|
+
|
1838
1855
|
def test_drop_column_single(
|
1839
1856
|
pyspark_employee: PySparkDataFrame,
|
1840
1857
|
get_df: t.Callable[[str], BaseDataFrame],
|
@@ -76,6 +76,30 @@ def test_with_columns(standalone_employee: StandaloneDataFrame):
|
|
76
76
|
)
|
77
77
|
|
78
78
|
|
79
|
+
def test_with_columns_renamed(standalone_employee: StandaloneDataFrame):
|
80
|
+
df = standalone_employee.withColumnsRenamed(
|
81
|
+
{"fname": "first_name", "lname": "last_name", "nonexistent_col": "new_name"}
|
82
|
+
)
|
83
|
+
assert df.columns == [
|
84
|
+
"employee_id",
|
85
|
+
"first_name",
|
86
|
+
"last_name",
|
87
|
+
"age",
|
88
|
+
"store_id",
|
89
|
+
]
|
90
|
+
assert (
|
91
|
+
df.sql(pretty=False)
|
92
|
+
== "SELECT `a1`.`employee_id` AS `employee_id`, CAST(`a1`.`fname` AS STRING) AS `first_name`, CAST(`a1`.`lname` AS STRING) AS `last_name`, `a1`.`age` AS `age`, `a1`.`store_id` AS `store_id` FROM VALUES (1, 'Jack', 'Shephard', 37, 1), (2, 'John', 'Locke', 65, 1), (3, 'Kate', 'Austen', 37, 2), (4, 'Claire', 'Littleton', 27, 2), (5, 'Hugo', 'Reyes', 29, 100) AS `a1`(`employee_id`, `fname`, `lname`, `age`, `store_id`)"
|
93
|
+
)
|
94
|
+
|
95
|
+
|
96
|
+
def test_with_columns_renamed_nonexistent(standalone_employee: StandaloneDataFrame):
|
97
|
+
# Test that non-existent columns are silently ignored
|
98
|
+
df = standalone_employee.withColumnsRenamed({"nonexistent_col": "new_name"})
|
99
|
+
# Verify that the DataFrame columns remain unchanged
|
100
|
+
assert df.columns == ["employee_id", "fname", "lname", "age", "store_id"]
|
101
|
+
|
102
|
+
|
79
103
|
def test_transform(standalone_employee: StandaloneDataFrame):
|
80
104
|
def cast_all_to_int(input_df):
|
81
105
|
return input_df.select([F.col(col_name).cast("int") for col_name in input_df.columns])
|
@@ -17,12 +17,12 @@ from sqlframe.standalone import types
|
|
17
17
|
(types.DecimalType(10, 3), "decimal(10, 3)"),
|
18
18
|
(types.DoubleType(), "double"),
|
19
19
|
(types.FloatType(), "float"),
|
20
|
-
(types.ByteType(), "
|
21
|
-
(types.IntegerType(), "
|
22
|
-
(types.LongType(), "
|
23
|
-
(types.ShortType(), "
|
24
|
-
(types.ArrayType(types.IntegerType()), "array<
|
25
|
-
(types.MapType(types.IntegerType(), types.StringType()), "map<
|
20
|
+
(types.ByteType(), "tinyint"),
|
21
|
+
(types.IntegerType(), "int"),
|
22
|
+
(types.LongType(), "bigint"),
|
23
|
+
(types.ShortType(), "smallint"),
|
24
|
+
(types.ArrayType(types.IntegerType()), "array<int>"),
|
25
|
+
(types.MapType(types.IntegerType(), types.StringType()), "map<int, string>"),
|
26
26
|
(
|
27
27
|
types.StructType(
|
28
28
|
[
|
@@ -30,7 +30,7 @@ from sqlframe.standalone import types
|
|
30
30
|
types.StructField("colb", types.StringType()),
|
31
31
|
]
|
32
32
|
),
|
33
|
-
"struct<cola:
|
33
|
+
"struct<cola:int, colb:string>",
|
34
34
|
),
|
35
35
|
],
|
36
36
|
)
|
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.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/marvin_paranoid_robot.gif
RENAMED
File without changes
|
File without changes
|
{sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/openai_full_rewrite.png
RENAMED
File without changes
|
{sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/openai_replacing_cte_names.png
RENAMED
File without changes
|
{sqlframe-3.34.0 → sqlframe-3.35.1}/blogs/images/add_chatgpt_support/sqlglot_optimized_code.png
RENAMED
File without changes
|
{sqlframe-3.34.0 → sqlframe-3.35.1}/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
|