meerschaum 2.7.8__py3-none-any.whl → 2.7.9__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.
- meerschaum/_internal/term/TermPageHandler.py +54 -4
- meerschaum/_internal/term/__init__.py +13 -5
- meerschaum/_internal/term/tools.py +41 -6
- meerschaum/actions/start.py +25 -10
- meerschaum/api/dash/callbacks/dashboard.py +43 -2
- meerschaum/api/dash/components.py +13 -6
- meerschaum/api/dash/keys.py +82 -108
- meerschaum/api/dash/pages/dashboard.py +17 -17
- meerschaum/api/dash/sessions.py +1 -0
- meerschaum/api/dash/webterm.py +17 -6
- meerschaum/api/resources/static/js/terminado.js +0 -2
- meerschaum/api/resources/templates/termpage.html +47 -4
- meerschaum/api/routes/_webterm.py +15 -11
- meerschaum/config/_default.py +6 -0
- meerschaum/config/_version.py +1 -1
- meerschaum/config/static/__init__.py +2 -2
- meerschaum/core/Pipe/_sync.py +7 -7
- meerschaum/core/Pipe/_verify.py +1 -1
- meerschaum/utils/daemon/Daemon.py +15 -9
- meerschaum/utils/dtypes/__init__.py +9 -0
- meerschaum/utils/dtypes/sql.py +19 -13
- meerschaum/utils/formatting/_pprint.py +1 -1
- meerschaum/utils/misc.py +16 -0
- meerschaum/utils/venv/__init__.py +10 -14
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/METADATA +1 -1
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/RECORD +32 -32
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/LICENSE +0 -0
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/NOTICE +0 -0
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/WHEEL +0 -0
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/entry_points.txt +0 -0
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/top_level.txt +0 -0
- {meerschaum-2.7.8.dist-info → meerschaum-2.7.9.dist-info}/zip-safe +0 -0
meerschaum/core/Pipe/_verify.py
CHANGED
@@ -330,12 +330,12 @@ class Daemon:
|
|
330
330
|
result = self.target(*self.target_args, **self.target_kw)
|
331
331
|
self.properties['result'] = result
|
332
332
|
except (BrokenPipeError, KeyboardInterrupt, SystemExit):
|
333
|
-
|
333
|
+
result = False, traceback.format_exc()
|
334
334
|
except Exception as e:
|
335
335
|
warn(
|
336
336
|
f"Exception in daemon target function: {traceback.format_exc()}",
|
337
337
|
)
|
338
|
-
result = e
|
338
|
+
result = False, str(e)
|
339
339
|
finally:
|
340
340
|
_results[self.daemon_id] = result
|
341
341
|
|
@@ -345,8 +345,11 @@ class Daemon:
|
|
345
345
|
self.cleanup()
|
346
346
|
|
347
347
|
self._log_refresh_timer.cancel()
|
348
|
-
|
349
|
-
self.pid_path.
|
348
|
+
try:
|
349
|
+
if self.pid is None and self.pid_path.exists():
|
350
|
+
self.pid_path.unlink()
|
351
|
+
except Exception:
|
352
|
+
pass
|
350
353
|
|
351
354
|
if is_success_tuple(result):
|
352
355
|
try:
|
@@ -904,8 +907,8 @@ class Daemon:
|
|
904
907
|
"""
|
905
908
|
Return the file handler for the stdin file.
|
906
909
|
"""
|
907
|
-
if
|
908
|
-
return
|
910
|
+
if (stdin_file := self.__dict__.get('_stdin_file', None)):
|
911
|
+
return stdin_file
|
909
912
|
|
910
913
|
self._stdin_file = StdinFile(
|
911
914
|
self.stdin_file_path,
|
@@ -1020,7 +1023,7 @@ class Daemon:
|
|
1020
1023
|
except Exception:
|
1021
1024
|
properties = {}
|
1022
1025
|
|
1023
|
-
return properties
|
1026
|
+
return properties or {}
|
1024
1027
|
|
1025
1028
|
def read_pickle(self) -> Daemon:
|
1026
1029
|
"""Read a Daemon's pickle file and return the `Daemon`."""
|
@@ -1050,7 +1053,7 @@ class Daemon:
|
|
1050
1053
|
Return the contents of the properties JSON file.
|
1051
1054
|
"""
|
1052
1055
|
try:
|
1053
|
-
_file_properties = self.read_properties()
|
1056
|
+
_file_properties = self.read_properties() or {}
|
1054
1057
|
except Exception:
|
1055
1058
|
traceback.print_exc()
|
1056
1059
|
_file_properties = {}
|
@@ -1061,7 +1064,10 @@ class Daemon:
|
|
1061
1064
|
if self._properties is None:
|
1062
1065
|
self._properties = {}
|
1063
1066
|
|
1064
|
-
if
|
1067
|
+
if (
|
1068
|
+
self._properties.get('result', None) is None
|
1069
|
+
and _file_properties.get('result', None) is not None
|
1070
|
+
):
|
1065
1071
|
_ = self._properties.pop('result', None)
|
1066
1072
|
|
1067
1073
|
if _file_properties is not None:
|
@@ -350,6 +350,9 @@ def serialize_decimal(
|
|
350
350
|
if not isinstance(x, Decimal):
|
351
351
|
return x
|
352
352
|
|
353
|
+
if value_is_null(x):
|
354
|
+
return None
|
355
|
+
|
353
356
|
if quantize and scale and precision:
|
354
357
|
x = quantize_decimal(x, precision, scale)
|
355
358
|
|
@@ -544,6 +547,9 @@ def json_serialize_value(x: Any, default_to_str: bool = True) -> str:
|
|
544
547
|
-------
|
545
548
|
A serialized version of x, or x.
|
546
549
|
"""
|
550
|
+
if isinstance(x, (mrsm.Pipe, mrsm.connectors.Connector)):
|
551
|
+
return x.meta
|
552
|
+
|
547
553
|
if hasattr(x, 'tzinfo'):
|
548
554
|
return serialize_datetime(x)
|
549
555
|
|
@@ -553,4 +559,7 @@ def json_serialize_value(x: Any, default_to_str: bool = True) -> str:
|
|
553
559
|
if isinstance(x, Decimal):
|
554
560
|
return serialize_decimal(x)
|
555
561
|
|
562
|
+
if value_is_null(x):
|
563
|
+
return None
|
564
|
+
|
556
565
|
return str(x) if default_to_str else x
|
meerschaum/utils/dtypes/sql.py
CHANGED
@@ -470,7 +470,7 @@ AUTO_INCREMENT_COLUMN_FLAVORS: Dict[str, str] = {
|
|
470
470
|
}
|
471
471
|
|
472
472
|
|
473
|
-
def get_pd_type_from_db_type(db_type: str, allow_custom_dtypes: bool =
|
473
|
+
def get_pd_type_from_db_type(db_type: str, allow_custom_dtypes: bool = True) -> str:
|
474
474
|
"""
|
475
475
|
Parse a database type to a pandas data type.
|
476
476
|
|
@@ -486,12 +486,17 @@ def get_pd_type_from_db_type(db_type: str, allow_custom_dtypes: bool = False) ->
|
|
486
486
|
-------
|
487
487
|
The equivalent datatype for a pandas DataFrame.
|
488
488
|
"""
|
489
|
+
from meerschaum.utils.dtypes import are_dtypes_equal
|
489
490
|
def parse_custom(_pd_type: str, _db_type: str) -> str:
|
490
491
|
if 'json' in _db_type.lower():
|
491
492
|
return 'json'
|
493
|
+
if are_dtypes_equal(_pd_type, 'numeric') and _pd_type != 'object':
|
494
|
+
precision, scale = get_numeric_precision_scale(None, dtype=_db_type.upper())
|
495
|
+
if precision and scale:
|
496
|
+
return f"numeric[{precision},{scale}]"
|
492
497
|
return _pd_type
|
493
498
|
|
494
|
-
pd_type = DB_TO_PD_DTYPES.get(db_type.upper(), None)
|
499
|
+
pd_type = DB_TO_PD_DTYPES.get(db_type.upper().split('(', maxsplit=1)[0].strip(), None)
|
495
500
|
if pd_type is not None:
|
496
501
|
return (
|
497
502
|
parse_custom(pd_type, db_type)
|
@@ -644,21 +649,22 @@ def get_numeric_precision_scale(
|
|
644
649
|
|
645
650
|
dtype: Optional[str], default None
|
646
651
|
If provided, return the precision and scale provided in the dtype (if applicable).
|
652
|
+
If all caps, treat this as a DB type.
|
647
653
|
|
648
654
|
Returns
|
649
655
|
-------
|
650
656
|
A tuple of ints or a tuple of Nones.
|
651
657
|
"""
|
652
|
-
|
653
|
-
if dtype and are_dtypes_equal(dtype, 'numeric'):
|
654
|
-
if '[' in dtype and ',' in dtype:
|
655
|
-
try:
|
656
|
-
parts = dtype.split('[', maxsplit=1)[-1].rstrip(']').split(',', maxsplit=1)
|
657
|
-
return int(parts[0].strip()), int(parts[1].strip())
|
658
|
-
except Exception:
|
659
|
-
pass
|
660
|
-
|
661
|
-
if flavor not in NUMERIC_PRECISION_FLAVORS:
|
658
|
+
if not dtype:
|
662
659
|
return None, None
|
663
660
|
|
664
|
-
|
661
|
+
lbracket = '[' if '[' in dtype else '('
|
662
|
+
rbracket = ']' if lbracket == '[' else ')'
|
663
|
+
if lbracket in dtype and dtype.count(',') == 1 and dtype.endswith(rbracket):
|
664
|
+
try:
|
665
|
+
parts = dtype.split(lbracket, maxsplit=1)[-1].rstrip(rbracket).split(',', maxsplit=1)
|
666
|
+
return int(parts[0].strip()), int(parts[1].strip())
|
667
|
+
except Exception:
|
668
|
+
pass
|
669
|
+
|
670
|
+
return NUMERIC_PRECISION_FLAVORS.get(flavor, (None, None))
|
meerschaum/utils/misc.py
CHANGED
@@ -1219,6 +1219,22 @@ def is_systemd_available() -> bool:
|
|
1219
1219
|
has_systemctl = False
|
1220
1220
|
return has_systemctl
|
1221
1221
|
|
1222
|
+
|
1223
|
+
def is_tmux_available() -> bool:
|
1224
|
+
"""
|
1225
|
+
Check if `tmux` is installed.
|
1226
|
+
"""
|
1227
|
+
import subprocess
|
1228
|
+
try:
|
1229
|
+
has_tmux = subprocess.call(
|
1230
|
+
['tmux', '-V'],
|
1231
|
+
stdout=subprocess.DEVNULL,
|
1232
|
+
stderr=subprocess.STDOUT
|
1233
|
+
) == 0
|
1234
|
+
except Exception as e:
|
1235
|
+
has_tmux = False
|
1236
|
+
return has_tmux
|
1237
|
+
|
1222
1238
|
def get_last_n_lines(file_name: str, N: int):
|
1223
1239
|
"""
|
1224
1240
|
https://thispointer.com/python-get-last-n-lines-of-a-text-file-like-tail-command/
|
@@ -410,15 +410,19 @@ def init_venv(
|
|
410
410
|
pass
|
411
411
|
|
412
412
|
def wait_for_lock():
|
413
|
-
max_lock_seconds =
|
413
|
+
max_lock_seconds = 30.0
|
414
|
+
sleep_message_seconds = 5.0
|
414
415
|
step_sleep_seconds = 0.1
|
415
416
|
init_venv_check_start = time.perf_counter()
|
417
|
+
last_print = init_venv_check_start
|
416
418
|
while ((time.perf_counter() - init_venv_check_start) < max_lock_seconds):
|
417
419
|
if not lock_path.exists():
|
418
420
|
break
|
419
421
|
|
420
|
-
|
421
|
-
|
422
|
+
now = time.perf_counter()
|
423
|
+
if debug or (now - last_print) > sleep_message_seconds:
|
424
|
+
print(f"Lock exists for venv '{venv}', sleeping...")
|
425
|
+
last_print = now
|
422
426
|
time.sleep(step_sleep_seconds)
|
423
427
|
update_lock(False)
|
424
428
|
|
@@ -448,7 +452,8 @@ def init_venv(
|
|
448
452
|
|
449
453
|
_venv_success = False
|
450
454
|
temp_vtp = VENVS_CACHE_RESOURCES_PATH / str(venv)
|
451
|
-
|
455
|
+
### NOTE: Disable site-packages movement for now.
|
456
|
+
rename_vtp = False and vtp.exists() and not temp_vtp.exists()
|
452
457
|
|
453
458
|
wait_for_lock()
|
454
459
|
update_lock(True)
|
@@ -458,19 +463,10 @@ def init_venv(
|
|
458
463
|
print(f"Moving '{vtp}' to '{temp_vtp}'...")
|
459
464
|
shutil.move(vtp, temp_vtp)
|
460
465
|
|
461
|
-
if venv_path.exists():
|
462
|
-
if debug:
|
463
|
-
print(f"Removing '{venv_path}'...")
|
464
|
-
try:
|
465
|
-
shutil.rmtree(venv_path)
|
466
|
-
except Exception as e:
|
467
|
-
if debug:
|
468
|
-
print(f"Failed to remove '{venv_path}' ({e}). Continuing...")
|
469
|
-
|
470
466
|
if uv is not None:
|
471
467
|
_venv_success = run_python_package(
|
472
468
|
'uv',
|
473
|
-
['venv', venv_path.as_posix(), '-q'],
|
469
|
+
['venv', venv_path.as_posix(), '-q', '--no-project', '--allow-existing', '--seed'],
|
474
470
|
venv=None,
|
475
471
|
env=_get_pip_os_env(),
|
476
472
|
debug=debug,
|
@@ -18,9 +18,9 @@ meerschaum/_internal/shell/ValidAutoSuggest.py,sha256=bARjOWMidz0dvMelLUe6yRPto5
|
|
18
18
|
meerschaum/_internal/shell/__init__.py,sha256=vXQoQPEVlYiUYai1b5AwQAlTnja6A2cSABnqXhzlS7I,281
|
19
19
|
meerschaum/_internal/shell/updates.py,sha256=FmKu1NsIE7AI1zq8zNeKneZzORv6BeURQeX0lRR81Ag,5040
|
20
20
|
meerschaum/_internal/shell/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
-
meerschaum/_internal/term/TermPageHandler.py,sha256=
|
22
|
-
meerschaum/_internal/term/__init__.py,sha256=
|
23
|
-
meerschaum/_internal/term/tools.py,sha256=
|
21
|
+
meerschaum/_internal/term/TermPageHandler.py,sha256=iRvd1v7WsyZE2H7spXkz4vxtolV6IvbhkBLhkke9r5g,2421
|
22
|
+
meerschaum/_internal/term/__init__.py,sha256=6hkhA5Hk0O3WrwYYu74itcKTm5MxlOAVM1ozTojwB7c,2162
|
23
|
+
meerschaum/_internal/term/tools.py,sha256=7Hb6W9G1nHZHAhzuJjatuP1IK9XZTgUXDRPk7H9Tkpg,1609
|
24
24
|
meerschaum/actions/__init__.py,sha256=MHPs8aRBhbZQXnqd_6tVtisTrNCgPAPgnNcXYbn0zP8,11640
|
25
25
|
meerschaum/actions/api.py,sha256=41r3fBh3vAPyNaOrvbh2oh6WUJTR2I-zaOEZN60A66E,12538
|
26
26
|
meerschaum/actions/attach.py,sha256=UV19d9W_2WYcrf7BRz7k3mriDoX1V4rA4AKvbLdor0o,3106
|
@@ -45,7 +45,7 @@ meerschaum/actions/sh.py,sha256=hSkGNTVqP5dNjhJ64zy3V3VCFPTKnDlH3PxdKdxtkGQ,1990
|
|
45
45
|
meerschaum/actions/show.py,sha256=T8Ol1o-762cI9rlUzd-8svvwgT4slYXYfOPQETh9Koo,28446
|
46
46
|
meerschaum/actions/sql.py,sha256=PhbBMBq20LL8Yh3q-yqGMe7f8ffmyjbD8q_G8Q0WxZc,4527
|
47
47
|
meerschaum/actions/stack.py,sha256=ZwrCTGJ0x3jjZkRieWcvqasQHYCqNtB1HYvTX-r3Z3g,5996
|
48
|
-
meerschaum/actions/start.py,sha256=
|
48
|
+
meerschaum/actions/start.py,sha256=slQ49iImNlV3UsU7CzfMPD6Qms142KguDlEkSitdx6Y,21686
|
49
49
|
meerschaum/actions/stop.py,sha256=5fdUw70YN-yuUWrC-NhA88cxr9FZ5NbssbQ8xXO8nFU,4632
|
50
50
|
meerschaum/actions/sync.py,sha256=br87b8uqpv7GW18f_O7Zg7QioPh0t377J082yfmuSak,17223
|
51
51
|
meerschaum/actions/tag.py,sha256=SJf5qFW0ccLXjqlTdkK_0MCcrCMdg6xhYrhKdco0hdA,3053
|
@@ -58,18 +58,18 @@ meerschaum/api/_events.py,sha256=f-98AXHU10IL9zRGX1FrZFANxxiMz5ryeJnfFWaU8R8,223
|
|
58
58
|
meerschaum/api/_oauth2.py,sha256=dJTIVlPpX3sAVW-PcN6pXRNy2RR5QAalu2RHp3l14YU,1683
|
59
59
|
meerschaum/api/_websockets.py,sha256=EMT9wB3yELu_WyCMqn9ZpgMDh23spUUchouRLCCLVuw,1509
|
60
60
|
meerschaum/api/dash/__init__.py,sha256=29vMm_m5gSDYG0lahh-8yVfhqg9kUFnUrYyw_9jC2Y0,2078
|
61
|
-
meerschaum/api/dash/components.py,sha256=
|
61
|
+
meerschaum/api/dash/components.py,sha256=k6VpeeM-grzslAKZyNMXtKKfpC8-Nz9wgZoUoD0p4Ac,6532
|
62
62
|
meerschaum/api/dash/connectors.py,sha256=-Wd40ieYJI2nOASXi4V1C4bvLekjnN_tj6zp7HgZDl0,791
|
63
63
|
meerschaum/api/dash/graphs.py,sha256=wJUDWzcLN8-C3xko6rj0F2v7Rt8YDkSXoVkkXJjYGIk,2046
|
64
64
|
meerschaum/api/dash/jobs.py,sha256=mj9STE6AaQY4fwkjD1JcYRG0iW3VEcP04bO1SlKgiXw,7681
|
65
|
-
meerschaum/api/dash/keys.py,sha256=
|
65
|
+
meerschaum/api/dash/keys.py,sha256=mQT8MxtaeugbdZxGDhkr-G1mccPB4XpLN-UB7s3tamI,11144
|
66
66
|
meerschaum/api/dash/pipes.py,sha256=Zm2UKovwz6K8Mt6dTCY2LgDyUyFhEZ5D8nWw4ecPUXI,26210
|
67
67
|
meerschaum/api/dash/plugins.py,sha256=KdfG04f6SsUpBg-nm7MUJegFGuElOj-GAkxDX98hi60,3768
|
68
|
-
meerschaum/api/dash/sessions.py,sha256
|
68
|
+
meerschaum/api/dash/sessions.py,sha256=i8qFGZX1zlxskj13F5B9TYd-mXdVA71Q8d8nESbiJG0,5068
|
69
69
|
meerschaum/api/dash/sync.py,sha256=9lt7IRdG-fe9gf_ZO_viPiGlerX7ic6r_VFocv3I51A,504
|
70
70
|
meerschaum/api/dash/users.py,sha256=3wq3ZG51DxOjNeF-X5HdlXD1MYQ1nQ9oowYSvFEY7hs,1050
|
71
71
|
meerschaum/api/dash/websockets.py,sha256=0iwRaI9k2okU1baYstOkehfZ6-qMi_S6qm4lPBjVlH8,924
|
72
|
-
meerschaum/api/dash/webterm.py,sha256=
|
72
|
+
meerschaum/api/dash/webterm.py,sha256=_Aiao08IO2wfeLlWCBlYmn7x-acfHwjcr5BIg6C8eoA,3587
|
73
73
|
meerschaum/api/dash/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
74
|
meerschaum/api/dash/assets/ansi_up.js,sha256=in4bWSCayjzXbOgROw7eLRrFwCTIiLxh8nbFSJXtDl4,21923
|
75
75
|
meerschaum/api/dash/assets/banner_1920x320.png,sha256=n2cNTSVEsGxO9XZg2keb85J3UOkux70nyIMNII5m4SA,338636
|
@@ -78,14 +78,14 @@ meerschaum/api/dash/assets/logo_48x48.png,sha256=hTR5BHUHEN4yP2xiqAcDciuigoII9T3
|
|
78
78
|
meerschaum/api/dash/assets/logo_500x500.png,sha256=9EUtf6wQcEZTXHKfQ2kjNXod6Rn_4DTB_BkTgxggq00,67702
|
79
79
|
meerschaum/api/dash/callbacks/__init__.py,sha256=5nLDkziaWWWt5ivmuMNG3kVBMOfqB6KQNIAS8f16bmA,493
|
80
80
|
meerschaum/api/dash/callbacks/custom.py,sha256=N9pVolAF8sIuJD3V6xBSgS7k8THJo_f8d1qAoh1Kg60,1161
|
81
|
-
meerschaum/api/dash/callbacks/dashboard.py,sha256=
|
81
|
+
meerschaum/api/dash/callbacks/dashboard.py,sha256=GKawgBjhgkMLKTE0PtRRGKd72pbmFGGnHlBsIHTnb_I,33962
|
82
82
|
meerschaum/api/dash/callbacks/jobs.py,sha256=JYTrDcUEte_MIT3EegLDmQDsmU_Mxqw8L60dvF71ho4,8418
|
83
83
|
meerschaum/api/dash/callbacks/login.py,sha256=mEvMgV-f85H6DvqNdTvJPoiwHqTnhWY2nf_zLB26ipE,2876
|
84
84
|
meerschaum/api/dash/callbacks/pipes.py,sha256=byphQn-wJOe8ft-fGU9wac0n5xsMjVHJzNvYYb9NsKU,1693
|
85
85
|
meerschaum/api/dash/callbacks/plugins.py,sha256=znPgw_Uf3__QEjKxoIHADfjVNubTehCDaTJ02b16pQo,2760
|
86
86
|
meerschaum/api/dash/callbacks/register.py,sha256=KfMFgXWiFkemz0YriSPaLQBVnFDG8q6_t9gHuempOS0,3666
|
87
87
|
meerschaum/api/dash/pages/__init__.py,sha256=E3MI73_FR21R_-npTJ9HBNd7hdbOwQ75V-TMpq3ohz8,349
|
88
|
-
meerschaum/api/dash/pages/dashboard.py,sha256=
|
88
|
+
meerschaum/api/dash/pages/dashboard.py,sha256=k6mmvPWXQD6NpAO4_y9Y9r8n-IU5Ql1IOuczOl7OWPs,3802
|
89
89
|
meerschaum/api/dash/pages/error.py,sha256=-uCrASuIBrceHcc-leLeEoLos2ibSBWG0XMFQzFwtbw,595
|
90
90
|
meerschaum/api/dash/pages/job.py,sha256=bAXXDB0fM3bSiqqJ2XlTwVdg2lohRaWdIGZp7ZtTZOw,544
|
91
91
|
meerschaum/api/dash/pages/login.py,sha256=Qjc-kDL9wW4D1cN48x0MrmWCME4igHDt0VkX9JSipjY,4603
|
@@ -110,14 +110,14 @@ meerschaum/api/resources/static/ico/logo.ico,sha256=nDEekVxwS60wEDno1nbw5GF3TJOc
|
|
110
110
|
meerschaum/api/resources/static/js/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
111
111
|
meerschaum/api/resources/static/js/action_button.js,sha256=A0tH6W5lXR1dcGKtNk_pTNSKFVH-HGX2eMR-IOgGLeM,540
|
112
112
|
meerschaum/api/resources/static/js/main.js,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
113
|
-
meerschaum/api/resources/static/js/terminado.js,sha256=
|
113
|
+
meerschaum/api/resources/static/js/terminado.js,sha256=Hl1VZ-RhTKUPjEFLNHyytRUUE31NUOKRxpBw4nAFnP4,1644
|
114
114
|
meerschaum/api/resources/static/js/xterm.js,sha256=H5kaw7Syg-v5bmCuI6AKUnZd06Lkb6b92p8aqwMvdJU,289441
|
115
115
|
meerschaum/api/resources/static/png/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
116
116
|
meerschaum/api/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
117
117
|
meerschaum/api/resources/templates/index.html,sha256=Ck-S0U5abJgB-wTOKIGg0ispGzKlXXqvFUoNAAByzLA,1019
|
118
118
|
meerschaum/api/resources/templates/old_index.html,sha256=BDeOlcXhSsBH3-NaRtuX4Z1sDuhOoCMa_Dq-6g5RMpc,1711
|
119
119
|
meerschaum/api/resources/templates/secret.html,sha256=0QWkm4ZoN81Aw1pd2-62rGCvx3nXPHfFUoegj3Iy8Ls,141
|
120
|
-
meerschaum/api/resources/templates/termpage.html,sha256=
|
120
|
+
meerschaum/api/resources/templates/termpage.html,sha256=I8ZsXunwzRyquErRPZsKKhDNoafeXT0iW0JCL4OSx8U,5989
|
121
121
|
meerschaum/api/routes/__init__.py,sha256=jbkeFNl51Tg8aT5gWe560ZLZLojFJsLMe5IENRjRkb0,606
|
122
122
|
meerschaum/api/routes/_actions.py,sha256=VUasS1dpr4d3TXHcR1CXlRZPAqvGKKuHv_f9PsOkQ5c,1732
|
123
123
|
meerschaum/api/routes/_connectors.py,sha256=NNbcn5xWhKqw2PqueSEaqRaZ95hFGDKazG5lE7gsssc,1849
|
@@ -129,11 +129,11 @@ meerschaum/api/routes/_pipes.py,sha256=kykrEP6A75WBjn2wP28BLiPVRpwtfd8sVhfOhzjHa
|
|
129
129
|
meerschaum/api/routes/_plugins.py,sha256=zzUyCiylJGeoLoa3dNjeRMSspvKfywTVXBpB-ghJ7ls,6228
|
130
130
|
meerschaum/api/routes/_users.py,sha256=Gts7gltQc5uxgjfL5pQS_R-cAhkHJZJWBCKGPRS1gmQ,6809
|
131
131
|
meerschaum/api/routes/_version.py,sha256=2t-nw_9IxCVZCNEar0LOwmut2zsClRVHjiOOUx16cu0,825
|
132
|
-
meerschaum/api/routes/_webterm.py,sha256=
|
132
|
+
meerschaum/api/routes/_webterm.py,sha256=PvYDSsNlRpGNFXqVA3MAh0E6i4SMQ3ATBQbOVNUqacw,4132
|
133
133
|
meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
|
134
134
|
meerschaum/config/__init__.py,sha256=5ZBq71P9t3nb74r5CGvMfNuauPscfegBX-nkaAUi5C4,11541
|
135
135
|
meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
|
136
|
-
meerschaum/config/_default.py,sha256=
|
136
|
+
meerschaum/config/_default.py,sha256=Rdyw50hoV24N2sEteaIm5NeuLlbzIZpDdAeDoBYoPQ0,6130
|
137
137
|
meerschaum/config/_edit.py,sha256=M9yX_SDD24gV5kWITZpy7p9AWTizJsIAGWAs3WZx-Ws,9087
|
138
138
|
meerschaum/config/_environment.py,sha256=Vv4DLDfc2vKLbCLsMvkQDj77K4kEvHKEBmUBo-wCrgo,4419
|
139
139
|
meerschaum/config/_formatting.py,sha256=OMuqS1EWOsj_34wSs2tOqGIWci3bTMIZ5l-uelZgsIM,6672
|
@@ -144,7 +144,7 @@ meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6
|
|
144
144
|
meerschaum/config/_read_config.py,sha256=RLC3HHi_1ndj7ITVDKLD9_uULY3caGRwSz3ATYE-ixA,15014
|
145
145
|
meerschaum/config/_shell.py,sha256=46_m49Txc5q1rGfCgO49ca48BODx45DQJi8D0zz1R18,4245
|
146
146
|
meerschaum/config/_sync.py,sha256=jHcWRkxd82_BgX8Xo8agsWvf7BSbv3qHLWmYl6ehp_0,4242
|
147
|
-
meerschaum/config/_version.py,sha256=
|
147
|
+
meerschaum/config/_version.py,sha256=xTLVpUjkTze_hdaUcpfoffXnbH-lcMVq1kPZen0twaI,71
|
148
148
|
meerschaum/config/paths.py,sha256=JjibeGN3YAdSNceRwsd42aNmeUrIgM6ndzC8qZAmNI0,621
|
149
149
|
meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
150
150
|
meerschaum/config/stack/__init__.py,sha256=2UukC0Lmk-aVL1o1qXzumqmuIrw3vu9fD7iCuz4XD4I,10544
|
@@ -152,7 +152,7 @@ meerschaum/config/stack/grafana/__init__.py,sha256=LNXQw2FvHKrD68RDhqDmi2wJjAHaK
|
|
152
152
|
meerschaum/config/stack/mosquitto/__init__.py,sha256=-OwOjq8KiBoSH_pmgCAAF3Dp3CRD4KgAEdimZSadROs,186
|
153
153
|
meerschaum/config/stack/mosquitto/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
154
154
|
meerschaum/config/stack/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
155
|
-
meerschaum/config/static/__init__.py,sha256=
|
155
|
+
meerschaum/config/static/__init__.py,sha256=8GIJQzIq_gXJm7B8bJJnsT-j_IwCfF31_rYyDHUN9Qs,5394
|
156
156
|
meerschaum/connectors/_Connector.py,sha256=VaVNg0SlQCTXk4shl3c68QdkbymA2Y9ScUlUjckk8PY,6795
|
157
157
|
meerschaum/connectors/__init__.py,sha256=bpWsnU0uvoowWyUkFTwfEkadK84pssZUJ4M7yReudOU,12703
|
158
158
|
meerschaum/connectors/parse.py,sha256=tnqzkzt_suOXYzktn_XVUrprtfym9ThijUf8HXZZlhY,4194
|
@@ -207,8 +207,8 @@ meerschaum/core/Pipe/_fetch.py,sha256=IojFSA_EXBSm0I8BmlDgmUh3M85FFtXjmDJhdxZ8Ll
|
|
207
207
|
meerschaum/core/Pipe/_index.py,sha256=cYgaVwBVfAYxJBZ6j6MXDqOxnOrD_QnYi33_kIwy_FQ,1944
|
208
208
|
meerschaum/core/Pipe/_register.py,sha256=Sd5xaAW8H7uLTIoommcKb-6kHPRuHJLWNSbPnt2UbvA,2240
|
209
209
|
meerschaum/core/Pipe/_show.py,sha256=nG50y8eBT9TVuKkRgAKtNDNIxysJvMNxfu__lkL1F9k,1352
|
210
|
-
meerschaum/core/Pipe/_sync.py,sha256=
|
211
|
-
meerschaum/core/Pipe/_verify.py,sha256=
|
210
|
+
meerschaum/core/Pipe/_sync.py,sha256=aoJRgUt9TOisZmdiUvFQQDQt4BxHXEF2tVOwY-C6X5s,36636
|
211
|
+
meerschaum/core/Pipe/_verify.py,sha256=evFjbgfQffeuGXQxSBe5iwN_ePCXyDnxDT_hHEZqps0,14350
|
212
212
|
meerschaum/core/Plugin/__init__.py,sha256=UXg64EvJPgI1PCxkY_KM02-ZmBm4FZpLPIQR_uSJJDc,137
|
213
213
|
meerschaum/core/User/_User.py,sha256=qbI0GIkr3G0PI4d9S49uatbJQ2kH_-z5-GoVJ0fuEtA,6624
|
214
214
|
meerschaum/core/User/__init__.py,sha256=9qNy-Gobui4x6GiaE8U7-WOggsdniOM3_wegLN3SVKs,988
|
@@ -224,7 +224,7 @@ meerschaum/utils/_get_pipes.py,sha256=tu4xKPoDn79Dz2kWM13cXTP4DSCkn-3G9M8KiLftop
|
|
224
224
|
meerschaum/utils/dataframe.py,sha256=2wiZcD0Z5ItxMSTapzgVATJ3ny457pSsnHFVovWdk6g,49320
|
225
225
|
meerschaum/utils/debug.py,sha256=GyIzJmunkoPnOcZNYVQdT4Sgd-aOb5MI2VbIgATOjIQ,3695
|
226
226
|
meerschaum/utils/interactive.py,sha256=t-6jWozXSqL7lYGDHuwiOjTgr-UKhdcg61q_eR5mikI,3196
|
227
|
-
meerschaum/utils/misc.py,sha256=
|
227
|
+
meerschaum/utils/misc.py,sha256=Mkr1J6DO_7sERwZvTTU04L_Gz0dXHleA9nZf5lHjd9U,47371
|
228
228
|
meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRUc,1006
|
229
229
|
meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
|
230
230
|
meerschaum/utils/process.py,sha256=9O8PPPJjY9Q5W2f39I3B3lFU6TlSiRiI3bgrzdOOyOw,7843
|
@@ -235,29 +235,29 @@ meerschaum/utils/threading.py,sha256=awjbVL_QR6G-o_9Qk85utac9cSdqkiC8tQSdERCdrG8
|
|
235
235
|
meerschaum/utils/typing.py,sha256=U3MC347sh1umpa3Xr1k71eADyDmk4LB6TnVCpq8dVzI,2830
|
236
236
|
meerschaum/utils/warnings.py,sha256=n-phr3BftNNgyPnvnXC_VMSjtCvjiCZ-ewmVfcROhkc,6611
|
237
237
|
meerschaum/utils/yaml.py,sha256=PoC1du0pn2hLwTHwL-zuOf_EBWZSbCGOz-P-AZ4BWN0,3901
|
238
|
-
meerschaum/utils/daemon/Daemon.py,sha256=
|
238
|
+
meerschaum/utils/daemon/Daemon.py,sha256=P1JeXROC-321OzjtuisU0tW2ONJp2kI7Hdu_Q85B1cA,43406
|
239
239
|
meerschaum/utils/daemon/FileDescriptorInterceptor.py,sha256=MJKMO0Syf3d8yWUs6xXcQzg8Ptsuvh2aCRRoglOjusA,5257
|
240
240
|
meerschaum/utils/daemon/RotatingFile.py,sha256=8_bXegBjjzNRlNEjFZ_EHU4pSaDfjXZTwO9F9kbAU1I,24337
|
241
241
|
meerschaum/utils/daemon/StdinFile.py,sha256=qdZ8E_RSOkURypwnS50mWeyWyRig1bAY9tKWMTVKajc,3307
|
242
242
|
meerschaum/utils/daemon/__init__.py,sha256=ziRPyu_IM3l7Xd58y3Uvt0fZLoirJ9nuboFIxxult6c,8741
|
243
243
|
meerschaum/utils/daemon/_names.py,sha256=d2ZwTxBoTAqXZkCfZ5LuX2XrkQmLNUq1OTlUqfoH5dA,4515
|
244
|
-
meerschaum/utils/dtypes/__init__.py,sha256=
|
245
|
-
meerschaum/utils/dtypes/sql.py,sha256=
|
244
|
+
meerschaum/utils/dtypes/__init__.py,sha256=O4EfRcv53NwvHYZpyP0kfJjS-I-9dUFdXUd78hoy0ZU,15492
|
245
|
+
meerschaum/utils/dtypes/sql.py,sha256=hcugN6JhF6QJz7x3KAbTMGoFmu_cc_jQEOUZDpLSVXc,21488
|
246
246
|
meerschaum/utils/formatting/__init__.py,sha256=bA8qwBeTNIVHVQOBK682bJsKSKik1yS6xYJAoi0RErk,15528
|
247
247
|
meerschaum/utils/formatting/_jobs.py,sha256=izsqPJhTtUkXUUtWnbXtReYsUYwulXtci3pBj72Ne64,6637
|
248
248
|
meerschaum/utils/formatting/_pipes.py,sha256=OISJmmFiilaDbZxkiXck_g39MnnTfk_fJJyJ-YInvXA,19559
|
249
|
-
meerschaum/utils/formatting/_pprint.py,sha256=
|
249
|
+
meerschaum/utils/formatting/_pprint.py,sha256=wyTmjHFnsHbxfyuytjTWzH-D42Z65GuIisQ_W6UnRPg,3096
|
250
250
|
meerschaum/utils/formatting/_shell.py,sha256=XH7VFLteNv7NGtWhJl7FdIGt80sKeTiDoJokGSDAwBM,3761
|
251
251
|
meerschaum/utils/packages/__init__.py,sha256=TdKaj2tmN4bFwzusOfMv24P5ET7Zv73vyoOf9GOIr5E,64427
|
252
252
|
meerschaum/utils/packages/_packages.py,sha256=_xODMSz1FAcx3XHrn9RXUhGJ1zg-QKsVu9zYZV2UJeY,8868
|
253
253
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
254
254
|
meerschaum/utils/venv/_Venv.py,sha256=gc1TCeAj-kTZbQFAT9xl1bi4HXFV5ApT0dPOJfxwr78,3748
|
255
|
-
meerschaum/utils/venv/__init__.py,sha256
|
256
|
-
meerschaum-2.7.
|
257
|
-
meerschaum-2.7.
|
258
|
-
meerschaum-2.7.
|
259
|
-
meerschaum-2.7.
|
260
|
-
meerschaum-2.7.
|
261
|
-
meerschaum-2.7.
|
262
|
-
meerschaum-2.7.
|
263
|
-
meerschaum-2.7.
|
255
|
+
meerschaum/utils/venv/__init__.py,sha256=-Mpfvz1mJ41TzVL0xKJCKOsU3nFi6XabbNiN7UbdVXs,27067
|
256
|
+
meerschaum-2.7.9.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
257
|
+
meerschaum-2.7.9.dist-info/METADATA,sha256=jL5sZBvdVHmo1FUDgI9InBzorrlQIqdiziqqStmaeRE,24489
|
258
|
+
meerschaum-2.7.9.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
259
|
+
meerschaum-2.7.9.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
260
|
+
meerschaum-2.7.9.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
261
|
+
meerschaum-2.7.9.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
262
|
+
meerschaum-2.7.9.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
263
|
+
meerschaum-2.7.9.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|