dcicutils 8.16.5__py3-none-any.whl → 8.16.6.1b1__py3-none-any.whl

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.
@@ -59,6 +59,7 @@ class StructuredDataSet:
59
59
  progress: Optional[Callable] = None,
60
60
  validator_hook: Optional[Callable] = None,
61
61
  validator_sheet_hook: Optional[Callable] = None,
62
+ row_reader_mapper: Optional[Callable] = None,
62
63
  debug_sleep: Optional[str] = None) -> None:
63
64
  self._progress = progress if callable(progress) else None
64
65
  self._data = {}
@@ -79,6 +80,7 @@ class StructuredDataSet:
79
80
  self._merge = True if merge is True else False # New merge functionality (2024-05-25)
80
81
  self._validator_hook = validator_hook if callable(validator_hook) else None
81
82
  self._validator_sheet_hook = validator_sheet_hook if callable(validator_sheet_hook) else None
83
+ self._row_reader_mapper = row_reader_mapper if callable(row_reader_mapper) else None
82
84
  self._debug_sleep = None
83
85
  if debug_sleep:
84
86
  try:
@@ -374,7 +376,10 @@ class StructuredDataSet:
374
376
  schema = None
375
377
  noschema = False
376
378
  structured_row_template = None
379
+ sheet_name = reader.sheet_name if self._row_reader_mapper and hasattr(reader, "sheet_name") else None
377
380
  for row in reader:
381
+ if self._row_reader_mapper and (not isinstance(row := self._row_reader_mapper(row, sheet_name), dict)):
382
+ continue
378
383
  self._nrows += 1
379
384
  if self._debug_sleep:
380
385
  time.sleep(float(self._debug_sleep))
@@ -1,6 +1,6 @@
1
1
  The MIT License
2
2
 
3
- Copyright 2017-2024 President and Fellows of Harvard College
3
+ Copyright 2017-2025 President and Fellows of Harvard College
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.16.5
3
+ Version: 8.16.6.1b1
4
4
  Summary: Utility package for interacting with the 4DN Data Portal and other 4DN resources
5
5
  Home-page: https://github.com/4dn-dcic/utils
6
6
  License: MIT
@@ -66,7 +66,7 @@ dcicutils/secrets_utils.py,sha256=8dppXAsiHhJzI6NmOcvJV5ldvKkQZzh3Fl-cb8Wm7MI,19
66
66
  dcicutils/sheet_utils.py,sha256=VlmzteONW5VF_Q4vo0yA5vesz1ViUah1MZ_yA1rwZ0M,33629
67
67
  dcicutils/snapshot_utils.py,sha256=YDeI3vD-MhAtHwKDzfEm2q-n3l-da2yRpRR3xp0Ah1M,23021
68
68
  dcicutils/ssl_certificate_utils.py,sha256=F0ifz_wnRRN9dfrfsz7aCp4UDLgHEY8LaK7PjnNvrAQ,9707
69
- dcicutils/structured_data.py,sha256=PbsdEdeC01RvBq9SB7ozMu3oNDJrMlVyHQcBnwAzAkU,66382
69
+ dcicutils/structured_data.py,sha256=AnX8opkCw-lfAnd4KPH-OIneh2ZB2oUYQCo7GWmASh4,66789
70
70
  dcicutils/submitr/progress_constants.py,sha256=5bxyX77ql8qEJearfHEvsvXl7D0GuUODW0T65mbRmnE,2895
71
71
  dcicutils/submitr/ref_lookup_strategy.py,sha256=VJN-Oo0LLna6Vo2cu47eC-eU-yUC9NFlQP29xajejVU,4741
72
72
  dcicutils/task_utils.py,sha256=MF8ujmTD6-O2AC2gRGPHyGdUrVKgtr8epT5XU8WtNjk,8082
@@ -75,8 +75,8 @@ dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
75
75
  dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
76
76
  dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
77
77
  dcicutils/zip_utils.py,sha256=_Y9EmL3D2dUZhxucxHvrtmmlbZmK4FpSsHEb7rGSJLU,3265
78
- dcicutils-8.16.5.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
79
- dcicutils-8.16.5.dist-info/METADATA,sha256=aUsbdUE_KQULs1_ZhQ6VlaCFSSDYI8iMHEE0OywlJXM,3489
80
- dcicutils-8.16.5.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
81
- dcicutils-8.16.5.dist-info/entry_points.txt,sha256=W6kEWdUJk9tQ4myAgpehPdebcwvCAZ7UgB-wyPgDUMg,335
82
- dcicutils-8.16.5.dist-info/RECORD,,
78
+ dcicutils-8.16.6.1b1.dist-info/LICENSE.txt,sha256=IrWHOFtMb2inTgr2ZqwQriRC8H3uMQfQVO6lniaaoE0,1102
79
+ dcicutils-8.16.6.1b1.dist-info/METADATA,sha256=sGAPNyW77aQY-rWnX0ycgt9Ya-qDir36Dm-UNjiku1w,3493
80
+ dcicutils-8.16.6.1b1.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
81
+ dcicutils-8.16.6.1b1.dist-info/entry_points.txt,sha256=W6kEWdUJk9tQ4myAgpehPdebcwvCAZ7UgB-wyPgDUMg,335
82
+ dcicutils-8.16.6.1b1.dist-info/RECORD,,