From 7735a1469478af0d3f5f24a5d0de908031175337 Mon Sep 17 00:00:00 2001 From: Alexey Volkov Date: Wed, 25 Sep 2019 20:29:06 -0700 Subject: [PATCH] SDK - Components - Stop serializing string values (#2227) This can happen with Lightweight component outputs if they've already been serialized manually. --- sdk/python/kfp/components/_data_passing.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sdk/python/kfp/components/_data_passing.py b/sdk/python/kfp/components/_data_passing.py index 9fcad5ba2e1..da89ae321c3 100644 --- a/sdk/python/kfp/components/_data_passing.py +++ b/sdk/python/kfp/components/_data_passing.py @@ -45,6 +45,8 @@ def _deserialize_bool(s) -> bool: def _serialize_json(obj) -> str: + if isinstance(obj, str): + return obj import json def default_serializer(obj): if hasattr(obj, 'to_struct'): @@ -55,6 +57,8 @@ def default_serializer(obj): def _serialize_base64_pickle(obj) -> str: + if isinstance(obj, str): + return obj import base64 import pickle return base64.b64encode(pickle.dumps(obj)).decode('ascii')