dcicutils 8.8.4.1b31__py3-none-any.whl → 8.8.4.1b33__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.
dcicutils/file_utils.py CHANGED
@@ -14,7 +14,7 @@ HOME_DIRECTORY = str(pathlib.Path().home())
14
14
 
15
15
 
16
16
  def search_for_file(file: str,
17
- location: Union[str, Optional[List[str]]] = None,
17
+ location: Union[str, pathlib.PosixPath, Optional[List[Union[str, pathlib.PosixPath]]]] = None,
18
18
  recursive: bool = False,
19
19
  single: bool = False,
20
20
  order: bool = True) -> Union[List[str], Optional[str]]:
@@ -35,7 +35,7 @@ def search_for_file(file: str,
35
35
  return None if single is True else []
36
36
  if os.path.isabs(file):
37
37
  if os.path.exists(file):
38
- return file if single is True else [file]
38
+ return str(file) if single is True else [str(file)]
39
39
  return None if single is True else []
40
40
  files_found = []
41
41
  if not location:
@@ -53,7 +53,7 @@ def search_for_file(file: str,
53
53
  if not (directory := directory.strip()):
54
54
  continue
55
55
  if os.path.isfile(directory := os.path.abspath(os.path.normpath(directory))):
56
- # Allow a file; assume its parent directory was intended.
56
+ # Actually, allow a file rather then a directory; assume its parent directory was intended.
57
57
  if not (directory := os.path.dirname(directory)):
58
58
  continue
59
59
  if directory not in location_pruned:
@@ -50,12 +50,6 @@ def remove_temporary_directory(tmp_directory_name: str) -> None:
50
50
  """
51
51
  Removes the given directory, recursively; but ONLY if it is (somewhere) within the system temporary directory.
52
52
  """
53
- def is_temporary_directory(path: str) -> bool:
54
- try:
55
- tmpdir = tempfile.gettempdir()
56
- return os.path.commonpath([path, tmpdir]) == tmpdir and os.path.exists(path) and os.path.isdir(path)
57
- except Exception:
58
- return False
59
53
  if is_temporary_directory(tmp_directory_name): # Guard against errant deletion.
60
54
  shutil.rmtree(tmp_directory_name)
61
55
 
@@ -72,3 +66,11 @@ def remove_temporary_file(tmp_file_name: str) -> bool:
72
66
  return False
73
67
  except Exception:
74
68
  return False
69
+
70
+
71
+ def is_temporary_directory(path: str) -> bool:
72
+ try:
73
+ tmpdir = tempfile.gettempdir()
74
+ return os.path.commonpath([path, tmpdir]) == tmpdir and os.path.exists(path) and os.path.isdir(path)
75
+ except Exception:
76
+ return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.8.4.1b31
3
+ Version: 8.8.4.1b33
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
@@ -28,7 +28,7 @@ dcicutils/es_utils.py,sha256=ZksLh5ei7kRUfiFltk8sd2ZSfh15twbstrMzBr8HNw4,7541
28
28
  dcicutils/exceptions.py,sha256=4giQGtpak-omQv7BP6Ckeu91XK5fnDosC8gfdmN_ccA,9931
29
29
  dcicutils/ff_mocks.py,sha256=6RKS4eUiu_Wl8yP_8V0CaV75w4ZdWxdCuL1CVlnMrek,36918
30
30
  dcicutils/ff_utils.py,sha256=oIhuZPnGtfwj6bWyCc1u23JbMB_6InPp01ZqUOljd8M,73123
31
- dcicutils/file_utils.py,sha256=eJ3aErsNPoh9pTsuIiCphQdLB7UFBMr5lAr3s20zGpM,10827
31
+ dcicutils/file_utils.py,sha256=zyNdRl1Fu3SrQwjJWaIMvQpi4DRaodNZCX7oTkiPJ-A,10916
32
32
  dcicutils/function_cache_decorator.py,sha256=XMyiEGODVr2WoAQ68vcoX_9_Xb9p8pZXdXl7keU8i2g,10026
33
33
  dcicutils/glacier_utils.py,sha256=Q4CVXsZCbP-SoZIsZ5NMcawDfelOLzbQnIlQn-GdlTo,34149
34
34
  dcicutils/http_utils.py,sha256=tNfH5JA-OwbQKEvD5HPJ3lcp2TSIZ4rnl__4d4JO8Gw,1583
@@ -68,13 +68,13 @@ dcicutils/structured_data.py,sha256=BQuIMv6OPySsn6YxtXE2Er-zLE2QJuCYhEQ3V0u_UXY,
68
68
  dcicutils/submitr/progress_constants.py,sha256=5bxyX77ql8qEJearfHEvsvXl7D0GuUODW0T65mbRmnE,2895
69
69
  dcicutils/submitr/ref_lookup_strategy.py,sha256=Js2cVznTmgjciLWBPLCvMiwLIHXjDn3jww-gJPjYuFw,3467
70
70
  dcicutils/task_utils.py,sha256=MF8ujmTD6-O2AC2gRGPHyGdUrVKgtr8epT5XU8WtNjk,8082
71
- dcicutils/tmpfile_utils.py,sha256=KB7481xY3RTaMvAV9dK0Oz_ZHFG1e56ieYBHX5SYZzI,3019
71
+ dcicutils/tmpfile_utils.py,sha256=irmN6Otvtxyum-7qr5h9GIzDs9rtFFyUsGQyqJXd_y4,2997
72
72
  dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
73
73
  dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
74
74
  dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
75
75
  dcicutils/zip_utils.py,sha256=_Y9EmL3D2dUZhxucxHvrtmmlbZmK4FpSsHEb7rGSJLU,3265
76
- dcicutils-8.8.4.1b31.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
77
- dcicutils-8.8.4.1b31.dist-info/METADATA,sha256=dWpMQqr3ifnJHDrWiQbwbA8YpzOXZH4W1jEaKmy_oBg,3440
78
- dcicutils-8.8.4.1b31.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
79
- dcicutils-8.8.4.1b31.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
80
- dcicutils-8.8.4.1b31.dist-info/RECORD,,
76
+ dcicutils-8.8.4.1b33.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
77
+ dcicutils-8.8.4.1b33.dist-info/METADATA,sha256=e6buUH5SJ9ZKQvhFfn6kQCjq-f3aRjDfBF1DwVPvmbY,3440
78
+ dcicutils-8.8.4.1b33.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
79
+ dcicutils-8.8.4.1b33.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
80
+ dcicutils-8.8.4.1b33.dist-info/RECORD,,