snowpark-connect 0.28.1__tar.gz → 0.29.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of snowpark-connect might be problematic. Click here for more details.
- {snowpark_connect-0.28.1/src/snowpark_connect.egg-info → snowpark_connect-0.29.0}/PKG-INFO +3 -2
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/setup.py +2 -1
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/config.py +11 -2
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_unresolved_function.py +172 -210
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/io_utils.py +21 -1
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_extension.py +21 -4
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_map_partitions.py +7 -8
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_relation.py +1 -3
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read.py +22 -3
- snowpark_connect-0.29.0/src/snowflake/snowpark_connect/relation/read/map_read_csv.py +221 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_json.py +45 -34
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_text.py +6 -1
- snowpark_connect-0.29.0/src/snowflake/snowpark_connect/relation/stage_locator.py +193 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/write/map_write.py +38 -4
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/server.py +18 -13
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/context.py +0 -14
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/io_utils.py +36 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/session.py +3 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udf_cache.py +37 -7
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/version.py +1 -1
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0/src/snowpark_connect.egg-info}/PKG-INFO +3 -2
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowpark_connect.egg-info/requires.txt +2 -1
- snowpark_connect-0.28.1/src/snowflake/snowpark_connect/relation/read/map_read_csv.py +0 -142
- snowpark_connect-0.28.1/src/snowflake/snowpark_connect/relation/stage_locator.py +0 -161
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/LICENSE-binary +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/LICENSE.txt +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/NOTICE-binary +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/README.md +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/setup.cfg +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/analyze_plan/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/analyze_plan/map_tree_string.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/column_name_handler.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/constants.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/control_server.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/dataframe_container.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/dataframe_name_handler.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/date_time_format_mapping.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/empty_dataframe.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/error/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/error/error_mapping.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/error/error_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/error/exceptions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/execute_plan/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_command.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_root.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/execute_plan/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/function_defaults.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/hybrid_column_map.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/literal.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_cast.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_expression.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_extension.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_sql_expression.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_udf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_unresolved_attribute.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_unresolved_extract_value.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_unresolved_star.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_update_fields.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/map_window_function.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/expression/typer.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/antlr4-runtime-4.9.3.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-cli-1.5.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-codec-1.16.1.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-collections-3.2.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-collections4-4.4.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-compiler-3.1.9.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-compress-1.26.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-crypto-1.1.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-dbcp-1.4.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-io-2.16.1.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-lang-2.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-lang3-3.12.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-logging-1.1.3.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-math3-3.6.1.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-pool-1.5.4.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/commons-text-1.10.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/hadoop-client-api-trimmed-3.3.4.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-annotations-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-core-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-core-asl-1.9.13.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-databind-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-dataformat-yaml-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-datatype-jsr310-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/jackson-module-scala_2.12-2.15.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/json4s-ast_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/json4s-core_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/json4s-jackson_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/json4s-native_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/json4s-scalap_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/kryo-shaded-4.0.2.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/log4j-1.2-api-2.20.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/log4j-api-2.20.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/log4j-core-2.20.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/log4j-slf4j2-impl-2.20.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.3.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/sas-scala-udf_2.12-0.1.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/scala-collection-compat_2.12-2.7.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/scala-library-2.12.18.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/scala-parser-combinators_2.12-2.3.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/scala-reflect-2.12.18.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/scala-xml_2.12-2.1.0.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/slf4j-api-2.0.7.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-catalyst_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-common-utils_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-connect-client-jvm_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-core_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-graphx_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-hive-thriftserver_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-hive_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-kvstore_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-launcher_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-mesos_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-mllib-local_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-network-common_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-network-shuffle_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-repl_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-sketch_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-sql-api_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-sql_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-tags_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-unsafe_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/jars/spark-yarn_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_globals.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_typing.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/accumulators.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/broadcast.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle_fast.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/compat.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/conf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/context.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/daemon.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/error_classes.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/captured.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/connect.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/files.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/find_spark_home.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/install.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/instrumentation_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/java_gateway.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/join.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/_typing.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/classification.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/clustering.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/common.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/classification.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/evaluation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/feature.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/io_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/pipeline.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/summarizer.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/tuning.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/deepspeed_distributor.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/dl_util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/evaluation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/feature.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/fpm.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/image.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/linalg/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/model_cache.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/_shared_params_code_gen.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/shared.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/pipeline.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/recommendation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/regression.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/stat.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/data.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/distributor.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/log_communication.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/torch_run_process_wrapper.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tree.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tuning.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/wrapper.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/_typing.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/classification.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/clustering.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/common.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/evaluation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/feature.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/fpm.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/distributed.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/random.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/recommendation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/regression.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/KernelDensity.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/_statistics.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/distribution.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/test.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/tree.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/_typing.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/accessors.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/categorical.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/config.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/correlation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/binary_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/boolean_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/categorical_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/complex_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/date_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/datetime_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/null_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/num_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/string_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/timedelta_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/udt_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/datetimes.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/exceptions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/extensions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/frame.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/generic.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/groupby.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/base.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/category.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/datetimes.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/multi.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/numeric.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/timedelta.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexing.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/internal.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/common.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/frame.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/general_functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/groupby.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/indexes.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/resample.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/scalars.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/series.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/window.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/mlflow.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/namespace.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/numpy_compat.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/core.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/matplotlib.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/plotly.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/resample.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/series.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_formatter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_processor.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/strings.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/supported_api_gen.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/typehints.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/usage_logger.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/window.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/profiler.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/py.typed +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rdd.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rddsampler.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/information.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/profile.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/requests.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resultiterable.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/serializers.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shuffle.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/_typing.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/catalog.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/column.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/conf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/_typing.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/catalog.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/artifact.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/core.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/reattach.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/column.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conversion.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/dataframe.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/expressions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/group.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/plan.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2_grpc.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/readwriter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/session.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/query.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/readwriter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/foreach_batch_worker.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/listener_worker.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/types.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udtf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/window.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/context.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/dataframe.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/group.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/observation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/__init__.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/__init__.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/frame.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/series.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/conversion.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/group_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/map_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/serializers.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/typehints.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/types.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/functions.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/readwriter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/session.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/sql_formatter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/listener.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/query.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/readwriter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/state.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/types.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udtf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/window.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/statcounter.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/status.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/storagelevel.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/context.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/dstream.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/kinesis.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/listener.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/taskcontext.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/connectutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mllibutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mlutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/objects.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/pandasutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/sqlutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/streamingutils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/traceback_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/version.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker_util.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/control_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/control_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/control_pb2_grpc.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/snowflake_rdd_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/catalogs/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/catalogs/abstract_spark_catalog.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/catalogs/snowflake_catalog.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/catalogs/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_aggregate.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_catalog.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_column_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_crosstab.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_join.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_local_relation.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_row_ops.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_sample_by.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_show_string.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_sql.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_stats.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_subquery_alias.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/map_udtf.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/jdbc_read_dbapi.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_jdbc.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_parquet.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_socket.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/map_read_table.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/reader_config.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/read/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/write/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/write/jdbc_write_dbapi.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/relation/write/map_write_jdbc.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/resources/java_udfs-1.0-SNAPSHOT.jar +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/resources_initializer.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/start_server.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/tcm.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/type_mapping.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/typed_column.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/artifacts.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/cache.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/concurrent.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/describe_query_cache.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/env_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/external_udxf_cache.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/identifiers.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/interrupt.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/pandas_udtf_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/profiling.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/scala_udf_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/snowpark_connect_logging.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/telemetry.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/temporary_view_cache.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udf_helper.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udf_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udtf_helper.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udtf_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/udxf_import_utils.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/utils/xxhash64.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_decoder/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_decoder/dp_session.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_decoder/spark_decoder.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowpark_connect.egg-info/SOURCES.txt +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowpark_connect.egg-info/dependency_links.txt +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowpark_connect.egg-info/top_level.txt +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/spark/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/spark/connect/__init__.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/spark/connect/envelope_pb2.py +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/spark/connect/envelope_pb2.pyi +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/tools/snowpark-connect +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/tools/snowpark-session +0 -0
- {snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/tools/snowpark-submit +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowpark-connect
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.29.0
|
|
4
4
|
Summary: Snowpark Connect for Spark
|
|
5
5
|
Author: Snowflake, Inc
|
|
6
6
|
License: Apache License, Version 2.0
|
|
@@ -16,7 +16,7 @@ Requires-Dist: jpype1
|
|
|
16
16
|
Requires-Dist: protobuf<5.0,>=4.25.3
|
|
17
17
|
Requires-Dist: s3fs>=2025.3.0
|
|
18
18
|
Requires-Dist: snowflake.core<2,>=1.0.5
|
|
19
|
-
Requires-Dist: snowflake-snowpark-python[pandas]<1.40.0,==1.39.
|
|
19
|
+
Requires-Dist: snowflake-snowpark-python[pandas]<1.40.0,==1.39.1
|
|
20
20
|
Requires-Dist: sqlglot>=26.3.8
|
|
21
21
|
Requires-Dist: jaydebeapi
|
|
22
22
|
Requires-Dist: aiobotocore~=2.23.0
|
|
@@ -27,6 +27,7 @@ Requires-Dist: grpcio<1.63,>=1.56.0
|
|
|
27
27
|
Requires-Dist: grpcio-status<1.63,>=1.56.0
|
|
28
28
|
Requires-Dist: googleapis-common-protos>=1.56.4
|
|
29
29
|
Requires-Dist: numpy<2,>=1.15
|
|
30
|
+
Requires-Dist: gcsfs>=2025.9.0
|
|
30
31
|
Dynamic: author
|
|
31
32
|
Dynamic: description
|
|
32
33
|
Dynamic: description-content-type
|
|
@@ -46,7 +46,7 @@ setup(
|
|
|
46
46
|
"protobuf>=4.25.3,<5.0",
|
|
47
47
|
"s3fs>=2025.3.0", # prod-297255-inc0132291
|
|
48
48
|
"snowflake.core>=1.0.5,<2",
|
|
49
|
-
"snowflake-snowpark-python[pandas]==1.39.
|
|
49
|
+
"snowflake-snowpark-python[pandas]==1.39.1,<1.40.0",
|
|
50
50
|
"sqlglot>=26.3.8",
|
|
51
51
|
"jaydebeapi",
|
|
52
52
|
"aiobotocore~=2.23.0",
|
|
@@ -58,5 +58,6 @@ setup(
|
|
|
58
58
|
"grpcio-status>=1.56.0,<1.63",
|
|
59
59
|
"googleapis-common-protos>=1.56.4",
|
|
60
60
|
"numpy>=1.15,<2",
|
|
61
|
+
"gcsfs>=2025.9.0",
|
|
61
62
|
],
|
|
62
63
|
)
|
{snowpark_connect-0.28.1 → snowpark_connect-0.29.0}/src/snowflake/snowpark_connect/config.py
RENAMED
|
@@ -264,16 +264,22 @@ SESSION_CONFIG_KEY_WHITELIST = {
|
|
|
264
264
|
"snowpark.connect.udtf.compatibility_mode",
|
|
265
265
|
"snowpark.connect.views.duplicate_column_names_handling_mode",
|
|
266
266
|
"enable_snowflake_extension_behavior",
|
|
267
|
+
"spark.hadoop.fs.s3a.server-side-encryption.key",
|
|
268
|
+
"spark.hadoop.fs.s3a.assumed.role.arn",
|
|
267
269
|
}
|
|
268
|
-
|
|
270
|
+
AZURE_ACCOUNT_KEY = re.compile(
|
|
269
271
|
r"^fs\.azure\.sas\.[^\.]+\.[^\.]+\.blob\.core\.windows\.net$"
|
|
270
272
|
)
|
|
273
|
+
AZURE_SAS_KEY = re.compile(
|
|
274
|
+
r"^fs\.azure\.sas\.fixed\.token\.[^\.]+\.dfs\.core\.windows\.net$"
|
|
275
|
+
)
|
|
271
276
|
|
|
272
277
|
|
|
273
278
|
def valid_session_config_key(key: str):
|
|
274
279
|
return (
|
|
275
280
|
key in SESSION_CONFIG_KEY_WHITELIST # AWS session keys
|
|
276
281
|
or AZURE_SAS_KEY.match(key) # Azure session keys
|
|
282
|
+
or AZURE_ACCOUNT_KEY.match(key) # Azure account keys
|
|
277
283
|
)
|
|
278
284
|
|
|
279
285
|
|
|
@@ -578,7 +584,10 @@ def set_snowflake_parameters(
|
|
|
578
584
|
cte_enabled = str_to_bool(value)
|
|
579
585
|
snowpark_session.cte_optimization_enabled = cte_enabled
|
|
580
586
|
logger.info(f"Updated snowpark session CTE optimization: {cte_enabled}")
|
|
581
|
-
|
|
587
|
+
case "snowpark.connect.structured_types.fix":
|
|
588
|
+
# TODO: SNOW-2367714 Remove this once the fix is automatically enabled in Snowpark
|
|
589
|
+
snowpark.context._enable_fix_2360274 = str_to_bool(value)
|
|
590
|
+
logger.info(f"Updated snowpark session structured types fix: {value}")
|
|
582
591
|
case _:
|
|
583
592
|
pass
|
|
584
593
|
|
|
@@ -15,6 +15,7 @@ import tempfile
|
|
|
15
15
|
import time
|
|
16
16
|
import uuid
|
|
17
17
|
from collections import defaultdict
|
|
18
|
+
from collections.abc import Callable
|
|
18
19
|
from contextlib import suppress
|
|
19
20
|
from decimal import ROUND_HALF_EVEN, ROUND_HALF_UP, Context, Decimal
|
|
20
21
|
from functools import partial, reduce
|
|
@@ -199,7 +200,7 @@ def _validate_numeric_args(
|
|
|
199
200
|
case StringType():
|
|
200
201
|
# Cast strings to doubles following Spark
|
|
201
202
|
# https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala#L204
|
|
202
|
-
modified_args[i] =
|
|
203
|
+
modified_args[i] = snowpark_fn.try_cast(snowpark_args[i], DoubleType())
|
|
203
204
|
case _:
|
|
204
205
|
raise TypeError(
|
|
205
206
|
f"Data type mismatch: {function_name} requires numeric types, but got {typed_args[0].typ} and {typed_args[1].typ}."
|
|
@@ -519,7 +520,7 @@ def map_unresolved_function(
|
|
|
519
520
|
DecimalType() as t,
|
|
520
521
|
):
|
|
521
522
|
p1, s1 = _get_type_precision(t)
|
|
522
|
-
result_type = _get_decimal_multiplication_result_type(
|
|
523
|
+
result_type, _ = _get_decimal_multiplication_result_type(
|
|
523
524
|
p1, s1, p1, s1
|
|
524
525
|
)
|
|
525
526
|
result_exp = snowpark_fn.lit(None)
|
|
@@ -528,11 +529,17 @@ def map_unresolved_function(
|
|
|
528
529
|
):
|
|
529
530
|
p1, s1 = _get_type_precision(snowpark_typed_args[0].typ)
|
|
530
531
|
p2, s2 = _get_type_precision(snowpark_typed_args[1].typ)
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
532
|
+
(
|
|
533
|
+
result_type,
|
|
534
|
+
overflow_possible,
|
|
535
|
+
) = _get_decimal_multiplication_result_type(p1, s1, p2, s2)
|
|
536
|
+
result_exp = _arithmetic_operation(
|
|
537
|
+
snowpark_typed_args[0],
|
|
538
|
+
snowpark_typed_args[1],
|
|
539
|
+
lambda x, y: x * y,
|
|
540
|
+
overflow_possible,
|
|
541
|
+
global_config.spark_sql_ansi_enabled,
|
|
542
|
+
result_type,
|
|
536
543
|
)
|
|
537
544
|
case (NullType(), NullType()):
|
|
538
545
|
result_type = DoubleType()
|
|
@@ -617,7 +624,7 @@ def map_unresolved_function(
|
|
|
617
624
|
)
|
|
618
625
|
match (snowpark_typed_args[0].typ, snowpark_typed_args[1].typ):
|
|
619
626
|
case (NullType(), _) | (_, NullType()):
|
|
620
|
-
result_type = _get_add_sub_result_type(
|
|
627
|
+
result_type, _ = _get_add_sub_result_type(
|
|
621
628
|
snowpark_typed_args[0].typ,
|
|
622
629
|
snowpark_typed_args[1].typ,
|
|
623
630
|
spark_function_name,
|
|
@@ -693,14 +700,21 @@ def map_unresolved_function(
|
|
|
693
700
|
f'[DATATYPE_MISMATCH.BINARY_OP_DIFF_TYPES] Cannot resolve "{spark_function_name}" due to data type mismatch: the left and right operands of the binary operator have incompatible types ("{snowpark_typed_args[0].typ}" and "{snowpark_typed_args[1].typ}").'
|
|
694
701
|
)
|
|
695
702
|
case _:
|
|
696
|
-
result_type = _get_add_sub_result_type(
|
|
703
|
+
result_type, overflow_possible = _get_add_sub_result_type(
|
|
697
704
|
snowpark_typed_args[0].typ,
|
|
698
705
|
snowpark_typed_args[1].typ,
|
|
699
706
|
spark_function_name,
|
|
700
707
|
)
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
708
|
+
|
|
709
|
+
result_exp = _arithmetic_operation(
|
|
710
|
+
snowpark_typed_args[0],
|
|
711
|
+
snowpark_typed_args[1],
|
|
712
|
+
lambda x, y: x + y,
|
|
713
|
+
overflow_possible,
|
|
714
|
+
global_config.spark_sql_ansi_enabled,
|
|
715
|
+
result_type,
|
|
716
|
+
)
|
|
717
|
+
|
|
704
718
|
case "-":
|
|
705
719
|
spark_function_name = _get_spark_function_name(
|
|
706
720
|
snowpark_typed_args[0],
|
|
@@ -715,7 +729,7 @@ def map_unresolved_function(
|
|
|
715
729
|
result_type = LongType()
|
|
716
730
|
result_exp = snowpark_fn.lit(None).cast(result_type)
|
|
717
731
|
case (NullType(), _) | (_, NullType()):
|
|
718
|
-
result_type = _get_add_sub_result_type(
|
|
732
|
+
result_type, _ = _get_add_sub_result_type(
|
|
719
733
|
snowpark_typed_args[0].typ,
|
|
720
734
|
snowpark_typed_args[1].typ,
|
|
721
735
|
spark_function_name,
|
|
@@ -806,14 +820,20 @@ def map_unresolved_function(
|
|
|
806
820
|
f'[DATATYPE_MISMATCH.BINARY_OP_DIFF_TYPES] Cannot resolve "{spark_function_name}" due to data type mismatch: the left and right operands of the binary operator have incompatible types ("{snowpark_typed_args[0].typ}" and "{snowpark_typed_args[1].typ}").'
|
|
807
821
|
)
|
|
808
822
|
case _:
|
|
809
|
-
result_type = _get_add_sub_result_type(
|
|
823
|
+
result_type, overflow_possible = _get_add_sub_result_type(
|
|
810
824
|
snowpark_typed_args[0].typ,
|
|
811
825
|
snowpark_typed_args[1].typ,
|
|
812
826
|
spark_function_name,
|
|
813
827
|
)
|
|
814
|
-
result_exp =
|
|
815
|
-
|
|
816
|
-
|
|
828
|
+
result_exp = _arithmetic_operation(
|
|
829
|
+
snowpark_typed_args[0],
|
|
830
|
+
snowpark_typed_args[1],
|
|
831
|
+
lambda x, y: x - y,
|
|
832
|
+
overflow_possible,
|
|
833
|
+
global_config.spark_sql_ansi_enabled,
|
|
834
|
+
result_type,
|
|
835
|
+
)
|
|
836
|
+
|
|
817
837
|
case "/":
|
|
818
838
|
match (snowpark_typed_args[0].typ, snowpark_typed_args[1].typ):
|
|
819
839
|
case (DecimalType() as t1, NullType()):
|
|
@@ -825,15 +845,17 @@ def map_unresolved_function(
|
|
|
825
845
|
):
|
|
826
846
|
p1, s1 = _get_type_precision(snowpark_typed_args[0].typ)
|
|
827
847
|
p2, s2 = _get_type_precision(snowpark_typed_args[1].typ)
|
|
828
|
-
result_type,
|
|
848
|
+
result_type, overflow_possible = _get_decimal_division_result_type(
|
|
829
849
|
p1, s1, p2, s2
|
|
830
850
|
)
|
|
831
|
-
|
|
851
|
+
|
|
852
|
+
result_exp = _arithmetic_operation(
|
|
853
|
+
snowpark_typed_args[0],
|
|
854
|
+
snowpark_typed_args[1],
|
|
855
|
+
lambda x, y: _divnull(x, y),
|
|
856
|
+
overflow_possible,
|
|
857
|
+
global_config.spark_sql_ansi_enabled,
|
|
832
858
|
result_type,
|
|
833
|
-
t,
|
|
834
|
-
overflow_detected,
|
|
835
|
-
snowpark_args,
|
|
836
|
-
spark_function_name,
|
|
837
859
|
)
|
|
838
860
|
case (NullType(), NullType()):
|
|
839
861
|
result_type = DoubleType()
|
|
@@ -7580,63 +7602,20 @@ def map_unresolved_function(
|
|
|
7580
7602
|
)
|
|
7581
7603
|
| (DecimalType(), DecimalType())
|
|
7582
7604
|
):
|
|
7583
|
-
|
|
7584
|
-
|
|
7585
|
-
|
|
7586
|
-
|
|
7587
|
-
|
|
7588
|
-
snowpark_typed_args[0].typ.scale,
|
|
7589
|
-
snowpark_typed_args[0].typ.precision,
|
|
7590
|
-
)
|
|
7591
|
-
s2, p2 = (
|
|
7592
|
-
snowpark_typed_args[1].typ.scale,
|
|
7593
|
-
snowpark_typed_args[1].typ.precision,
|
|
7594
|
-
)
|
|
7595
|
-
# The scale and precision formula that Spark follows for DecimalType
|
|
7596
|
-
# arithmetic operations can be found in the following Spark source
|
|
7597
|
-
# code file:
|
|
7598
|
-
# https://github.com/apache/spark/blob/a584cc48ef63fefb2e035349c8684250f8b936c4/docs/sql-ref-ansi-compliance.md
|
|
7599
|
-
new_scale = max(6, s1 + p2 + 1)
|
|
7600
|
-
new_precision = p1 - s1 + s2 + new_scale
|
|
7601
|
-
|
|
7602
|
-
elif isinstance(snowpark_typed_args[0].typ, DecimalType):
|
|
7603
|
-
s1, p1 = (
|
|
7604
|
-
snowpark_typed_args[0].typ.scale,
|
|
7605
|
-
snowpark_typed_args[0].typ.precision,
|
|
7606
|
-
)
|
|
7607
|
-
# INT is treated as Decimal(10, 0)
|
|
7608
|
-
new_scale = max(6, s1 + 11)
|
|
7609
|
-
new_precision = p1 - s1 + new_scale
|
|
7610
|
-
|
|
7611
|
-
else: # right is DecimalType
|
|
7612
|
-
s2, p2 = (
|
|
7613
|
-
snowpark_typed_args[1].typ.scale,
|
|
7614
|
-
snowpark_typed_args[1].typ.precision,
|
|
7615
|
-
)
|
|
7616
|
-
# INT is treated as Decimal(10, 0)
|
|
7617
|
-
new_scale = max(6, 11 + p2)
|
|
7618
|
-
new_precision = (
|
|
7619
|
-
10 - 0 + s2 + new_scale
|
|
7620
|
-
) # INT has precision 10, scale 0
|
|
7621
|
-
|
|
7622
|
-
# apply precision cap
|
|
7623
|
-
if new_precision > 38:
|
|
7624
|
-
new_scale -= new_precision - 38
|
|
7625
|
-
new_precision = 38
|
|
7626
|
-
new_scale = max(new_scale, 6)
|
|
7627
|
-
|
|
7628
|
-
left_double = snowpark_fn.cast(snowpark_args[0], DoubleType())
|
|
7629
|
-
right_double = snowpark_fn.cast(snowpark_args[1], DoubleType())
|
|
7630
|
-
|
|
7631
|
-
quotient = snowpark_fn.when(
|
|
7632
|
-
snowpark_args[1] == 0, snowpark_fn.lit(None)
|
|
7633
|
-
).otherwise(left_double / right_double)
|
|
7634
|
-
quotient = snowpark_fn.cast(quotient, StringType())
|
|
7605
|
+
p1, s1 = _get_type_precision(snowpark_typed_args[0].typ)
|
|
7606
|
+
p2, s2 = _get_type_precision(snowpark_typed_args[1].typ)
|
|
7607
|
+
result_type, overflow_possible = _get_decimal_division_result_type(
|
|
7608
|
+
p1, s1, p2, s2
|
|
7609
|
+
)
|
|
7635
7610
|
|
|
7636
|
-
result_exp =
|
|
7637
|
-
|
|
7611
|
+
result_exp = _arithmetic_operation(
|
|
7612
|
+
snowpark_typed_args[0],
|
|
7613
|
+
snowpark_typed_args[1],
|
|
7614
|
+
lambda x, y: _divnull(x, y),
|
|
7615
|
+
overflow_possible,
|
|
7616
|
+
False,
|
|
7617
|
+
result_type,
|
|
7638
7618
|
)
|
|
7639
|
-
result_type = DecimalType(new_precision, new_scale)
|
|
7640
7619
|
case (_NumericType(), _NumericType()):
|
|
7641
7620
|
result_exp = snowpark_fn.when(
|
|
7642
7621
|
snowpark_args[1] == 0, snowpark_fn.lit(None)
|
|
@@ -7749,42 +7728,21 @@ def map_unresolved_function(
|
|
|
7749
7728
|
)
|
|
7750
7729
|
| (DecimalType(), DecimalType())
|
|
7751
7730
|
):
|
|
7752
|
-
|
|
7753
|
-
|
|
7754
|
-
|
|
7755
|
-
|
|
7756
|
-
|
|
7757
|
-
|
|
7758
|
-
|
|
7759
|
-
|
|
7760
|
-
|
|
7761
|
-
|
|
7762
|
-
|
|
7763
|
-
|
|
7764
|
-
|
|
7765
|
-
|
|
7766
|
-
new_precision = snowpark_typed_args[0].typ.precision + 11
|
|
7767
|
-
new_scale = snowpark_typed_args[0].typ.scale
|
|
7768
|
-
else:
|
|
7769
|
-
new_precision = snowpark_typed_args[1].typ.precision + 11
|
|
7770
|
-
new_scale = snowpark_typed_args[1].typ.scale
|
|
7771
|
-
|
|
7772
|
-
# truncating down appropriately
|
|
7773
|
-
if new_precision > 38:
|
|
7774
|
-
new_precision = 38
|
|
7775
|
-
if new_scale > new_precision:
|
|
7776
|
-
new_scale = new_precision
|
|
7777
|
-
|
|
7778
|
-
left_double = snowpark_fn.cast(snowpark_args[0], DoubleType())
|
|
7779
|
-
right_double = snowpark_fn.cast(snowpark_args[1], DoubleType())
|
|
7780
|
-
|
|
7781
|
-
product = left_double * right_double
|
|
7782
|
-
|
|
7783
|
-
product = snowpark_fn.cast(product, StringType())
|
|
7784
|
-
result_exp = _try_cast_helper(
|
|
7785
|
-
product, DecimalType(new_precision, new_scale)
|
|
7731
|
+
p1, s1 = _get_type_precision(snowpark_typed_args[0].typ)
|
|
7732
|
+
p2, s2 = _get_type_precision(snowpark_typed_args[1].typ)
|
|
7733
|
+
(
|
|
7734
|
+
result_type,
|
|
7735
|
+
overflow_possible,
|
|
7736
|
+
) = _get_decimal_multiplication_result_type(p1, s1, p2, s2)
|
|
7737
|
+
|
|
7738
|
+
result_exp = _arithmetic_operation(
|
|
7739
|
+
snowpark_typed_args[0],
|
|
7740
|
+
snowpark_typed_args[1],
|
|
7741
|
+
lambda x, y: x * y,
|
|
7742
|
+
overflow_possible,
|
|
7743
|
+
False,
|
|
7744
|
+
result_type,
|
|
7786
7745
|
)
|
|
7787
|
-
result_type = DecimalType(new_precision, new_scale)
|
|
7788
7746
|
case (_NumericType(), _NumericType()):
|
|
7789
7747
|
result_exp = snowpark_args[0] * snowpark_args[1]
|
|
7790
7748
|
result_exp = _type_with_typer(result_exp)
|
|
@@ -8391,20 +8349,10 @@ def map_unresolved_function(
|
|
|
8391
8349
|
return spark_col_names, typed_col
|
|
8392
8350
|
|
|
8393
8351
|
|
|
8394
|
-
def _cast_helper(column: Column, to: DataType) -> Column:
|
|
8395
|
-
if global_config.spark_sql_ansi_enabled:
|
|
8396
|
-
column_mediator = (
|
|
8397
|
-
snowpark_fn.cast(column, StringType())
|
|
8398
|
-
if isinstance(to, DecimalType)
|
|
8399
|
-
else column
|
|
8400
|
-
)
|
|
8401
|
-
return snowpark_fn.cast(column_mediator, to)
|
|
8402
|
-
else:
|
|
8403
|
-
return _try_cast_helper(column, to)
|
|
8404
|
-
|
|
8405
|
-
|
|
8406
8352
|
def _try_cast_helper(column: Column, to: DataType) -> Column:
|
|
8407
8353
|
"""
|
|
8354
|
+
DEPRECATED because of performance issues
|
|
8355
|
+
|
|
8408
8356
|
Attempts to cast a given column to a specified data type using the same behaviour as Spark.
|
|
8409
8357
|
|
|
8410
8358
|
Args:
|
|
@@ -9600,71 +9548,109 @@ def _decimal_add_sub_result_type_helper(p1, s1, p2, s2):
|
|
|
9600
9548
|
return result_precision, min_scale, return_type_precision, return_type_scale
|
|
9601
9549
|
|
|
9602
9550
|
|
|
9603
|
-
def
|
|
9604
|
-
result_type: DecimalType | DataType,
|
|
9605
|
-
other_type: DataType,
|
|
9606
|
-
snowpark_args: list[Column],
|
|
9607
|
-
) -> Column:
|
|
9608
|
-
if global_config.spark_sql_ansi_enabled:
|
|
9609
|
-
result_exp = snowpark_args[0] * snowpark_args[1]
|
|
9610
|
-
else:
|
|
9611
|
-
if isinstance(other_type, _IntegralType):
|
|
9612
|
-
result_exp = snowpark_args[0].cast(result_type) * snowpark_args[1].cast(
|
|
9613
|
-
result_type
|
|
9614
|
-
)
|
|
9615
|
-
else:
|
|
9616
|
-
result_exp = snowpark_args[0].cast(DoubleType()) * snowpark_args[1].cast(
|
|
9617
|
-
DoubleType()
|
|
9618
|
-
)
|
|
9619
|
-
result_exp = _try_cast_helper(result_exp, result_type)
|
|
9620
|
-
return result_exp
|
|
9621
|
-
|
|
9622
|
-
|
|
9623
|
-
def _get_decimal_multiplication_result_type(p1, s1, p2, s2) -> DecimalType:
|
|
9551
|
+
def _get_decimal_multiplication_result_type(p1, s1, p2, s2) -> tuple[DecimalType, bool]:
|
|
9624
9552
|
result_precision = p1 + p2 + 1
|
|
9625
9553
|
result_scale = s1 + s2
|
|
9554
|
+
overflow_possible = False
|
|
9626
9555
|
if result_precision > 38:
|
|
9556
|
+
overflow_possible = True
|
|
9627
9557
|
if result_scale > 6:
|
|
9628
9558
|
overflow = result_precision - 38
|
|
9629
9559
|
result_scale = max(6, result_scale - overflow)
|
|
9630
9560
|
result_precision = 38
|
|
9631
|
-
return DecimalType(result_precision, result_scale)
|
|
9561
|
+
return DecimalType(result_precision, result_scale), overflow_possible
|
|
9632
9562
|
|
|
9633
9563
|
|
|
9634
|
-
def
|
|
9635
|
-
|
|
9636
|
-
|
|
9637
|
-
|
|
9638
|
-
|
|
9639
|
-
|
|
9564
|
+
def _arithmetic_operation(
|
|
9565
|
+
arg1: TypedColumn,
|
|
9566
|
+
arg2: TypedColumn,
|
|
9567
|
+
op: Callable[[Column, Column], Column],
|
|
9568
|
+
overflow_possible: bool,
|
|
9569
|
+
should_raise_on_overflow: bool,
|
|
9570
|
+
target_type: DecimalType,
|
|
9640
9571
|
) -> Column:
|
|
9641
|
-
|
|
9642
|
-
|
|
9643
|
-
|
|
9644
|
-
|
|
9645
|
-
|
|
9646
|
-
|
|
9647
|
-
|
|
9572
|
+
def _cast_arg(tc: TypedColumn) -> Column:
|
|
9573
|
+
_, s = _get_type_precision(tc.typ)
|
|
9574
|
+
typ = (
|
|
9575
|
+
DoubleType()
|
|
9576
|
+
if s > 0
|
|
9577
|
+
or (
|
|
9578
|
+
isinstance(tc.typ, _FractionalType)
|
|
9579
|
+
and not isinstance(tc.typ, DecimalType)
|
|
9580
|
+
)
|
|
9581
|
+
else LongType()
|
|
9582
|
+
)
|
|
9583
|
+
return tc.col.cast(typ)
|
|
9584
|
+
|
|
9585
|
+
op_for_overflow_check = op(arg1.col.cast(DoubleType()), arg2.col.cast(DoubleType()))
|
|
9586
|
+
safe_op = op(_cast_arg(arg1), _cast_arg(arg2))
|
|
9587
|
+
|
|
9588
|
+
if overflow_possible:
|
|
9589
|
+
return _cast_arithmetic_operation_result(
|
|
9590
|
+
op_for_overflow_check, safe_op, target_type, should_raise_on_overflow
|
|
9648
9591
|
)
|
|
9649
9592
|
else:
|
|
9650
|
-
|
|
9651
|
-
|
|
9652
|
-
|
|
9653
|
-
|
|
9654
|
-
|
|
9593
|
+
return op(arg1.col, arg2.col).cast(target_type)
|
|
9594
|
+
|
|
9595
|
+
|
|
9596
|
+
def _cast_arithmetic_operation_result(
|
|
9597
|
+
overflow_check_expr: Column,
|
|
9598
|
+
result_expr: Column,
|
|
9599
|
+
target_type: DecimalType,
|
|
9600
|
+
should_raise_on_overflow: bool,
|
|
9601
|
+
) -> Column:
|
|
9602
|
+
"""
|
|
9603
|
+
Casts an arithmetic operation result to the target decimal type with overflow detection.
|
|
9604
|
+
This function uses a dual-expression approach for robust overflow handling:
|
|
9605
|
+
Args:
|
|
9606
|
+
overflow_check_expr: Arithmetic expression using DoubleType operands for overflow detection.
|
|
9607
|
+
This expression is used ONLY for boundary checking against the target
|
|
9608
|
+
decimal's min/max values. DoubleType preserves the magnitude of large
|
|
9609
|
+
intermediate results that might overflow in decimal arithmetic.
|
|
9610
|
+
result_expr: Arithmetic expression using safer operand types (LongType for integers,
|
|
9611
|
+
DoubleType for fractionals) for the actual result computation.
|
|
9612
|
+
target_type: Target DecimalType to cast the result to.
|
|
9613
|
+
should_raise_on_overflow: If True raises ArithmeticException on overflow, if False, returns NULL on overflow.
|
|
9614
|
+
"""
|
|
9615
|
+
|
|
9616
|
+
def create_overflow_handler(min_val, max_val, type_name: str):
|
|
9617
|
+
if should_raise_on_overflow:
|
|
9618
|
+
raise_error = _raise_error_helper(target_type, ArithmeticException)
|
|
9619
|
+
return snowpark_fn.when(
|
|
9620
|
+
(overflow_check_expr < snowpark_fn.lit(min_val))
|
|
9621
|
+
| (overflow_check_expr > snowpark_fn.lit(max_val)),
|
|
9622
|
+
raise_error(
|
|
9623
|
+
snowpark_fn.lit(
|
|
9624
|
+
f'[NUMERIC_VALUE_OUT_OF_RANGE] Value cannot be represented as {type_name}. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error, and return NULL instead.'
|
|
9625
|
+
)
|
|
9626
|
+
),
|
|
9627
|
+
).otherwise(result_expr.cast(target_type))
|
|
9628
|
+
else:
|
|
9629
|
+
return snowpark_fn.when(
|
|
9630
|
+
(overflow_check_expr < snowpark_fn.lit(min_val))
|
|
9631
|
+
| (overflow_check_expr > snowpark_fn.lit(max_val)),
|
|
9632
|
+
snowpark_fn.lit(None),
|
|
9633
|
+
).otherwise(result_expr.cast(target_type))
|
|
9634
|
+
|
|
9635
|
+
precision = target_type.precision
|
|
9636
|
+
scale = target_type.scale
|
|
9637
|
+
|
|
9638
|
+
max_val = (10**precision - 1) / (10**scale)
|
|
9639
|
+
min_val = -max_val
|
|
9640
|
+
|
|
9641
|
+
return create_overflow_handler(min_val, max_val, f"DECIMAL({precision},{scale})")
|
|
9655
9642
|
|
|
9656
9643
|
|
|
9657
9644
|
def _get_decimal_division_result_type(p1, s1, p2, s2) -> tuple[DecimalType, bool]:
|
|
9658
|
-
|
|
9645
|
+
overflow_possible = False
|
|
9659
9646
|
result_scale = max(6, s1 + p2 + 1)
|
|
9660
9647
|
result_precision = p1 - s1 + s2 + result_scale
|
|
9661
9648
|
if result_precision > 38:
|
|
9662
|
-
|
|
9663
|
-
overflow_detected = True
|
|
9649
|
+
overflow_possible = True
|
|
9664
9650
|
overflow = result_precision - 38
|
|
9665
9651
|
result_scale = max(6, result_scale - overflow)
|
|
9666
9652
|
result_precision = 38
|
|
9667
|
-
return DecimalType(result_precision, result_scale),
|
|
9653
|
+
return DecimalType(result_precision, result_scale), overflow_possible
|
|
9668
9654
|
|
|
9669
9655
|
|
|
9670
9656
|
def _try_arithmetic_helper(
|
|
@@ -9778,46 +9764,20 @@ def _try_arithmetic_helper(
|
|
|
9778
9764
|
DecimalType(),
|
|
9779
9765
|
DecimalType(),
|
|
9780
9766
|
):
|
|
9781
|
-
|
|
9782
|
-
|
|
9783
|
-
|
|
9784
|
-
|
|
9785
|
-
|
|
9786
|
-
|
|
9787
|
-
|
|
9788
|
-
|
|
9789
|
-
|
|
9790
|
-
|
|
9791
|
-
|
|
9792
|
-
|
|
9793
|
-
|
|
9794
|
-
else:
|
|
9795
|
-
# Both decimal types
|
|
9796
|
-
if operation_type == 1 and s1 == s2: # subtraction with matching scales
|
|
9797
|
-
new_scale = s1
|
|
9798
|
-
max_integral_digits = max(p1 - s1, p2 - s2)
|
|
9799
|
-
new_precision = max_integral_digits + new_scale
|
|
9800
|
-
else:
|
|
9801
|
-
new_scale = max(s1, s2)
|
|
9802
|
-
max_integral_digits = max(p1 - s1, p2 - s2)
|
|
9803
|
-
new_precision = max_integral_digits + new_scale + 1
|
|
9804
|
-
|
|
9805
|
-
# Overflow check
|
|
9806
|
-
if new_precision > 38:
|
|
9807
|
-
if global_config.spark_sql_ansi_enabled:
|
|
9808
|
-
raise ArithmeticException(
|
|
9809
|
-
f'[NUMERIC_VALUE_OUT_OF_RANGE] Precision {new_precision} exceeds maximum allowed precision of 38. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error, and return NULL instead.'
|
|
9810
|
-
)
|
|
9811
|
-
return snowpark_fn.lit(None)
|
|
9812
|
-
|
|
9813
|
-
left_operand, right_operand = snowpark_args[0], snowpark_args[1]
|
|
9814
|
-
|
|
9815
|
-
result = (
|
|
9816
|
-
left_operand + right_operand
|
|
9817
|
-
if operation_type == 0
|
|
9818
|
-
else left_operand - right_operand
|
|
9767
|
+
result_type, overflow_possible = _get_add_sub_result_type(
|
|
9768
|
+
typed_args[0].typ,
|
|
9769
|
+
typed_args[1].typ,
|
|
9770
|
+
"try_add" if operation_type == 0 else "try_subtract",
|
|
9771
|
+
)
|
|
9772
|
+
|
|
9773
|
+
return _arithmetic_operation(
|
|
9774
|
+
typed_args[0],
|
|
9775
|
+
typed_args[1],
|
|
9776
|
+
lambda x, y: x + y if operation_type == 0 else x - y,
|
|
9777
|
+
overflow_possible,
|
|
9778
|
+
False,
|
|
9779
|
+
result_type,
|
|
9819
9780
|
)
|
|
9820
|
-
return snowpark_fn.cast(result, DecimalType(new_precision, new_scale))
|
|
9821
9781
|
|
|
9822
9782
|
# If either of the inputs is floating point, we can just let it go through to Snowflake, where overflow
|
|
9823
9783
|
# matches Spark and goes to inf.
|
|
@@ -9863,7 +9823,8 @@ def _get_add_sub_result_type(
|
|
|
9863
9823
|
type1: DataType,
|
|
9864
9824
|
type2: DataType,
|
|
9865
9825
|
spark_function_name: str,
|
|
9866
|
-
) -> DataType:
|
|
9826
|
+
) -> tuple[DataType, bool]:
|
|
9827
|
+
overflow_possible = False
|
|
9867
9828
|
result_type = _find_common_type([type1, type2])
|
|
9868
9829
|
match result_type:
|
|
9869
9830
|
case DecimalType():
|
|
@@ -9872,6 +9833,7 @@ def _get_add_sub_result_type(
|
|
|
9872
9833
|
result_scale = max(s1, s2)
|
|
9873
9834
|
result_precision = max(p1 - s1, p2 - s2) + result_scale + 1
|
|
9874
9835
|
if result_precision > 38:
|
|
9836
|
+
overflow_possible = True
|
|
9875
9837
|
if result_scale > 6:
|
|
9876
9838
|
overflow = result_precision - 38
|
|
9877
9839
|
result_scale = max(6, result_scale - overflow)
|
|
@@ -9900,7 +9862,7 @@ def _get_add_sub_result_type(
|
|
|
9900
9862
|
raise AnalysisException(
|
|
9901
9863
|
f'[DATATYPE_MISMATCH.BINARY_OP_WRONG_TYPE] Cannot resolve "{spark_function_name}" due to data type mismatch: the binary operator requires the input type ("NUMERIC" or "INTERVAL DAY TO SECOND" or "INTERVAL YEAR TO MONTH" or "INTERVAL"), not "BOOLEAN".',
|
|
9902
9864
|
)
|
|
9903
|
-
return result_type
|
|
9865
|
+
return result_type, overflow_possible
|
|
9904
9866
|
|
|
9905
9867
|
|
|
9906
9868
|
def _get_spark_function_name(
|
|
@@ -7,8 +7,27 @@ from urllib.parse import urlparse
|
|
|
7
7
|
CLOUD_PREFIX_TO_CLOUD = {
|
|
8
8
|
"abfss": "azure",
|
|
9
9
|
"wasbs": "azure",
|
|
10
|
+
"gcs": "gcp",
|
|
11
|
+
"gs": "gcp",
|
|
10
12
|
}
|
|
11
13
|
|
|
14
|
+
SUPPORTED_COMPRESSION_PER_FORMAT = {
|
|
15
|
+
"csv": {"AUTO", "GZIP", "BZ2", "BROTLI", "ZSTD", "DEFLATE", "RAW_DEFLATE", "NONE"},
|
|
16
|
+
"json": {"AUTO", "GZIP", "BZ2", "BROTLI", "ZSTD", "DEFLATE", "RAW_DEFLATE", "NONE"},
|
|
17
|
+
"parquet": {"AUTO", "LZO", "SNAPPY", "NONE"},
|
|
18
|
+
"text": {"NONE"},
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def supported_compressions_for_format(format: str) -> set[str]:
|
|
23
|
+
return SUPPORTED_COMPRESSION_PER_FORMAT.get(format, set())
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def is_supported_compression(format: str, compression: str | None) -> bool:
|
|
27
|
+
if compression is None:
|
|
28
|
+
return True
|
|
29
|
+
return compression in supported_compressions_for_format(format)
|
|
30
|
+
|
|
12
31
|
|
|
13
32
|
def get_cloud_from_url(
|
|
14
33
|
url: str,
|
|
@@ -66,7 +85,8 @@ def is_cloud_path(path: str) -> bool:
|
|
|
66
85
|
or path.startswith("azure://")
|
|
67
86
|
or path.startswith("abfss://")
|
|
68
87
|
or path.startswith("wasbs://") # Azure
|
|
69
|
-
or path.startswith("gcs://")
|
|
88
|
+
or path.startswith("gcs://")
|
|
89
|
+
or path.startswith("gs://") # GCP
|
|
70
90
|
)
|
|
71
91
|
|
|
72
92
|
|