snowpark-connect 0.31.0__tar.gz → 0.33.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.31.0/src/snowpark_connect.egg-info → snowpark_connect-0.33.0}/PKG-INFO +7 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/setup.py +6 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/__init__.py +1 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/column_name_handler.py +143 -105
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/column_qualifier.py +43 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/dataframe_container.py +3 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_command.py +4 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/hybrid_column_map.py +5 -4
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_expression.py +5 -4
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_extension.py +12 -6
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_sql_expression.py +50 -7
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_unresolved_attribute.py +62 -25
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_unresolved_function.py +924 -127
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_unresolved_star.py +9 -7
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/spark/__init__.py +16 -0
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/spark/accessors.py +1281 -0
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/spark/functions.py +203 -0
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/spark/utils.py +202 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/catalogs/snowflake_catalog.py +4 -1
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_aggregate.py +6 -5
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_column_ops.py +9 -3
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_extension.py +10 -9
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_join.py +219 -144
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_row_ops.py +136 -54
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_sql.py +134 -16
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_subquery_alias.py +4 -1
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_json.py +87 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_table.py +6 -3
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/utils.py +46 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/write/map_write.py +215 -289
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/resources_initializer.py +25 -13
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/server.py +10 -26
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/type_mapping.py +38 -3
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/typed_column.py +8 -6
- snowpark_connect-0.33.0/src/snowflake/snowpark_connect/utils/sequence.py +21 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/session.py +27 -4
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/version.py +1 -1
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_decoder/dp_session.py +1 -1
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0/src/snowpark_connect.egg-info}/PKG-INFO +7 -2
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowpark_connect.egg-info/SOURCES.txt +6 -65
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowpark_connect.egg-info/requires.txt +6 -1
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/antlr4-runtime-4.9.3.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-cli-1.5.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-codec-1.16.1.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-collections-3.2.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-collections4-4.4.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-compiler-3.1.9.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-compress-1.26.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-crypto-1.1.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-dbcp-1.4.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-io-2.16.1.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-lang-2.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-lang3-3.12.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-logging-1.1.3.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-math3-3.6.1.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-pool-1.5.4.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/commons-text-1.10.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/hadoop-client-api-trimmed-3.3.4.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-annotations-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-core-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-core-asl-1.9.13.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-databind-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-dataformat-yaml-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-datatype-jsr310-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/jackson-module-scala_2.12-2.15.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/json4s-ast_2.12-3.7.0-M11.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/json4s-core_2.12-3.7.0-M11.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/json4s-jackson_2.12-3.7.0-M11.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/json4s-native_2.12-3.7.0-M11.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/json4s-scalap_2.12-3.7.0-M11.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/kryo-shaded-4.0.2.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/log4j-1.2-api-2.20.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/log4j-api-2.20.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/log4j-core-2.20.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/log4j-slf4j2-impl-2.20.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.3.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/sas-scala-udf_2.12-0.1.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/scala-collection-compat_2.12-2.7.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/scala-library-2.12.18.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/scala-parser-combinators_2.12-2.3.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/scala-reflect-2.12.18.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/scala-xml_2.12-2.1.0.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/slf4j-api-2.0.7.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-catalyst_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-common-utils_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-connect-client-jvm_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-core_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-graphx_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-hive-thriftserver_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-hive_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-kvstore_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-launcher_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-mesos_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-mllib-local_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-network-common_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-network-shuffle_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-repl_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-sketch_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-sql-api_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-sql_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-tags_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-unsafe_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/includes/jars/spark-yarn_2.12-3.5.6.jar +0 -0
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2_grpc.py +0 -4
- snowpark_connect-0.31.0/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2_grpc.py +0 -4
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/LICENSE-binary +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/LICENSE.txt +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/NOTICE-binary +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/README.md +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/setup.cfg +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/analyze_plan/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/analyze_plan/map_tree_string.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/client.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/config.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/constants.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/control_server.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/dataframe_name_handler.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/date_time_format_mapping.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/empty_dataframe.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/error/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/error/error_codes.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/error/error_mapping.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/error/error_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/error/exceptions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/execute_plan/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_root.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/execute_plan/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/function_defaults.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/literal.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_cast.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_udf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_unresolved_extract_value.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_update_fields.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/map_window_function.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/expression/typer.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_globals.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_typing.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/accumulators.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/broadcast.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle_fast.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/compat.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/conf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/context.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/daemon.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/error_classes.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/captured.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/connect.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/files.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/find_spark_home.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/install.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/instrumentation_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/java_gateway.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/join.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/_typing.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/classification.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/clustering.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/common.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/classification.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/evaluation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/feature.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/io_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/pipeline.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/summarizer.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/tuning.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/deepspeed_distributor.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/dl_util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/evaluation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/feature.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/fpm.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/image.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/linalg/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/model_cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/_shared_params_code_gen.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/shared.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/pipeline.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/recommendation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/regression.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/stat.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/data.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/distributor.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/log_communication.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/torch_run_process_wrapper.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tree.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tuning.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/wrapper.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/_typing.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/classification.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/clustering.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/common.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/evaluation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/feature.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/fpm.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/distributed.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/random.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/recommendation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/regression.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/KernelDensity.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/_statistics.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/distribution.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/test.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/tree.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/_typing.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/accessors.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/categorical.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/config.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/correlation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/binary_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/boolean_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/categorical_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/complex_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/date_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/datetime_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/null_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/num_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/string_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/timedelta_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/udt_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/datetimes.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/exceptions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/extensions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/frame.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/generic.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/groupby.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/base.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/category.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/datetimes.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/multi.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/numeric.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/timedelta.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexing.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/internal.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/common.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/frame.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/general_functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/groupby.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/indexes.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/resample.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/scalars.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/series.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/window.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/mlflow.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/namespace.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/numpy_compat.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/core.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/matplotlib.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/plotly.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/resample.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/series.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_formatter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_processor.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/strings.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/supported_api_gen.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/typehints.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/usage_logger.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/window.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/profiler.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/py.typed +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rdd.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rddsampler.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/information.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/profile.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/requests.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resultiterable.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/serializers.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shuffle.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/_typing.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/catalog.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/column.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/conf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/_typing.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/catalog.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/artifact.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/core.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/reattach.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/column.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conversion.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/dataframe.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/expressions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/group.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/plan.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2_grpc.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/readwriter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/session.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/query.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/readwriter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/foreach_batch_worker.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/listener_worker.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/types.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udtf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/window.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/context.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/dataframe.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/group.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/observation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/__init__.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/__init__.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/frame.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/series.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/conversion.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/group_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/map_ops.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/serializers.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/typehints.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/types.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/functions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/readwriter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/session.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/sql_formatter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/listener.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/query.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/readwriter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/state.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/types.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udtf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/window.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/statcounter.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/status.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/storagelevel.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/context.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/dstream.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/kinesis.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/listener.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/taskcontext.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/connectutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mllibutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mlutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/objects.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/pandasutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/sqlutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/streamingutils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/traceback_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/version.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker_util.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/control_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/control_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/control_pb2_grpc.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/snowflake_rdd_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/catalogs/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/catalogs/abstract_spark_catalog.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/catalogs/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/io_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_catalog.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_crosstab.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_local_relation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_map_partitions.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_relation.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_sample_by.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_show_string.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_stats.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/map_udtf.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/jdbc_read_dbapi.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_csv.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_jdbc.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_parquet.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_socket.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/map_read_text.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/metadata_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/reader_config.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/read/utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/stage_locator.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/write/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/write/jdbc_write_dbapi.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/relation/write/map_write_jdbc.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/resources/java_udfs-1.0-SNAPSHOT.jar +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/start_server.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/tcm.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/artifacts.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/concurrent.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/context.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/describe_query_cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/env_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/external_udxf_cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/identifiers.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/interrupt.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/io_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/pandas_udtf_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/profiling.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/scala_udf_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/snowpark_connect_logging.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/telemetry.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/temporary_view_cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udf_cache.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udf_helper.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udf_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udtf_helper.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udtf_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/udxf_import_utils.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/utils/xxhash64.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_decoder/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_decoder/spark_decoder.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowpark_connect.egg-info/dependency_links.txt +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowpark_connect.egg-info/top_level.txt +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/spark/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/spark/connect/__init__.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/spark/connect/envelope_pb2.py +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/spark/connect/envelope_pb2.pyi +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/tools/snowpark-connect +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/tools/snowpark-session +0 -0
- {snowpark_connect-0.31.0 → snowpark_connect-0.33.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.33.0
|
|
4
4
|
Summary: Snowpark Connect for Spark
|
|
5
5
|
Author: Snowflake, Inc
|
|
6
6
|
License: Apache License, Version 2.0
|
|
@@ -9,11 +9,13 @@ Description-Content-Type: text/markdown
|
|
|
9
9
|
License-File: LICENSE.txt
|
|
10
10
|
License-File: LICENSE-binary
|
|
11
11
|
License-File: NOTICE-binary
|
|
12
|
+
Requires-Dist: snowpark-connect-deps-1==3.56.2
|
|
13
|
+
Requires-Dist: snowpark-connect-deps-2==3.56.2
|
|
12
14
|
Requires-Dist: certifi>=2025.1.31
|
|
13
15
|
Requires-Dist: cloudpickle
|
|
14
16
|
Requires-Dist: fsspec[http]
|
|
15
17
|
Requires-Dist: jpype1
|
|
16
|
-
Requires-Dist: protobuf<
|
|
18
|
+
Requires-Dist: protobuf<6.32.0,>=4.25.3
|
|
17
19
|
Requires-Dist: s3fs>=2025.3.0
|
|
18
20
|
Requires-Dist: snowflake.core<2,>=1.0.5
|
|
19
21
|
Requires-Dist: snowflake-snowpark-python[pandas]<1.41.0,==1.40.0
|
|
@@ -29,11 +31,14 @@ Requires-Dist: grpcio-status<1.63,>=1.56.0
|
|
|
29
31
|
Requires-Dist: googleapis-common-protos>=1.56.4
|
|
30
32
|
Requires-Dist: numpy<2,>=1.15
|
|
31
33
|
Requires-Dist: gcsfs>=2025.9.0
|
|
34
|
+
Provides-Extra: jdk
|
|
35
|
+
Requires-Dist: jdk4py==17.0.9.2; extra == "jdk"
|
|
32
36
|
Dynamic: author
|
|
33
37
|
Dynamic: description
|
|
34
38
|
Dynamic: description-content-type
|
|
35
39
|
Dynamic: license
|
|
36
40
|
Dynamic: license-file
|
|
41
|
+
Dynamic: provides-extra
|
|
37
42
|
Dynamic: requires-dist
|
|
38
43
|
Dynamic: requires-python
|
|
39
44
|
Dynamic: summary
|
|
@@ -29,7 +29,6 @@ setup(
|
|
|
29
29
|
package_data={
|
|
30
30
|
"": ["*.json"],
|
|
31
31
|
"snowflake.snowpark_connect": ["resources/*.jar"],
|
|
32
|
-
"snowflake.snowpark_connect.includes": ["jars/*.jar"],
|
|
33
32
|
},
|
|
34
33
|
package_dir={"": "src"},
|
|
35
34
|
scripts=[
|
|
@@ -39,11 +38,13 @@ setup(
|
|
|
39
38
|
],
|
|
40
39
|
python_requires=">=3.10,<3.13",
|
|
41
40
|
install_requires=[
|
|
41
|
+
"snowpark-connect-deps-1==3.56.2", # Spark JAR dependencies (71MB)
|
|
42
|
+
"snowpark-connect-deps-2==3.56.2", # Other JAR dependencies (53MB)
|
|
42
43
|
"certifi>=2025.1.31", # prod-297255-inc0132291
|
|
43
44
|
"cloudpickle",
|
|
44
45
|
"fsspec[http]",
|
|
45
46
|
"jpype1",
|
|
46
|
-
"protobuf>=4.25.3,<
|
|
47
|
+
"protobuf>=4.25.3,<6.32.0",
|
|
47
48
|
"s3fs>=2025.3.0", # prod-297255-inc0132291
|
|
48
49
|
"snowflake.core>=1.0.5,<2",
|
|
49
50
|
"snowflake-snowpark-python[pandas]==1.40.0,<1.41.0",
|
|
@@ -61,4 +62,7 @@ setup(
|
|
|
61
62
|
"numpy>=1.15,<2",
|
|
62
63
|
"gcsfs>=2025.9.0",
|
|
63
64
|
],
|
|
65
|
+
extras_require={
|
|
66
|
+
"jdk": ["jdk4py==17.0.9.2"],
|
|
67
|
+
},
|
|
64
68
|
)
|
{snowpark_connect-0.31.0 → snowpark_connect-0.33.0}/src/snowflake/snowpark_connect/__init__.py
RENAMED
|
@@ -10,6 +10,7 @@ sys.path.append(str(pathlib.Path(__file__).parent / "includes/python"))
|
|
|
10
10
|
|
|
11
11
|
from .server import get_session # noqa: E402, F401
|
|
12
12
|
from .server import start_session # noqa: E402, F401
|
|
13
|
+
from .utils.session import skip_session_configuration # noqa: E402, F401
|
|
13
14
|
|
|
14
15
|
# Turn off catalog warning for Snowpark
|
|
15
16
|
sp_logger = logging.getLogger("snowflake.snowpark")
|
|
@@ -13,12 +13,10 @@ from functools import cached_property
|
|
|
13
13
|
from pyspark.errors.exceptions.base import AnalysisException
|
|
14
14
|
|
|
15
15
|
from snowflake.snowpark import DataFrame
|
|
16
|
-
from snowflake.snowpark._internal.analyzer.analyzer_utils import
|
|
17
|
-
quote_name_without_upper_casing,
|
|
18
|
-
unquote_if_quoted,
|
|
19
|
-
)
|
|
16
|
+
from snowflake.snowpark._internal.analyzer.analyzer_utils import unquote_if_quoted
|
|
20
17
|
from snowflake.snowpark._internal.utils import quote_name
|
|
21
18
|
from snowflake.snowpark.types import StructType
|
|
19
|
+
from snowflake.snowpark_connect.column_qualifier import ColumnQualifier
|
|
22
20
|
from snowflake.snowpark_connect.config import global_config
|
|
23
21
|
from snowflake.snowpark_connect.error.error_codes import ErrorCodes
|
|
24
22
|
from snowflake.snowpark_connect.error.error_utils import attach_custom_error_code
|
|
@@ -29,6 +27,7 @@ from snowflake.snowpark_connect.utils.context import (
|
|
|
29
27
|
from snowflake.snowpark_connect.utils.identifiers import (
|
|
30
28
|
split_fully_qualified_spark_name,
|
|
31
29
|
)
|
|
30
|
+
from snowflake.snowpark_connect.utils.sequence import next_unique_num
|
|
32
31
|
|
|
33
32
|
ALREADY_QUOTED = re.compile('^(".+")$', re.DOTALL)
|
|
34
33
|
|
|
@@ -48,6 +47,7 @@ def set_schema_getter(df: DataFrame, get_schema: Callable[[], StructType]) -> No
|
|
|
48
47
|
df.__class__ = PatchedDataFrame
|
|
49
48
|
|
|
50
49
|
|
|
50
|
+
# TODO replace plan_id-offset with single unique value
|
|
51
51
|
def make_column_names_snowpark_compatible(
|
|
52
52
|
names: list[str], plan_id: int, offset: int = 0
|
|
53
53
|
) -> list[str]:
|
|
@@ -93,35 +93,27 @@ def make_column_names_snowpark_compatible(
|
|
|
93
93
|
]
|
|
94
94
|
|
|
95
95
|
|
|
96
|
+
def make_unique_snowpark_name(spark_name: str) -> str:
|
|
97
|
+
"""
|
|
98
|
+
Returns a snowpark column name that's guaranteed to be unique in this session,
|
|
99
|
+
by appending "#<unique number>" to the given spark name.
|
|
100
|
+
"""
|
|
101
|
+
return quote_name(f"{spark_name}#{next_unique_num()}")
|
|
102
|
+
|
|
103
|
+
|
|
96
104
|
@dataclass(frozen=True)
|
|
97
105
|
class ColumnNames:
|
|
98
106
|
spark_name: str
|
|
99
107
|
snowpark_name: str
|
|
100
|
-
qualifiers:
|
|
108
|
+
qualifiers: set[ColumnQualifier]
|
|
101
109
|
catalog_info: str | None = None # Catalog from fully qualified name
|
|
102
110
|
database_info: str | None = None # Database from fully qualified name
|
|
103
111
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
For example, if the column name is 'id' and the qualifiers are ['db', 'table'],
|
|
111
|
-
then the possible Spark names are:
|
|
112
|
-
['id', 'db.table.id', 'table.id']
|
|
113
|
-
"""
|
|
114
|
-
spark_name = column_names.spark_name
|
|
115
|
-
qualifiers = column_names.qualifiers
|
|
116
|
-
|
|
117
|
-
qualifier_suffixes_list = [
|
|
118
|
-
".".join(quote_name_without_upper_casing(x) for x in qualifiers[i:])
|
|
119
|
-
for i in range(len(qualifiers))
|
|
120
|
-
]
|
|
121
|
-
return [spark_name] + [
|
|
122
|
-
f"{qualifier_suffix}.{spark_name}"
|
|
123
|
-
for qualifier_suffix in qualifier_suffixes_list
|
|
124
|
-
]
|
|
112
|
+
def all_spark_names_including_qualified_names(self):
|
|
113
|
+
all_names = [self.spark_name]
|
|
114
|
+
for qualifier in self.qualifiers:
|
|
115
|
+
all_names.extend(qualifier.all_qualified_names(self.spark_name))
|
|
116
|
+
return all_names
|
|
125
117
|
|
|
126
118
|
|
|
127
119
|
class ColumnNameMap:
|
|
@@ -133,13 +125,13 @@ class ColumnNameMap:
|
|
|
133
125
|
[], bool
|
|
134
126
|
] = lambda: global_config.spark_sql_caseSensitive,
|
|
135
127
|
column_metadata: dict | None = None,
|
|
136
|
-
column_qualifiers: list[
|
|
128
|
+
column_qualifiers: list[set[ColumnQualifier]] = None,
|
|
137
129
|
parent_column_name_map: ColumnNameMap | None = None,
|
|
138
130
|
) -> None:
|
|
139
131
|
"""
|
|
140
132
|
spark_column_names: Original spark column names
|
|
141
133
|
snowpark_column_names: Snowpark column names
|
|
142
|
-
column_metadata: This field is used to store metadata related to columns. Since Snowpark
|
|
134
|
+
column_metadata: This field is used to store metadata related to columns. Since Snowpark's Struct type does not support metadata,
|
|
143
135
|
we use this attribute to store any metadata related to the columns.
|
|
144
136
|
The key is the original Spark column name, and the value is the metadata.
|
|
145
137
|
example: Dict('age', {'foo': 'bar'})
|
|
@@ -155,7 +147,7 @@ class ColumnNameMap:
|
|
|
155
147
|
|
|
156
148
|
# Rename chain dictionary to track column renaming history
|
|
157
149
|
self.rename_chains: dict[str, str] = {} # old_name -> new_name mapping
|
|
158
|
-
self.current_columns: set[str] = set() #
|
|
150
|
+
self.current_columns: set[str] = set() # current column names
|
|
159
151
|
|
|
160
152
|
# Parent ColumnNameMap classes
|
|
161
153
|
self._parent_column_name_map = parent_column_name_map
|
|
@@ -186,21 +178,18 @@ class ColumnNameMap:
|
|
|
186
178
|
c = ColumnNames(
|
|
187
179
|
spark_name=spark_name,
|
|
188
180
|
snowpark_name=snowpark_column_names[i],
|
|
189
|
-
qualifiers=column_qualifiers[i]
|
|
181
|
+
qualifiers=column_qualifiers[i]
|
|
182
|
+
if column_qualifiers and column_qualifiers[i]
|
|
183
|
+
else set(),
|
|
190
184
|
catalog_info=catalog_info,
|
|
191
185
|
database_info=database_info,
|
|
192
186
|
)
|
|
193
187
|
self.columns.append(c)
|
|
194
188
|
|
|
195
|
-
|
|
196
|
-
spark_names_including_qualifier = get_list_of_spark_names_for_column(c)
|
|
197
|
-
|
|
198
|
-
for spark_name_including_qualifier in spark_names_including_qualifier:
|
|
189
|
+
for spark_name in c.all_spark_names_including_qualified_names():
|
|
199
190
|
# the same spark name can map to multiple snowpark names
|
|
200
|
-
self.spark_to_col[
|
|
201
|
-
self.uppercase_spark_to_col[
|
|
202
|
-
spark_name_including_qualifier.upper()
|
|
203
|
-
].append(c)
|
|
191
|
+
self.spark_to_col[spark_name].append(c)
|
|
192
|
+
self.uppercase_spark_to_col[spark_name.upper()].append(c)
|
|
204
193
|
|
|
205
194
|
# the same snowpark name can map to multiple spark column
|
|
206
195
|
# e.g. df.select(date_format('dt', 'yyy'), date_format('dt', 'yyyy')) ->
|
|
@@ -405,7 +394,7 @@ class ColumnNameMap:
|
|
|
405
394
|
if spark_column_name not in self.spark_to_col:
|
|
406
395
|
return False
|
|
407
396
|
|
|
408
|
-
columns = self.spark_to_col[spark_column_name]
|
|
397
|
+
columns: list[ColumnNames] = self.spark_to_col[spark_column_name]
|
|
409
398
|
|
|
410
399
|
# If we don't have multiple columns, there's no ambiguity to resolve
|
|
411
400
|
if len(columns) <= 1:
|
|
@@ -416,30 +405,7 @@ class ColumnNameMap:
|
|
|
416
405
|
first_column = columns[0]
|
|
417
406
|
|
|
418
407
|
for column in columns[1:]:
|
|
419
|
-
|
|
420
|
-
# If one has the attribute but the other doesn't, they're different
|
|
421
|
-
if hasattr(first_column, "snowpark_type") != hasattr(
|
|
422
|
-
column, "snowpark_type"
|
|
423
|
-
):
|
|
424
|
-
return False
|
|
425
|
-
# If both have the attribute and values differ, they're different expressions
|
|
426
|
-
if (
|
|
427
|
-
hasattr(first_column, "snowpark_type")
|
|
428
|
-
and hasattr(column, "snowpark_type")
|
|
429
|
-
and first_column.snowpark_type != column.snowpark_type
|
|
430
|
-
):
|
|
431
|
-
return False
|
|
432
|
-
|
|
433
|
-
# Check qualifiers attribute
|
|
434
|
-
# If one has the attribute but the other doesn't, they're different
|
|
435
|
-
if hasattr(first_column, "qualifiers") != hasattr(column, "qualifiers"):
|
|
436
|
-
return False
|
|
437
|
-
# If both have the attribute and values differ, they might be from different contexts
|
|
438
|
-
if (
|
|
439
|
-
hasattr(first_column, "qualifiers")
|
|
440
|
-
and hasattr(column, "qualifiers")
|
|
441
|
-
and first_column.qualifiers != column.qualifiers
|
|
442
|
-
):
|
|
408
|
+
if first_column.qualifiers != column.qualifiers:
|
|
443
409
|
return False
|
|
444
410
|
|
|
445
411
|
# Additional safety check: ensure all snowpark names are actually in our mapping
|
|
@@ -500,32 +466,30 @@ class ColumnNameMap:
|
|
|
500
466
|
return [c.spark_name for c in self.columns]
|
|
501
467
|
|
|
502
468
|
def get_spark_and_snowpark_columns_with_qualifier_for_qualifier(
|
|
503
|
-
self,
|
|
504
|
-
) -> tuple[list[str], list[str], list[
|
|
469
|
+
self, target_qualifier: ColumnQualifier
|
|
470
|
+
) -> tuple[list[str], list[str], list[set[ColumnQualifier]]]:
|
|
505
471
|
"""
|
|
506
|
-
Returns the Spark and Snowpark column names along with their qualifiers for the specified
|
|
507
|
-
If a column does not have a qualifier, it will be None.
|
|
472
|
+
Returns the Spark and Snowpark column names along with their qualifiers for the specified qualifier.
|
|
508
473
|
"""
|
|
509
|
-
spark_columns = []
|
|
510
|
-
snowpark_columns = []
|
|
511
|
-
qualifiers = []
|
|
474
|
+
spark_columns: list[str] = []
|
|
475
|
+
snowpark_columns: list[str] = []
|
|
476
|
+
qualifiers: list[set[ColumnQualifier]] = []
|
|
512
477
|
|
|
478
|
+
normalized_qualifier = target_qualifier
|
|
513
479
|
if not self.is_case_sensitive():
|
|
514
|
-
|
|
480
|
+
normalized_qualifier = target_qualifier.to_upper()
|
|
515
481
|
|
|
516
|
-
for
|
|
517
|
-
|
|
518
|
-
|
|
482
|
+
for column in self.columns:
|
|
483
|
+
# Normalize all qualifiers for comparison
|
|
484
|
+
column_qualifiers: set[ColumnQualifier] = (
|
|
485
|
+
{q.to_upper() for q in iter(column.qualifiers)}
|
|
519
486
|
if not self.is_case_sensitive()
|
|
520
|
-
else
|
|
487
|
+
else column.qualifiers
|
|
521
488
|
)
|
|
522
|
-
if
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
spark_columns.append(c.spark_name)
|
|
527
|
-
snowpark_columns.append(c.snowpark_name)
|
|
528
|
-
qualifiers.append(c.qualifiers)
|
|
489
|
+
if any([q.matches(normalized_qualifier) for q in column_qualifiers]):
|
|
490
|
+
spark_columns.append(column.spark_name)
|
|
491
|
+
snowpark_columns.append(column.snowpark_name)
|
|
492
|
+
qualifiers.append(column.qualifiers)
|
|
529
493
|
|
|
530
494
|
return spark_columns, snowpark_columns, qualifiers
|
|
531
495
|
|
|
@@ -539,19 +503,17 @@ class ColumnNameMap:
|
|
|
539
503
|
if self._quote_if_unquoted(c) not in cols_to_drop
|
|
540
504
|
]
|
|
541
505
|
|
|
542
|
-
def get_qualifiers(self) -> list[
|
|
506
|
+
def get_qualifiers(self) -> list[set[ColumnQualifier]]:
|
|
543
507
|
"""
|
|
544
508
|
Returns the qualifiers for the columns.
|
|
545
|
-
If a column does not have a qualifier, it will be None.
|
|
546
509
|
"""
|
|
547
510
|
return [c.qualifiers for c in self.columns]
|
|
548
511
|
|
|
549
512
|
def get_qualifiers_for_columns_after_drop(
|
|
550
513
|
self, cols_to_drop: list[str]
|
|
551
|
-
) -> list[
|
|
514
|
+
) -> list[set[ColumnQualifier]]:
|
|
552
515
|
"""
|
|
553
516
|
Returns the qualifiers for the columns after dropping the specified columns.
|
|
554
|
-
If a column is dropped, its qualifier will be None.
|
|
555
517
|
"""
|
|
556
518
|
return [
|
|
557
519
|
c.qualifiers
|
|
@@ -559,13 +521,13 @@ class ColumnNameMap:
|
|
|
559
521
|
if self._quote_if_unquoted(c.snowpark_name) not in cols_to_drop
|
|
560
522
|
]
|
|
561
523
|
|
|
562
|
-
def
|
|
524
|
+
def get_qualifiers_for_spark_column(
|
|
563
525
|
self,
|
|
564
526
|
spark_column_name: str,
|
|
565
|
-
) ->
|
|
527
|
+
) -> set[ColumnQualifier]:
|
|
566
528
|
"""
|
|
567
529
|
Returns the qualifier for the specified Spark column name.
|
|
568
|
-
If the column does not exist, returns
|
|
530
|
+
If the column does not exist, returns empty ColumnQualifier.
|
|
569
531
|
"""
|
|
570
532
|
if not self.is_case_sensitive():
|
|
571
533
|
name = spark_column_name.upper()
|
|
@@ -577,7 +539,7 @@ class ColumnNameMap:
|
|
|
577
539
|
col = mapping.get(name)
|
|
578
540
|
|
|
579
541
|
if col is None or len(col) == 0:
|
|
580
|
-
return
|
|
542
|
+
return set()
|
|
581
543
|
|
|
582
544
|
return col[0].qualifiers
|
|
583
545
|
|
|
@@ -609,7 +571,7 @@ class ColumnNameMap:
|
|
|
609
571
|
|
|
610
572
|
def with_columns(
|
|
611
573
|
self, new_spark_columns: list[str], new_snowpark_columns: list[str]
|
|
612
|
-
) -> tuple[list[str], list[str], list[
|
|
574
|
+
) -> tuple[list[str], list[str], list[set[ColumnQualifier]]]:
|
|
613
575
|
"""
|
|
614
576
|
Returns an ordered list of spark and snowpark column names after adding the new columns through a withColumns call.
|
|
615
577
|
All replaced columns retain their ordering in the dataframe. The new columns are added to the end of the list.
|
|
@@ -638,7 +600,7 @@ class ColumnNameMap:
|
|
|
638
600
|
removed_index.add(index)
|
|
639
601
|
spark_columns.append(new_spark_columns[index])
|
|
640
602
|
snowpark_columns.append(new_snowpark_columns[index])
|
|
641
|
-
qualifiers.append(
|
|
603
|
+
qualifiers.append(set())
|
|
642
604
|
else:
|
|
643
605
|
spark_columns.append(c.spark_name)
|
|
644
606
|
snowpark_columns.append(c.snowpark_name)
|
|
@@ -648,7 +610,7 @@ class ColumnNameMap:
|
|
|
648
610
|
if i not in removed_index:
|
|
649
611
|
spark_columns.append(new_spark_columns[i])
|
|
650
612
|
snowpark_columns.append(new_snowpark_columns[i])
|
|
651
|
-
qualifiers.append(
|
|
613
|
+
qualifiers.append(set())
|
|
652
614
|
|
|
653
615
|
return spark_columns, snowpark_columns, qualifiers
|
|
654
616
|
|
|
@@ -658,6 +620,67 @@ class ColumnNameMap:
|
|
|
658
620
|
else:
|
|
659
621
|
return spark_name.upper()
|
|
660
622
|
|
|
623
|
+
def get_columns_after_join(
|
|
624
|
+
self, other: ColumnNameMap, join_columns: list[str]
|
|
625
|
+
) -> list[ColumnNames]:
|
|
626
|
+
"""
|
|
627
|
+
Returns a list of columns (names and qualifiers) after a using_columns join with the given column map
|
|
628
|
+
"""
|
|
629
|
+
|
|
630
|
+
join_column_names = {self._normalized_spark_name(c) for c in join_columns}
|
|
631
|
+
other_join_columns: dict[str, ColumnNames] = {}
|
|
632
|
+
other_remaining_columns: list[ColumnNames] = []
|
|
633
|
+
for oc in other.columns:
|
|
634
|
+
col_name = self._normalized_spark_name(oc.spark_name)
|
|
635
|
+
# only take the first matching column
|
|
636
|
+
if col_name in join_column_names and col_name not in other_join_columns:
|
|
637
|
+
other_join_columns[col_name] = oc
|
|
638
|
+
else:
|
|
639
|
+
other_remaining_columns.append(oc)
|
|
640
|
+
|
|
641
|
+
joined_columns: list[ColumnNames] = []
|
|
642
|
+
visited: set[str] = set()
|
|
643
|
+
# add local columns first, we're in the left side of the join
|
|
644
|
+
for c in self.columns:
|
|
645
|
+
col_name = self._normalized_spark_name(c.spark_name)
|
|
646
|
+
if col_name in join_column_names and col_name not in visited:
|
|
647
|
+
visited.add(col_name)
|
|
648
|
+
qualifiers = c.qualifiers | other_join_columns[col_name].qualifiers
|
|
649
|
+
joined_columns.append(
|
|
650
|
+
ColumnNames(c.spark_name, c.snowpark_name, qualifiers)
|
|
651
|
+
)
|
|
652
|
+
else:
|
|
653
|
+
joined_columns.append(c)
|
|
654
|
+
|
|
655
|
+
# add other columns, excluding join columns
|
|
656
|
+
return joined_columns + other_remaining_columns
|
|
657
|
+
|
|
658
|
+
def get_column_indexes(self, spark_names: list[str]) -> list[int]:
|
|
659
|
+
"""
|
|
660
|
+
Returns the first positions of the given spark_names in this column mapping.
|
|
661
|
+
Used to reorder columns after a using_columns join.
|
|
662
|
+
"""
|
|
663
|
+
# mapping from normalized spark name ot the first index of the column in the mapping
|
|
664
|
+
column_indexes = {}
|
|
665
|
+
|
|
666
|
+
for i, c in enumerate(self.columns):
|
|
667
|
+
col_name = self._normalized_spark_name(c.spark_name)
|
|
668
|
+
if col_name not in column_indexes:
|
|
669
|
+
column_indexes[col_name] = i
|
|
670
|
+
|
|
671
|
+
# return indexes for given columns
|
|
672
|
+
return [column_indexes[self._normalized_spark_name(c)] for c in spark_names]
|
|
673
|
+
|
|
674
|
+
def get_conflicting_snowpark_columns(self, other: ColumnNameMap) -> set[str]:
|
|
675
|
+
conflicting_columns = set()
|
|
676
|
+
snowpark_names = {c.snowpark_name for c in self.columns}
|
|
677
|
+
|
|
678
|
+
for c in other.columns:
|
|
679
|
+
if c.snowpark_name in snowpark_names:
|
|
680
|
+
conflicting_columns.add(c.snowpark_name)
|
|
681
|
+
|
|
682
|
+
return conflicting_columns
|
|
683
|
+
|
|
661
684
|
|
|
662
685
|
class JoinColumnNameMap(ColumnNameMap):
|
|
663
686
|
def __init__(
|
|
@@ -745,7 +768,9 @@ class JoinColumnNameMap(ColumnNameMap):
|
|
|
745
768
|
raise exception
|
|
746
769
|
|
|
747
770
|
def get_spark_column_name_from_snowpark_column_name(
|
|
748
|
-
self,
|
|
771
|
+
self,
|
|
772
|
+
snowpark_column_name: str,
|
|
773
|
+
allow_non_exists: bool = False,
|
|
749
774
|
) -> str:
|
|
750
775
|
exception = NotImplementedError("Method not implemented!")
|
|
751
776
|
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
@@ -788,42 +813,55 @@ class JoinColumnNameMap(ColumnNameMap):
|
|
|
788
813
|
|
|
789
814
|
def with_columns(
|
|
790
815
|
self, new_spark_columns: list[str], new_snowpark_columns: list[str]
|
|
791
|
-
) -> tuple[list[str], list[str], list[
|
|
816
|
+
) -> tuple[list[str], list[str], list[set[ColumnQualifier]]]:
|
|
792
817
|
exception = NotImplementedError("Method not implemented!")
|
|
793
818
|
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
794
819
|
raise exception
|
|
795
820
|
|
|
796
|
-
def get_qualifiers(self) -> list[
|
|
821
|
+
def get_qualifiers(self) -> list[set[ColumnQualifier]]:
|
|
797
822
|
exception = NotImplementedError("Method not implemented!")
|
|
798
823
|
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
799
824
|
raise exception
|
|
800
825
|
|
|
801
826
|
def get_qualifiers_for_columns_after_drop(
|
|
802
827
|
self, cols_to_drop: list[str]
|
|
803
|
-
) -> list[
|
|
828
|
+
) -> list[set[ColumnQualifier]]:
|
|
804
829
|
exception = NotImplementedError("Method not implemented!")
|
|
805
830
|
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
806
831
|
raise exception
|
|
807
832
|
|
|
808
833
|
def get_spark_and_snowpark_columns_with_qualifier_for_qualifier(
|
|
809
|
-
self,
|
|
810
|
-
) -> tuple[list[str], list[str], list[
|
|
834
|
+
self, target_qualifier: list[str]
|
|
835
|
+
) -> tuple[list[str], list[str], list[set[ColumnQualifier]]]:
|
|
811
836
|
exception = NotImplementedError("Method not implemented!")
|
|
812
837
|
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
813
838
|
raise exception
|
|
814
839
|
|
|
815
|
-
def
|
|
816
|
-
|
|
817
|
-
|
|
840
|
+
def get_qualifiers_for_spark_column(
|
|
841
|
+
self, spark_column_name: str
|
|
842
|
+
) -> set[ColumnQualifier]:
|
|
843
|
+
qualifiers_left = self.left_column_mapping.get_qualifiers_for_spark_column(
|
|
818
844
|
spark_column_name
|
|
819
845
|
)
|
|
820
|
-
|
|
846
|
+
qualifiers_right = self.right_column_mapping.get_qualifiers_for_spark_column(
|
|
821
847
|
spark_column_name
|
|
822
848
|
)
|
|
823
849
|
|
|
824
|
-
if (len(
|
|
850
|
+
if (len(qualifiers_left) > 0) and (len(qualifiers_right) > 0):
|
|
825
851
|
exception = AnalysisException(f"Ambiguous column name {spark_column_name}")
|
|
826
852
|
attach_custom_error_code(exception, ErrorCodes.AMBIGUOUS_COLUMN_NAME)
|
|
827
853
|
raise exception
|
|
828
854
|
|
|
829
|
-
return
|
|
855
|
+
return qualifiers_right if len(qualifiers_left) == 0 else qualifiers_left
|
|
856
|
+
|
|
857
|
+
def get_columns_after_join(
|
|
858
|
+
self, other: ColumnNameMap, join_columns: list[str]
|
|
859
|
+
) -> list[ColumnNames]:
|
|
860
|
+
exception = NotImplementedError("Method not implemented!")
|
|
861
|
+
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
862
|
+
raise exception
|
|
863
|
+
|
|
864
|
+
def get_column_indexes(self, spark_names: list[str]) -> list[int]:
|
|
865
|
+
exception = NotImplementedError("Method not implemented!")
|
|
866
|
+
attach_custom_error_code(exception, ErrorCodes.INTERNAL_ERROR)
|
|
867
|
+
raise exception
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright (c) 2012-2025 Snowflake Computing Inc. All rights reserved.
|
|
3
|
+
#
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from dataclasses import dataclass
|
|
8
|
+
|
|
9
|
+
from snowflake.snowpark._internal.analyzer.analyzer_utils import (
|
|
10
|
+
quote_name_without_upper_casing,
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@dataclass(frozen=True)
|
|
15
|
+
class ColumnQualifier:
|
|
16
|
+
parts: tuple[str, ...]
|
|
17
|
+
|
|
18
|
+
def __post_init__(self) -> None:
|
|
19
|
+
if not all(isinstance(x, str) for x in self.parts):
|
|
20
|
+
raise TypeError("ColumnQualifier.parts must be strings")
|
|
21
|
+
|
|
22
|
+
@property
|
|
23
|
+
def is_empty(self) -> bool:
|
|
24
|
+
return len(self.parts) == 0
|
|
25
|
+
|
|
26
|
+
def all_qualified_names(self, name: str) -> list[str]:
|
|
27
|
+
qualifier_parts = self.parts
|
|
28
|
+
qualifier_prefixes = [
|
|
29
|
+
".".join(quote_name_without_upper_casing(x) for x in qualifier_parts[i:])
|
|
30
|
+
for i in range(len(qualifier_parts))
|
|
31
|
+
]
|
|
32
|
+
return [f"{prefix}.{name}" for prefix in qualifier_prefixes]
|
|
33
|
+
|
|
34
|
+
def to_upper(self):
|
|
35
|
+
return ColumnQualifier(tuple(part.upper() for part in self.parts))
|
|
36
|
+
|
|
37
|
+
def matches(self, target: ColumnQualifier) -> bool:
|
|
38
|
+
if self.is_empty or target.is_empty:
|
|
39
|
+
return False
|
|
40
|
+
# If the column has fewer qualifiers than the target, it cannot match
|
|
41
|
+
if len(self.parts) < len(target.parts):
|
|
42
|
+
return False
|
|
43
|
+
return self.parts[-len(target.parts) :] == target.parts
|
|
@@ -8,6 +8,7 @@ from typing import TYPE_CHECKING, Callable
|
|
|
8
8
|
|
|
9
9
|
from snowflake import snowpark
|
|
10
10
|
from snowflake.snowpark.types import StructField, StructType
|
|
11
|
+
from snowflake.snowpark_connect.column_qualifier import ColumnQualifier
|
|
11
12
|
|
|
12
13
|
if TYPE_CHECKING:
|
|
13
14
|
from snowflake.snowpark_connect.column_name_handler import ColumnNameMap
|
|
@@ -58,7 +59,7 @@ class DataFrameContainer:
|
|
|
58
59
|
snowpark_column_names: list[str],
|
|
59
60
|
snowpark_column_types: list | None = None,
|
|
60
61
|
column_metadata: dict | None = None,
|
|
61
|
-
column_qualifiers: list[
|
|
62
|
+
column_qualifiers: list[set[ColumnQualifier]] | None = None,
|
|
62
63
|
parent_column_name_map: ColumnNameMap | None = None,
|
|
63
64
|
table_name: str | None = None,
|
|
64
65
|
alias: str | None = None,
|
|
@@ -220,7 +221,7 @@ class DataFrameContainer:
|
|
|
220
221
|
spark_column_names: list[str],
|
|
221
222
|
snowpark_column_names: list[str],
|
|
222
223
|
column_metadata: dict | None = None,
|
|
223
|
-
column_qualifiers: list[
|
|
224
|
+
column_qualifiers: list[set[ColumnQualifier]] | None = None,
|
|
224
225
|
parent_column_name_map: ColumnNameMap | None = None,
|
|
225
226
|
) -> ColumnNameMap:
|
|
226
227
|
"""Create a ColumnNameMap with the provided configuration."""
|
|
@@ -54,9 +54,11 @@ def _create_column_rename_map(
|
|
|
54
54
|
new_column_name = (
|
|
55
55
|
f"{new_column_name}_DEDUP_{column_counts[normalized_name] - 1}"
|
|
56
56
|
)
|
|
57
|
-
renamed_cols.append(ColumnNames(new_column_name, col.snowpark_name,
|
|
57
|
+
renamed_cols.append(ColumnNames(new_column_name, col.snowpark_name, set()))
|
|
58
58
|
else:
|
|
59
|
-
not_renamed_cols.append(
|
|
59
|
+
not_renamed_cols.append(
|
|
60
|
+
ColumnNames(new_column_name, col.snowpark_name, set())
|
|
61
|
+
)
|
|
60
62
|
|
|
61
63
|
if len(renamed_cols) == 0:
|
|
62
64
|
return {
|
|
@@ -148,14 +148,15 @@ class HybridColumnMap:
|
|
|
148
148
|
exp, self.aggregated_column_map, self.aggregated_typer
|
|
149
149
|
)
|
|
150
150
|
|
|
151
|
-
# For other expression types, try aggregated context first (likely references to computed values)
|
|
152
151
|
try:
|
|
152
|
+
# 1. Evaluate the expression using the input grouping columns. i.e input_df.
|
|
153
|
+
# If not found, use the aggregate alias.
|
|
154
|
+
return map_expression(exp, self.input_column_map, self.input_typer)
|
|
155
|
+
except Exception:
|
|
156
|
+
# Fall back to input context
|
|
153
157
|
return map_expression(
|
|
154
158
|
exp, self.aggregated_column_map, self.aggregated_typer
|
|
155
159
|
)
|
|
156
|
-
except Exception:
|
|
157
|
-
# Fall back to input context
|
|
158
|
-
return map_expression(exp, self.input_column_map, self.input_typer)
|
|
159
160
|
|
|
160
161
|
|
|
161
162
|
def create_hybrid_column_map_for_having(
|
|
@@ -230,18 +230,18 @@ def map_expression(
|
|
|
230
230
|
| exp.sort_order.SORT_DIRECTION_ASCENDING
|
|
231
231
|
):
|
|
232
232
|
if exp.sort_order.null_ordering == exp.sort_order.SORT_NULLS_LAST:
|
|
233
|
-
|
|
233
|
+
col = snowpark_fn.asc_nulls_last(child_column.col)
|
|
234
234
|
else:
|
|
235
235
|
# If nulls are not specified or null_ordering is FIRST in the sort order, Spark defaults to nulls
|
|
236
236
|
# first in the case of ascending sort order.
|
|
237
|
-
|
|
237
|
+
col = snowpark_fn.asc_nulls_first(child_column.col)
|
|
238
238
|
case exp.sort_order.SORT_DIRECTION_DESCENDING:
|
|
239
239
|
if exp.sort_order.null_ordering == exp.sort_order.SORT_NULLS_FIRST:
|
|
240
|
-
|
|
240
|
+
col = snowpark_fn.desc_nulls_first(child_column.col)
|
|
241
241
|
else:
|
|
242
242
|
# If nulls are not specified or null_ordering is LAST in the sort order, Spark defaults to nulls
|
|
243
243
|
# last in the case of descending sort order.
|
|
244
|
-
|
|
244
|
+
col = snowpark_fn.desc_nulls_last(child_column.col)
|
|
245
245
|
case _:
|
|
246
246
|
exception = ValueError(
|
|
247
247
|
f"Invalid sort direction {exp.sort_order.direction}"
|
|
@@ -250,6 +250,7 @@ def map_expression(
|
|
|
250
250
|
exception, ErrorCodes.INVALID_FUNCTION_ARGUMENT
|
|
251
251
|
)
|
|
252
252
|
raise exception
|
|
253
|
+
return [child_name], TypedColumn(col, lambda: typer.type(col))
|
|
253
254
|
case "unresolved_attribute":
|
|
254
255
|
col_name, col = map_att.map_unresolved_attribute(exp, column_mapping, typer)
|
|
255
256
|
# Check if this is a multi-column regex expansion
|