multiCMD 1.35__py3-none-any.whl → 1.37__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.
multiCMD.py CHANGED
@@ -20,9 +20,9 @@ import itertools
20
20
  import signal
21
21
 
22
22
  #%% global vars
23
- version = '1.35'
23
+ version = '1.37'
24
24
  __version__ = version
25
- COMMIT_DATE = '2025-09-10'
25
+ COMMIT_DATE = '2025-09-11'
26
26
  __running_threads = set()
27
27
  __variables = {}
28
28
 
@@ -621,7 +621,7 @@ def run_commands(commands, timeout=0,max_threads=1,quiet=False,dry_run=False,wit
621
621
  else:
622
622
  return [task.stdout for task in tasks]
623
623
 
624
- def join_threads(threads=__running_threads,timeout=None):
624
+ def join_threads(threads=...,timeout=None):
625
625
  '''
626
626
  Join threads
627
627
 
@@ -633,6 +633,8 @@ def join_threads(threads=__running_threads,timeout=None):
633
633
  None
634
634
  '''
635
635
  global __running_threads
636
+ if threads is ...:
637
+ threads = __running_threads
636
638
  for thread in threads:
637
639
  thread.join(timeout=timeout)
638
640
  if threads is __running_threads:
@@ -737,7 +739,7 @@ def pretty_format_table(data, delimiter="\t", header=None, full=False):
737
739
  def compute_col_widths(hdr, rows_):
738
740
  col_w = [0] * len(hdr)
739
741
  for i in range(len(hdr)):
740
- col_w[i] = max(visible_len(hdr[i]), *(visible_len(r[i]) for r in rows_ if i < len(r)))
742
+ col_w[i] = max(0, visible_len(hdr[i]), *(visible_len(r[i]) for r in rows_ if i < len(r)))
741
743
  return col_w
742
744
  # Ensure all rows have the same number of columns
743
745
  normalized_rows = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: multiCMD
3
- Version: 1.35
3
+ Version: 1.37
4
4
  Summary: Run commands simultaneously
5
5
  Home-page: https://github.com/yufei-pan/multiCMD
6
6
  Author: Yufei Pan
@@ -0,0 +1,6 @@
1
+ multiCMD.py,sha256=4niC5CAyZd9TQaxVBzftEoJUjCyQTrJa1IPm6uJbCyE,34260
2
+ multicmd-1.37.dist-info/METADATA,sha256=5lQgwCy5ZFlRQcBINnmPdGBF0StovsYOMK-HTVvdor0,5640
3
+ multicmd-1.37.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
4
+ multicmd-1.37.dist-info/entry_points.txt,sha256=nSLBkYrcUCQxt1w3LIJkvgOhpRYEC0xAPqNG7u4OYs8,89
5
+ multicmd-1.37.dist-info/top_level.txt,sha256=DSqgftD40G09F3qEjpHRCUNUsGUvGZZG69Sm3YEUiWI,9
6
+ multicmd-1.37.dist-info/RECORD,,
@@ -1,6 +0,0 @@
1
- multiCMD.py,sha256=X7a0Bl0bt94WjcvhsPU9Rkw27xsi5wqD9eXZnUMCBi0,34221
2
- multicmd-1.35.dist-info/METADATA,sha256=qCzCX1_GssjELHkOC0JXZ0S9e8yORJ9-6DvDocXYaTY,5640
3
- multicmd-1.35.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
4
- multicmd-1.35.dist-info/entry_points.txt,sha256=nSLBkYrcUCQxt1w3LIJkvgOhpRYEC0xAPqNG7u4OYs8,89
5
- multicmd-1.35.dist-info/top_level.txt,sha256=DSqgftD40G09F3qEjpHRCUNUsGUvGZZG69Sm3YEUiWI,9
6
- multicmd-1.35.dist-info/RECORD,,