meerschaum 3.0.1__py3-none-any.whl → 3.0.3__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/cli/entry.py +1 -0
- meerschaum/_internal/cli/workers.py +5 -0
- meerschaum/actions/install.py +17 -19
- meerschaum/actions/upgrade.py +25 -11
- meerschaum/api/dash/callbacks/dashboard.py +2 -1
- meerschaum/api/dash/callbacks/pipes.py +2 -2
- meerschaum/api/dash/components.py +1 -1
- meerschaum/api/dash/pipes.py +2 -2
- meerschaum/api/resources/static/css/dash.css +1 -1
- meerschaum/config/_default.py +3 -0
- meerschaum/config/_read_config.py +0 -1
- meerschaum/config/_version.py +1 -1
- meerschaum/core/Pipe/_cache.py +8 -5
- meerschaum/plugins/__init__.py +11 -5
- meerschaum/utils/pipes.py +4 -1
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/METADATA +1 -1
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/RECORD +23 -23
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/WHEEL +0 -0
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/entry_points.txt +0 -0
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/licenses/LICENSE +0 -0
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/licenses/NOTICE +0 -0
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/top_level.txt +0 -0
- {meerschaum-3.0.1.dist-info → meerschaum-3.0.3.dist-info}/zip-safe +0 -0
@@ -319,6 +319,9 @@ class ActionWorker:
|
|
319
319
|
action_id = input_data.get('action_id', None)
|
320
320
|
patch_args = input_data.get('patch_args', None)
|
321
321
|
env = input_data.get('env', {})
|
322
|
+
old_cwd = os.getcwd()
|
323
|
+
cwd = input_data.get('cwd', os.getcwd())
|
324
|
+
os.chdir(cwd)
|
322
325
|
config = input_data.get('config', {})
|
323
326
|
self.write_output_data({
|
324
327
|
'state': 'accepted',
|
@@ -335,6 +338,8 @@ class ActionWorker:
|
|
335
338
|
)
|
336
339
|
print(STOP_TOKEN, flush=True, end='\n')
|
337
340
|
|
341
|
+
os.chdir(old_cwd)
|
342
|
+
|
338
343
|
self.write_output_data({
|
339
344
|
'state': 'completed',
|
340
345
|
'session_id': session_id,
|
meerschaum/actions/install.py
CHANGED
@@ -74,14 +74,10 @@ def _install_plugins(
|
|
74
74
|
- install plugins noaa --repo mrsm (mrsm is the default instance)
|
75
75
|
- install plugins noaa --repo mycustominstance
|
76
76
|
"""
|
77
|
-
from meerschaum.utils.debug import dprint
|
78
77
|
from meerschaum.utils.warnings import info
|
79
|
-
from meerschaum.plugins import reload_plugins
|
80
78
|
from meerschaum.connectors.parse import parse_repo_keys
|
81
|
-
|
79
|
+
from meerschaum.actions import actions
|
82
80
|
from meerschaum.utils.formatting import print_tuple
|
83
|
-
from meerschaum.core import Plugin
|
84
|
-
from meerschaum.connectors.api import APIConnector
|
85
81
|
|
86
82
|
if not action:
|
87
83
|
return False, "No plugins to install."
|
@@ -98,8 +94,7 @@ def _install_plugins(
|
|
98
94
|
)
|
99
95
|
print_tuple((success, msg))
|
100
96
|
|
101
|
-
|
102
|
-
return True, "Success"
|
97
|
+
return actions['reload'](debug=debug)
|
103
98
|
|
104
99
|
|
105
100
|
def _complete_install_plugins(
|
@@ -132,8 +127,9 @@ def _complete_install_plugins(
|
|
132
127
|
from meerschaum.connectors.parse import parse_repo_keys
|
133
128
|
try:
|
134
129
|
repo_connector = parse_repo_keys(repository)
|
135
|
-
except Exception
|
130
|
+
except Exception:
|
136
131
|
return []
|
132
|
+
|
137
133
|
results = repo_connector.get_plugins(search_term=search_term)
|
138
134
|
if len(results) == 1 and results[0] == search_term:
|
139
135
|
return []
|
@@ -156,10 +152,11 @@ def _install_packages(
|
|
156
152
|
`install packages pandas numpy`
|
157
153
|
"""
|
158
154
|
if not action:
|
159
|
-
return False,
|
160
|
-
|
155
|
+
return False, "No packages to install."
|
156
|
+
|
161
157
|
from meerschaum.utils.packages import pip_install
|
162
158
|
from meerschaum.utils.misc import items_str
|
159
|
+
from meerschaum.actions import actions
|
163
160
|
if venv is NoVenv:
|
164
161
|
venv = 'mrsm'
|
165
162
|
|
@@ -169,11 +166,16 @@ def _install_packages(
|
|
169
166
|
venv = venv,
|
170
167
|
debug = debug,
|
171
168
|
):
|
169
|
+
reload_success, reload_msg = actions['reload'](debug=debug)
|
170
|
+
if not reload_success:
|
171
|
+
return reload_success, reload_msg
|
172
|
+
|
172
173
|
return True, (
|
173
174
|
"Successfully installed package" + ("s" if len(action) != 1 else '')
|
174
175
|
+ f" {items_str(action)}"
|
175
176
|
+ f" into the virtual environment '{venv}'."
|
176
177
|
)
|
178
|
+
|
177
179
|
return False, (
|
178
180
|
"Failed to install package" + ("s" if len(action) != 1 else '') + f" {items_str(action)}."
|
179
181
|
)
|
@@ -201,6 +203,7 @@ def _install_required(
|
|
201
203
|
from meerschaum.utils.warnings import warn, info
|
202
204
|
from meerschaum.connectors.parse import parse_repo_keys
|
203
205
|
from meerschaum.plugins import get_plugins_names
|
206
|
+
from meerschaum.actions import actions
|
204
207
|
repo_connector = parse_repo_keys(repository)
|
205
208
|
|
206
209
|
plugins_names = action or get_plugins_names()
|
@@ -221,6 +224,10 @@ def _install_required(
|
|
221
224
|
else:
|
222
225
|
success_count += 1
|
223
226
|
|
227
|
+
reload_success, reload_msg = actions['reload'](debug=debug)
|
228
|
+
if not reload_success:
|
229
|
+
return reload_success, reload_msg
|
230
|
+
|
224
231
|
success = fail_count == 0
|
225
232
|
msg = (
|
226
233
|
f"Installed packages for {success_count + fail_count} plugins\n "
|
@@ -234,15 +241,6 @@ def _complete_install_required(*args, **kw) -> List[str]:
|
|
234
241
|
return _complete_uninstall_plugins(*args, **kw)
|
235
242
|
|
236
243
|
|
237
|
-
def _install_systemd(
|
238
|
-
action: Optional[List[str]] = None,
|
239
|
-
**kwargs: Any
|
240
|
-
) -> SuccessTuple:
|
241
|
-
"""
|
242
|
-
Install the Meerschaum job monitor as a systemd service.
|
243
|
-
"""
|
244
|
-
import sys
|
245
|
-
|
246
244
|
|
247
245
|
### NOTE: This must be the final statement of the module.
|
248
246
|
### Any subactions added below these lines will not
|
meerschaum/actions/upgrade.py
CHANGED
@@ -51,19 +51,16 @@ def _upgrade_meerschaum(
|
|
51
51
|
- `upgrade meerschaum full`
|
52
52
|
|
53
53
|
"""
|
54
|
-
import subprocess
|
55
|
-
import json
|
56
54
|
from meerschaum.utils.debug import dprint
|
57
55
|
from meerschaum.utils.warnings import info
|
58
56
|
from meerschaum.actions import actions
|
59
57
|
from meerschaum.utils.prompt import yes_no
|
60
|
-
from meerschaum.utils.packages import pip_install
|
58
|
+
from meerschaum.utils.packages import pip_install
|
61
59
|
from meerschaum.utils.misc import is_docker_available
|
62
60
|
|
63
61
|
if action is None:
|
64
62
|
action = []
|
65
63
|
|
66
|
-
is_stack_running = False
|
67
64
|
try:
|
68
65
|
success, msg = actions['stack'](
|
69
66
|
['ps', '-q'], _capture_output=True, debug=debug
|
@@ -71,7 +68,7 @@ def _upgrade_meerschaum(
|
|
71
68
|
if msg.endswith('\n'):
|
72
69
|
msg = msg[:-1]
|
73
70
|
containers = msg.split('\n')
|
74
|
-
except Exception
|
71
|
+
except Exception:
|
75
72
|
containers = []
|
76
73
|
|
77
74
|
if containers:
|
@@ -103,7 +100,7 @@ def _upgrade_meerschaum(
|
|
103
100
|
if is_docker_available():
|
104
101
|
actions['stack'](['pull'], debug=debug)
|
105
102
|
|
106
|
-
return
|
103
|
+
return actions['reload'](debug=debug)
|
107
104
|
|
108
105
|
|
109
106
|
class NoVenv:
|
@@ -128,10 +125,10 @@ def _upgrade_packages(
|
|
128
125
|
upgrade packages full
|
129
126
|
"""
|
130
127
|
from meerschaum.utils.packages import packages, pip_install, get_prerelease_dependencies
|
131
|
-
from meerschaum.utils.warnings import
|
128
|
+
from meerschaum.utils.warnings import warn
|
132
129
|
from meerschaum.utils.prompt import yes_no
|
133
130
|
from meerschaum.utils.formatting import make_header, pprint
|
134
|
-
from meerschaum.
|
131
|
+
from meerschaum.actions import actions
|
135
132
|
if action is None:
|
136
133
|
action = []
|
137
134
|
if venv is NoVenv:
|
@@ -164,7 +161,7 @@ def _upgrade_packages(
|
|
164
161
|
if (install_name not in prereleases_to_install) or group == '_internal'
|
165
162
|
]
|
166
163
|
|
167
|
-
success, msg = False,
|
164
|
+
success, msg = False, "Nothing installed."
|
168
165
|
if force or yes_no(question, noask=noask, yes=yes):
|
169
166
|
success = pip_install(*to_install, debug=debug)
|
170
167
|
if success and prereleases_to_install:
|
@@ -173,6 +170,14 @@ def _upgrade_packages(
|
|
173
170
|
f"Successfully installed {len(packages[group])} packages." if success
|
174
171
|
else f"Failed to install packages in dependency group '{group}'."
|
175
172
|
)
|
173
|
+
|
174
|
+
if not success:
|
175
|
+
return success, msg
|
176
|
+
|
177
|
+
reload_success, reload_msg = actions['reload'](debug=debug)
|
178
|
+
if not reload_success:
|
179
|
+
return reload_success, reload_msg
|
180
|
+
|
176
181
|
return success, msg
|
177
182
|
|
178
183
|
|
@@ -205,11 +210,20 @@ def _upgrade_plugins(
|
|
205
210
|
to_install = get_plugins_names() if len(action) == 0 else action
|
206
211
|
if len(to_install) == 0:
|
207
212
|
return False, "No plugins to upgrade."
|
213
|
+
|
208
214
|
print_options(to_install, header="Plugins to Upgrade:")
|
209
215
|
if force or yes_no(f"Upgrade {len(to_install)} plugins?", yes=yes, noask=noask):
|
210
|
-
|
211
|
-
action=['plugins'] + to_install,
|
216
|
+
install_success, install_msg = actions['install'](
|
217
|
+
action=['plugins'] + to_install,
|
218
|
+
debug=debug,
|
219
|
+
force=force,
|
220
|
+
noask=noask,
|
221
|
+
yes=yes,
|
222
|
+
**kw
|
212
223
|
)
|
224
|
+
|
225
|
+
return install_success, install_msg
|
226
|
+
|
213
227
|
return False, "No plugins upgraded."
|
214
228
|
|
215
229
|
### NOTE: This must be the final statement of the module.
|
@@ -160,7 +160,8 @@ def update_page_layout_div(
|
|
160
160
|
else:
|
161
161
|
session_store_to_return = dash.no_update
|
162
162
|
|
163
|
-
|
163
|
+
dashless_pathname = pathname[len('/dash'):] if pathname.startswith('/dash') else pathname
|
164
|
+
base_path = ('/dash/' + dashless_pathname.lstrip('/').split('/', maxsplit=1)[0]).rstrip('/')
|
164
165
|
complete_path = (
|
165
166
|
pathname.rstrip('/') + '/'
|
166
167
|
).rstrip('/')
|
@@ -10,7 +10,6 @@ from typing import List, Optional, Dict, Any
|
|
10
10
|
|
11
11
|
import dash
|
12
12
|
from dash.dependencies import Input, Output, State
|
13
|
-
from dash import no_update
|
14
13
|
from dash.exceptions import PreventUpdate
|
15
14
|
import dash_bootstrap_components as dbc
|
16
15
|
|
@@ -172,8 +171,9 @@ def render_pipe_page_from_url(
|
|
172
171
|
Input('pipes-metric-keys-dropdown', 'value'),
|
173
172
|
Input('pipes-location-keys-dropdown', 'value'),
|
174
173
|
Input('pipes-tags-dropdown', 'value'),
|
175
|
-
Input('instance-select', 'value'),
|
174
|
+
Input('pipes-instance-select', 'value'),
|
176
175
|
Input('pipes-clear-all-button', 'n_clicks'),
|
176
|
+
prevent_initial_call=True,
|
177
177
|
)
|
178
178
|
def update_location_on_pipes_filter_change(
|
179
179
|
connector_keys: Optional[List[str]],
|
@@ -107,7 +107,7 @@ instance_select = dbc.Select(
|
|
107
107
|
{'label': (i[:32] + '…') if len(i) > 32 else i, 'value': i}
|
108
108
|
for i in get_connector_labels(*instance_types)
|
109
109
|
],
|
110
|
-
class_name='dbc_dark custom-select custom-select-sm',
|
110
|
+
class_name='dbc_dark custom-select custom-select-sm instance-select',
|
111
111
|
)
|
112
112
|
|
113
113
|
sign_out_button = dbc.Button(
|
meerschaum/api/dash/pipes.py
CHANGED
@@ -1029,14 +1029,14 @@ def build_pipes_navbar(instance_keys: Optional[str] = None, with_instance_select
|
|
1029
1029
|
Build the navbar from the selected instance keys.
|
1030
1030
|
"""
|
1031
1031
|
instance_select = dbc.Select(
|
1032
|
-
id='instance-select',
|
1032
|
+
id='pipes-instance-select',
|
1033
1033
|
size='sm',
|
1034
1034
|
value=instance_keys or str(get_api_connector()),
|
1035
1035
|
options=[
|
1036
1036
|
{'label': (i[:32] + '…') if len(i) > 32 else i, 'value': i}
|
1037
1037
|
for i in get_connector_labels(*instance_types)
|
1038
1038
|
],
|
1039
|
-
class_name='dbc_dark custom-select custom-select-sm',
|
1039
|
+
class_name='dbc_dark custom-select custom-select-sm instance-select',
|
1040
1040
|
)
|
1041
1041
|
instance_select_div_style = {} if with_instance_select else {'visibility': 'hidden'}
|
1042
1042
|
instance_select_div = html.Div(instance_select, style=instance_select_div_style)
|
meerschaum/config/_default.py
CHANGED
@@ -134,6 +134,8 @@ default_system_config = {
|
|
134
134
|
'stop daemon',
|
135
135
|
'show daemon',
|
136
136
|
'restart daemon',
|
137
|
+
'install',
|
138
|
+
'upgrade',
|
137
139
|
'reload',
|
138
140
|
'start worker',
|
139
141
|
'show log',
|
@@ -149,6 +151,7 @@ default_system_config = {
|
|
149
151
|
'debug',
|
150
152
|
'bootstrap',
|
151
153
|
'daemon',
|
154
|
+
'sql',
|
152
155
|
],
|
153
156
|
},
|
154
157
|
'experimental': {
|
meerschaum/config/_version.py
CHANGED
meerschaum/core/Pipe/_cache.py
CHANGED
@@ -23,9 +23,9 @@ def _get_in_memory_key(cache_key: str) -> str:
|
|
23
23
|
Return the in-memory version of a cache key.
|
24
24
|
"""
|
25
25
|
return (
|
26
|
-
|
27
|
-
if not cache_key.startswith('_')
|
28
|
-
else cache_key
|
26
|
+
f"_{cache_key}"
|
27
|
+
if not str(cache_key).startswith('_')
|
28
|
+
else str(cache_key)
|
29
29
|
)
|
30
30
|
|
31
31
|
|
@@ -33,7 +33,7 @@ def _get_cache_conn_cache_key(pipe: mrsm.Pipe, cache_key: str) -> str:
|
|
33
33
|
"""
|
34
34
|
Return the cache key to use in the cache connector.
|
35
35
|
"""
|
36
|
-
return f'.cache:pipes:{pipe.connector_keys}:{pipe.metric_key}:{pipe.location_key}:{cache_key}'
|
36
|
+
return f'.cache:pipes:{pipe.connector_keys.replace(':', '_')}:{pipe.metric_key}:{pipe.location_key}:{cache_key}'
|
37
37
|
|
38
38
|
|
39
39
|
def _get_cache_connector(self) -> 'Union[None, ValkeyConnector]':
|
@@ -485,7 +485,10 @@ def _get_cache_conn_keys(self, debug: bool = False) -> List[str]:
|
|
485
485
|
keys_prefix = _get_cache_conn_cache_key(self, '')
|
486
486
|
|
487
487
|
try:
|
488
|
-
return
|
488
|
+
return [
|
489
|
+
key.decode('utf-8').split(':')[-1]
|
490
|
+
for key in cache_connector.client.keys(keys_prefix + '*')
|
491
|
+
]
|
489
492
|
except Exception as e:
|
490
493
|
warn(f"Failed to get cache keys for {self} from '{cache_connector}':\n{e}")
|
491
494
|
return []
|
meerschaum/plugins/__init__.py
CHANGED
@@ -326,23 +326,22 @@ def sync_plugins_symlinks(debug: bool = False, warn: bool = True) -> None:
|
|
326
326
|
"""
|
327
327
|
Update the plugins' internal symlinks.
|
328
328
|
"""
|
329
|
+
from meerschaum.utils.warnings import error, warn as _warn, dprint
|
329
330
|
global _synced_symlinks
|
330
331
|
with _locks['_synced_symlinks']:
|
331
332
|
if _synced_symlinks:
|
333
|
+
if debug:
|
334
|
+
dprint("Skip syncing symlinks...")
|
332
335
|
return
|
333
336
|
|
334
337
|
import os
|
335
338
|
import pathlib
|
336
339
|
import time
|
337
340
|
from collections import defaultdict
|
338
|
-
import importlib.util
|
339
341
|
from meerschaum.utils.misc import flatten_list, make_symlink, is_symlink
|
340
|
-
from meerschaum.utils.warnings import error, warn as _warn
|
341
342
|
from meerschaum._internal.static import STATIC_CONFIG
|
342
|
-
from meerschaum.utils.venv import Venv, activate_venv, deactivate_venv, is_venv_active
|
343
343
|
from meerschaum.config._paths import (
|
344
344
|
PLUGINS_RESOURCES_PATH,
|
345
|
-
PLUGINS_ARCHIVES_RESOURCES_PATH,
|
346
345
|
PLUGINS_INIT_PATH,
|
347
346
|
PLUGINS_DIR_PATHS,
|
348
347
|
PLUGINS_INTERNAL_LOCK_PATH,
|
@@ -700,7 +699,11 @@ def load_plugins(
|
|
700
699
|
Import Meerschaum plugins and update the actions dictionary.
|
701
700
|
"""
|
702
701
|
global _loaded_plugins
|
702
|
+
from meerschaum.utils.warnings import dprint
|
703
|
+
|
703
704
|
if skip_if_loaded and _loaded_plugins:
|
705
|
+
if debug:
|
706
|
+
dprint("Skip loading plugins...")
|
704
707
|
return
|
705
708
|
|
706
709
|
from inspect import isfunction, getmembers
|
@@ -714,6 +717,7 @@ def load_plugins(
|
|
714
717
|
recursive = True,
|
715
718
|
modules_venvs = True
|
716
719
|
)
|
720
|
+
|
717
721
|
### I'm appending here to keep from redefining the modules list.
|
718
722
|
new_modules = (
|
719
723
|
[
|
@@ -784,7 +788,7 @@ def unload_plugins(
|
|
784
788
|
"""
|
785
789
|
Unload the specified plugins from memory.
|
786
790
|
"""
|
787
|
-
global _loaded_plugins
|
791
|
+
global _loaded_plugins, _synced_symlinks
|
788
792
|
import sys
|
789
793
|
from meerschaum.config.paths import PLUGINS_RESOURCES_PATH, PLUGINS_INJECTED_RESOURCES_PATH
|
790
794
|
from meerschaum.connectors import unload_plugin_connectors
|
@@ -792,6 +796,7 @@ def unload_plugins(
|
|
792
796
|
from meerschaum.utils.warnings import dprint
|
793
797
|
|
794
798
|
_loaded_plugins = False
|
799
|
+
_synced_symlinks = False
|
795
800
|
|
796
801
|
plugins = plugins or get_plugins_names()
|
797
802
|
if debug:
|
@@ -803,6 +808,7 @@ def unload_plugins(
|
|
803
808
|
module_prefix = f"{PLUGINS_RESOURCES_PATH.stem}."
|
804
809
|
loaded_modules = [mod_name for mod_name in sys.modules if mod_name.startswith(module_prefix)]
|
805
810
|
|
811
|
+
_ = sys.modules.pop(PLUGINS_RESOURCES_PATH.stem, None)
|
806
812
|
for plugin_name in plugins:
|
807
813
|
for mod_name in loaded_modules:
|
808
814
|
if mod_name[len(PLUGINS_RESOURCES_PATH.stem):].startswith(plugin_name):
|
meerschaum/utils/pipes.py
CHANGED
@@ -210,4 +210,7 @@ def is_pipe_registered(
|
|
210
210
|
if debug:
|
211
211
|
dprint(f'{ck}, {mk}, {lk}')
|
212
212
|
dprint(f'{pipe}, {pipes}')
|
213
|
-
|
213
|
+
try:
|
214
|
+
return ck in pipes and mk in pipes[ck] and lk in pipes[ck][mk]
|
215
|
+
except Exception:
|
216
|
+
return False
|
@@ -8,8 +8,8 @@ meerschaum/_internal/arguments/_parse_arguments.py,sha256=B7eXnz2fGrDb_lWy2wagWV
|
|
8
8
|
meerschaum/_internal/arguments/_parser.py,sha256=v4dlR5ElJFmKGiw35UGCiDI1XiH8-ma8PJwoV3O--c4,18082
|
9
9
|
meerschaum/_internal/cli/__init__.py,sha256=ZZ_N_24WUg7fA6opMtSkS3OdtA6zgAe1rLMnS4-W1Zs,114
|
10
10
|
meerschaum/_internal/cli/daemons.py,sha256=-qx5y9YSyGzeDrBIRjuSaeHgmSNmSqrRiyOjXduNaBc,2586
|
11
|
-
meerschaum/_internal/cli/entry.py,sha256=
|
12
|
-
meerschaum/_internal/cli/workers.py,sha256=
|
11
|
+
meerschaum/_internal/cli/entry.py,sha256=O00pR369q7NYrSYrmESRsy6iaLsSEOmrultMZ5SVIpY,6814
|
12
|
+
meerschaum/_internal/cli/workers.py,sha256=D5peGIQ1kR5ZkNHj1bdu0-Oc0avFGf553JFCbpzkg3I,13064
|
13
13
|
meerschaum/_internal/docs/__init__.py,sha256=ZQYHWo6n0kfLLkyG36YXqTYvv2Pc7it5HZHMylT6cBA,126
|
14
14
|
meerschaum/_internal/docs/index.py,sha256=_ghUsrgjc2eo2c-CwvqY4gT2rgyXVONuT0oScyWkIz8,27401
|
15
15
|
meerschaum/_internal/shell/Shell.py,sha256=-iF7EYZQcNS3GNvaUgo-T8tuIeQKUjlMoZeBI6GclI0,44491
|
@@ -32,7 +32,7 @@ meerschaum/actions/delete.py,sha256=9NhWrClsdsiJ6ih-Yxyi6gZ05MMI9ykTSnL6dpPC1Z0,
|
|
32
32
|
meerschaum/actions/drop.py,sha256=xNgHWFPyvs4lm923BCRwYJULUqGYMbcVnRPb25Y-lzs,4433
|
33
33
|
meerschaum/actions/edit.py,sha256=JTvXMkL_9v46mI6P0FhHXhgg9vQjIdz1ebXc2Ei2Dws,20471
|
34
34
|
meerschaum/actions/index.py,sha256=byhcGi7P1S0TTcJPBxq3jGKmBF_gZ8t77oqtg0kGSdI,1826
|
35
|
-
meerschaum/actions/install.py,sha256=
|
35
|
+
meerschaum/actions/install.py,sha256=6KNeLOPwdc_IFuzw6iQJAH52ZO6rPNx7PAiH_dspNR0,7367
|
36
36
|
meerschaum/actions/login.py,sha256=DHYVIwrr6RpkrcW4NpGlURq2-ABL9-pXp2J-SXef10Y,4173
|
37
37
|
meerschaum/actions/os.py,sha256=dtoppoBhLzW3rLNF0SFovEfNxA4WJWt_9WrOGlS5KbA,2251
|
38
38
|
meerschaum/actions/pause.py,sha256=WI4dQFfjQ6ObWKUzwQ5FrtYPDyEcnxWwval8cSIzzJw,4221
|
@@ -50,7 +50,7 @@ meerschaum/actions/stop.py,sha256=GN1t7SpRzLpMKWyJmRkKdOEVov0TMaknJ3gKjAUZQkE,57
|
|
50
50
|
meerschaum/actions/sync.py,sha256=jB3w_t4_Uj788jDJ4FGPCHS5EqU08b5gPcReAlGan74,17818
|
51
51
|
meerschaum/actions/tag.py,sha256=JhWSq7X4wPrgt9tTft6qWOfs5nv-djGnqze4UQ8DPVA,3053
|
52
52
|
meerschaum/actions/uninstall.py,sha256=tBXhdXggSieGEQe4EPGxpgMK0MZTJCweNvAJ9-59El0,5776
|
53
|
-
meerschaum/actions/upgrade.py,sha256
|
53
|
+
meerschaum/actions/upgrade.py,sha256=-N7S0ewA__azTg4Q-Woj0Ehv2SN-Siarr4_HGPlJREk,6711
|
54
54
|
meerschaum/actions/verify.py,sha256=yKNqh2T38t3yxqErr2o8i-nNG4ZZuyQUkaImATRdl5M,4676
|
55
55
|
meerschaum/api/__init__.py,sha256=r9h44c-l8Qx7QNoNWdvDe6ovJPbZC34PzqWnT-Odi3E,11214
|
56
56
|
meerschaum/api/_chain.py,sha256=h8-WXUGXX6AqzdALfsBC5uv0FkAcLdHJXCGzqzuq89k,875
|
@@ -61,12 +61,12 @@ meerschaum/api/_oauth2.py,sha256=agWeuG5LzxLHZTjt3psdemhF_yoVJtdnfDdxSBVQMnY,704
|
|
61
61
|
meerschaum/api/_tokens.py,sha256=t9K0TFzyJ4dOg04_QKOWCINO66rSJkH2Ct03lyXIjEs,3070
|
62
62
|
meerschaum/api/_websockets.py,sha256=EMT9wB3yELu_WyCMqn9ZpgMDh23spUUchouRLCCLVuw,1509
|
63
63
|
meerschaum/api/dash/__init__.py,sha256=-RpTps4ntFNlgSW0mW50ZHAgUd5tN1Ua3F5I3XsLY_0,1914
|
64
|
-
meerschaum/api/dash/components.py,sha256=
|
64
|
+
meerschaum/api/dash/components.py,sha256=dkXCHJfTLZxgyKwzAQtuSEnjop5T2aZP2zEDd-LV_18,10798
|
65
65
|
meerschaum/api/dash/connectors.py,sha256=-Wd40ieYJI2nOASXi4V1C4bvLekjnN_tj6zp7HgZDl0,791
|
66
66
|
meerschaum/api/dash/graphs.py,sha256=wJUDWzcLN8-C3xko6rj0F2v7Rt8YDkSXoVkkXJjYGIk,2046
|
67
67
|
meerschaum/api/dash/jobs.py,sha256=p0mC30jO7aYS0vUbfn540d66-s19_c-GgjyfNmVXgrs,7682
|
68
68
|
meerschaum/api/dash/keys.py,sha256=pGIbKxp5RsIelzAU4WZMcYGDN835tF4mGhoktydc42M,8561
|
69
|
-
meerschaum/api/dash/pipes.py,sha256=
|
69
|
+
meerschaum/api/dash/pipes.py,sha256=yeWIDbR5sVYdZYi0L_6efjRk0WOZzqvdaVyX0_knvCk,37385
|
70
70
|
meerschaum/api/dash/plugins.py,sha256=KdfG04f6SsUpBg-nm7MUJegFGuElOj-GAkxDX98hi60,3768
|
71
71
|
meerschaum/api/dash/sessions.py,sha256=jUM0a9CXNZC3j7SF3QkZim-8ZAbDom-V1iXklvMyBZE,5382
|
72
72
|
meerschaum/api/dash/sync.py,sha256=9lt7IRdG-fe9gf_ZO_viPiGlerX7ic6r_VFocv3I51A,504
|
@@ -82,10 +82,10 @@ meerschaum/api/dash/assets/logo_48x48.png,sha256=hTR5BHUHEN4yP2xiqAcDciuigoII9T3
|
|
82
82
|
meerschaum/api/dash/assets/logo_500x500.png,sha256=9EUtf6wQcEZTXHKfQ2kjNXod6Rn_4DTB_BkTgxggq00,67702
|
83
83
|
meerschaum/api/dash/callbacks/__init__.py,sha256=flHWiTSjrdgVNLgFutSnaqYogVUgnqRFWy3K0-n0wFo,651
|
84
84
|
meerschaum/api/dash/callbacks/custom.py,sha256=e9wU2gZ8hutYNe7T4mKjJPFwpR32-dcbEXWyOOJKCEk,1884
|
85
|
-
meerschaum/api/dash/callbacks/dashboard.py,sha256=
|
85
|
+
meerschaum/api/dash/callbacks/dashboard.py,sha256=Wrwx91D6srkkpL1ScGE0R-yKjdxhwgcxWEGwxRQjUKI,38876
|
86
86
|
meerschaum/api/dash/callbacks/jobs.py,sha256=mwYYjxZxHte1g4uCtv6T8nGXR2-JPoWrAgZZdBlvDyQ,8817
|
87
87
|
meerschaum/api/dash/callbacks/login.py,sha256=Eygp71kdWRO_fFrkuUN3hIT-nG9HKYOgebf8ACeuyPs,3175
|
88
|
-
meerschaum/api/dash/callbacks/pipes.py,sha256=
|
88
|
+
meerschaum/api/dash/callbacks/pipes.py,sha256=t46Mu6-1Pq9FTlE57QzXmEVjt6deZUEdf13hxtDEKeE,7811
|
89
89
|
meerschaum/api/dash/callbacks/plugins.py,sha256=GhhA8GZBCNcz65pBE8hn8BNBEiHjXfcTiqvBNeox4XQ,2759
|
90
90
|
meerschaum/api/dash/callbacks/register.py,sha256=nrl_u0ujIrnjgOsCM_rSphY539shX0TRC2stZqJJIU0,3908
|
91
91
|
meerschaum/api/dash/callbacks/tokens.py,sha256=zkmqDenGjCrzQjNA5HyTOjcKDk2wYG4qE3xhjRDlTaE,11723
|
@@ -110,7 +110,7 @@ meerschaum/api/resources/__init__.py,sha256=LshFiqh0sL55QtC_15fz6A6r-1_H9sQWtlif
|
|
110
110
|
meerschaum/api/resources/static/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
111
111
|
meerschaum/api/resources/static/css/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
112
112
|
meerschaum/api/resources/static/css/bootstrap.min.css,sha256=W8ArKu4Q_NnxCNqO3doJB2hqrNOIHNLFroAxpyxnYL8,180286
|
113
|
-
meerschaum/api/resources/static/css/dash.css,sha256=
|
113
|
+
meerschaum/api/resources/static/css/dash.css,sha256=CkPRqTF0R1kc2PDspTzF1hoeMnf9HzLOnMkb3LJHZUQ,2241
|
114
114
|
meerschaum/api/resources/static/css/dbc_dark.css,sha256=2pka1ymFAjlWLv-mJaxGkPeL-gTEMD2g4Ba6LMuhHV4,6087
|
115
115
|
meerschaum/api/resources/static/css/styles.css,sha256=dHcCtRUzs8kJhpG6d4gusROLSe9AFkUitybvgFmEDvI,81
|
116
116
|
meerschaum/api/resources/static/css/xterm.css,sha256=gy8_LGA7Q61DUf8ElwFQzHqHMBQnbbEmpgZcbdgeSHI,5383
|
@@ -144,17 +144,17 @@ meerschaum/api/routes/_webterm.py,sha256=TviHMz0_pLnby7dZW76y3mt-40Cq3VGFItSVcBi
|
|
144
144
|
meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
|
145
145
|
meerschaum/config/__init__.py,sha256=IZLzkI7jBycfmHSR6R_WG3eBe0Uv53c-CI_QqNf4lnw,12966
|
146
146
|
meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
|
147
|
-
meerschaum/config/_default.py,sha256=
|
147
|
+
meerschaum/config/_default.py,sha256=AHbSwc27XkL8rxvtMAHo1MXNWZlXvQiSXjN7ifl8anE,8141
|
148
148
|
meerschaum/config/_edit.py,sha256=WCdt7BSspPytH-NiPS1kpCZxXDDG7VbOu0H1AnMtwlw,9177
|
149
149
|
meerschaum/config/_formatting.py,sha256=SXUU0QFAlO_eIZjyodXQGSrjg-mVkL2qXuQwxqqdJps,6746
|
150
150
|
meerschaum/config/_jobs.py,sha256=gS_4mMGdmVP7WB4V5Sz8kYP0HmhWcMY2jSWGR7jX6cw,1279
|
151
151
|
meerschaum/config/_patch.py,sha256=qCv1LqZSDUI8mbaxcoKfmR-XI4Dmtz3Kzgsv1XFDhUo,1569
|
152
152
|
meerschaum/config/_paths.py,sha256=QAJrcBQ05RJFZmPufezr_Grb1Wwr9y69pKFude0DJoE,13450
|
153
153
|
meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6wLs,1220
|
154
|
-
meerschaum/config/_read_config.py,sha256=
|
154
|
+
meerschaum/config/_read_config.py,sha256=Y4O-eozH94FsucqLWXb5hS57RLPMHsLUQe7a24doi0o,16231
|
155
155
|
meerschaum/config/_shell.py,sha256=46_m49Txc5q1rGfCgO49ca48BODx45DQJi8D0zz1R18,4245
|
156
156
|
meerschaum/config/_sync.py,sha256=nN5bLCHU8sFDdlPi7pQXuRVFcX457rZjOiALTvqRS_E,4332
|
157
|
-
meerschaum/config/_version.py,sha256=
|
157
|
+
meerschaum/config/_version.py,sha256=XrRWEz4obAp-68XTdUNX77n1AbwreUwJo5DKP37xW8M,71
|
158
158
|
meerschaum/config/environment.py,sha256=hTyjPLrGp3R4sytg_Jqv4TnCVI1WdmbX2YoRBCWSNt8,8277
|
159
159
|
meerschaum/config/paths.py,sha256=JjibeGN3YAdSNceRwsd42aNmeUrIgM6ndzC8qZAmNI0,621
|
160
160
|
meerschaum/config/static.py,sha256=92fSGxoHFDOK9GEsN8NVbAEh9W7-eZ1BS6thyEqcjeI,359
|
@@ -213,7 +213,7 @@ meerschaum/core/__init__.py,sha256=Qx0s4KANuYCjTCHEaE70cfgCPxiYPPkr9DnmCTw33Z0,2
|
|
213
213
|
meerschaum/core/Pipe/__init__.py,sha256=5ibU7Cnz3vLsKtfVINkmR4maNE_jOdX6bA4ZpyIm_Pc,19979
|
214
214
|
meerschaum/core/Pipe/_attributes.py,sha256=ww6P90OYt-hFGRxznSfx-uy1ecor1YgwvbIBvtu-5fg,32457
|
215
215
|
meerschaum/core/Pipe/_bootstrap.py,sha256=4RLDD25BvqyukHhejTIJFaECOvCgZk6tjtNQfS9qgA8,8150
|
216
|
-
meerschaum/core/Pipe/_cache.py,sha256=
|
216
|
+
meerschaum/core/Pipe/_cache.py,sha256=4nCSPG0J3UW-DPpdgFYfv11gtAjtlpxA4BbPOioBScU,15690
|
217
217
|
meerschaum/core/Pipe/_clear.py,sha256=vCv4imPcMVdJXWwArOcnNlxEOk5HPOHSDZ9omrexzGc,1972
|
218
218
|
meerschaum/core/Pipe/_copy.py,sha256=YDclAapf_spm9phpFr4-CALyYyw7nUsyKyiaLM1cnm4,2965
|
219
219
|
meerschaum/core/Pipe/_data.py,sha256=HPNY5QTZstEd8Mq7pF9i_obl8ir9mTICtHyjY0ecRT4,27732
|
@@ -242,7 +242,7 @@ meerschaum/models/__init__.py,sha256=9OCElgSTRzgqAIpi_FSUzTAVJtUwOIi71BGFsqkn6PU
|
|
242
242
|
meerschaum/models/pipes.py,sha256=vGSGm5UuyfwfPDqM9iq-PjFeiGrWYW52bJAKNZ4pcHs,7839
|
243
243
|
meerschaum/models/tokens.py,sha256=57cFisjhx47EFbJLfsp8iHX8-qZiRY8ztFWahylWOJQ,1067
|
244
244
|
meerschaum/models/users.py,sha256=E1ambl2g6f2tdnLkwAquyqjvflrb2AMiVhI9nXXHYR0,683
|
245
|
-
meerschaum/plugins/__init__.py,sha256=
|
245
|
+
meerschaum/plugins/__init__.py,sha256=3ButbAcVQVdOlgai7kEvid7TYMNdDW-zqRbEL0Ka2C8,35100
|
246
246
|
meerschaum/plugins/bootstrap.py,sha256=sSvdh2g78AYwTTNMTdHw62Nj2v95pmbd77HFznuErUE,27728
|
247
247
|
meerschaum/utils/__init__.py,sha256=QrK1K9hIbPCRCM5k2nZGFqGnrqhA0Eh-iSmCU7FG6Cs,612
|
248
248
|
meerschaum/utils/_get_pipes.py,sha256=TbV77VjQ9qqCLOy06-hlnfQI_hS6PTcXkbO7aQ2csdM,13275
|
@@ -251,7 +251,7 @@ meerschaum/utils/debug.py,sha256=zBYxcLJ5Ymzz1J5BVv7DXAZ7CWd6vYN9uFFdWKmny9U,433
|
|
251
251
|
meerschaum/utils/interactive.py,sha256=t-6jWozXSqL7lYGDHuwiOjTgr-UKhdcg61q_eR5mikI,3196
|
252
252
|
meerschaum/utils/misc.py,sha256=792Ejz6FYrCoqTiyeWnC4n8t3-wcGXfJv5InSQIKGlM,50451
|
253
253
|
meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRUc,1006
|
254
|
-
meerschaum/utils/pipes.py,sha256=
|
254
|
+
meerschaum/utils/pipes.py,sha256=5HgHmZdt0UxcAF5VATF9BXJEqOOhn1CoBbDjB2XBltI,6340
|
255
255
|
meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
|
256
256
|
meerschaum/utils/process.py,sha256=Y7yk7b-OEADd28E40ffvIGLS3shi4-e604YWX5aFUDo,8214
|
257
257
|
meerschaum/utils/prompt.py,sha256=NmbSRJyrapH7UKMV1Ry_LIjj2POVTpNCLS2QeIogge0,19740
|
@@ -279,11 +279,11 @@ meerschaum/utils/packages/_packages.py,sha256=KWVfxsm-6ZdffpskIjHPki6wSQvf0LK9MW
|
|
279
279
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
280
280
|
meerschaum/utils/venv/_Venv.py,sha256=dF-FqP7Boq-g-anj2Ps-UkTOL2qJtxY3bdz0HWF2zT8,3726
|
281
281
|
meerschaum/utils/venv/__init__.py,sha256=_mabNYZwj5_XQCsdo8sED4HY-1q5s-3em6Bml7bc4BE,27301
|
282
|
-
meerschaum-3.0.
|
283
|
-
meerschaum-3.0.
|
284
|
-
meerschaum-3.0.
|
285
|
-
meerschaum-3.0.
|
286
|
-
meerschaum-3.0.
|
287
|
-
meerschaum-3.0.
|
288
|
-
meerschaum-3.0.
|
289
|
-
meerschaum-3.0.
|
282
|
+
meerschaum-3.0.3.dist-info/licenses/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
283
|
+
meerschaum-3.0.3.dist-info/licenses/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
284
|
+
meerschaum-3.0.3.dist-info/METADATA,sha256=eMbvC9Rky4GLopLIiwdpe3DtcdyIlulBYkpODkZqHjA,25325
|
285
|
+
meerschaum-3.0.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
286
|
+
meerschaum-3.0.3.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
287
|
+
meerschaum-3.0.3.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
288
|
+
meerschaum-3.0.3.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
289
|
+
meerschaum-3.0.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|