Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
except NotImplementedError:
# The ListInput type used in the tests doesn't support getting headings.
actual_headings = None
for j, line in enumerate(lines):
if all(x is None or x == "" for x in line.values()):
# if all(x == '' for x in line.values()):
continue
root_id_or_none = line.get(self.root_id) if self.root_id else None
cells = OrderedDict()
for k, header in enumerate(line):
heading = actual_headings[k] if actual_headings else header
if self.vertical_orientation:
# This is misleading as it specifies the row number as the distance vertically
# and the horizontal 'letter' as a number.
# https://github.com/OpenDataServices/flatten-tool/issues/153
cells[header] = Cell(
line[header], (sheet_name, str(k + 1), j + 2, heading)
)
else:
cells[header] = Cell(
line[header],
(sheet_name, _get_column_letter(k + 1), j + 2, heading),
)
unflattened = unflatten_main_with_parser(
self.parser, cells, self.timezone, self.xml, self.id_name
)
if root_id_or_none not in main_sheet_by_ocid:
main_sheet_by_ocid[root_id_or_none] = TemporaryDict(
self.id_name, xml=self.xml
)
def inthere(unflattened, id_name):
), "Overwriting cell {} by mistake".format(temporarydict_value)
base[key][temporarydict_key] = temporarydict_value
for temporarydict_value in value.items_no_keyfield:
base[key].items_no_keyfield.append(temporarydict_value)
elif isinstance(value, dict):
if isinstance(base[key], dict):
merge(base[key], value, debug_info)
else:
warnings_for_ignored_columns(
v,
"because it treats {} as an object, but another column does not".format(
key
),
)
else:
if not isinstance(base[key], Cell):
id_info = '{} "{}"'.format(
debug_info.get("id_name"),
debug_info.get(debug_info.get("id_name")),
)
if debug_info.get("root_id"):
id_info = (
'{} "{}", '.format(
debug_info.get("root_id"),
debug_info.get("root_id_or_none"),
)
+ id_info
)
warnings_for_ignored_columns(
v, "because another column treats it as an array or object"
)
continue
if all(x is None or x == "" for x in line.values()):
# if all(x == '' for x in line.values()):
continue
root_id_or_none = line.get(self.root_id) if self.root_id else None
cells = OrderedDict()
for k, header in enumerate(line):
heading = actual_headings[k] if actual_headings else header
if self.vertical_orientation:
# This is misleading as it specifies the row number as the distance vertically
# and the horizontal 'letter' as a number.
# https://github.com/OpenDataServices/flatten-tool/issues/153
cells[header] = Cell(
line[header], (sheet_name, str(k + 1), j + 2, heading)
)
else:
cells[header] = Cell(
line[header],
(sheet_name, _get_column_letter(k + 1), j + 2, heading),
)
unflattened = unflatten_main_with_parser(
self.parser, cells, self.timezone, self.xml, self.id_name
)
if root_id_or_none not in main_sheet_by_ocid:
main_sheet_by_ocid[root_id_or_none] = TemporaryDict(
self.id_name, xml=self.xml
)
def inthere(unflattened, id_name):
if self.xml:
return unflattened[id_name]["text()"].cell_value
else:
return unflattened[id_name].cell_value