meerschaum 2.7.0__py3-none-any.whl → 2.7.1__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- meerschaum/api/dash/__init__.py +1 -0
- meerschaum/api/dash/callbacks/dashboard.py +56 -38
- meerschaum/api/resources/templates/termpage.html +29 -21
- meerschaum/api/routes/_webterm.py +4 -3
- meerschaum/config/_version.py +1 -1
- meerschaum/connectors/sql/_create_engine.py +6 -1
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/METADATA +1 -1
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/RECORD +14 -14
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/LICENSE +0 -0
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/NOTICE +0 -0
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/WHEEL +0 -0
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/entry_points.txt +0 -0
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/top_level.txt +0 -0
- {meerschaum-2.7.0.dist-info → meerschaum-2.7.1.dist-info}/zip-safe +0 -0
meerschaum/api/dash/__init__.py
CHANGED
@@ -11,6 +11,8 @@ from __future__ import annotations
|
|
11
11
|
import textwrap
|
12
12
|
import json
|
13
13
|
import uuid
|
14
|
+
from datetime import datetime, timezone
|
15
|
+
|
14
16
|
from dash.dependencies import Input, Output, State, ALL, MATCH
|
15
17
|
from dash.exceptions import PreventUpdate
|
16
18
|
from meerschaum.utils.typing import List, Optional, Any, Tuple
|
@@ -191,6 +193,7 @@ def update_page_layout_div(
|
|
191
193
|
Input('get-plugins-button', 'n_clicks'),
|
192
194
|
Input('get-users-button', 'n_clicks'),
|
193
195
|
Input('get-graphs-button', 'n_clicks'),
|
196
|
+
Input('instance-select', 'value'),
|
194
197
|
State('mrsm-location', 'href'),
|
195
198
|
State('session-store', 'data'),
|
196
199
|
State('webterm-div', 'children'),
|
@@ -210,7 +213,7 @@ def update_content(*args):
|
|
210
213
|
### Open the webterm on the initial load.
|
211
214
|
if not ctx.triggered:
|
212
215
|
initial_load = True
|
213
|
-
trigger = '
|
216
|
+
trigger = 'instance-select'
|
214
217
|
|
215
218
|
trigger = ctx.triggered[0]['prop_id'].split('.')[0] if not trigger else trigger
|
216
219
|
|
@@ -232,7 +235,7 @@ def update_content(*args):
|
|
232
235
|
'get-plugins-button': get_plugins_cards,
|
233
236
|
'get-users-button': get_users_cards,
|
234
237
|
'get-graphs-button': get_graphs_cards,
|
235
|
-
'
|
238
|
+
'instance-select': lambda x: ([], []),
|
236
239
|
}
|
237
240
|
### Defaults to 3 if not in dict.
|
238
241
|
trigger_num_cols = {
|
@@ -248,7 +251,7 @@ def update_content(*args):
|
|
248
251
|
webterm_style = {
|
249
252
|
'display': (
|
250
253
|
'none'
|
251
|
-
if trigger not in ('
|
254
|
+
if trigger not in ('instance-select', 'cancel-button', 'go-button')
|
252
255
|
else 'block'
|
253
256
|
)
|
254
257
|
}
|
@@ -284,9 +287,9 @@ dash_app.clientside_callback(
|
|
284
287
|
input_flags_texts,
|
285
288
|
instance,
|
286
289
|
){
|
287
|
-
if (!n_clicks){ return
|
290
|
+
if (!n_clicks){ return dash_clientside.no_update; }
|
288
291
|
iframe = document.getElementById('webterm-iframe');
|
289
|
-
if (!iframe){ return
|
292
|
+
if (!iframe){ return dash_clientside.no_update; }
|
290
293
|
|
291
294
|
// Actions must be obtained from the DOM because of dynamic subactions.
|
292
295
|
action = document.getElementById('action-dropdown').value;
|
@@ -308,7 +311,7 @@ dash_app.clientside_callback(
|
|
308
311
|
},
|
309
312
|
url
|
310
313
|
);
|
311
|
-
return
|
314
|
+
return dash_clientside.no_update;
|
312
315
|
}
|
313
316
|
""",
|
314
317
|
Output('mrsm-location', 'href'),
|
@@ -472,29 +475,30 @@ def update_flags(input_flags_dropdown_values, n_clicks, input_flags_texts):
|
|
472
475
|
|
473
476
|
|
474
477
|
@dash_app.callback(
|
475
|
-
Output(
|
476
|
-
Output(
|
477
|
-
Output(
|
478
|
-
Output(
|
479
|
-
Output(
|
480
|
-
Output(
|
481
|
-
Output(
|
482
|
-
Output(
|
483
|
-
Output(
|
484
|
-
Output(
|
485
|
-
Output(
|
486
|
-
|
487
|
-
Input(
|
488
|
-
Input(
|
489
|
-
Input(
|
490
|
-
|
478
|
+
Output('connector-keys-dropdown', 'options'),
|
479
|
+
Output('connector-keys-list', 'children'),
|
480
|
+
Output('connector-keys-dropdown', 'value'),
|
481
|
+
Output('metric-keys-dropdown', 'options'),
|
482
|
+
Output('metric-keys-list', 'children'),
|
483
|
+
Output('metric-keys-dropdown', 'value'),
|
484
|
+
Output('location-keys-dropdown', 'options'),
|
485
|
+
Output('location-keys-list', 'children'),
|
486
|
+
Output('location-keys-dropdown', 'value'),
|
487
|
+
Output('instance-select', 'value'),
|
488
|
+
Output('instance-alert-div', 'children'),
|
489
|
+
Output('instance-store', 'data'),
|
490
|
+
Input('connector-keys-dropdown', 'value'),
|
491
|
+
Input('metric-keys-dropdown', 'value'),
|
492
|
+
Input('location-keys-dropdown', 'value'),
|
493
|
+
Input('instance-select', 'value'),
|
494
|
+
State('instance-store', 'data'),
|
491
495
|
)
|
492
496
|
def update_keys_options(
|
493
497
|
connector_keys: Optional[List[str]],
|
494
498
|
metric_keys: Optional[List[str]],
|
495
499
|
location_keys: Optional[List[str]],
|
496
500
|
instance_keys: Optional[str],
|
497
|
-
|
501
|
+
instance_store_data: Optional[Dict[str, Any]],
|
498
502
|
):
|
499
503
|
"""
|
500
504
|
Update the keys dropdown menus' options.
|
@@ -503,11 +507,24 @@ def update_keys_options(
|
|
503
507
|
trigger = ctx.triggered[0]['prop_id'].split('.')[0]
|
504
508
|
instance_click = trigger == 'instance-select'
|
505
509
|
|
510
|
+
session_instance = instance_store_data.get('session_instance', None)
|
511
|
+
|
506
512
|
### Update the instance first.
|
507
513
|
update_instance_keys = False
|
508
514
|
if not instance_keys:
|
515
|
+
### NOTE: Set to `session_instance` to restore the last used session.
|
516
|
+
### Choosing not to do this in order to keep the dashboard and webterm in sync.
|
509
517
|
instance_keys = str(get_api_connector())
|
510
518
|
update_instance_keys = True
|
519
|
+
|
520
|
+
instance_store_data_to_return = (
|
521
|
+
{**(instance_store_data or {}), **{'session_instance': instance_keys}}
|
522
|
+
if update_instance_keys or session_instance != instance_keys
|
523
|
+
else dash.no_update
|
524
|
+
)
|
525
|
+
if not trigger and not update_instance_keys:
|
526
|
+
raise PreventUpdate
|
527
|
+
|
511
528
|
instance_alerts = []
|
512
529
|
try:
|
513
530
|
parse_instance_keys(instance_keys)
|
@@ -609,6 +626,7 @@ def update_keys_options(
|
|
609
626
|
location_keys,
|
610
627
|
(instance_keys if update_instance_keys else dash.no_update),
|
611
628
|
instance_alerts,
|
629
|
+
instance_store_data_to_return,
|
612
630
|
)
|
613
631
|
|
614
632
|
dash_app.clientside_callback(
|
@@ -617,14 +635,13 @@ dash_app.clientside_callback(
|
|
617
635
|
instance,
|
618
636
|
url,
|
619
637
|
){
|
620
|
-
window.instance = instance;
|
621
|
-
if (!instance){ return url; }
|
622
|
-
iframe = document.getElementById('webterm-iframe');
|
623
|
-
if (!iframe){ return url; }
|
624
638
|
if (!window.instance){
|
625
639
|
window.instance = instance;
|
626
640
|
return url;
|
627
641
|
}
|
642
|
+
if (!instance){ return url; }
|
643
|
+
iframe = document.getElementById('webterm-iframe');
|
644
|
+
if (!iframe){ return url; }
|
628
645
|
window.instance = instance;
|
629
646
|
|
630
647
|
iframe.contentWindow.postMessage(
|
@@ -639,6 +656,7 @@ dash_app.clientside_callback(
|
|
639
656
|
""",
|
640
657
|
Output('mrsm-location', 'href'),
|
641
658
|
Input('instance-select', 'value'),
|
659
|
+
State('mrsm-location', 'href'),
|
642
660
|
)
|
643
661
|
|
644
662
|
|
@@ -698,7 +716,7 @@ dash_app.clientside_callback(
|
|
698
716
|
"""
|
699
717
|
function(console_children, url){
|
700
718
|
if (!console_children){
|
701
|
-
return
|
719
|
+
return dash_clientside.no_update;
|
702
720
|
}
|
703
721
|
var ansi_up = new AnsiUp;
|
704
722
|
var html = ansi_up.ansi_to_html(console_children);
|
@@ -707,7 +725,7 @@ dash_app.clientside_callback(
|
|
707
725
|
"<pre id=\\"console-pre\\">" + html + "</pre>"
|
708
726
|
);
|
709
727
|
console_div.scrollTop = console_div.scrollHeight;
|
710
|
-
return
|
728
|
+
return dash_clientside.no_update;;
|
711
729
|
}
|
712
730
|
""",
|
713
731
|
Output('mrsm-location', 'href'),
|
@@ -885,8 +903,8 @@ dash_app.clientside_callback(
|
|
885
903
|
|
886
904
|
iframe = document.getElementById('webterm-iframe');
|
887
905
|
if (!iframe){ return dash_clientside.no_update; }
|
888
|
-
var location = pipe_meta.
|
889
|
-
if (!pipe_meta.
|
906
|
+
var location = pipe_meta.location_key;
|
907
|
+
if (!pipe_meta.location_key){
|
890
908
|
location = "None";
|
891
909
|
}
|
892
910
|
|
@@ -894,25 +912,25 @@ dash_app.clientside_callback(
|
|
894
912
|
if (action == "python"){
|
895
913
|
subaction = (
|
896
914
|
'"' + "pipe = mrsm.Pipe('"
|
897
|
-
+ pipe_meta.
|
915
|
+
+ pipe_meta.connector_keys
|
898
916
|
+ "', '"
|
899
|
-
+ pipe_meta.
|
917
|
+
+ pipe_meta.metric_key
|
900
918
|
+ "'"
|
901
919
|
);
|
902
920
|
if (location != "None"){
|
903
921
|
subaction += ", '" + location + "'";
|
904
922
|
}
|
905
|
-
subaction += ", instance='" + pipe_meta.
|
923
|
+
subaction += ", instance='" + pipe_meta.instance_keys + "')" + '"';
|
906
924
|
}
|
907
925
|
|
908
926
|
iframe.contentWindow.postMessage(
|
909
927
|
{
|
910
928
|
action: action,
|
911
929
|
subaction: subaction,
|
912
|
-
connector_keys: [pipe_meta.
|
913
|
-
metric_keys: [pipe_meta.
|
914
|
-
location_keys: [
|
915
|
-
instance: pipe_meta.
|
930
|
+
connector_keys: [pipe_meta.connector_keys],
|
931
|
+
metric_keys: [pipe_meta.metric_key],
|
932
|
+
location_keys: [pipe_meta.location_key],
|
933
|
+
instance: pipe_meta.instance_keys,
|
916
934
|
},
|
917
935
|
url
|
918
936
|
);
|
@@ -17,9 +17,9 @@ window.addEventListener(
|
|
17
17
|
(event) => {
|
18
18
|
if (!event.isTrusted){ return; }
|
19
19
|
|
20
|
-
action_str = event.data.action;
|
21
|
-
subaction_str = event.data['subaction'] ? event.data['subaction'] : '';
|
22
|
-
subaction_text = event.data['subaction_text'] ? event.data['subaction_text'] : '';
|
20
|
+
let action_str = event.data.action;
|
21
|
+
let subaction_str = event.data['subaction'] ? event.data['subaction'] : '';
|
22
|
+
let subaction_text = event.data['subaction_text'] ? event.data['subaction_text'] : '';
|
23
23
|
if (subaction_str.length > 0){
|
24
24
|
action_str += ' ' + subaction_str;
|
25
25
|
}
|
@@ -27,45 +27,53 @@ window.addEventListener(
|
|
27
27
|
action_str += ' ' + subaction_text;
|
28
28
|
}
|
29
29
|
|
30
|
-
connector_keys = event.data['connector_keys'] ? event.data['connector_keys'] : [];
|
31
|
-
metric_keys = event.data['metric_keys'] ? event.data['metric_keys'] : [];
|
32
|
-
location_keys = event.data['location_keys'] ? event.data['location_keys'] : [];
|
33
|
-
connector_keys_str = " -c";
|
34
|
-
for (ck of connector_keys){
|
35
|
-
|
36
|
-
|
30
|
+
let connector_keys = event.data['connector_keys'] ? event.data['connector_keys'] : [];
|
31
|
+
let metric_keys = event.data['metric_keys'] ? event.data['metric_keys'] : [];
|
32
|
+
let location_keys = event.data['location_keys'] ? event.data['location_keys'] : [];
|
33
|
+
let connector_keys_str = " -c";
|
34
|
+
for (let ck of connector_keys){
|
35
|
+
if (typeof ck === "string"){
|
36
|
+
let quote_str = ck.includes(" ") ? "'" : "";
|
37
|
+
connector_keys_str += " " + quote_str + ck + quote_str;
|
38
|
+
}
|
37
39
|
}
|
38
40
|
if (connector_keys.length === 0){
|
39
41
|
connector_keys_str = "";
|
40
42
|
}
|
41
|
-
metric_keys_str = " -m";
|
43
|
+
let metric_keys_str = " -m";
|
42
44
|
for (mk of metric_keys){
|
43
|
-
|
44
|
-
|
45
|
+
if (typeof mk === "string"){
|
46
|
+
let quote_str = mk.includes(" ") ? "'" : "";
|
47
|
+
metric_keys_str += " " + quote_str + mk + quote_str;
|
48
|
+
}
|
45
49
|
}
|
46
50
|
if (metric_keys.length === 0){
|
47
51
|
metric_keys_str = "";
|
48
52
|
}
|
49
|
-
location_keys_str = " -l";
|
53
|
+
let location_keys_str = " -l";
|
50
54
|
for (lk of location_keys){
|
51
|
-
|
52
|
-
|
55
|
+
if (typeof lk === "string"){
|
56
|
+
quote_str = lk.includes(" ") ? "'" : "";
|
57
|
+
location_keys_str += " " + quote_str + lk + quote_str;
|
58
|
+
}
|
53
59
|
}
|
54
60
|
if (location_keys.length === 0){
|
55
61
|
location_keys_str = "";
|
56
62
|
}
|
57
63
|
|
58
|
-
instance = event.data['instance'] ? event.data['instance'] : '';
|
59
|
-
flags_str = "";
|
64
|
+
let instance = event.data['instance'] ? event.data['instance'] : '';
|
65
|
+
let flags_str = "";
|
60
66
|
if (instance.length > 0){
|
61
67
|
flags_str += " -i " + instance;
|
62
68
|
}
|
63
|
-
flags = event.data['flags'] ? event.data['flags'] : [];
|
69
|
+
let flags = event.data['flags'] ? event.data['flags'] : [];
|
64
70
|
for (fl of flags){
|
65
|
-
|
71
|
+
if (typeof fl === "string"){
|
72
|
+
flags_str += " " + fl;
|
73
|
+
}
|
66
74
|
}
|
67
75
|
// NOTE: Input flags are not quoted to allow for multiple arguments.
|
68
|
-
input_flags = event.data['input_flags'] ? event.data['input_flags'] : [];
|
76
|
+
let input_flags = event.data['input_flags'] ? event.data['input_flags'] : [];
|
69
77
|
for (const [index, fl] of input_flags.entries()){
|
70
78
|
if (!fl){ continue; }
|
71
79
|
fl_val = event.data['input_flags_texts'][index];
|
@@ -13,9 +13,10 @@ from meerschaum.utils.packages import attempt_import
|
|
13
13
|
from meerschaum.api.dash.sessions import is_session_authenticated
|
14
14
|
fastapi, fastapi_responses = attempt_import('fastapi', 'fastapi.responses')
|
15
15
|
import starlette
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
|
17
|
+
httpcore = attempt_import('httpcore', lazy=False)
|
18
|
+
httpx = attempt_import('httpx', lazy=False)
|
19
|
+
websockets = attempt_import('websockets', lazy=False)
|
19
20
|
Request = fastapi.Request
|
20
21
|
WebSocket = fastapi.WebSocket
|
21
22
|
HTMLResponse = fastapi_responses.HTMLResponse
|
meerschaum/config/_version.py
CHANGED
@@ -190,7 +190,12 @@ def create_engine(
|
|
190
190
|
import copy
|
191
191
|
### Install and patch required drivers.
|
192
192
|
if self.flavor in install_flavor_drivers:
|
193
|
-
|
193
|
+
_ = attempt_import(
|
194
|
+
*install_flavor_drivers[self.flavor],
|
195
|
+
debug=debug,
|
196
|
+
lazy=False,
|
197
|
+
warn=False,
|
198
|
+
)
|
194
199
|
if self.flavor == 'mssql':
|
195
200
|
pyodbc = attempt_import('pyodbc', debug=debug, lazy=False, warn=False)
|
196
201
|
pyodbc.pooling = False
|
@@ -56,7 +56,7 @@ meerschaum/api/_chain.py,sha256=h8-WXUGXX6AqzdALfsBC5uv0FkAcLdHJXCGzqzuq89k,875
|
|
56
56
|
meerschaum/api/_events.py,sha256=f-98AXHU10IL9zRGX1FrZFANxxiMz5ryeJnfFWaU8R8,2232
|
57
57
|
meerschaum/api/_oauth2.py,sha256=dJTIVlPpX3sAVW-PcN6pXRNy2RR5QAalu2RHp3l14YU,1683
|
58
58
|
meerschaum/api/_websockets.py,sha256=EMT9wB3yELu_WyCMqn9ZpgMDh23spUUchouRLCCLVuw,1509
|
59
|
-
meerschaum/api/dash/__init__.py,sha256=
|
59
|
+
meerschaum/api/dash/__init__.py,sha256=jL08XtzNAzsrXJthDRqq-DlJjg6OpoyqeLeNjkp_bnA,2147
|
60
60
|
meerschaum/api/dash/components.py,sha256=t2goHW7oioao5Ew6Dro9U4LZDnHF-YWb4flLPx46GP8,6293
|
61
61
|
meerschaum/api/dash/connectors.py,sha256=nJxBOFldtCMJLYjUSVYZwX5BO-LNjTNHgoEaXe-0XMo,843
|
62
62
|
meerschaum/api/dash/graphs.py,sha256=wJUDWzcLN8-C3xko6rj0F2v7Rt8YDkSXoVkkXJjYGIk,2046
|
@@ -77,7 +77,7 @@ meerschaum/api/dash/assets/logo_48x48.png,sha256=hTR5BHUHEN4yP2xiqAcDciuigoII9T3
|
|
77
77
|
meerschaum/api/dash/assets/logo_500x500.png,sha256=9EUtf6wQcEZTXHKfQ2kjNXod6Rn_4DTB_BkTgxggq00,67702
|
78
78
|
meerschaum/api/dash/callbacks/__init__.py,sha256=5nLDkziaWWWt5ivmuMNG3kVBMOfqB6KQNIAS8f16bmA,493
|
79
79
|
meerschaum/api/dash/callbacks/custom.py,sha256=N9pVolAF8sIuJD3V6xBSgS7k8THJo_f8d1qAoh1Kg60,1161
|
80
|
-
meerschaum/api/dash/callbacks/dashboard.py,sha256
|
80
|
+
meerschaum/api/dash/callbacks/dashboard.py,sha256=-qTzDG7Gnc597A-I5KBaPu6myXhW9ow0fm5gxErtUMM,33171
|
81
81
|
meerschaum/api/dash/callbacks/jobs.py,sha256=JYTrDcUEte_MIT3EegLDmQDsmU_Mxqw8L60dvF71ho4,8418
|
82
82
|
meerschaum/api/dash/callbacks/login.py,sha256=mEvMgV-f85H6DvqNdTvJPoiwHqTnhWY2nf_zLB26ipE,2876
|
83
83
|
meerschaum/api/dash/callbacks/pipes.py,sha256=byphQn-wJOe8ft-fGU9wac0n5xsMjVHJzNvYYb9NsKU,1693
|
@@ -116,7 +116,7 @@ meerschaum/api/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
|
|
116
116
|
meerschaum/api/resources/templates/index.html,sha256=Ck-S0U5abJgB-wTOKIGg0ispGzKlXXqvFUoNAAByzLA,1019
|
117
117
|
meerschaum/api/resources/templates/old_index.html,sha256=BDeOlcXhSsBH3-NaRtuX4Z1sDuhOoCMa_Dq-6g5RMpc,1711
|
118
118
|
meerschaum/api/resources/templates/secret.html,sha256=0QWkm4ZoN81Aw1pd2-62rGCvx3nXPHfFUoegj3Iy8Ls,141
|
119
|
-
meerschaum/api/resources/templates/termpage.html,sha256=
|
119
|
+
meerschaum/api/resources/templates/termpage.html,sha256=4npmhCrZtPqxDE9hK7tzKjbLUZyUzu-X73vKg3_C6lc,4807
|
120
120
|
meerschaum/api/routes/__init__.py,sha256=jbkeFNl51Tg8aT5gWe560ZLZLojFJsLMe5IENRjRkb0,606
|
121
121
|
meerschaum/api/routes/_actions.py,sha256=VUasS1dpr4d3TXHcR1CXlRZPAqvGKKuHv_f9PsOkQ5c,1732
|
122
122
|
meerschaum/api/routes/_connectors.py,sha256=NNbcn5xWhKqw2PqueSEaqRaZ95hFGDKazG5lE7gsssc,1849
|
@@ -128,7 +128,7 @@ meerschaum/api/routes/_pipes.py,sha256=Ix4N46qZ2YIEv7bd8SA9fy1k67n8zFlmPznSeK8mi
|
|
128
128
|
meerschaum/api/routes/_plugins.py,sha256=vR6-uTJraY1YEJMuRvds1-xFLB2mexxnp2dJwN_0rVo,6216
|
129
129
|
meerschaum/api/routes/_users.py,sha256=SfAkZFKrKnGjpzj8SFIKzPemzQJOH3oB72h19EaUvcQ,7204
|
130
130
|
meerschaum/api/routes/_version.py,sha256=2t-nw_9IxCVZCNEar0LOwmut2zsClRVHjiOOUx16cu0,825
|
131
|
-
meerschaum/api/routes/_webterm.py,sha256=
|
131
|
+
meerschaum/api/routes/_webterm.py,sha256=MenDvWXnZ8CWEmryB46pKohMf0PN6o1xJGZ3LFjxTOc,3909
|
132
132
|
meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
|
133
133
|
meerschaum/config/__init__.py,sha256=5ZBq71P9t3nb74r5CGvMfNuauPscfegBX-nkaAUi5C4,11541
|
134
134
|
meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
|
@@ -143,7 +143,7 @@ meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6
|
|
143
143
|
meerschaum/config/_read_config.py,sha256=RLC3HHi_1ndj7ITVDKLD9_uULY3caGRwSz3ATYE-ixA,15014
|
144
144
|
meerschaum/config/_shell.py,sha256=46_m49Txc5q1rGfCgO49ca48BODx45DQJi8D0zz1R18,4245
|
145
145
|
meerschaum/config/_sync.py,sha256=jHcWRkxd82_BgX8Xo8agsWvf7BSbv3qHLWmYl6ehp_0,4242
|
146
|
-
meerschaum/config/_version.py,sha256=
|
146
|
+
meerschaum/config/_version.py,sha256=KZzrNL20ForXO9e1OCdiNBZ0WcwZ4I9Z_8Rz0oMe8d8,71
|
147
147
|
meerschaum/config/paths.py,sha256=JjibeGN3YAdSNceRwsd42aNmeUrIgM6ndzC8qZAmNI0,621
|
148
148
|
meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
149
149
|
meerschaum/config/stack/__init__.py,sha256=2UukC0Lmk-aVL1o1qXzumqmuIrw3vu9fD7iCuz4XD4I,10544
|
@@ -173,7 +173,7 @@ meerschaum/connectors/plugin/__init__.py,sha256=pwF7TGY4WNz2_HaVdmK4rPQ9ZwTOEuPH
|
|
173
173
|
meerschaum/connectors/sql/_SQLConnector.py,sha256=g9SFK30CZp7CTJI-SdpOanL1NQUBFQeUng7FSGacJA4,11985
|
174
174
|
meerschaum/connectors/sql/__init__.py,sha256=3cqYiDkVasn7zWdtOTAZbT4bo95AuvGOmDD2TkaAxtw,205
|
175
175
|
meerschaum/connectors/sql/_cli.py,sha256=1SgnWeMIAihoxp4FzbNrcq1npXf0dSOQnCntpU9hUXA,4405
|
176
|
-
meerschaum/connectors/sql/_create_engine.py,sha256=
|
176
|
+
meerschaum/connectors/sql/_create_engine.py,sha256=MqgFhtWUMSgkx6Qu6Q6Ny3jIz-GWix_Eawko59RLm1o,10512
|
177
177
|
meerschaum/connectors/sql/_fetch.py,sha256=UIBAvMxassP-ofNxk_FoG-ukHzEac4jyu4lA0SXHcBg,13140
|
178
178
|
meerschaum/connectors/sql/_instance.py,sha256=_FHcAia3vhnWlQuB46YELGgsM9OYIJSHxL3FWNU0GWg,6287
|
179
179
|
meerschaum/connectors/sql/_pipes.py,sha256=QSlEBmkXoLRevpEmocMce45sI8Qhe1n7RWShVx5W1pg,118932
|
@@ -251,11 +251,11 @@ meerschaum/utils/packages/_packages.py,sha256=ykannoLv2Fm4iwZwiIlNAGZvt654cMJhjX
|
|
251
251
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
252
252
|
meerschaum/utils/venv/_Venv.py,sha256=QsnDGEE_YBqXIq53NTWi2TANA1FbkqJBl_xQi9jQP_U,3537
|
253
253
|
meerschaum/utils/venv/__init__.py,sha256=eup-zUBdHBdNbu_G1qgA8iRzJvlAXyGhY7pG-SEvbHs,25347
|
254
|
-
meerschaum-2.7.
|
255
|
-
meerschaum-2.7.
|
256
|
-
meerschaum-2.7.
|
257
|
-
meerschaum-2.7.
|
258
|
-
meerschaum-2.7.
|
259
|
-
meerschaum-2.7.
|
260
|
-
meerschaum-2.7.
|
261
|
-
meerschaum-2.7.
|
254
|
+
meerschaum-2.7.1.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
255
|
+
meerschaum-2.7.1.dist-info/METADATA,sha256=rIEPTlucCyhBXjRB_ohMKVry1H7qOveF7ojFnrr1TcM,24224
|
256
|
+
meerschaum-2.7.1.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
257
|
+
meerschaum-2.7.1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
258
|
+
meerschaum-2.7.1.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
259
|
+
meerschaum-2.7.1.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
260
|
+
meerschaum-2.7.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
261
|
+
meerschaum-2.7.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|