dcicutils 8.13.3.1b9__py3-none-any.whl → 8.13.3.1b11__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
dcicutils/misc_utils.py CHANGED
@@ -984,14 +984,15 @@ def str_to_bool(x: Optional[str]) -> Optional[bool]:
984
984
  raise ValueError(f"An argument to str_or_bool must be a string or None: {x!r}")
985
985
 
986
986
 
987
- def to_integer(value: str, fallback: Optional[Any] = None) -> Optional[Any]:
987
+ def to_integer(value: str, fallback: Optional[Any] = None, strict: bool = False) -> Optional[Any]:
988
988
  try:
989
989
  return int(value)
990
990
  except Exception:
991
- try:
992
- return int(float(value))
993
- except Exception:
994
- pass
991
+ if strict is not True:
992
+ try:
993
+ return int(float(value))
994
+ except Exception:
995
+ pass
995
996
  return fallback
996
997
 
997
998
 
@@ -165,6 +165,7 @@ def main():
165
165
  update_action_name="PATCH",
166
166
  patch_delete_fields=args.delete,
167
167
  confirm=args.confirm, verbose=args.verbose, quiet=args.quiet, debug=args.debug)
168
+ args.delete = None
168
169
  if args.upsert:
169
170
  _post_or_patch_or_upsert(portal=portal,
170
171
  file_or_directory=args.upsert,
@@ -173,6 +174,7 @@ def main():
173
174
  update_action_name="UPSERT",
174
175
  patch_delete_fields=args.delete,
175
176
  confirm=args.confirm, verbose=args.verbose, quiet=args.quiet, debug=args.debug)
177
+ args.delete = None
176
178
 
177
179
  if args.delete:
178
180
  if not portal.get_metadata(args.delete, raise_exception=False):
@@ -256,14 +258,17 @@ def _post_or_patch_or_upsert(portal: Portal, file_or_directory: str,
256
258
  _print(f"ERROR: Schema cannot be inferred from file name and --schema not specified: {file}")
257
259
  continue
258
260
  post_or_patch_or_upsert(portal, file_and_schema[0], schema_name=schema_name,
261
+ patch_delete_fields=patch_delete_fields,
259
262
  confirm=confirm, quiet=quiet, verbose=verbose, debug=debug)
260
263
  elif os.path.isfile(file := file_or_directory):
261
264
  if ((schema_name := _get_schema_name_from_schema_named_json_file_name(portal, file)) or
262
265
  (schema_name := explicit_schema_name)): # noqa
263
266
  post_or_patch_or_upsert(portal, file, schema_name=schema_name,
267
+ patch_delete_fields=patch_delete_fields,
264
268
  confirm=confirm, quiet=quiet, verbose=verbose, debug=debug)
265
269
  else:
266
270
  post_or_patch_or_upsert(portal, file, schema_name=schema_name,
271
+ patch_delete_fields=patch_delete_fields,
267
272
  confirm=confirm, quiet=quiet, verbose=verbose, debug=debug)
268
273
  # _print(f"ERROR: Schema cannot be inferred from file name and --schema not specified: {file}")
269
274
  # return
@@ -706,7 +706,7 @@ class Schema(SchemaBase):
706
706
 
707
707
  def _map_function_integer(self, typeinfo: dict) -> Callable:
708
708
  def map_integer(value: str, src: Optional[str]) -> Any:
709
- return to_integer(value, value)
709
+ return to_integer(value, value, strict=True)
710
710
  return map_integer
711
711
 
712
712
  def _map_function_number(self, typeinfo: dict) -> Callable:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.13.3.1b9
3
+ Version: 8.13.3.1b11
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
@@ -45,7 +45,7 @@ dcicutils/license_policies/park-lab-gpl-pipeline.jsonc,sha256=vLZkwm3Js-kjV44nug
45
45
  dcicutils/license_policies/park-lab-pipeline.jsonc,sha256=9qlY0ASy3iUMQlr3gorVcXrSfRHnVGbLhkS427UaRy4,283
46
46
  dcicutils/license_utils.py,sha256=2Yxnh1T1iuMe6wluwbvpFO_zYSGPxB4-STAMc-vz-YM,47202
47
47
  dcicutils/log_utils.py,sha256=7pWMc6vyrorUZQf-V-M3YC6zrPgNhuV_fzm9xqTPph0,10883
48
- dcicutils/misc_utils.py,sha256=-syqTAj8DESiiP_KHoyBv9VvfboFYB03QbBlmXnBZXw,109423
48
+ dcicutils/misc_utils.py,sha256=YRUjQ4Yg7GapOGxN_KWB96hcl1XJVGr24ktHZvD9g6A,109492
49
49
  dcicutils/obfuscation_utils.py,sha256=fo2jOmDRC6xWpYX49u80bVNisqRRoPskFNX3ymFAmjw,5963
50
50
  dcicutils/opensearch_utils.py,sha256=V2exmFYW8Xl2_pGFixF4I2Cc549Opwe4PhFi5twC0M8,1017
51
51
  dcicutils/portal_object_utils.py,sha256=Az3n1aL-PQkN5gOFE6ZqC2XkYsqiwKlq7-tZggs1QN4,11062
@@ -60,13 +60,13 @@ dcicutils/s3_utils.py,sha256=h2B9ftOo-kxqfiKth5ZDC_cAUFy1Pbu7BrVanFnE5Iw,28839
60
60
  dcicutils/schema_utils.py,sha256=GmRm-XqZKJ6qine16SQF1txcby9WougDav_sYmKNs9E,12400
61
61
  dcicutils/scripts/publish_to_pypi.py,sha256=sMd4WASQGlxlh7uLrt2eGkFRXYgONVmvIg8mClMS5RQ,13903
62
62
  dcicutils/scripts/run_license_checker.py,sha256=z2keYnRDZsHQbTeo1XORAXSXNJK5axVzL5LjiNqZ7jE,4184
63
- dcicutils/scripts/update_portal_object.py,sha256=UbvDMtBtZirTAk5JZ7IGZqGn-QiNS1S7v0gn5rtIlUg,20084
63
+ dcicutils/scripts/update_portal_object.py,sha256=Lrgj01JuxmQSoWikukYgwm5LKi9CgSzjAogoMIBsQC4,20373
64
64
  dcicutils/scripts/view_portal_object.py,sha256=h8COy0lcLNWF9b5spjrlQ28wfqyTTMqAeC_xpFXutus,32262
65
65
  dcicutils/secrets_utils.py,sha256=8dppXAsiHhJzI6NmOcvJV5ldvKkQZzh3Fl-cb8Wm7MI,19745
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=TA7kJ-utVj_xa5XnVs7VaG_XQicl5MUWmrVkDm0N8qE,64471
69
+ dcicutils/structured_data.py,sha256=0M80TxxXltPi_jX66ryBwwYGE7PyC4z29HVQBcA4amg,64484
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.13.3.1b9.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
79
- dcicutils-8.13.3.1b9.dist-info/METADATA,sha256=Rw87lqJzYwFrz2nivFVNRXlvqZ8AM2hfi3Ae6nidGKk,3439
80
- dcicutils-8.13.3.1b9.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
81
- dcicutils-8.13.3.1b9.dist-info/entry_points.txt,sha256=W6kEWdUJk9tQ4myAgpehPdebcwvCAZ7UgB-wyPgDUMg,335
82
- dcicutils-8.13.3.1b9.dist-info/RECORD,,
78
+ dcicutils-8.13.3.1b11.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
79
+ dcicutils-8.13.3.1b11.dist-info/METADATA,sha256=rsngEd_b8J_mQqyeUHqk1_yiCBInGYi7GHHcr6cPUmg,3440
80
+ dcicutils-8.13.3.1b11.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
81
+ dcicutils-8.13.3.1b11.dist-info/entry_points.txt,sha256=W6kEWdUJk9tQ4myAgpehPdebcwvCAZ7UgB-wyPgDUMg,335
82
+ dcicutils-8.13.3.1b11.dist-info/RECORD,,