zrb 0.25.1__py3-none-any.whl → 0.26.1__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.
@@ -178,9 +178,9 @@
178
178
  }
179
179
  },
180
180
  "node_modules/micromatch": {
181
- "version": "4.0.7",
182
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz",
183
- "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==",
181
+ "version": "4.0.8",
182
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
183
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
184
184
  "dependencies": {
185
185
  "braces": "^3.0.3",
186
186
  "picomatch": "^2.3.1"
@@ -0,0 +1,26 @@
1
+ import asyncio
2
+
3
+ from zrb.helper.accessories.color import colored
4
+ from zrb.helper.log import logger
5
+
6
+ logger.debug(colored("Loading zrb.helper.asyncio_task", attrs=["dark"]))
7
+
8
+
9
+ async def stop_asyncio():
10
+ tasks = [task for task in asyncio.all_tasks() if task is not asyncio.current_task()]
11
+ for task in tasks:
12
+ task.cancel()
13
+
14
+ # Wait until all tasks are cancelled
15
+ await asyncio.gather(*tasks, return_exceptions=True)
16
+
17
+
18
+ def stop_asyncio_sync():
19
+ try:
20
+ loop = asyncio.get_event_loop()
21
+ if loop.is_running():
22
+ loop.create_task(stop_asyncio())
23
+ else:
24
+ loop.run_until_complete(stop_asyncio())
25
+ except Exception:
26
+ pass
zrb/helper/cli.py CHANGED
@@ -58,7 +58,6 @@ def create_cli() -> click.Group:
58
58
  attrs=["bold"],
59
59
  )
60
60
  )
61
- traceback.print_exc()
62
61
  # Load zrb_init.py
63
62
  project_dir = os.getenv("ZRB_PROJECT_DIR", os.getcwd())
64
63
  project_script = os.path.join(project_dir, "zrb_init.py")
@@ -288,7 +288,7 @@ class BaseTask(FinishTracker, AttemptTracker, Renderer, BaseTaskModel, AnyTask):
288
288
  self._print_result(result)
289
289
  return result
290
290
  except RuntimeError as e:
291
- if str(e) != "Event loop is closed":
291
+ if "event loop is closed" not in str(e).lower():
292
292
  raise e
293
293
  except Exception as e:
294
294
  self.log_error(f"{e}")
zrb/task/cmd_task.py CHANGED
@@ -12,6 +12,7 @@ from typing import Any, Optional, TypeVar, Union
12
12
 
13
13
  from zrb.config.config import DEFAULT_SHELL, LOGGING_LEVEL
14
14
  from zrb.helper.accessories.color import colored
15
+ from zrb.helper.asyncio_task import stop_asyncio_sync
15
16
  from zrb.helper.log import logger
16
17
  from zrb.helper.typecheck import typechecked
17
18
  from zrb.helper.typing import JinjaTemplate
@@ -289,13 +290,7 @@ class CmdTask(BaseTask):
289
290
  _print_out_dark(f"Getting signal {signum}")
290
291
  for pid in self._pids:
291
292
  self.__kill_by_pid(pid)
292
- tasks = asyncio.all_tasks()
293
- for task in tasks:
294
- try:
295
- task.cancel()
296
- except Exception as e:
297
- self.print_err(e)
298
- time.sleep(0.3)
293
+ stop_asyncio_sync()
299
294
  _print_out_dark(f"Exiting with signal {signum}")
300
295
  sys.exit(signum)
301
296
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: zrb
3
- Version: 0.25.1
3
+ Version: 0.26.1
4
4
  Summary: A Framework to Enhance Your Workflow
5
5
  Home-page: https://github.com/state-alchemists/zrb
6
6
  License: AGPL-3.0-or-later
@@ -1,9 +1,9 @@
1
1
  zrb/__init__.py,sha256=vmWT2ODW6tlhL3hyqOjMT_ezG2fafIK1gZ6G6IBYEgM,2994
2
2
  zrb/__main__.py,sha256=-_k0XOahDF-06n41Uly-oUMkZ8XDSxO-WUUImWz6GiA,171
3
3
  zrb/action/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- zrb/action/runner.py,sha256=tuiiW_8KmIL-MB4bb2aANWXh2sDRgqvtTpzEj22xeFo,5089
4
+ zrb/action/runner.py,sha256=aB46inPOs7CDckfIsS_mlgQ92_bfKltcnb77PjW6Tfw,5179
5
5
  zrb/advertisement.py,sha256=E-8Dv0oPhw0j-bKEc_IsWV9NPUIs24r1Jgp0p0exAMU,664
6
- zrb/builtin/__init__.py,sha256=QrJY08zBC55xkJa_kNhGAWEnhHwATZbNGxEEXEn-Ywk,3247
6
+ zrb/builtin/__init__.py,sha256=Nw3gZS1S-HKt_LTQuhffZT4NcZAdelJabCSFdkm6E8g,3407
7
7
  zrb/builtin/_helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  zrb/builtin/_helper/reccuring_action.py,sha256=3YeMtGM13iwSV8kMJ64wuGDwAgKB7KD2nuaqKXuMRPw,1186
9
9
  zrb/builtin/base64/__init__.py,sha256=Dl5eG_I7xvigiEp4mURXoF8J78Y2UixaDmI1O74bsrY,218
@@ -64,7 +64,7 @@ zrb/builtin/devtool/install/zsh/resource/config.sh,sha256=2ZEmmiu5KS-FSMlj48IDPh
64
64
  zrb/builtin/devtool/install/zsh/zsh.py,sha256=JJMyNSDt0uMTJppYRT2bWy446D8ArQ8ZRPZLV117s7g,1325
65
65
  zrb/builtin/docker/__init__.py,sha256=H6mkl7hojJYiHArn2Q1ppw9yZC8TxTRnrYajRJcR77Y,142
66
66
  zrb/builtin/docker/_group.py,sha256=QA1NnXYSTV9ScUcMzSUlgCLrwlVP2CSqT48RiWfKTtg,115
67
- zrb/builtin/docker/prune.py,sha256=DYT8ZSs37dr6SLOe7Z7B3YJAgS6xj5PXM9kXX8VmsO0,428
67
+ zrb/builtin/docker/prune.py,sha256=QvvoQc65WPpoW2OT4fsELzgQLlzALU1qJru_Lsf8yak,798
68
68
  zrb/builtin/env/__init__.py,sha256=Ghd4vjHjbu1diFTNXexTQCdXS-aCPtoFM_666DNpo74,118
69
69
  zrb/builtin/env/_group.py,sha256=RYFBFECJei32GXPVvoeeEkf2-bNqAuVxmIW3sH51e5c,117
70
70
  zrb/builtin/env/get.py,sha256=hYZXDu2iCzihF1XlzSzeHVv_I-QiJEWzblHxAmZahNo,947
@@ -86,6 +86,13 @@ zrb/builtin/md5/__init__.py,sha256=UQVSJdQTrLF8XDKNRhkFG05DHjfGQiarlwoatqRJwn0,1
86
86
  zrb/builtin/md5/_group.py,sha256=dimqCmJItc7qx7yRm64tL608oMAjOVXRycP7NTSSFi0,100
87
87
  zrb/builtin/md5/hash.py,sha256=futO_5AsXHdS5a7vuBLcgnKCpfEO9UeM-EqaIIBPCZE,572
88
88
  zrb/builtin/md5/sum.py,sha256=KZLsXIJrVxvbjyAiVv27-Y2ty-nBRRojsGxXyzQZaYE,688
89
+ zrb/builtin/monorepo/__init__.py,sha256=AgzIDOcrW4FXxly5SqExyGRo-fIo0ocX_fCScLPDuR0,239
90
+ zrb/builtin/monorepo/_config.py,sha256=cTKOoDonkVXR-1SGUYtA8d5aUpDkhN4olhPQwfJhV4U,365
91
+ zrb/builtin/monorepo/_group.py,sha256=idv_8MIE-TCNAvhE0urh7OxTx3qNZbBlE9wYJ-teqa8,115
92
+ zrb/builtin/monorepo/_task.py,sha256=6KKlC1COqbv1fIfd7lT1GTg8zY0knFzwlbpkgf2OZpE,3382
93
+ zrb/builtin/monorepo/add.py,sha256=MtPhTEJEdpfRsbdB-hln4hyGzPVWu9kdrmiCxqu0dTs,1580
94
+ zrb/builtin/monorepo/pull.py,sha256=2wIrz1D6OJmuBkdVbWRDXUiz8W4aLo3GC601_ASVAb8,702
95
+ zrb/builtin/monorepo/push.py,sha256=ZvFHfOTVqSUj7gQ3D8mc19tdIoTz4gG2Iv6kui0neu8,1083
89
96
  zrb/builtin/process/__init__.py,sha256=dWM1zIehY65rkJvEAFvX6HGJHL8kb1gkzaSz0Woay8M,283
90
97
  zrb/builtin/process/_group.py,sha256=KY7iQ_pvqe5iVsRFeLWs-O-xuSyqlTXVj47_TCnu7zQ,118
91
98
  zrb/builtin/process/pid/__init__.py,sha256=Rcb3bYgR_oVNOlaggYjcRipHRehrumZuQyadrguXdR0,293
@@ -95,7 +102,7 @@ zrb/builtin/process/pid/get_by_port.py,sha256=_yz0jBAV7qIo-eU33peDgVhtzYhMAxAHOc
95
102
  zrb/builtin/project/__init__.py,sha256=i1YF08_6UjNznYeL0iGTbU8o5yz7iw41RYd8UgeB8U4,887
96
103
  zrb/builtin/project/_group.py,sha256=RPWt2YOLIqF7ZznzkSeFm9dozz1oCKmpCWCA1jjgsl4,112
97
104
  zrb/builtin/project/_helper.py,sha256=TjIgmDxmh2EYAG4p7K-AQvet_hAsfIzasVjWu8ONBbM,3542
98
- zrb/builtin/project/_input.py,sha256=34GcJo3C0fnHQt9UEdNHwiR2RVKLmNAt5sxJbpqg9qE,264
105
+ zrb/builtin/project/_input.py,sha256=afhp65zu9hwG_ckk_BSvNibnOzlRbXLC2JSKxkvwqgo,277
99
106
  zrb/builtin/project/add/__init__.py,sha256=c0edrp-UyFDgiSwQChYFfmKCaQ--w2j2ao0-p-_I7r8,1002
100
107
  zrb/builtin/project/add/_group.py,sha256=_Kn6mEpyQ0RjnjjqB7LQI7Xv_xpcPjMPDd9rMk0FHqw,199
101
108
  zrb/builtin/project/add/app/__init__.py,sha256=LFaDTsrnqdkAYRhlDm-k6aukYcqoRoOoxzu7sYHhNuE,276
@@ -976,6 +983,7 @@ zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend
976
983
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/.prettierignore,sha256=GQjxOuGuHvjVorAu-_WqdOZ_4-_JogxRekxKb04O9pA,160
977
984
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/.prettierrc,sha256=SzMzteA8Sd5xT7ZnAXch9jK97yzw_VeUitpRwIUFUdU,233
978
985
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/README.md,sha256=7ASuL7J7y3W44wn_izhZ_mBnzxWMXV4I0f2DL9-OHX0,944
986
+ zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/package-lock.json,sha256=Qmy_w3l_MmSV76eAhxtWs_DnfkO22TuQ22dpWDFrhdA,144857
979
987
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/package.json,sha256=1JHghH-c4djObGjGpS2CrdAOTq-svAfQ0il4f8E9ens,1362
980
988
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/playwright.config.ts,sha256=HWngDBBeLyQi5QZx0EGQoc9lzdzycE32aivx3i4J21Q,225
981
989
  zrb/builtin/project/add/fastapp/app/template/src/kebab-zrb-app-name/src/frontend/postcss.config.js,sha256=GQyHfbRmmVvxSC9KFqvQbgSont4xGTQeKob_luFzeyc,80
@@ -1158,7 +1166,7 @@ zrb/builtin/project/add/fastapp/crud/_input.py,sha256=2hdmmwojXl5TKkI5XMKHbHzW3Q
1158
1166
  zrb/builtin/project/add/fastapp/crud/_task_factory.py,sha256=3sTBOPW6PLNWh9l1HKXyC8B9TUXED5f_n-P5HrZ-CsM,1446
1159
1167
  zrb/builtin/project/add/fastapp/crud/crud.py,sha256=88vg3tb8fUPaLLslBaA0ko__5amsTFMNcQuu8--p_7I,4880
1160
1168
  zrb/builtin/project/add/fastapp/crud/nodejs/codemod/.gitignore,sha256=FtMORGIYn7FN1hG9twjFEGMMV2ofNbk4PomkNS2jbJc,13
1161
- zrb/builtin/project/add/fastapp/crud/nodejs/codemod/package-lock.json,sha256=yWd9ww6RHHhAZBi5V01sbSKF6D8owxHoR1ebHGHs-2A,11620
1169
+ zrb/builtin/project/add/fastapp/crud/nodejs/codemod/package-lock.json,sha256=T-A2nH1lr573G7cwyYEkaAEveTWwcHbQqBtOLTs78j8,11620
1162
1170
  zrb/builtin/project/add/fastapp/crud/nodejs/codemod/package.json,sha256=uqz8LlyK32NyMkH2rYAgZYi29pymj_zN5j46YiTDJ2w,369
1163
1171
  zrb/builtin/project/add/fastapp/crud/nodejs/codemod/src/addNav.ts,sha256=LeiRM_woR2rA6Se9zuZgBuo0WgtEFyYqHXQRufltEQ4,1460
1164
1172
  zrb/builtin/project/add/fastapp/crud/nodejs/codemod/src/fastapp/src/frontend/src/lib/config/navData.ts,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -1320,8 +1328,9 @@ zrb/helper/accessories/icon.py,sha256=uKm3w5G1fV454MUhz_CZMy48AD99kBV9j2zRlJWzB1
1320
1328
  zrb/helper/accessories/name.py,sha256=e1uvU3MzuvDb5j6YIWBA048y4qeM-LfrxRKWlMehliE,1638
1321
1329
  zrb/helper/accessories/untyped_color.py,sha256=4wRbHSClbCzPRWtW-Cy2agOMozANVi7u4p8lMXMSuJg,194
1322
1330
  zrb/helper/advertisement.py,sha256=GOaCtWYL9Oj_tAg4jqsCuFsdinHaOSH_6d57y8BbsVU,912
1331
+ zrb/helper/asyncio_task.py,sha256=0CYQZcMnIO3514b8P0FJnTF9z7UasjJCf9TTDHfZLzM,686
1323
1332
  zrb/helper/callable.py,sha256=usatPKPkK_67G9dWreaGXskOaGHd_hE8MiTWAUhfojE,563
1324
- zrb/helper/cli.py,sha256=S1j8hfW_zEDeycPRbJd0E8xkOZkuEZ5PNz6JO6EC8UI,2637
1333
+ zrb/helper/cli.py,sha256=cb82aZCX5NoOHQNTx3wtdKOAQJP79ky4HA6w0VjVBh0,2603
1325
1334
  zrb/helper/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1326
1335
  zrb/helper/codemod/add_argument_to_function.py,sha256=Xh5Tlb4iO3cv4dRR12ms9kf0j-atVSnCh88TuqCof8I,1435
1327
1336
  zrb/helper/codemod/add_argument_to_function_call.py,sha256=dFFqQ885gG_ZCBgax6sjkWx7s7cIk1amLhTC0Ge_zZo,1186
@@ -1379,7 +1388,7 @@ zrb/task/any_task.py,sha256=SlAp6LY-8TGopaQm3eZD3ZEx3wxvCff8UfcnYyu-aiY,39344
1379
1388
  zrb/task/any_task_event_handler.py,sha256=ay4v7eXatF4sCiXpUYaHVJZljpnKlvBbFIwvZqXW8Mo,541
1380
1389
  zrb/task/base_remote_cmd_task.py,sha256=EhAT7grnIxFeMfwm8FV6GF6n0kOYESAyIIVzqgZBRBg,12324
1381
1390
  zrb/task/base_task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1382
- zrb/task/base_task/base_task.py,sha256=nwgwBlbttzdn_jISTzlwKRiDCWf7fPdaO_335ZxheMc,20427
1391
+ zrb/task/base_task/base_task.py,sha256=mHTgXmGROkGZw97HLpk-XE5lfhDL0jYyX9okaOTZgxY,20439
1383
1392
  zrb/task/base_task/component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1384
1393
  zrb/task/base_task/component/base_task_model.py,sha256=EuTWvY54mD_ATy4-VFZw4uCOu3Mfe8hgZikwTnIjmkY,10381
1385
1394
  zrb/task/base_task/component/common_task_model.py,sha256=X_Ubu5kNycQJ-dFiLMARvC6GWQ9pIjBCdxh3MVelc-A,13544
@@ -1387,7 +1396,7 @@ zrb/task/base_task/component/pid_model.py,sha256=RjJIqOpavucDssnd3q3gT4q8QnP8I9S
1387
1396
  zrb/task/base_task/component/renderer.py,sha256=xxcMbHhWPMUgAO3DWec_E-OeqlCKtwCBGFzLoc5g8BE,4484
1388
1397
  zrb/task/base_task/component/trackers.py,sha256=3G4dMhh1kVaJrmRwiGzWQSbr1fB-w9xXjBKz_vRifYc,2063
1389
1398
  zrb/task/checker.py,sha256=mh_2ajZqpNdJQ8AFVQ6ZArYtBUOXST3aZSisINuEivk,3400
1390
- zrb/task/cmd_task.py,sha256=HQaNCUckSpHrgVHeSaHMFFRWIIqne9ujiY9u0tZ3sIs,14839
1399
+ zrb/task/cmd_task.py,sha256=B3kRtpb0QVjusPWAMLjpfGxvAdEfgD9_N0jiU55S3rA,14718
1391
1400
  zrb/task/decorator.py,sha256=SuajollezbwiSOs29bv8A6PmFcFs_RH4pr4TPcQPDHM,3081
1392
1401
  zrb/task/docker_compose_start_task.py,sha256=n4mLejebyy8sF4rbcfWZucPcBiqPSkDAdGZvOhk4Xt8,5335
1393
1402
  zrb/task/docker_compose_task.py,sha256=QGJ-jlD0jCKIb5avzri1Z29zdIL3Cn6m4kaEOko3U6M,15615
@@ -1425,8 +1434,8 @@ zrb/task_input/multiline_input.py,sha256=KNto5k5X1C6KE_A-vX0OjpQyjgCRJ6BR2PwHXNQ
1425
1434
  zrb/task_input/password_input.py,sha256=95NlJ9xIq7z_evpAyR2XsBpeuWpBXd2Ezn3P7oDOttk,4360
1426
1435
  zrb/task_input/str_input.py,sha256=0nje7vI9fs_xqQBbmKB8Yn7wevlWp9Qebv7f8-GmiXs,4350
1427
1436
  zrb/task_input/task_input.py,sha256=WTj_qIQyRs-04-VotjNTcVyIuf6b2afInVoCQHoRmr0,2327
1428
- zrb-0.25.1.dist-info/LICENSE,sha256=WfnGCl8G60EYOPAEkuc8C9m9pdXWDe08NsKj3TBbxsM,728
1429
- zrb-0.25.1.dist-info/METADATA,sha256=fLXD49O2VT_bItnyElDLMfRbQSXjlIqP5L7SCTP01q0,17085
1430
- zrb-0.25.1.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
1431
- zrb-0.25.1.dist-info/entry_points.txt,sha256=xTgXc1kBKYhJHEujdaSPHUcJT3-hbyP1mLgwkv-5sSk,40
1432
- zrb-0.25.1.dist-info/RECORD,,
1437
+ zrb-0.26.1.dist-info/LICENSE,sha256=WfnGCl8G60EYOPAEkuc8C9m9pdXWDe08NsKj3TBbxsM,728
1438
+ zrb-0.26.1.dist-info/METADATA,sha256=13sVwksJgQqxQn6tNs5nuZm0l_kFO6XgiHfjaP91O28,17085
1439
+ zrb-0.26.1.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
1440
+ zrb-0.26.1.dist-info/entry_points.txt,sha256=xTgXc1kBKYhJHEujdaSPHUcJT3-hbyP1mLgwkv-5sSk,40
1441
+ zrb-0.26.1.dist-info/RECORD,,
File without changes
File without changes