meerschaum 2.2.4__py3-none-any.whl → 2.2.5.dev2__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/arguments/_parse_arguments.py +23 -14
- meerschaum/_internal/arguments/_parser.py +4 -1
- meerschaum/_internal/entry.py +2 -4
- meerschaum/_internal/shell/Shell.py +0 -3
- meerschaum/actions/__init__.py +5 -1
- meerschaum/actions/backup.py +43 -0
- meerschaum/actions/bootstrap.py +32 -7
- meerschaum/actions/delete.py +62 -0
- meerschaum/actions/edit.py +98 -15
- meerschaum/actions/python.py +44 -2
- meerschaum/actions/show.py +26 -0
- meerschaum/actions/uninstall.py +24 -29
- meerschaum/api/_oauth2.py +17 -0
- meerschaum/api/routes/_login.py +23 -7
- meerschaum/config/__init__.py +16 -6
- meerschaum/config/_edit.py +1 -1
- meerschaum/config/_paths.py +3 -0
- meerschaum/config/_version.py +1 -1
- meerschaum/config/stack/__init__.py +3 -1
- meerschaum/core/Pipe/_fetch.py +25 -21
- meerschaum/core/Pipe/_sync.py +89 -59
- meerschaum/plugins/bootstrap.py +333 -0
- meerschaum/utils/daemon/Daemon.py +14 -3
- meerschaum/utils/daemon/FileDescriptorInterceptor.py +21 -14
- meerschaum/utils/daemon/RotatingFile.py +21 -18
- meerschaum/utils/formatting/__init__.py +22 -10
- meerschaum/utils/packages/_packages.py +1 -1
- meerschaum/utils/prompt.py +64 -21
- meerschaum/utils/yaml.py +32 -1
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/METADATA +5 -2
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/RECORD +37 -35
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/WHEEL +1 -1
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/LICENSE +0 -0
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/NOTICE +0 -0
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/entry_points.txt +0 -0
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/top_level.txt +0 -0
- {meerschaum-2.2.4.dist-info → meerschaum-2.2.5.dev2.dist-info}/zip-safe +0 -0
meerschaum/utils/prompt.py
CHANGED
@@ -61,6 +61,7 @@ def prompt(
|
|
61
61
|
from meerschaum.utils.formatting import colored, ANSI, CHARSET, highlight_pipes, fill_ansi
|
62
62
|
from meerschaum.config import get_config
|
63
63
|
from meerschaum.config.static import _static_config
|
64
|
+
from meerschaum.utils.misc import filter_keywords
|
64
65
|
noask = check_noask(noask)
|
65
66
|
if not noask:
|
66
67
|
prompt_toolkit = attempt_import('prompt_toolkit')
|
@@ -101,7 +102,7 @@ def prompt(
|
|
101
102
|
prompt_toolkit.prompt(
|
102
103
|
prompt_toolkit.formatted_text.ANSI(question),
|
103
104
|
wrap_lines = wrap_lines,
|
104
|
-
**kw
|
105
|
+
**filter_keywords(prompt_toolkit.prompt, **kw)
|
105
106
|
) if not noask else ''
|
106
107
|
)
|
107
108
|
if noask:
|
@@ -192,10 +193,11 @@ def yes_no(
|
|
192
193
|
|
193
194
|
def choose(
|
194
195
|
question: str,
|
195
|
-
choices: List[str],
|
196
|
-
default:
|
196
|
+
choices: List[Union[str, Tuple[str, str]]],
|
197
|
+
default: Union[str, List[str], None] = None,
|
197
198
|
numeric: bool = True,
|
198
199
|
multiple: bool = False,
|
200
|
+
as_indices: bool = False,
|
199
201
|
delimiter: str = ',',
|
200
202
|
icon: bool = True,
|
201
203
|
warn: bool = True,
|
@@ -210,10 +212,12 @@ def choose(
|
|
210
212
|
question: str
|
211
213
|
The question to be printed.
|
212
214
|
|
213
|
-
choices: List[str]
|
215
|
+
choices: List[Union[str, Tuple[str, str]]
|
214
216
|
A list of options.
|
217
|
+
If an option is a tuple of two strings, the first string is treated as the index
|
218
|
+
and not displayed. In this case, set `as_indices` to `True` to return the index.
|
215
219
|
|
216
|
-
default:
|
220
|
+
default: Union[str, List[str], None], default None
|
217
221
|
If the user declines to enter a choice, return this value.
|
218
222
|
|
219
223
|
numeric: bool, default True
|
@@ -223,6 +227,11 @@ def choose(
|
|
223
227
|
multiple: bool, default False
|
224
228
|
If `True`, allow the user to choose multiple answers separated by `delimiter`.
|
225
229
|
|
230
|
+
as_indices: bool, default False
|
231
|
+
If `True`, return the indices for the choices.
|
232
|
+
If a choice is a tuple of two strings, the first is assumed to be the index.
|
233
|
+
Otherwise the index in the list is returned.
|
234
|
+
|
226
235
|
delimiter: str, default ','
|
227
236
|
If `multiple`, separate answers by this string. Raise a warning if this string is contained
|
228
237
|
in any of the choices.
|
@@ -243,6 +252,7 @@ def choose(
|
|
243
252
|
"""
|
244
253
|
from meerschaum.utils.warnings import warn as _warn
|
245
254
|
from meerschaum.utils.packages import attempt_import
|
255
|
+
from meerschaum.utils.misc import print_options
|
246
256
|
noask = check_noask(noask)
|
247
257
|
|
248
258
|
### Handle empty choices.
|
@@ -254,8 +264,14 @@ def choose(
|
|
254
264
|
if isinstance(default, list):
|
255
265
|
multiple = True
|
256
266
|
|
267
|
+
choices_indices = {}
|
268
|
+
for i, c in enumerate(choices):
|
269
|
+
if isinstance(c, tuple):
|
270
|
+
i, c = c
|
271
|
+
choices_indices[i] = c
|
272
|
+
|
257
273
|
def _enforce_default(d):
|
258
|
-
if d is not None and d not in choices and warn:
|
274
|
+
if d is not None and d not in choices and d not in choices_indices and warn:
|
259
275
|
_warn(
|
260
276
|
f"Default choice '{default}' is not contained in the choices {choices}. "
|
261
277
|
+ "Setting numeric = False.",
|
@@ -271,16 +287,18 @@ def choose(
|
|
271
287
|
break
|
272
288
|
|
273
289
|
_default = default
|
274
|
-
_choices =
|
290
|
+
_choices = list(choices_indices.values())
|
275
291
|
if multiple:
|
276
|
-
question += f"\n Enter your choices, separated by '{delimiter}'
|
292
|
+
question += f"\n Enter your choices, separated by '{delimiter}'.\n"
|
277
293
|
|
278
294
|
altered_choices = {}
|
279
295
|
altered_indices = {}
|
280
296
|
altered_default_indices = {}
|
281
297
|
delim_replacement = '_' if delimiter != '_' else '-'
|
282
298
|
can_strip_start_spaces, can_strip_end_spaces = True, True
|
283
|
-
for c in
|
299
|
+
for i, c in choices_indices.items():
|
300
|
+
if isinstance(c, tuple):
|
301
|
+
key, c = c
|
284
302
|
if can_strip_start_spaces and c.startswith(' '):
|
285
303
|
can_strip_start_spaces = False
|
286
304
|
if can_strip_end_spaces and c.endswith(' '):
|
@@ -301,8 +319,8 @@ def choose(
|
|
301
319
|
default[i] = new_d
|
302
320
|
|
303
321
|
### Check if the choices have the delimiter.
|
304
|
-
for i, c in
|
305
|
-
if delimiter in c and warn:
|
322
|
+
for i, c in choices_indices.items():
|
323
|
+
if delimiter in c and not numeric and warn:
|
306
324
|
_warn(
|
307
325
|
f"The delimiter '{delimiter}' is contained within choice '{c}'.\n"
|
308
326
|
+ f"Replacing the string '{delimiter}' with '{delim_replacement}' in "
|
@@ -313,34 +331,53 @@ def choose(
|
|
313
331
|
altered_choices[new_c] = c
|
314
332
|
altered_indices[i] = new_c
|
315
333
|
for i, new_c in altered_indices.items():
|
316
|
-
|
334
|
+
choices_indices[i] = new_c
|
317
335
|
default = delimiter.join(default) if isinstance(default, list) else default
|
318
336
|
|
337
|
+
question_options = []
|
319
338
|
if numeric:
|
320
339
|
_choices = [str(i + 1) for i, c in enumerate(choices)]
|
321
340
|
_default = ''
|
322
341
|
if default is not None:
|
323
342
|
for d in (default.split(delimiter) if multiple else [default]):
|
343
|
+
if d not in choices and d in choices_indices:
|
344
|
+
d_index = d
|
345
|
+
d_value = choices_indices[d]
|
346
|
+
for _i, _option in enumerate(choices):
|
347
|
+
if (
|
348
|
+
isinstance(_option, tuple) and (
|
349
|
+
_option[1] == d_value
|
350
|
+
or
|
351
|
+
_option[0] == d_index
|
352
|
+
)
|
353
|
+
) or d_index == _i:
|
354
|
+
d = _option
|
355
|
+
|
324
356
|
_d = str(choices.index(d) + 1)
|
325
357
|
_default += _d + delimiter
|
326
358
|
_default = _default[:-1 * len(delimiter)]
|
327
|
-
question += '\n'
|
359
|
+
# question += '\n'
|
328
360
|
choices_digits = len(str(len(choices)))
|
329
|
-
for i, c in enumerate(
|
330
|
-
|
361
|
+
for i, c in enumerate(choices_indices.values()):
|
362
|
+
question_options.append(
|
363
|
+
f" {i + 1}. "
|
364
|
+
+ (" " * (choices_digits - len(str(i + 1))))
|
365
|
+
+ f"{c}\n"
|
366
|
+
)
|
331
367
|
default_tuple = (_default, default) if default is not None else None
|
332
368
|
else:
|
333
369
|
default_tuple = default
|
334
|
-
question += '\n'
|
335
|
-
for c in
|
336
|
-
|
370
|
+
# question += '\n'
|
371
|
+
for c in choices_indices.values():
|
372
|
+
question_options.append(f"{c}\n")
|
337
373
|
|
338
374
|
if 'completer' not in kw:
|
339
375
|
WordCompleter = attempt_import('prompt_toolkit.completion').WordCompleter
|
340
|
-
kw['completer'] = WordCompleter(
|
376
|
+
kw['completer'] = WordCompleter(choices_indices.values(), sentence=True)
|
341
377
|
|
342
378
|
valid = False
|
343
379
|
while not valid:
|
380
|
+
print_options(question_options, header='')
|
344
381
|
answer = prompt(
|
345
382
|
question,
|
346
383
|
icon = icon,
|
@@ -383,7 +420,10 @@ def choose(
|
|
383
420
|
if not numeric:
|
384
421
|
return answer
|
385
422
|
try:
|
386
|
-
|
423
|
+
_answer = choices[int(answer) - 1]
|
424
|
+
if as_indices and isinstance(choice, tuple):
|
425
|
+
return _answer[0]
|
426
|
+
return _answer
|
387
427
|
except Exception as e:
|
388
428
|
_warn(f"Could not cast answer '{answer}' to an integer.", stacklevel=3)
|
389
429
|
|
@@ -393,7 +433,10 @@ def choose(
|
|
393
433
|
for a in answers:
|
394
434
|
try:
|
395
435
|
_answer = choices[int(a) - 1]
|
396
|
-
|
436
|
+
_answer_to_return = altered_choices.get(_answer, _answer)
|
437
|
+
if isinstance(_answer_to_return, tuple) and as_indices:
|
438
|
+
_answer_to_return = _answer_to_return[0]
|
439
|
+
_answers.append(_answer_to_return)
|
397
440
|
except Exception as e:
|
398
441
|
_warn(f"Could not cast answer '{a}' to an integer.", stacklevel=3)
|
399
442
|
return _answers
|
meerschaum/utils/yaml.py
CHANGED
@@ -18,6 +18,7 @@ _lib = None
|
|
18
18
|
_import_name = 'yaml'
|
19
19
|
|
20
20
|
_yaml = None
|
21
|
+
_dumper = None
|
21
22
|
_locks = {
|
22
23
|
'_lib': Lock(),
|
23
24
|
'_yaml': Lock(),
|
@@ -46,7 +47,7 @@ class yaml:
|
|
46
47
|
"""
|
47
48
|
Wrapper around `PyYAML` and `ruamel.yaml` so that we may switch between implementations.
|
48
49
|
"""
|
49
|
-
global _yaml, _lib
|
50
|
+
global _yaml, _lib, _dumper
|
50
51
|
if _import_name is None:
|
51
52
|
error(f"No YAML library declared.")
|
52
53
|
with _locks['_lib']:
|
@@ -85,6 +86,7 @@ class yaml:
|
|
85
86
|
and packaging_version.parse(_yaml.__version__) >= packaging_version.parse('6.0')
|
86
87
|
):
|
87
88
|
_args += [_yaml.Loader]
|
89
|
+
|
88
90
|
return _yaml.load(*_args, **filter_keywords(_yaml.load, **kw))
|
89
91
|
|
90
92
|
|
@@ -98,7 +100,36 @@ class yaml:
|
|
98
100
|
if stream is None and _import_name == 'ruamel.yaml':
|
99
101
|
stream = _lib.compat.StringIO()
|
100
102
|
get_string = True
|
103
|
+
|
104
|
+
if _import_name == 'yaml' and 'Dumper' not in kw:
|
105
|
+
kw['Dumper'] = get_dumper_class()
|
106
|
+
|
101
107
|
result = _yaml.dump(data, stream, **filter_keywords(_yaml.dump, **kw))
|
102
108
|
if get_string:
|
103
109
|
return stream.getvalue()
|
104
110
|
return result
|
111
|
+
|
112
|
+
|
113
|
+
def get_dumper_class():
|
114
|
+
"""
|
115
|
+
Return the dumper class to use when writing.
|
116
|
+
Only supports `yaml`.
|
117
|
+
"""
|
118
|
+
global _dumper
|
119
|
+
if _dumper is not None:
|
120
|
+
return _dumper
|
121
|
+
|
122
|
+
if _import_name != 'yaml':
|
123
|
+
return None
|
124
|
+
|
125
|
+
class CustomDumper(_yaml.Dumper):
|
126
|
+
"""
|
127
|
+
Add an extra line break when writing.
|
128
|
+
"""
|
129
|
+
def write_line_break(self, data=None):
|
130
|
+
if len(self.indents) == 1:
|
131
|
+
super(CustomDumper, self).write_line_break(data)
|
132
|
+
super(CustomDumper, self).write_line_break(data)
|
133
|
+
|
134
|
+
_dumper = CustomDumper
|
135
|
+
return _dumper
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: meerschaum
|
3
|
-
Version: 2.2.
|
3
|
+
Version: 2.2.5.dev2
|
4
4
|
Summary: Sync Time-Series Pipes with Meerschaum
|
5
5
|
Home-page: https://meerschaum.io
|
6
6
|
Author: Bennett Meares
|
@@ -68,6 +68,7 @@ Requires-Dist: python-dateutil >=2.7.5 ; extra == 'api'
|
|
68
68
|
Requires-Dist: requests >=2.23.0 ; extra == 'api'
|
69
69
|
Requires-Dist: binaryornot >=0.4.4 ; extra == 'api'
|
70
70
|
Requires-Dist: pyvim >=3.0.2 ; extra == 'api'
|
71
|
+
Requires-Dist: ptpython >=3.0.27 ; extra == 'api'
|
71
72
|
Requires-Dist: aiofiles >=0.6.0 ; extra == 'api'
|
72
73
|
Requires-Dist: packaging >=21.3.0 ; extra == 'api'
|
73
74
|
Requires-Dist: prompt-toolkit >=3.0.39 ; extra == 'api'
|
@@ -105,7 +106,6 @@ Requires-Dist: mycli >=1.23.2 ; extra == 'cli'
|
|
105
106
|
Requires-Dist: litecli >=1.5.0 ; extra == 'cli'
|
106
107
|
Requires-Dist: mssql-cli >=1.0.0 ; extra == 'cli'
|
107
108
|
Requires-Dist: gadwall >=0.2.0 ; extra == 'cli'
|
108
|
-
Requires-Dist: ptpython >=3.0.27 ; extra == 'cli'
|
109
109
|
Provides-Extra: core
|
110
110
|
Requires-Dist: wheel >=0.34.2 ; extra == 'core'
|
111
111
|
Requires-Dist: setuptools >=63.3.0 ; extra == 'core'
|
@@ -118,6 +118,7 @@ Requires-Dist: python-dateutil >=2.7.5 ; extra == 'core'
|
|
118
118
|
Requires-Dist: requests >=2.23.0 ; extra == 'core'
|
119
119
|
Requires-Dist: binaryornot >=0.4.4 ; extra == 'core'
|
120
120
|
Requires-Dist: pyvim >=3.0.2 ; extra == 'core'
|
121
|
+
Requires-Dist: ptpython >=3.0.27 ; extra == 'core'
|
121
122
|
Requires-Dist: aiofiles >=0.6.0 ; extra == 'core'
|
122
123
|
Requires-Dist: packaging >=21.3.0 ; extra == 'core'
|
123
124
|
Requires-Dist: prompt-toolkit >=3.0.39 ; extra == 'core'
|
@@ -204,6 +205,7 @@ Requires-Dist: python-dateutil >=2.7.5 ; extra == 'full'
|
|
204
205
|
Requires-Dist: requests >=2.23.0 ; extra == 'full'
|
205
206
|
Requires-Dist: binaryornot >=0.4.4 ; extra == 'full'
|
206
207
|
Requires-Dist: pyvim >=3.0.2 ; extra == 'full'
|
208
|
+
Requires-Dist: ptpython >=3.0.27 ; extra == 'full'
|
207
209
|
Requires-Dist: aiofiles >=0.6.0 ; extra == 'full'
|
208
210
|
Requires-Dist: packaging >=21.3.0 ; extra == 'full'
|
209
211
|
Requires-Dist: prompt-toolkit >=3.0.39 ; extra == 'full'
|
@@ -288,6 +290,7 @@ Requires-Dist: python-dateutil >=2.7.5 ; extra == 'sql'
|
|
288
290
|
Requires-Dist: requests >=2.23.0 ; extra == 'sql'
|
289
291
|
Requires-Dist: binaryornot >=0.4.4 ; extra == 'sql'
|
290
292
|
Requires-Dist: pyvim >=3.0.2 ; extra == 'sql'
|
293
|
+
Requires-Dist: ptpython >=3.0.27 ; extra == 'sql'
|
291
294
|
Requires-Dist: aiofiles >=0.6.0 ; extra == 'sql'
|
292
295
|
Requires-Dist: packaging >=21.3.0 ; extra == 'sql'
|
293
296
|
Requires-Dist: prompt-toolkit >=3.0.39 ; extra == 'sql'
|
@@ -1,10 +1,10 @@
|
|
1
1
|
meerschaum/__init__.py,sha256=mw_PhxT7155SW8d_S51T4-WTibL5g205CwMa3qX8qyA,1487
|
2
2
|
meerschaum/__main__.py,sha256=Q43yra6APe5CdhDp9ngaorUjs8ZoabeYnMa6C5kQchA,2763
|
3
3
|
meerschaum/_internal/__init__.py,sha256=ilC7utfKtin7GAvuN34fKyUQYfPyqH0Mm3MJF5iyEf4,169
|
4
|
-
meerschaum/_internal/entry.py,sha256=
|
4
|
+
meerschaum/_internal/entry.py,sha256=TNqt79kfNgXH-7Pi75Jus4Osi9y776ZVptFuvrs4wWY,5680
|
5
5
|
meerschaum/_internal/arguments/__init__.py,sha256=HFciFQgo2ZOT19Mo6CpLhPYlpLYh2sNn1C9Lo7NMADc,519
|
6
|
-
meerschaum/_internal/arguments/_parse_arguments.py,sha256=
|
7
|
-
meerschaum/_internal/arguments/_parser.py,sha256=
|
6
|
+
meerschaum/_internal/arguments/_parse_arguments.py,sha256=ZPkJamB6noJAEpG_cyZGVYu6hXxtQ7H7c-j7gq3Csi8,10405
|
7
|
+
meerschaum/_internal/arguments/_parser.py,sha256=9PsfyiqQHpmZPKRryCti8qdUCSKD_ncBZ26iVgcOdzE,13796
|
8
8
|
meerschaum/_internal/docs/__init__.py,sha256=ZQYHWo6n0kfLLkyG36YXqTYvv2Pc7it5HZHMylT6cBA,126
|
9
9
|
meerschaum/_internal/docs/index.py,sha256=iWMe1rOVKvaP84q0tEzqwy-Dtgojg9cFmBntgPQBHu0,7076
|
10
10
|
meerschaum/_internal/gui/__init__.py,sha256=KF6Opae0aBOjIndMZ2txoPs7ozCXRlR-lcTsicLO7fc,1313
|
@@ -12,7 +12,7 @@ meerschaum/_internal/gui/app/__init__.py,sha256=rKUa8hHk6Fai-PDF61tQcpT1myxKcfmv
|
|
12
12
|
meerschaum/_internal/gui/app/_windows.py,sha256=-VHdjTzA3V596fVqnbmTxemONSp_80-sTNJ0CTB8FwU,2632
|
13
13
|
meerschaum/_internal/gui/app/actions.py,sha256=rx37qXf3uoa7Ou0n1cISqNFZNL0nr4wO7vSUmWO8f2E,935
|
14
14
|
meerschaum/_internal/gui/app/pipes.py,sha256=4nAQ0rrHb_2bNgDF0Ru2YlbPaCDDzAl5beOGU4Af-4A,1596
|
15
|
-
meerschaum/_internal/shell/Shell.py,sha256=
|
15
|
+
meerschaum/_internal/shell/Shell.py,sha256=JgxEg4gnxUS8R8HdFZ4k49KXvTGoy3dRQcEi4dmjw9I,33111
|
16
16
|
meerschaum/_internal/shell/ShellCompleter.py,sha256=bbG-mExNXO4pltWBOXdbMp8P2wLgy8_BgipIr5aGp5s,3114
|
17
17
|
meerschaum/_internal/shell/ValidAutoSuggest.py,sha256=bARjOWMidz0dvMelLUe6yRPto5l3gcEHYHqFDjoh22I,1280
|
18
18
|
meerschaum/_internal/shell/__init__.py,sha256=vXQoQPEVlYiUYai1b5AwQAlTnja6A2cSABnqXhzlS7I,281
|
@@ -20,38 +20,39 @@ meerschaum/_internal/shell/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
|
|
20
20
|
meerschaum/_internal/term/TermPageHandler.py,sha256=Rt5S47Pr_3HLJc8xIXpZUczYE_Dw2qT8qwf1jZFtUHQ,520
|
21
21
|
meerschaum/_internal/term/__init__.py,sha256=LqTySBfHYnOtHGYCWfovcxV4FnZdON2BPYp0UbgI1QI,1640
|
22
22
|
meerschaum/_internal/term/tools.py,sha256=dXVAimKD-Yv2fg2WOTr0YGBY7XDKjQqw-RizcS65YVI,727
|
23
|
-
meerschaum/actions/__init__.py,sha256=
|
23
|
+
meerschaum/actions/__init__.py,sha256=ZUdQk6FvuMqyEvLCP-RiDDlIK4NwkqLRgFZSKq04qq4,11440
|
24
24
|
meerschaum/actions/api.py,sha256=mWhv4bn3Ap17_Gqf2Cx9bAsHKG-Zhy072pBbNzHLEJc,12756
|
25
|
-
meerschaum/actions/
|
25
|
+
meerschaum/actions/backup.py,sha256=MhdNEo7ptOdFpR-L0o9Z590hBmKeqHsSx64GPKhx9e8,1230
|
26
|
+
meerschaum/actions/bootstrap.py,sha256=Tsv3bL63mb6zDSCpxl3Mq05YulwbDTGNNZr3ttVmksA,14119
|
26
27
|
meerschaum/actions/clear.py,sha256=OoFZE0bK5m8s3GLNZcixuVT0DMj1izXVxGCATcmUGbI,4851
|
27
28
|
meerschaum/actions/copy.py,sha256=8g3ANXfVdvuyaoXcZjgTg3BxHTOhHGrzVDOOsTBrpSU,6213
|
28
29
|
meerschaum/actions/deduplicate.py,sha256=puYyxeFYEUy1Sd2IOcZB2e6MrNxAZl2bTLmNzFDkCiw,1167
|
29
|
-
meerschaum/actions/delete.py,sha256=
|
30
|
+
meerschaum/actions/delete.py,sha256=RDkIQEnnN8t52dMAJpxoQ7LN-pzH7UAfGF8yT5oNiIw,17325
|
30
31
|
meerschaum/actions/drop.py,sha256=Hd5h4rrWd7qL2rTqglsTonUsEoH7qQlsfqNFSHGeqr0,2453
|
31
|
-
meerschaum/actions/edit.py,sha256=
|
32
|
+
meerschaum/actions/edit.py,sha256=93_mlZhPfiErs9TJ3_Xf9KYxIopaR86nQXJlZsKNNok,11752
|
32
33
|
meerschaum/actions/install.py,sha256=akzzgsvy5yqUFuUqzSMG4eBKARY2iSnL3n_BiaNcM58,7431
|
33
34
|
meerschaum/actions/login.py,sha256=fNgsgkrFCn9wBQJY50SQhz2PwsN_TvEYYHnXK3JG4ig,4206
|
34
35
|
meerschaum/actions/os.py,sha256=dtoppoBhLzW3rLNF0SFovEfNxA4WJWt_9WrOGlS5KbA,2251
|
35
36
|
meerschaum/actions/pause.py,sha256=kDK0UMm90TuohFEG5Gugl3PEbuqGua-ghidqvgYShoc,3909
|
36
|
-
meerschaum/actions/python.py,sha256=
|
37
|
+
meerschaum/actions/python.py,sha256=hOtA_opi6ulF71XP5p0V5zXsLD7CCdSFWhiBanFevtw,4539
|
37
38
|
meerschaum/actions/register.py,sha256=l_21LWZCzKwJVex_xAXECC5WVW1VEuIX9HSp7CuyCwA,11326
|
38
39
|
meerschaum/actions/reload.py,sha256=gMXeFBGVfyQ7uhKhYf6bLaDMD0fLPcA9BrLBSiuvWIc,508
|
39
40
|
meerschaum/actions/setup.py,sha256=KkAGWcgwzl_L6A19fTmTX1KtBjW2FwD8QenLjPy0mQQ,3205
|
40
41
|
meerschaum/actions/sh.py,sha256=fLfTJaacKu4sjLTRqEzzYlT2WbbdZBEczsKb6F-qAek,2026
|
41
|
-
meerschaum/actions/show.py,sha256=
|
42
|
+
meerschaum/actions/show.py,sha256=S6J8bM2Jc9mzi31Dp_qqZLVqsRswPemWYzQc4wSzSr4,29631
|
42
43
|
meerschaum/actions/sql.py,sha256=wYofwk1vGO96U2ncigGEfMtYMZeprz2FR1PRRZhkAPI,4311
|
43
44
|
meerschaum/actions/stack.py,sha256=WMRMebyYwZGNlbnj6Ja09qvCSDNteFJOTa8_joHlnVo,5886
|
44
45
|
meerschaum/actions/start.py,sha256=9Ej3Hk7qXfbrBaQq17KirTII_4Pa-BWSdrkutMnLA3k,18352
|
45
46
|
meerschaum/actions/stop.py,sha256=KTBadAmJ6SbReqlltkwfqZW6EryB4kZXupl0ZyInI0Q,4311
|
46
47
|
meerschaum/actions/sync.py,sha256=10uPREu3HBVgtzakVxhCegQOz_mistABJlsNNCMgywY,17518
|
47
48
|
meerschaum/actions/tag.py,sha256=SJf5qFW0ccLXjqlTdkK_0MCcrCMdg6xhYrhKdco0hdA,3053
|
48
|
-
meerschaum/actions/uninstall.py,sha256=
|
49
|
+
meerschaum/actions/uninstall.py,sha256=tBXhdXggSieGEQe4EPGxpgMK0MZTJCweNvAJ9-59El0,5776
|
49
50
|
meerschaum/actions/upgrade.py,sha256=wepYdvrjSuc2wMd21rbLoxGjlRuXxLVH0GOD9OhKB48,6658
|
50
51
|
meerschaum/actions/verify.py,sha256=tY5slGpHiWiE0v9TDnjbmxSKn86zBnu9WBpixUgKNQU,4885
|
51
52
|
meerschaum/api/__init__.py,sha256=oOYwNnkXM2s-h52EYnN2NGPfrlaQh6D4-zmHa7uPLG0,7450
|
52
53
|
meerschaum/api/_chain.py,sha256=h8-WXUGXX6AqzdALfsBC5uv0FkAcLdHJXCGzqzuq89k,875
|
53
54
|
meerschaum/api/_events.py,sha256=NrjiabEr7rmHMfxnX07DOGzr9sPiEbRkFqPjuA_8Zx8,1603
|
54
|
-
meerschaum/api/_oauth2.py,sha256=
|
55
|
+
meerschaum/api/_oauth2.py,sha256=o4ub9gMLvJ5ewxuCbk78kA8c6MOHV4FDxURupH1lT7U,1645
|
55
56
|
meerschaum/api/_websockets.py,sha256=OmrSDGx3xGlfP5XXeLEyYW6-Y3iRUcB-xSqL3RWsjqQ,1609
|
56
57
|
meerschaum/api/dash/__init__.py,sha256=yr4zR7uFPlLFc_lDpwa2rCM1h9ZWGiu5-2XhHcM-5f8,2252
|
57
58
|
meerschaum/api/dash/actions.py,sha256=eUClPPdNVNSCtyq8Ecr1saasxj5VBgd1gcXejvQxXEc,9418
|
@@ -115,7 +116,7 @@ meerschaum/api/routes/__init__.py,sha256=vEXVwhvhVlGf0SFBjjCpQiYM4mMoxH3oywBgVOa
|
|
115
116
|
meerschaum/api/routes/_actions.py,sha256=nPLJlhnl0kDjsjFiBmUub63fe1N1_4cVimmlxtInsK0,2240
|
116
117
|
meerschaum/api/routes/_connectors.py,sha256=NNbcn5xWhKqw2PqueSEaqRaZ95hFGDKazG5lE7gsssc,1849
|
117
118
|
meerschaum/api/routes/_index.py,sha256=QI6CBo6pI2Zi0a6fJHDjZfiLa9f4okb0BGe3A_JD0kM,578
|
118
|
-
meerschaum/api/routes/_login.py,sha256=
|
119
|
+
meerschaum/api/routes/_login.py,sha256=EozEq592WA81x5VI8WU4-4S2w4C-w2oL45UZFbETzzw,2466
|
119
120
|
meerschaum/api/routes/_misc.py,sha256=05--9ZVFeaCgZrHER2kA3SYdK4TyfkEXOCjLvPbum-w,2469
|
120
121
|
meerschaum/api/routes/_pipes.py,sha256=d1JCu334xqjzvK1r2NzBxFqYScLKDATUjGWZkrjLTKU,21677
|
121
122
|
meerschaum/api/routes/_plugins.py,sha256=vR6-uTJraY1YEJMuRvds1-xFLB2mexxnp2dJwN_0rVo,6216
|
@@ -123,23 +124,23 @@ meerschaum/api/routes/_users.py,sha256=SfAkZFKrKnGjpzj8SFIKzPemzQJOH3oB72h19EaUv
|
|
123
124
|
meerschaum/api/routes/_version.py,sha256=2t-nw_9IxCVZCNEar0LOwmut2zsClRVHjiOOUx16cu0,825
|
124
125
|
meerschaum/api/routes/_webterm.py,sha256=7eilgDXckpEc2LyeNmJS5YO6HxlyMkwPnAMWd7eMfJM,3909
|
125
126
|
meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
|
126
|
-
meerschaum/config/__init__.py,sha256=
|
127
|
+
meerschaum/config/__init__.py,sha256=xNEps5IG0b1TrllYdG5GZ_x93sR8b6KlX9sUVdTugDs,11542
|
127
128
|
meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
|
128
129
|
meerschaum/config/_default.py,sha256=J6AWxxXM4mntCdkM6bKIpyQznZ5NuMICmTaurF11J9Q,5275
|
129
|
-
meerschaum/config/_edit.py,sha256=
|
130
|
+
meerschaum/config/_edit.py,sha256=_kabgFbJdI5kcLs-JIsoaTo0JdyxnPnBdrlTyTAgPm8,8236
|
130
131
|
meerschaum/config/_environment.py,sha256=Vv4DLDfc2vKLbCLsMvkQDj77K4kEvHKEBmUBo-wCrgo,4419
|
131
132
|
meerschaum/config/_formatting.py,sha256=RT_oU0OSfUkzeqbY5jvEJwuove_t9sP4MyUb1Px250U,6635
|
132
133
|
meerschaum/config/_jobs.py,sha256=2bEikO48qVSguFS3lrbWz6uiKt_0b3oSRWhwyz8RRDM,1279
|
133
134
|
meerschaum/config/_patch.py,sha256=21N30q1ANmWMDQ-2RUjpMx7KafWfPQ3lKx9rrMqg1s4,1526
|
134
|
-
meerschaum/config/_paths.py,sha256=
|
135
|
+
meerschaum/config/_paths.py,sha256=jov62LjyHQGlDssQ2b_kd4QENWr8UOoKKByuULfkjyo,8418
|
135
136
|
meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6wLs,1220
|
136
137
|
meerschaum/config/_read_config.py,sha256=WFZKIXZMDe_ca0ES7ivgM_mnwShvFxLdoeisT_X5-h0,14720
|
137
138
|
meerschaum/config/_shell.py,sha256=s74cmJl8NrhM_Y1cB_P41_JDUYXV0g4WXnKFZWMtnrY,3551
|
138
139
|
meerschaum/config/_sync.py,sha256=oK2ZujO2T1he08BXCFyiniBUevNGWSQKXLcS_jRv_7Y,4155
|
139
|
-
meerschaum/config/_version.py,sha256=
|
140
|
+
meerschaum/config/_version.py,sha256=EYhjKU-_lntkfeba7JixXzvd1fRvaGeo4UJv29kVR0E,76
|
140
141
|
meerschaum/config/paths.py,sha256=Z7vaOunaEJbVFXiSSz4IthhNOQDI-dhtpi5TpSyrcXg,206
|
141
142
|
meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
142
|
-
meerschaum/config/stack/__init__.py,sha256=
|
143
|
+
meerschaum/config/stack/__init__.py,sha256=Yt7GNzC_hz7iUDZ4gVho_lugJO2DnXgnMtsMG_ReoRg,9114
|
143
144
|
meerschaum/config/stack/grafana/__init__.py,sha256=LNXQw2FvHKrD68RDhqDmi2wJjAHaKw9IWx8rNuyWEPo,2010
|
144
145
|
meerschaum/config/stack/mosquitto/__init__.py,sha256=-OwOjq8KiBoSH_pmgCAAF3Dp3CRD4KgAEdimZSadROs,186
|
145
146
|
meerschaum/config/stack/mosquitto/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -187,16 +188,17 @@ meerschaum/core/Pipe/_delete.py,sha256=1geNp9BgrocXP1gt76dMbnlJWKYFMuSNqPFA4K4-h
|
|
187
188
|
meerschaum/core/Pipe/_drop.py,sha256=uf3MvMkCw9tVfJ2fuo8LqZ4vvMNa3xC3YoFGEuc-hH8,1052
|
188
189
|
meerschaum/core/Pipe/_dtypes.py,sha256=NcfVMJPyyA1VzIJOnPhyL36YTt2IXMRqQy4ZRDySSqg,3694
|
189
190
|
meerschaum/core/Pipe/_edit.py,sha256=ZH2A0ZOpZKsVDnQxKzmXspNQKTEFUhkkZDjwOkmWtaY,8471
|
190
|
-
meerschaum/core/Pipe/_fetch.py,sha256=
|
191
|
+
meerschaum/core/Pipe/_fetch.py,sha256=lhumdeaXBrKRqBO-I5PVbgsxjcUJh0qd7pU1MPL4ExY,5367
|
191
192
|
meerschaum/core/Pipe/_register.py,sha256=Sd5xaAW8H7uLTIoommcKb-6kHPRuHJLWNSbPnt2UbvA,2240
|
192
193
|
meerschaum/core/Pipe/_show.py,sha256=nG50y8eBT9TVuKkRgAKtNDNIxysJvMNxfu__lkL1F9k,1352
|
193
|
-
meerschaum/core/Pipe/_sync.py,sha256=
|
194
|
+
meerschaum/core/Pipe/_sync.py,sha256=tDlg0tDHgZ-yQhVIoJLnQZxFykCbr8dOUxqhiwZ9pRk,28935
|
194
195
|
meerschaum/core/Pipe/_verify.py,sha256=KSnthUzImRLjt9fxyBaLvArqDuOLRpKBfk0tnseJClc,14262
|
195
196
|
meerschaum/core/Plugin/__init__.py,sha256=UXg64EvJPgI1PCxkY_KM02-ZmBm4FZpLPIQR_uSJJDc,137
|
196
197
|
meerschaum/core/User/_User.py,sha256=CApB7Y0QJL6S9QOCCfrG4SbPuPXJ9AsAYQ5pASMP_Aw,6527
|
197
198
|
meerschaum/core/User/__init__.py,sha256=lJ7beIZTG9sO4dAi3367fFBl17dXYEWHKi7HoaPlDyk,193
|
198
199
|
meerschaum/plugins/_Plugin.py,sha256=LpplVPviSskKqf_igl4yIsD72H2C9vaFPQgU7-93ytg,34039
|
199
200
|
meerschaum/plugins/__init__.py,sha256=RUnkBTvusySyp4rvVRbtqoV2lKCdKeu0uxExB5Fg7KM,23503
|
201
|
+
meerschaum/plugins/bootstrap.py,sha256=qg9MQ1YAU8ShwGqWDl38WjiXLIxDPl95pSIGDLN9rOw,11423
|
200
202
|
meerschaum/utils/__init__.py,sha256=QrK1K9hIbPCRCM5k2nZGFqGnrqhA0Eh-iSmCU7FG6Cs,612
|
201
203
|
meerschaum/utils/_get_pipes.py,sha256=dlPckpYYyM0IwRZ2VL0u9DiEeYhr5Ho9gkzvWxzNVwI,11460
|
202
204
|
meerschaum/utils/dataframe.py,sha256=vxZ72ME7IWuadtktgjFZF5bc9fXW_0TuynjFlJljlLU,31955
|
@@ -206,35 +208,35 @@ meerschaum/utils/misc.py,sha256=2_FyirImT793NH-wQriJ1VPOW7DcXm98Id0XMn8nh9I,4344
|
|
206
208
|
meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRUc,1006
|
207
209
|
meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
|
208
210
|
meerschaum/utils/process.py,sha256=UyiNszYXdnjF6WN8Tt0NchWjkCV10MbOXEFn_TAhXeg,7510
|
209
|
-
meerschaum/utils/prompt.py,sha256=
|
211
|
+
meerschaum/utils/prompt.py,sha256=HG5pPZBsxwE-R3kRJqbOrl38Y7IHNZQuLPdU7dgqlBY,18524
|
210
212
|
meerschaum/utils/schedule.py,sha256=btAeSDaoFH62-7wTO0U7NK9P9QHV46PtY3DJ8DN_mCY,10860
|
211
213
|
meerschaum/utils/sql.py,sha256=4sCNEpgUd6uFz6ySs4nnUMVaOT0YAvPM1ZlQYJTSF-0,46656
|
212
214
|
meerschaum/utils/threading.py,sha256=3N8JXPAnwqJiSjuQcbbJg3Rv9-CCUMJpeQRfKFR7MaA,2489
|
213
215
|
meerschaum/utils/typing.py,sha256=L05wOXfWdn_nJ0KnZVr-2zdMYcqjdyOW_7InT3xe6-s,2807
|
214
216
|
meerschaum/utils/warnings.py,sha256=0b5O2DBbhEAGnu6RAB1hlHSVmwL_hcR3EiMkExXmBJ0,6535
|
215
|
-
meerschaum/utils/yaml.py,sha256=
|
216
|
-
meerschaum/utils/daemon/Daemon.py,sha256=
|
217
|
-
meerschaum/utils/daemon/FileDescriptorInterceptor.py,sha256=
|
218
|
-
meerschaum/utils/daemon/RotatingFile.py,sha256=
|
217
|
+
meerschaum/utils/yaml.py,sha256=ptfS5XncNPaYXuvYX11yOpnEwPxDdaelHgDzIrvp9yc,3908
|
218
|
+
meerschaum/utils/daemon/Daemon.py,sha256=TTbBj3M0RoGRaTvvq6IPr9EJb2KiPV_HLucqbPQVzs8,35184
|
219
|
+
meerschaum/utils/daemon/FileDescriptorInterceptor.py,sha256=G5eJDapiTH1IX1x-2r62pLDS1MkRfpJaaZ-3FOAJgo0,4933
|
220
|
+
meerschaum/utils/daemon/RotatingFile.py,sha256=KTkCBtTwz7MvznSsUa6Mnyzk1lM3LlClEkVezjf-SQY,23843
|
219
221
|
meerschaum/utils/daemon/__init__.py,sha256=I_ki51yml4vsh9OoH7BWTaz9SnATD8qM0i0fN3aUMn0,8375
|
220
222
|
meerschaum/utils/daemon/_names.py,sha256=Prf7xA2GWDbKR_9Xq9_5RTTIf9GNWY3Yt0s4tEU3JgM,4330
|
221
223
|
meerschaum/utils/dtypes/__init__.py,sha256=JR9PViJTzhukZhq0QoPIs73HOnXZZr8OmfhAAD4OAUA,6261
|
222
224
|
meerschaum/utils/dtypes/sql.py,sha256=IkEOyB63je-rCLHM6WwFzGbCerYk1zobL1cXkWqmTa4,14638
|
223
|
-
meerschaum/utils/formatting/__init__.py,sha256=
|
225
|
+
meerschaum/utils/formatting/__init__.py,sha256=zIJAEVdYw6ldI0TKx5vdgryYfmZqGNrO0_oeZrx5S4k,14350
|
224
226
|
meerschaum/utils/formatting/_jobs.py,sha256=s1lVcdMkzNj5Bqw-GsUhcguUFtahi5nQ-kg1fbp0Idw,3294
|
225
227
|
meerschaum/utils/formatting/_pipes.py,sha256=wy0iWJFsFl3X2VloaiA_gp9Yx9w6tD3FQZvAQAqef4A,19492
|
226
228
|
meerschaum/utils/formatting/_pprint.py,sha256=tgrT3FyGyu5CWJYysqK3kX1xdZYorlbOk9fcU_vt9Qg,3096
|
227
229
|
meerschaum/utils/formatting/_shell.py,sha256=ox75O7VHDAiwzSvdMSJZhXLadvAqYJVeihU6WeZ2Ogc,3677
|
228
230
|
meerschaum/utils/packages/__init__.py,sha256=6zRX0g8Kh-wHjvkbiMf_kLKM2BlR5FJUCA3JStX9YeU,62628
|
229
|
-
meerschaum/utils/packages/_packages.py,sha256=
|
231
|
+
meerschaum/utils/packages/_packages.py,sha256=gWrco46rqKjtAI714aJp0XfzYQFAdNi08Kq5dq1VEkg,7977
|
230
232
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
231
233
|
meerschaum/utils/venv/_Venv.py,sha256=sBnlmxHdAh2bx8btfVoD79-H9-cYsv5lP02IIXkyECs,3553
|
232
234
|
meerschaum/utils/venv/__init__.py,sha256=4vFAu85lQ5GYEVhc6e_KhFmrks4t_Ma6ysmtraccYbs,24187
|
233
|
-
meerschaum-2.2.
|
234
|
-
meerschaum-2.2.
|
235
|
-
meerschaum-2.2.
|
236
|
-
meerschaum-2.2.
|
237
|
-
meerschaum-2.2.
|
238
|
-
meerschaum-2.2.
|
239
|
-
meerschaum-2.2.
|
240
|
-
meerschaum-2.2.
|
235
|
+
meerschaum-2.2.5.dev2.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
236
|
+
meerschaum-2.2.5.dev2.dist-info/METADATA,sha256=QSbWuB3P7CVf1sqjJMqt00hWQo1idl5YoOwHSAdXTok,24192
|
237
|
+
meerschaum-2.2.5.dev2.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
238
|
+
meerschaum-2.2.5.dev2.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
|
239
|
+
meerschaum-2.2.5.dev2.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
240
|
+
meerschaum-2.2.5.dev2.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
241
|
+
meerschaum-2.2.5.dev2.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
242
|
+
meerschaum-2.2.5.dev2.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|