prophecy-libs 2.0.0.dev4__tar.gz → 2.0.0.dev6__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.
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/PKG-INFO +1 -1
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/jsonrpc/models.py +4 -1
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/initial_python_code.py +36 -13
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/utils.py +4 -4
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/PKG-INFO +1 -1
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/setup.py +1 -1
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/README.md +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/config/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/config/config_base.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/config/config_base_test.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/config/utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/componentruns/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/componentruns/component_run_service.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/componentruns/component_runs_dao.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/delta_metrics_storage_initializer.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/hive_parquet_storage_initializer.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/metrics_storage_initializer.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/models.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/package.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/execution_metrics_handler.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/in_memory_store.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/interims/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/interims/delta_interims.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/interims/hive_parquet_interims.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/interims/interims_table.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/logging_spark_session.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/models.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/package.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/pipelineruns/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/pipelineruns/pipeline_run_service.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/pipelineruns/pipeline_runs_dao.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/em.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/external.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/common.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/constants.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/external.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/interim_store.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/zip_file.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/jsonrpc/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/libs/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/libs/uc_shared_utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/libs/utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/lookups/LookupsBase.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/lookups/LookupsNative.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/lookups/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/random_data_creator.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/streaming/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/streaming/delta_lake_utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/test/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/test/base_test_case.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/test/utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/udfs/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/udfs/rest_api_udf.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/udfs/sample_udf.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/udfs/scala_udf_wrapper.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/constants.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/data_profiler.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/datasampleloader.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/diff.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/__diff.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/_dill.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/_objects.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/_shims.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/detect.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/logger.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/objtypes.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/pointers.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/session.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/settings.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/source.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/dill/temp.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/__main__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/cli.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/config.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/custom_typing.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/decode/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/decode/codes.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/documentor.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/exceptions.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/factory.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/generator.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/address/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/address/en/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/address/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/date_time/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/date_time/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/internet/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/internet/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/misc/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/misc/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/person/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/person/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/phone_number/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/phone_number/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/python/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/python/en_US/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/proxy.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/checksums.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/datasets.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/decorators.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/distribution.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/loading.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/text.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/functions.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/gems_utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/httpclient.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/json_rpc_layer.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/metagem_utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/monitoring_utils.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/pipeline_monitoring.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/request_processor.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/secrets.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/synthetic_data_generator.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/__init__.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/abi_base.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/abi_core_fcns.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/abi_fcn_wrapper.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/dataframe_fcns.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/dml_schema.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/fixed_file_schema.py +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/SOURCES.txt +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/dependency_links.txt +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/not-zip-safe +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/requires.txt +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/top_level.txt +0 -0
- {prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/setup.cfg +0 -0
|
@@ -98,7 +98,10 @@ class RequestMethod(BaseRpcMethod):
|
|
|
98
98
|
class NotificationMethod(BaseRpcMethod):
|
|
99
99
|
"""Base class for all notification methods."""
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
102
|
+
d = asdict(self)
|
|
103
|
+
d["type"] = self.__class__.__name__ # Play-JSON discriminator
|
|
104
|
+
return d
|
|
102
105
|
|
|
103
106
|
|
|
104
107
|
class JsonRpcResult(ABC):
|
|
@@ -7,16 +7,15 @@ from functools import wraps
|
|
|
7
7
|
import logging
|
|
8
8
|
import os
|
|
9
9
|
import sys
|
|
10
|
+
import re
|
|
10
11
|
|
|
11
|
-
#
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
print(f"Failed to initialize 'spark' instance. Error: {e}")
|
|
19
|
-
raise Exception("Failed to initialize 'spark' instance")
|
|
12
|
+
# Attempt to initialize it using SparkSessionProxy for serverless
|
|
13
|
+
try:
|
|
14
|
+
from server_rest import SparkSessionProxy
|
|
15
|
+
spark = SparkSessionProxy.get_instance()
|
|
16
|
+
except Exception as e:
|
|
17
|
+
print(f"Failed to initialize 'spark' instance. Error: {e}")
|
|
18
|
+
raise Exception("Failed to initialize 'spark' instance")
|
|
20
19
|
|
|
21
20
|
# Monkey Patch Caching
|
|
22
21
|
try:
|
|
@@ -311,6 +310,7 @@ from pyspark.sql.types import (
|
|
|
311
310
|
DecimalType,
|
|
312
311
|
DoubleType,
|
|
313
312
|
IntegerType,
|
|
313
|
+
StructField,
|
|
314
314
|
)
|
|
315
315
|
from datetime import datetime, date, timedelta
|
|
316
316
|
from decimal import Decimal
|
|
@@ -747,6 +747,26 @@ class DataSampleLoader:
|
|
|
747
747
|
Lightweight replacement for Databricks' built-in ``display`` that returns the
|
|
748
748
|
exact JSON payload your code receives through the DBX Commands API.
|
|
749
749
|
"""
|
|
750
|
+
|
|
751
|
+
|
|
752
|
+
|
|
753
|
+
def to_ddl(dt: DataType) -> str:
|
|
754
|
+
_valid_ident = re.compile(r"^[A-Za-z_][A-Za-z0-9_]*$")
|
|
755
|
+
def quote_ident(name: str) -> str:
|
|
756
|
+
return name if _valid_ident.fullmatch(name) else f"`{name.replace('`', '``')}`"
|
|
757
|
+
|
|
758
|
+
if isinstance(dt, ArrayType):
|
|
759
|
+
return f"array<{to_ddl(dt.elementType)}>"
|
|
760
|
+
if isinstance(dt, MapType):
|
|
761
|
+
return f"map<{to_ddl(dt.keyType)},{to_ddl(dt.valueType)}>"
|
|
762
|
+
if isinstance(dt, StructType):
|
|
763
|
+
inner = ",".join(
|
|
764
|
+
f"{quote_ident(f.name)}:{to_ddl(f.dataType)}"
|
|
765
|
+
for f in dt.fields
|
|
766
|
+
)
|
|
767
|
+
return f"struct<{inner}>"
|
|
768
|
+
return dt.simpleString()
|
|
769
|
+
|
|
750
770
|
if df is None:
|
|
751
771
|
return
|
|
752
772
|
|
|
@@ -755,8 +775,8 @@ class DataSampleLoader:
|
|
|
755
775
|
schema: list[dict] = [
|
|
756
776
|
{
|
|
757
777
|
"name": field.name,
|
|
758
|
-
"type": json.dumps(field.dataType
|
|
759
|
-
"metadata": json.dumps(field.metadata or {}),
|
|
778
|
+
"type": json.dumps(to_ddl(field.dataType)),
|
|
779
|
+
"metadata": json.dumps(field.metadata or {}),
|
|
760
780
|
}
|
|
761
781
|
for field in df.schema # type: StructField
|
|
762
782
|
]
|
|
@@ -770,11 +790,14 @@ class DataSampleLoader:
|
|
|
770
790
|
OUTPUT_FILE = "/tmp/display_output.json"
|
|
771
791
|
if not Path(OUTPUT_FILE).exists():
|
|
772
792
|
try:
|
|
793
|
+
serialized = cls._json_serialize(display_res)
|
|
794
|
+
if isinstance(serialized, bytes):
|
|
795
|
+
serialized = serialized.decode("utf-8")
|
|
773
796
|
Path(OUTPUT_FILE).write_text(
|
|
774
|
-
|
|
797
|
+
serialized, encoding="utf-8"
|
|
775
798
|
)
|
|
776
799
|
logging.info(
|
|
777
|
-
f"Successfully wrote display_res: {
|
|
800
|
+
f"Successfully wrote display_res: {serialized} to {OUTPUT_FILE}"
|
|
778
801
|
)
|
|
779
802
|
except Exception as e:
|
|
780
803
|
logging.error("Failed to write %s: %s", OUTPUT_FILE, e)
|
|
@@ -1353,11 +1353,11 @@ class MetricsCollector:
|
|
|
1353
1353
|
if is_serverless:
|
|
1354
1354
|
# making it falsely true for serverless case
|
|
1355
1355
|
cls.jvm_accessible = True
|
|
1356
|
-
|
|
1356
|
+
logging.info(
|
|
1357
1357
|
f"Failed to initialize MetricsCollector, Spark context is not available, but still making cls.jvm_accessible = {cls.jvm_accessible}"
|
|
1358
1358
|
)
|
|
1359
1359
|
else:
|
|
1360
|
-
|
|
1360
|
+
logging.info(
|
|
1361
1361
|
"Failed to initialize MetricsCollector. Spark context is not available"
|
|
1362
1362
|
)
|
|
1363
1363
|
|
|
@@ -1548,7 +1548,7 @@ class MetricsCollector:
|
|
|
1548
1548
|
spark._jsparkSession, pipelineId, sessionForInteractive
|
|
1549
1549
|
)
|
|
1550
1550
|
else:
|
|
1551
|
-
|
|
1551
|
+
logging.info("Running pipeline without metrics")
|
|
1552
1552
|
|
|
1553
1553
|
if is_serverless:
|
|
1554
1554
|
cls._handle_start_for_serverless(
|
|
@@ -1562,7 +1562,7 @@ class MetricsCollector:
|
|
|
1562
1562
|
spark._jsparkSession
|
|
1563
1563
|
)
|
|
1564
1564
|
else:
|
|
1565
|
-
|
|
1565
|
+
logging.info("Finished pipeline without metrics")
|
|
1566
1566
|
cls._handle_end_for_serverless(spark)
|
|
1567
1567
|
global interimConfig
|
|
1568
1568
|
interimConfig.clear()
|
|
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name="prophecy-libs",
|
|
5
|
-
version="2.0.0.
|
|
5
|
+
version="2.0.0.dev6",
|
|
6
6
|
url="https://github.com/SimpleDataLabsInc/prophecy-python-libs",
|
|
7
7
|
packages=find_packages(exclude=["test.*", "test"]),
|
|
8
8
|
description="Helper library for prophecy generated code",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/evolutions/models.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/in_memory_store.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/interims/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/__init__.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/em.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/schemas/external.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/__init__.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/common.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/constants.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/executionmetrics/utils/external.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/streaming/delta_lake_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/decode/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/providers/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/__init__.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/checksums.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/datasets.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/decorators.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/faker/utils/distribution.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/synthetic_data_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/abi_core_fcns.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/abi_fcn_wrapper.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/dataframe_fcns.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/dml_schema.py
RENAMED
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy/utils/transpiler/fixed_file_schema.py
RENAMED
|
File without changes
|
|
File without changes
|
{prophecy-libs-2.0.0.dev4 → prophecy-libs-2.0.0.dev6}/prophecy_libs.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|