def add_value(self): console_value_preview_size = DescribeConfig.current( ).console_value_preview_size value_str = (TextBanner.f_io(self.value) if self._param_kind() in [ "input", "output" ] else self.definition.to_str(self.value)) value_str = safe_string(value_str, console_value_preview_size) # add preview if isinstance(self.value, Target) and self.value.target_meta: preview_value = safe_string( self.value.target_meta.value_preview, console_value_preview_size, ) # we should add minimal preview if len(preview_value) < 100: value_str += " :='%s'" % preview_value if value_str and "\n" in value_str: # some simple heuristics around value extra_padding = " " * len("\t".join(map(str, self.row))) value_str = "".join("\n%s%s" % (extra_padding, l) for l in value_str.split("\n")) value_str = "-->\n" + value_str self.row.append(value_str)
def add_value(self): import dbnd # noqa: 401 import dbnd before DataFrameValueType to avoid cyclic imports from dbnd._core.settings import DescribeConfig from targets.values import DataFrameValueType console_value_preview_size = ( DescribeConfig.from_databand_context().console_value_preview_size) if self.value is None: value_str = "@None" else: # We want to always use self.definition.to_str for panda's Dataframe value. # otherwise, the value blows up the log, and is not readable. value_str = (TextBanner.f_io(self.value) if self._param_kind() in ["input", "output"] and not self.definition.value_type_str == DataFrameValueType.type_str else self.definition.to_str(self.value)) value_str = safe_string(value_str, console_value_preview_size) # add preview if isinstance(self.value, Target) and self.value.target_meta: preview_value = safe_string(self.value.target_meta.value_preview, console_value_preview_size) # we should add minimal preview if len(preview_value) < 100: value_str += " :='%s'" % preview_value if value_str and "\n" in value_str: # some simple heuristics around value extra_padding = " " * len("\t".join(map(str, self.row))) value_str = "".join("\n%s%s" % (extra_padding, l) for l in value_str.split("\n")) value_str = "-->\n" + value_str self.row.append(value_str)