multiCMD 1.29__py3-none-any.whl → 1.30__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
@@ -18,10 +18,11 @@ import re
18
18
  import itertools
19
19
  import signal
20
20
 
21
- version = '1.29'
21
+ version = '1.30'
22
22
  __version__ = version
23
23
 
24
24
  __running_threads = []
25
+ __variables = {}
25
26
  class Task:
26
27
  def __init__(self, command):
27
28
  self.command = command
@@ -236,6 +237,7 @@ def _expand_ranges(inStr):
236
237
  @returns:
237
238
  list[str]: The expanded string
238
239
  '''
240
+ global __variables
239
241
  expandingStr = [inStr]
240
242
  expandedList = []
241
243
  # all valid alphanumeric characters
@@ -250,14 +252,22 @@ def _expand_ranges(inStr):
250
252
  parts = group.split(',')
251
253
  for part in parts:
252
254
  part = part.strip()
253
- if '-' in part:
255
+ if ':' in part:
256
+ variableName, _, part = part.partition(':')
257
+ __variables[variableName] = part
258
+ expandingStr.append(currentStr.replace(match.group(0), '', 1))
259
+ elif '-' in part:
254
260
  try:
255
261
  range_start,_, range_end = part.partition('-')
256
262
  except ValueError:
257
263
  expandedList.append(currentStr)
258
264
  continue
259
265
  range_start = range_start.strip()
266
+ if range_start in __variables:
267
+ range_start = __variables[range_start]
260
268
  range_end = range_end.strip()
269
+ if range_end in __variables:
270
+ range_end = __variables[range_end]
261
271
  if range_start.isdigit() and range_end.isdigit():
262
272
  padding_length = min(len(range_start), len(range_end))
263
273
  format_str = "{:0" + str(padding_length) + "d}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: multiCMD
3
- Version: 1.29
3
+ Version: 1.30
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=GW9oLmJhZeF-njnFgph7iD_fV2vfPkMy8qopurNGdb4,25933
2
+ multicmd-1.30.dist-info/METADATA,sha256=2SrWA9HlrKs78aK_UwLdVTzVOX-9VzGnRRDKxC-qRnc,5640
3
+ multicmd-1.30.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
4
+ multicmd-1.30.dist-info/entry_points.txt,sha256=nSLBkYrcUCQxt1w3LIJkvgOhpRYEC0xAPqNG7u4OYs8,89
5
+ multicmd-1.30.dist-info/top_level.txt,sha256=DSqgftD40G09F3qEjpHRCUNUsGUvGZZG69Sm3YEUiWI,9
6
+ multicmd-1.30.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,6 +0,0 @@
1
- multiCMD.py,sha256=5jTOEqw-pch56VkKQjVu9Ylw4zR8ZDCcEGwwCS9utHE,25571
2
- multicmd-1.29.dist-info/METADATA,sha256=-2O5pV3TjRGb4kVF3GLX83_IEKuj23hFTqiM6bjqZZA,5640
3
- multicmd-1.29.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
4
- multicmd-1.29.dist-info/entry_points.txt,sha256=nSLBkYrcUCQxt1w3LIJkvgOhpRYEC0xAPqNG7u4OYs8,89
5
- multicmd-1.29.dist-info/top_level.txt,sha256=DSqgftD40G09F3qEjpHRCUNUsGUvGZZG69Sm3YEUiWI,9
6
- multicmd-1.29.dist-info/RECORD,,