meerschaum 2.8.4__py3-none-any.whl → 2.9.0__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/api/_chunks.py +67 -0
- meerschaum/api/dash/callbacks/__init__.py +5 -2
- meerschaum/api/dash/callbacks/custom.py +21 -8
- meerschaum/api/dash/callbacks/dashboard.py +26 -4
- meerschaum/api/dash/callbacks/settings/__init__.py +8 -0
- meerschaum/api/dash/callbacks/settings/password_reset.py +76 -0
- meerschaum/api/dash/components.py +136 -25
- meerschaum/api/dash/pages/__init__.py +1 -0
- meerschaum/api/dash/pages/dashboard.py +11 -9
- meerschaum/api/dash/pages/plugins.py +31 -27
- meerschaum/api/dash/pages/settings/__init__.py +8 -0
- meerschaum/api/dash/pages/settings/password_reset.py +63 -0
- meerschaum/api/dash/webterm.py +6 -3
- meerschaum/api/resources/static/css/dash.css +8 -1
- meerschaum/api/resources/templates/termpage.html +4 -0
- meerschaum/api/routes/_pipes.py +232 -79
- meerschaum/config/_default.py +4 -0
- meerschaum/config/_version.py +1 -1
- meerschaum/connectors/__init__.py +1 -0
- meerschaum/connectors/api/_APIConnector.py +12 -1
- meerschaum/connectors/api/_pipes.py +106 -45
- meerschaum/connectors/api/_plugins.py +51 -45
- meerschaum/connectors/api/_request.py +1 -1
- meerschaum/connectors/parse.py +1 -2
- meerschaum/connectors/sql/_SQLConnector.py +3 -0
- meerschaum/connectors/sql/_cli.py +1 -0
- meerschaum/connectors/sql/_create_engine.py +51 -4
- meerschaum/connectors/sql/_pipes.py +38 -6
- meerschaum/connectors/sql/_sql.py +35 -4
- meerschaum/connectors/valkey/_ValkeyConnector.py +2 -0
- meerschaum/connectors/valkey/_pipes.py +51 -39
- meerschaum/core/Pipe/__init__.py +1 -0
- meerschaum/core/Pipe/_data.py +1 -2
- meerschaum/core/Pipe/_sync.py +64 -4
- meerschaum/plugins/_Plugin.py +21 -5
- meerschaum/plugins/__init__.py +32 -8
- meerschaum/utils/dataframe.py +139 -2
- meerschaum/utils/dtypes/__init__.py +211 -1
- meerschaum/utils/dtypes/sql.py +296 -5
- meerschaum/utils/formatting/_shell.py +1 -4
- meerschaum/utils/misc.py +1 -1
- meerschaum/utils/packages/_packages.py +7 -1
- meerschaum/utils/sql.py +139 -11
- meerschaum/utils/venv/__init__.py +6 -1
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/METADATA +17 -3
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/RECORD +52 -52
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/WHEEL +1 -1
- meerschaum/_internal/gui/__init__.py +0 -43
- meerschaum/_internal/gui/app/__init__.py +0 -50
- meerschaum/_internal/gui/app/_windows.py +0 -74
- meerschaum/_internal/gui/app/actions.py +0 -30
- meerschaum/_internal/gui/app/pipes.py +0 -47
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/LICENSE +0 -0
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/NOTICE +0 -0
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/entry_points.txt +0 -0
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/top_level.txt +0 -0
- {meerschaum-2.8.4.dist-info → meerschaum-2.9.0.dist-info}/zip-safe +0 -0
meerschaum/utils/sql.py
CHANGED
@@ -41,13 +41,13 @@ version_queries = {
|
|
41
41
|
}
|
42
42
|
SKIP_IF_EXISTS_FLAVORS = {'mssql', 'oracle'}
|
43
43
|
DROP_IF_EXISTS_FLAVORS = {
|
44
|
-
'timescaledb', 'postgresql', 'citus', 'mssql', 'mysql', 'mariadb', 'sqlite',
|
44
|
+
'timescaledb', 'postgresql', 'postgis', 'citus', 'mssql', 'mysql', 'mariadb', 'sqlite',
|
45
45
|
}
|
46
46
|
DROP_INDEX_IF_EXISTS_FLAVORS = {
|
47
|
-
'mssql', 'timescaledb', 'postgresql', 'sqlite', 'citus',
|
47
|
+
'mssql', 'timescaledb', 'postgresql', 'postgis', 'sqlite', 'citus',
|
48
48
|
}
|
49
49
|
SKIP_AUTO_INCREMENT_FLAVORS = {'citus', 'duckdb'}
|
50
|
-
COALESCE_UNIQUE_INDEX_FLAVORS = {'timescaledb', 'postgresql', 'citus'}
|
50
|
+
COALESCE_UNIQUE_INDEX_FLAVORS = {'timescaledb', 'postgresql', 'postgis', 'citus'}
|
51
51
|
UPDATE_QUERIES = {
|
52
52
|
'default': """
|
53
53
|
UPDATE {target_table_name} AS f
|
@@ -73,6 +73,12 @@ UPDATE_QUERIES = {
|
|
73
73
|
FROM {patch_table_name}
|
74
74
|
ON CONFLICT ({join_cols_str}) DO {update_or_nothing} {sets_subquery_none_excluded}
|
75
75
|
""",
|
76
|
+
'postgis-upsert': """
|
77
|
+
INSERT INTO {target_table_name} ({patch_cols_str})
|
78
|
+
SELECT {patch_cols_str}
|
79
|
+
FROM {patch_table_name}
|
80
|
+
ON CONFLICT ({join_cols_str}) DO {update_or_nothing} {sets_subquery_none_excluded}
|
81
|
+
""",
|
76
82
|
'citus-upsert': """
|
77
83
|
INSERT INTO {target_table_name} ({patch_cols_str})
|
78
84
|
SELECT {patch_cols_str}
|
@@ -482,6 +488,7 @@ table_wrappers = {
|
|
482
488
|
'citus' : ('"', '"'),
|
483
489
|
'duckdb' : ('"', '"'),
|
484
490
|
'postgresql' : ('"', '"'),
|
491
|
+
'postgis' : ('"', '"'),
|
485
492
|
'sqlite' : ('"', '"'),
|
486
493
|
'mysql' : ('`', '`'),
|
487
494
|
'mariadb' : ('`', '`'),
|
@@ -494,6 +501,7 @@ max_name_lens = {
|
|
494
501
|
'mssql' : 128,
|
495
502
|
'oracle' : 30,
|
496
503
|
'postgresql' : 64,
|
504
|
+
'postgis' : 64,
|
497
505
|
'timescaledb': 64,
|
498
506
|
'citus' : 64,
|
499
507
|
'cockroachdb': 64,
|
@@ -501,10 +509,11 @@ max_name_lens = {
|
|
501
509
|
'mysql' : 64,
|
502
510
|
'mariadb' : 64,
|
503
511
|
}
|
504
|
-
json_flavors = {'postgresql', 'timescaledb', 'citus', 'cockroachdb'}
|
512
|
+
json_flavors = {'postgresql', 'postgis', 'timescaledb', 'citus', 'cockroachdb'}
|
505
513
|
NO_SCHEMA_FLAVORS = {'oracle', 'sqlite', 'mysql', 'mariadb', 'duckdb'}
|
506
514
|
DEFAULT_SCHEMA_FLAVORS = {
|
507
515
|
'postgresql': 'public',
|
516
|
+
'postgis': 'public',
|
508
517
|
'timescaledb': 'public',
|
509
518
|
'citus': 'public',
|
510
519
|
'cockroachdb': 'public',
|
@@ -519,7 +528,7 @@ NO_CTE_FLAVORS = {'mysql', 'mariadb'}
|
|
519
528
|
NO_SELECT_INTO_FLAVORS = {'sqlite', 'oracle', 'mysql', 'mariadb', 'duckdb'}
|
520
529
|
|
521
530
|
|
522
|
-
def clean(substring: str) ->
|
531
|
+
def clean(substring: str) -> None:
|
523
532
|
"""
|
524
533
|
Ensure a substring is clean enough to be inserted into a SQL query.
|
525
534
|
Raises an exception when banned words are used.
|
@@ -549,6 +558,7 @@ def dateadd_str(
|
|
549
558
|
Currently supported flavors:
|
550
559
|
|
551
560
|
- `'postgresql'`
|
561
|
+
- `'postgis'`
|
552
562
|
- `'timescaledb'`
|
553
563
|
- `'citus'`
|
554
564
|
- `'cockroachdb'`
|
@@ -653,7 +663,7 @@ def dateadd_str(
|
|
653
663
|
)
|
654
664
|
|
655
665
|
da = ""
|
656
|
-
if flavor in ('postgresql', 'timescaledb', 'cockroachdb', 'citus'):
|
666
|
+
if flavor in ('postgresql', 'postgis', 'timescaledb', 'cockroachdb', 'citus'):
|
657
667
|
begin = (
|
658
668
|
f"CAST({begin} AS {db_type})" if begin != 'now'
|
659
669
|
else f"CAST(NOW() AT TIME ZONE 'utc' AS {db_type})"
|
@@ -922,6 +932,7 @@ def build_where(
|
|
922
932
|
params: Dict[str, Any],
|
923
933
|
connector: Optional[mrsm.connectors.sql.SQLConnector] = None,
|
924
934
|
with_where: bool = True,
|
935
|
+
flavor: str = 'postgresql',
|
925
936
|
) -> str:
|
926
937
|
"""
|
927
938
|
Build the `WHERE` clause based on the input criteria.
|
@@ -941,6 +952,9 @@ def build_where(
|
|
941
952
|
with_where: bool, default True:
|
942
953
|
If `True`, include the leading `'WHERE'` string.
|
943
954
|
|
955
|
+
flavor: str, default 'postgresql'
|
956
|
+
If `connector` is `None`, fall back to this flavor.
|
957
|
+
|
944
958
|
Returns
|
945
959
|
-------
|
946
960
|
A `str` of the `WHERE` clause from the input `params` dictionary for the connector's flavor.
|
@@ -969,13 +983,11 @@ def build_where(
|
|
969
983
|
warn(f"Aborting build_where() due to possible SQL injection.")
|
970
984
|
return ''
|
971
985
|
|
972
|
-
if connector is None
|
973
|
-
from meerschaum import get_connector
|
974
|
-
connector = get_connector('sql')
|
986
|
+
query_flavor = getattr(connector, 'flavor', flavor) if connector is not None else flavor
|
975
987
|
where = ""
|
976
988
|
leading_and = "\n AND "
|
977
989
|
for key, value in params.items():
|
978
|
-
_key = sql_item_name(key,
|
990
|
+
_key = sql_item_name(key, query_flavor, None)
|
979
991
|
### search across a list (i.e. IN syntax)
|
980
992
|
if isinstance(value, Iterable) and not isinstance(value, (dict, str)):
|
981
993
|
includes = [
|
@@ -1286,7 +1298,24 @@ def get_table_cols_types(
|
|
1286
1298
|
if cols_types_docs and not cols_types_docs_filtered:
|
1287
1299
|
cols_types_docs_filtered = cols_types_docs
|
1288
1300
|
|
1289
|
-
|
1301
|
+
### NOTE: Check for PostGIS GEOMETRY columns.
|
1302
|
+
geometry_cols_types = {}
|
1303
|
+
user_defined_cols = [
|
1304
|
+
doc
|
1305
|
+
for doc in cols_types_docs_filtered
|
1306
|
+
if str(doc.get('type', None)).upper() == 'USER-DEFINED'
|
1307
|
+
]
|
1308
|
+
if user_defined_cols:
|
1309
|
+
geometry_cols_types.update(
|
1310
|
+
get_postgis_geo_columns_types(
|
1311
|
+
connectable,
|
1312
|
+
table,
|
1313
|
+
schema=schema,
|
1314
|
+
debug=debug,
|
1315
|
+
)
|
1316
|
+
)
|
1317
|
+
|
1318
|
+
cols_types = {
|
1290
1319
|
(
|
1291
1320
|
doc['column']
|
1292
1321
|
if flavor != 'oracle' else (
|
@@ -1307,6 +1336,8 @@ def get_table_cols_types(
|
|
1307
1336
|
)
|
1308
1337
|
for doc in cols_types_docs_filtered
|
1309
1338
|
}
|
1339
|
+
cols_types.update(geometry_cols_types)
|
1340
|
+
return cols_types
|
1310
1341
|
except Exception as e:
|
1311
1342
|
warn(f"Failed to fetch columns for table '{table}':\n{e}")
|
1312
1343
|
return {}
|
@@ -1809,6 +1840,8 @@ def get_null_replacement(typ: str, flavor: str) -> str:
|
|
1809
1840
|
"""
|
1810
1841
|
from meerschaum.utils.dtypes import are_dtypes_equal
|
1811
1842
|
from meerschaum.utils.dtypes.sql import DB_FLAVORS_CAST_DTYPES
|
1843
|
+
if 'geometry' in typ.lower():
|
1844
|
+
return '010100000000008058346FCDC100008058346FCDC1'
|
1812
1845
|
if 'int' in typ.lower() or typ.lower() in ('numeric', 'number'):
|
1813
1846
|
return '-987654321'
|
1814
1847
|
if 'bool' in typ.lower() or typ.lower() == 'bit':
|
@@ -2493,3 +2526,98 @@ def get_reset_autoincrement_queries(
|
|
2493
2526
|
)
|
2494
2527
|
for query in reset_queries
|
2495
2528
|
]
|
2529
|
+
|
2530
|
+
|
2531
|
+
def get_postgis_geo_columns_types(
|
2532
|
+
connectable: Union[
|
2533
|
+
'mrsm.connectors.sql.SQLConnector',
|
2534
|
+
'sqlalchemy.orm.session.Session',
|
2535
|
+
'sqlalchemy.engine.base.Engine'
|
2536
|
+
],
|
2537
|
+
table: str,
|
2538
|
+
schema: Optional[str] = 'public',
|
2539
|
+
debug: bool = False,
|
2540
|
+
) -> Dict[str, str]:
|
2541
|
+
"""
|
2542
|
+
Return the
|
2543
|
+
"""
|
2544
|
+
from meerschaum.utils.dtypes import get_geometry_type_srid
|
2545
|
+
default_type, default_srid = get_geometry_type_srid()
|
2546
|
+
default_type = default_type.upper()
|
2547
|
+
|
2548
|
+
clean(table)
|
2549
|
+
clean(str(schema))
|
2550
|
+
schema = schema or 'public'
|
2551
|
+
truncated_schema_name = truncate_item_name(schema, flavor='postgis')
|
2552
|
+
truncated_table_name = truncate_item_name(table, flavor='postgis')
|
2553
|
+
query = (
|
2554
|
+
"SELECT \"f_geometry_column\" AS \"column\", 'GEOMETRY' AS \"func\", \"type\", \"srid\"\n"
|
2555
|
+
"FROM \"geometry_columns\"\n"
|
2556
|
+
f"WHERE \"f_table_schema\" = '{truncated_schema_name}'\n"
|
2557
|
+
f" AND \"f_table_name\" = '{truncated_table_name}'\n"
|
2558
|
+
"UNION ALL\n"
|
2559
|
+
"SELECT \"f_geography_column\" AS \"column\", 'GEOGRAPHY' AS \"func\", \"type\", \"srid\"\n"
|
2560
|
+
"FROM \"geography_columns\"\n"
|
2561
|
+
f"WHERE \"f_table_schema\" = '{truncated_schema_name}'\n"
|
2562
|
+
f" AND \"f_table_name\" = '{truncated_table_name}'\n"
|
2563
|
+
)
|
2564
|
+
debug_kwargs = {'debug': debug} if isinstance(connectable, mrsm.connectors.SQLConnector) else {}
|
2565
|
+
result_rows = [
|
2566
|
+
row
|
2567
|
+
for row in connectable.execute(query, **debug_kwargs).fetchall()
|
2568
|
+
]
|
2569
|
+
cols_type_tuples = {
|
2570
|
+
row[0]: (row[1], row[2], row[3])
|
2571
|
+
for row in result_rows
|
2572
|
+
}
|
2573
|
+
|
2574
|
+
geometry_cols_types = {
|
2575
|
+
col: (
|
2576
|
+
f"{func}({typ.upper()}, {srid})"
|
2577
|
+
if srid
|
2578
|
+
else (
|
2579
|
+
func
|
2580
|
+
+ (
|
2581
|
+
f'({typ.upper()})'
|
2582
|
+
if typ.upper() not in ('GEOMETRY', 'GEOGRAPHY')
|
2583
|
+
else ''
|
2584
|
+
)
|
2585
|
+
)
|
2586
|
+
)
|
2587
|
+
for col, (func, typ, srid) in cols_type_tuples.items()
|
2588
|
+
}
|
2589
|
+
return geometry_cols_types
|
2590
|
+
|
2591
|
+
|
2592
|
+
def get_create_schema_if_not_exists_queries(
|
2593
|
+
schema: str,
|
2594
|
+
flavor: str,
|
2595
|
+
) -> List[str]:
|
2596
|
+
"""
|
2597
|
+
Return the queries to create a schema if it does not yet exist.
|
2598
|
+
For databases which do not support schemas, an empty list will be returned.
|
2599
|
+
"""
|
2600
|
+
if not schema:
|
2601
|
+
return []
|
2602
|
+
|
2603
|
+
if flavor in NO_SCHEMA_FLAVORS:
|
2604
|
+
return []
|
2605
|
+
|
2606
|
+
clean(schema)
|
2607
|
+
|
2608
|
+
if flavor == 'mssql':
|
2609
|
+
return [
|
2610
|
+
(
|
2611
|
+
f"IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = '{schema}')\n"
|
2612
|
+
"BEGIN\n"
|
2613
|
+
f" EXEC('CREATE SCHEMA {sql_item_name(schema, flavor)}');\n"
|
2614
|
+
"END;"
|
2615
|
+
)
|
2616
|
+
]
|
2617
|
+
|
2618
|
+
if flavor == 'oracle':
|
2619
|
+
return []
|
2620
|
+
|
2621
|
+
return [
|
2622
|
+
f"CREATE SCHEMA IF NOT EXISTS {sql_item_name(schema, flavor)};"
|
2623
|
+
]
|
@@ -86,7 +86,10 @@ def activate_venv(
|
|
86
86
|
target = target_path.as_posix()
|
87
87
|
|
88
88
|
if venv in active_venvs_order:
|
89
|
-
|
89
|
+
try:
|
90
|
+
sys.path.remove(target)
|
91
|
+
except Exception:
|
92
|
+
pass
|
90
93
|
try:
|
91
94
|
active_venvs_order.remove(venv)
|
92
95
|
except Exception:
|
@@ -410,6 +413,8 @@ def init_venv(
|
|
410
413
|
pass
|
411
414
|
|
412
415
|
def wait_for_lock():
|
416
|
+
if platform.system() == 'Windows':
|
417
|
+
return
|
413
418
|
max_lock_seconds = 30.0
|
414
419
|
sleep_message_seconds = 5.0
|
415
420
|
step_sleep_seconds = 0.1
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: meerschaum
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.9.0
|
4
4
|
Summary: Sync Time-Series Pipes with Meerschaum
|
5
5
|
Home-page: https://meerschaum.io
|
6
6
|
Author: Bennett Meares
|
@@ -87,6 +87,10 @@ Requires-Dist: mycli>=1.23.2; extra == "cli"
|
|
87
87
|
Requires-Dist: litecli>=1.5.0; extra == "cli"
|
88
88
|
Requires-Dist: mssql-cli>=1.0.0; extra == "cli"
|
89
89
|
Requires-Dist: gadwall>=0.2.0; extra == "cli"
|
90
|
+
Provides-Extra: gis
|
91
|
+
Requires-Dist: pyproj>=3.7.1; extra == "gis"
|
92
|
+
Requires-Dist: geopandas>=1.0.1; extra == "gis"
|
93
|
+
Requires-Dist: shapely>=2.0.7; extra == "gis"
|
90
94
|
Provides-Extra: stack
|
91
95
|
Requires-Dist: docker-compose>=1.29.2; extra == "stack"
|
92
96
|
Provides-Extra: build
|
@@ -114,7 +118,6 @@ Requires-Dist: mkdocs-linkcheck>=1.0.6; extra == "docs"
|
|
114
118
|
Requires-Dist: mkdocs-redirects>=1.0.4; extra == "docs"
|
115
119
|
Requires-Dist: jinja2==3.0.3; extra == "docs"
|
116
120
|
Provides-Extra: gui
|
117
|
-
Requires-Dist: toga>=0.3.0-dev29; extra == "gui"
|
118
121
|
Requires-Dist: pywebview>=3.6.3; extra == "gui"
|
119
122
|
Requires-Dist: pycparser>=2.21.0; extra == "gui"
|
120
123
|
Provides-Extra: extras
|
@@ -132,6 +135,7 @@ Requires-Dist: partd>=1.4.2; extra == "sql"
|
|
132
135
|
Requires-Dist: pytz; extra == "sql"
|
133
136
|
Requires-Dist: joblib>=0.17.0; extra == "sql"
|
134
137
|
Requires-Dist: SQLAlchemy>=2.0.5; extra == "sql"
|
138
|
+
Requires-Dist: GeoAlchemy2>=0.17.1; extra == "sql"
|
135
139
|
Requires-Dist: databases>=0.4.0; extra == "sql"
|
136
140
|
Requires-Dist: aiosqlite>=0.16.0; extra == "sql"
|
137
141
|
Requires-Dist: asyncpg>=0.21.0; extra == "sql"
|
@@ -164,6 +168,9 @@ Requires-Dist: fasteners>=0.19.0; extra == "sql"
|
|
164
168
|
Requires-Dist: virtualenv>=20.1.0; extra == "sql"
|
165
169
|
Requires-Dist: attrs>=24.2.0; extra == "sql"
|
166
170
|
Requires-Dist: uv>=0.2.11; extra == "sql"
|
171
|
+
Requires-Dist: pyproj>=3.7.1; extra == "sql"
|
172
|
+
Requires-Dist: geopandas>=1.0.1; extra == "sql"
|
173
|
+
Requires-Dist: shapely>=2.0.7; extra == "sql"
|
167
174
|
Provides-Extra: dash
|
168
175
|
Requires-Dist: Flask-Compress>=1.10.1; extra == "dash"
|
169
176
|
Requires-Dist: dash>=2.6.2; extra == "dash"
|
@@ -192,6 +199,7 @@ Requires-Dist: partd>=1.4.2; extra == "api"
|
|
192
199
|
Requires-Dist: pytz; extra == "api"
|
193
200
|
Requires-Dist: joblib>=0.17.0; extra == "api"
|
194
201
|
Requires-Dist: SQLAlchemy>=2.0.5; extra == "api"
|
202
|
+
Requires-Dist: GeoAlchemy2>=0.17.1; extra == "api"
|
195
203
|
Requires-Dist: databases>=0.4.0; extra == "api"
|
196
204
|
Requires-Dist: aiosqlite>=0.16.0; extra == "api"
|
197
205
|
Requires-Dist: asyncpg>=0.21.0; extra == "api"
|
@@ -224,6 +232,9 @@ Requires-Dist: fasteners>=0.19.0; extra == "api"
|
|
224
232
|
Requires-Dist: virtualenv>=20.1.0; extra == "api"
|
225
233
|
Requires-Dist: attrs>=24.2.0; extra == "api"
|
226
234
|
Requires-Dist: uv>=0.2.11; extra == "api"
|
235
|
+
Requires-Dist: pyproj>=3.7.1; extra == "api"
|
236
|
+
Requires-Dist: geopandas>=1.0.1; extra == "api"
|
237
|
+
Requires-Dist: shapely>=2.0.7; extra == "api"
|
227
238
|
Requires-Dist: pprintpp>=0.4.0; extra == "api"
|
228
239
|
Requires-Dist: asciitree>=0.3.3; extra == "api"
|
229
240
|
Requires-Dist: typing-extensions>=4.7.1; extra == "api"
|
@@ -286,7 +297,9 @@ Requires-Dist: aiomysql>=0.0.21; extra == "full"
|
|
286
297
|
Requires-Dist: sqlalchemy-cockroachdb>=2.0.0; extra == "full"
|
287
298
|
Requires-Dist: duckdb>=1.0.0; extra == "full"
|
288
299
|
Requires-Dist: duckdb-engine>=0.13.0; extra == "full"
|
289
|
-
Requires-Dist:
|
300
|
+
Requires-Dist: pyproj>=3.7.1; extra == "full"
|
301
|
+
Requires-Dist: geopandas>=1.0.1; extra == "full"
|
302
|
+
Requires-Dist: shapely>=2.0.7; extra == "full"
|
290
303
|
Requires-Dist: pywebview>=3.6.3; extra == "full"
|
291
304
|
Requires-Dist: pycparser>=2.21.0; extra == "full"
|
292
305
|
Requires-Dist: numpy>=1.18.5; extra == "full"
|
@@ -297,6 +310,7 @@ Requires-Dist: partd>=1.4.2; extra == "full"
|
|
297
310
|
Requires-Dist: pytz; extra == "full"
|
298
311
|
Requires-Dist: joblib>=0.17.0; extra == "full"
|
299
312
|
Requires-Dist: SQLAlchemy>=2.0.5; extra == "full"
|
313
|
+
Requires-Dist: GeoAlchemy2>=0.17.1; extra == "full"
|
300
314
|
Requires-Dist: databases>=0.4.0; extra == "full"
|
301
315
|
Requires-Dist: aiosqlite>=0.16.0; extra == "full"
|
302
316
|
Requires-Dist: asyncpg>=0.21.0; extra == "full"
|
@@ -7,11 +7,6 @@ meerschaum/_internal/arguments/_parse_arguments.py,sha256=TtHX7NvdHLD-nVVlMctc6S
|
|
7
7
|
meerschaum/_internal/arguments/_parser.py,sha256=9AfOJ4Kc37y2gLeRabU3cDwF4RRnW-3nGKfN2l0P3rQ,17163
|
8
8
|
meerschaum/_internal/docs/__init__.py,sha256=ZQYHWo6n0kfLLkyG36YXqTYvv2Pc7it5HZHMylT6cBA,126
|
9
9
|
meerschaum/_internal/docs/index.py,sha256=ZkqXj-GhoLEpgMysy4ugvOlFhWVlnq7tFvzMhy43jUQ,24670
|
10
|
-
meerschaum/_internal/gui/__init__.py,sha256=KF6Opae0aBOjIndMZ2txoPs7ozCXRlR-lcTsicLO7fc,1313
|
11
|
-
meerschaum/_internal/gui/app/__init__.py,sha256=rKUa8hHk6Fai-PDF61tQcpT1myxKcfmvEMDHxThNp7o,1565
|
12
|
-
meerschaum/_internal/gui/app/_windows.py,sha256=-VHdjTzA3V596fVqnbmTxemONSp_80-sTNJ0CTB8FwU,2632
|
13
|
-
meerschaum/_internal/gui/app/actions.py,sha256=rx37qXf3uoa7Ou0n1cISqNFZNL0nr4wO7vSUmWO8f2E,935
|
14
|
-
meerschaum/_internal/gui/app/pipes.py,sha256=4nAQ0rrHb_2bNgDF0Ru2YlbPaCDDzAl5beOGU4Af-4A,1596
|
15
10
|
meerschaum/_internal/shell/Shell.py,sha256=R6xW-D9gVuxJxQzf4Bf6E9V8exE40aCdrDJ_snUpoxA,39982
|
16
11
|
meerschaum/_internal/shell/ShellCompleter.py,sha256=Ex6mPv83RUNdC3ufRJCcaoOmQ8q8z6tCHDVzXQmWIpY,3293
|
17
12
|
meerschaum/_internal/shell/ValidAutoSuggest.py,sha256=bARjOWMidz0dvMelLUe6yRPto5l3gcEHYHqFDjoh22I,1280
|
@@ -54,12 +49,13 @@ meerschaum/actions/upgrade.py,sha256=AjuC93Te-I_GWwIfuNkFJ2q1zVHDQ2Oco34S4JgK2iA
|
|
54
49
|
meerschaum/actions/verify.py,sha256=81Km4sPkLVAzPG6pDbMfoBpEWsk8pxjVGXgu-k8seSs,5019
|
55
50
|
meerschaum/api/__init__.py,sha256=UsAFx7oOTB9Z8m1u0DRfiQFdSxjoyqgVaICuwv7loDg,10414
|
56
51
|
meerschaum/api/_chain.py,sha256=h8-WXUGXX6AqzdALfsBC5uv0FkAcLdHJXCGzqzuq89k,875
|
52
|
+
meerschaum/api/_chunks.py,sha256=rmhz8h4MZDnjkE02fDqDEwbYwwZbnU4gVwy3-QqB5y0,1898
|
57
53
|
meerschaum/api/_events.py,sha256=f-98AXHU10IL9zRGX1FrZFANxxiMz5ryeJnfFWaU8R8,2232
|
58
54
|
meerschaum/api/_exceptions.py,sha256=xfbWp8F8JYrMUdtDXesn8C8e39_jAXHz51IosIGjkVM,463
|
59
55
|
meerschaum/api/_oauth2.py,sha256=dJTIVlPpX3sAVW-PcN6pXRNy2RR5QAalu2RHp3l14YU,1683
|
60
56
|
meerschaum/api/_websockets.py,sha256=EMT9wB3yELu_WyCMqn9ZpgMDh23spUUchouRLCCLVuw,1509
|
61
57
|
meerschaum/api/dash/__init__.py,sha256=SpM96oyOy_MUswZHtJkVzMn91PjdADPyCAkyTQjL7LA,2079
|
62
|
-
meerschaum/api/dash/components.py,sha256=
|
58
|
+
meerschaum/api/dash/components.py,sha256=zeXzitZzXSLva12PJI51GeTmmFnmVc1Dl6Opm_yA5dQ,9850
|
63
59
|
meerschaum/api/dash/connectors.py,sha256=-Wd40ieYJI2nOASXi4V1C4bvLekjnN_tj6zp7HgZDl0,791
|
64
60
|
meerschaum/api/dash/graphs.py,sha256=wJUDWzcLN8-C3xko6rj0F2v7Rt8YDkSXoVkkXJjYGIk,2046
|
65
61
|
meerschaum/api/dash/jobs.py,sha256=mj9STE6AaQY4fwkjD1JcYRG0iW3VEcP04bO1SlKgiXw,7681
|
@@ -70,29 +66,33 @@ meerschaum/api/dash/sessions.py,sha256=i8qFGZX1zlxskj13F5B9TYd-mXdVA71Q8d8nESbiJ
|
|
70
66
|
meerschaum/api/dash/sync.py,sha256=9lt7IRdG-fe9gf_ZO_viPiGlerX7ic6r_VFocv3I51A,504
|
71
67
|
meerschaum/api/dash/users.py,sha256=3wq3ZG51DxOjNeF-X5HdlXD1MYQ1nQ9oowYSvFEY7hs,1050
|
72
68
|
meerschaum/api/dash/websockets.py,sha256=0iwRaI9k2okU1baYstOkehfZ6-qMi_S6qm4lPBjVlH8,924
|
73
|
-
meerschaum/api/dash/webterm.py,sha256=
|
69
|
+
meerschaum/api/dash/webterm.py,sha256=KyCe5yUZ2IXEDqJxoMcruenpvuwA1wWqRwXVnEOVMY0,4394
|
74
70
|
meerschaum/api/dash/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
75
71
|
meerschaum/api/dash/assets/ansi_up.js,sha256=in4bWSCayjzXbOgROw7eLRrFwCTIiLxh8nbFSJXtDl4,21923
|
76
72
|
meerschaum/api/dash/assets/banner_1920x320.png,sha256=n2cNTSVEsGxO9XZg2keb85J3UOkux70nyIMNII5m4SA,338636
|
77
73
|
meerschaum/api/dash/assets/favicon.ico,sha256=nDEekVxwS60wEDno1nbw5GF3TJOcDV26SETOHJEZKkY,9662
|
78
74
|
meerschaum/api/dash/assets/logo_48x48.png,sha256=hTR5BHUHEN4yP2xiqAcDciuigoII9T3-80R-dzsxVmw,10218
|
79
75
|
meerschaum/api/dash/assets/logo_500x500.png,sha256=9EUtf6wQcEZTXHKfQ2kjNXod6Rn_4DTB_BkTgxggq00,67702
|
80
|
-
meerschaum/api/dash/callbacks/__init__.py,sha256=
|
81
|
-
meerschaum/api/dash/callbacks/custom.py,sha256=
|
82
|
-
meerschaum/api/dash/callbacks/dashboard.py,sha256=
|
76
|
+
meerschaum/api/dash/callbacks/__init__.py,sha256=5dh8gsfcVaLlM4WcvGVE9Q1CtwaqJ2qwND0tdhvodng,607
|
77
|
+
meerschaum/api/dash/callbacks/custom.py,sha256=af7O0OMoNOcAJOuE0N2WXQZbmHiUVcQB9YBe_xgcr7I,1795
|
78
|
+
meerschaum/api/dash/callbacks/dashboard.py,sha256=BmFYp3yPkg0N4ywHcKhn2aevGc5BIYfjqtFy2YIj43w,35517
|
83
79
|
meerschaum/api/dash/callbacks/jobs.py,sha256=JYTrDcUEte_MIT3EegLDmQDsmU_Mxqw8L60dvF71ho4,8418
|
84
80
|
meerschaum/api/dash/callbacks/login.py,sha256=mEvMgV-f85H6DvqNdTvJPoiwHqTnhWY2nf_zLB26ipE,2876
|
85
81
|
meerschaum/api/dash/callbacks/pipes.py,sha256=byphQn-wJOe8ft-fGU9wac0n5xsMjVHJzNvYYb9NsKU,1693
|
86
82
|
meerschaum/api/dash/callbacks/plugins.py,sha256=znPgw_Uf3__QEjKxoIHADfjVNubTehCDaTJ02b16pQo,2760
|
87
83
|
meerschaum/api/dash/callbacks/register.py,sha256=KfMFgXWiFkemz0YriSPaLQBVnFDG8q6_t9gHuempOS0,3666
|
88
|
-
meerschaum/api/dash/
|
89
|
-
meerschaum/api/dash/
|
84
|
+
meerschaum/api/dash/callbacks/settings/__init__.py,sha256=pttbJMJGfd5I_oCWfbpbbVtXZp7pyerl9ESgY9xwUwI,157
|
85
|
+
meerschaum/api/dash/callbacks/settings/password_reset.py,sha256=LD4wS1k-MyGIJNwQL897Rg001U9Z53iHWK2Agzu6oyU,2468
|
86
|
+
meerschaum/api/dash/pages/__init__.py,sha256=U7PyReXPnB0PizArS6o556FXuDsUBCplI9zBLe3CU2s,391
|
87
|
+
meerschaum/api/dash/pages/dashboard.py,sha256=d6zPEycsbiFJyvufN6kt5JsOZbpW9zy-mNxPAJ_wOFo,3830
|
90
88
|
meerschaum/api/dash/pages/error.py,sha256=-uCrASuIBrceHcc-leLeEoLos2ibSBWG0XMFQzFwtbw,595
|
91
89
|
meerschaum/api/dash/pages/job.py,sha256=bAXXDB0fM3bSiqqJ2XlTwVdg2lohRaWdIGZp7ZtTZOw,544
|
92
90
|
meerschaum/api/dash/pages/login.py,sha256=Qjc-kDL9wW4D1cN48x0MrmWCME4igHDt0VkX9JSipjY,4603
|
93
91
|
meerschaum/api/dash/pages/pipes.py,sha256=Cd5XY_m4nBIsEk6TQadpcajuBRzxw1cyDaTtojwykcI,506
|
94
|
-
meerschaum/api/dash/pages/plugins.py,sha256=
|
92
|
+
meerschaum/api/dash/pages/plugins.py,sha256=EX-M99bxvRSrI-9bIBocj-tmBpf6NgPQ813sJ_HSXS8,1731
|
95
93
|
meerschaum/api/dash/pages/register.py,sha256=dqhsiu2OhrXhs4RL41_CpqipdrWo1-_roASvZIDBAq8,2364
|
94
|
+
meerschaum/api/dash/pages/settings/__init__.py,sha256=UjfD2Pyz504CcbieVQbXbljjU5Wnxx7Pe0aix1zqBOE,153
|
95
|
+
meerschaum/api/dash/pages/settings/password_reset.py,sha256=cVIesZfCSixEBPWPLAV0jQpwJPKq0vXTIZ_BDuKlU6g,1864
|
96
96
|
meerschaum/api/models/__init__.py,sha256=WrSLChqDkw5y9uU_ma2xJFFLqqVAQvHoIjuYrZDxOcM,276
|
97
97
|
meerschaum/api/models/_interfaces.py,sha256=XtqxzWvUhZ-_SDia45Ut9K_VNziSltGjmLlUt-tMcJY,263
|
98
98
|
meerschaum/api/models/_locations.py,sha256=EF0aZDynLYyDApk_FcpoEK_5ictWnh6bwD73yP99rh8,304
|
@@ -102,7 +102,7 @@ meerschaum/api/resources/__init__.py,sha256=LshFiqh0sL55QtC_15fz6A6r-1_H9sQWtlif
|
|
102
102
|
meerschaum/api/resources/static/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
103
103
|
meerschaum/api/resources/static/css/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
104
104
|
meerschaum/api/resources/static/css/bootstrap.min.css,sha256=W8ArKu4Q_NnxCNqO3doJB2hqrNOIHNLFroAxpyxnYL8,180286
|
105
|
-
meerschaum/api/resources/static/css/dash.css,sha256=
|
105
|
+
meerschaum/api/resources/static/css/dash.css,sha256=nhHriUI9eos9bjMUofqNhqMQDK8W_f-vxfcWhbl1XBY,1886
|
106
106
|
meerschaum/api/resources/static/css/dbc_dark.css,sha256=2pka1ymFAjlWLv-mJaxGkPeL-gTEMD2g4Ba6LMuhHV4,6087
|
107
107
|
meerschaum/api/resources/static/css/styles.css,sha256=dHcCtRUzs8kJhpG6d4gusROLSe9AFkUitybvgFmEDvI,81
|
108
108
|
meerschaum/api/resources/static/css/xterm.css,sha256=gy8_LGA7Q61DUf8ElwFQzHqHMBQnbbEmpgZcbdgeSHI,5383
|
@@ -118,7 +118,7 @@ meerschaum/api/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
|
|
118
118
|
meerschaum/api/resources/templates/index.html,sha256=Ck-S0U5abJgB-wTOKIGg0ispGzKlXXqvFUoNAAByzLA,1019
|
119
119
|
meerschaum/api/resources/templates/old_index.html,sha256=BDeOlcXhSsBH3-NaRtuX4Z1sDuhOoCMa_Dq-6g5RMpc,1711
|
120
120
|
meerschaum/api/resources/templates/secret.html,sha256=0QWkm4ZoN81Aw1pd2-62rGCvx3nXPHfFUoegj3Iy8Ls,141
|
121
|
-
meerschaum/api/resources/templates/termpage.html,sha256=
|
121
|
+
meerschaum/api/resources/templates/termpage.html,sha256=xW1_a7Anbk2RM-P75EuAVKYPOo6_36fByT0OMxD-yos,6168
|
122
122
|
meerschaum/api/routes/__init__.py,sha256=38k-iGm7LM30C1jfvkt7_tatRO3tfx-eOd8AnTgLkc0,611
|
123
123
|
meerschaum/api/routes/_actions.py,sha256=VUasS1dpr4d3TXHcR1CXlRZPAqvGKKuHv_f9PsOkQ5c,1732
|
124
124
|
meerschaum/api/routes/_connectors.py,sha256=E2Icawy42nBPM7peRlHBM9_v4vF0daWCf-_Ok14LbqI,1776
|
@@ -126,7 +126,7 @@ meerschaum/api/routes/_index.py,sha256=Z8kuyqm3vmJadw8iIYyswYI4-3IOJ7KXdkhDTv1oU
|
|
126
126
|
meerschaum/api/routes/_jobs.py,sha256=sEt-UtVd5pN-hJgikTvj1oTKJQ2hhNe8XhjkclwOXOE,12568
|
127
127
|
meerschaum/api/routes/_login.py,sha256=tygEp50EVOMgvTG6CEASlShflbtEK8viJ9O07o0lnnE,2434
|
128
128
|
meerschaum/api/routes/_misc.py,sha256=XxfSvXNGAm8rdvXePXWxX8wc5tjeAdBOSZwYveL3oAM,2591
|
129
|
-
meerschaum/api/routes/_pipes.py,sha256=
|
129
|
+
meerschaum/api/routes/_pipes.py,sha256=QEZgLbCPyQUXGq6MbNcSIPsMZ357s19CIlECjp-rPnc,29776
|
130
130
|
meerschaum/api/routes/_plugins.py,sha256=okstNlv9Bhoiy6JvQWgwjxEi4kQ8adPUcir6k3Y7hH8,6329
|
131
131
|
meerschaum/api/routes/_users.py,sha256=i55LuLTQ2cuzIyWz0PxkWji6aQQUIBPf_FEryKwXI50,7197
|
132
132
|
meerschaum/api/routes/_version.py,sha256=-3A0i4Gk54netFOOwjI_x3YQik9vgHjtq7G_VYbzIJo,750
|
@@ -134,7 +134,7 @@ meerschaum/api/routes/_webterm.py,sha256=S7RXV8vvaTFbmVeehh4UhyXb4NCgcsyOQzoAG7j
|
|
134
134
|
meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
|
135
135
|
meerschaum/config/__init__.py,sha256=5ZBq71P9t3nb74r5CGvMfNuauPscfegBX-nkaAUi5C4,11541
|
136
136
|
meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
|
137
|
-
meerschaum/config/_default.py,sha256=
|
137
|
+
meerschaum/config/_default.py,sha256=41onvi-NJK_agSkBnsZJwDz09accGLkH8AhkeCuIYZk,6582
|
138
138
|
meerschaum/config/_edit.py,sha256=M9yX_SDD24gV5kWITZpy7p9AWTizJsIAGWAs3WZx-Ws,9087
|
139
139
|
meerschaum/config/_environment.py,sha256=Vv4DLDfc2vKLbCLsMvkQDj77K4kEvHKEBmUBo-wCrgo,4419
|
140
140
|
meerschaum/config/_formatting.py,sha256=OMuqS1EWOsj_34wSs2tOqGIWci3bTMIZ5l-uelZgsIM,6672
|
@@ -145,7 +145,7 @@ meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6
|
|
145
145
|
meerschaum/config/_read_config.py,sha256=RLC3HHi_1ndj7ITVDKLD9_uULY3caGRwSz3ATYE-ixA,15014
|
146
146
|
meerschaum/config/_shell.py,sha256=46_m49Txc5q1rGfCgO49ca48BODx45DQJi8D0zz1R18,4245
|
147
147
|
meerschaum/config/_sync.py,sha256=jHcWRkxd82_BgX8Xo8agsWvf7BSbv3qHLWmYl6ehp_0,4242
|
148
|
-
meerschaum/config/_version.py,sha256=
|
148
|
+
meerschaum/config/_version.py,sha256=CLmGepAmbIvVWFURHx1ucpD5NK7zjOTy1vsW-iMAsFw,71
|
149
149
|
meerschaum/config/paths.py,sha256=JjibeGN3YAdSNceRwsd42aNmeUrIgM6ndzC8qZAmNI0,621
|
150
150
|
meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
151
151
|
meerschaum/config/stack/__init__.py,sha256=2UukC0Lmk-aVL1o1qXzumqmuIrw3vu9fD7iCuz4XD4I,10544
|
@@ -155,50 +155,50 @@ meerschaum/config/stack/mosquitto/resources/__init__.py,sha256=47DEQpj8HBSa-_TIm
|
|
155
155
|
meerschaum/config/stack/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
156
156
|
meerschaum/config/static/__init__.py,sha256=ccm5oaYnLu0j5B85C9a8Y7jWsw4ReJq5RqyvLd-rW_s,5519
|
157
157
|
meerschaum/connectors/_Connector.py,sha256=VaVNg0SlQCTXk4shl3c68QdkbymA2Y9ScUlUjckk8PY,6795
|
158
|
-
meerschaum/connectors/__init__.py,sha256=
|
159
|
-
meerschaum/connectors/parse.py,sha256=
|
158
|
+
meerschaum/connectors/__init__.py,sha256=Hx_T2E3fF6zYLC1pjAt0EbnuDbVk9UOI845WaQGw7lk,12716
|
159
|
+
meerschaum/connectors/parse.py,sha256=Dzu3fiZu-Vd5d0qje-HCwIIolfmWmUYEOpYRjc7vDqw,4188
|
160
160
|
meerschaum/connectors/poll.py,sha256=23yRUeIqqyNVt8VoJErhirW543YZ6X0ocfBauMJnC_g,7465
|
161
|
-
meerschaum/connectors/api/_APIConnector.py,sha256=
|
161
|
+
meerschaum/connectors/api/_APIConnector.py,sha256=bcjvPVfxE7y7i_r3FTPL1phzjTMqWq4szJzeusaNqQg,5598
|
162
162
|
meerschaum/connectors/api/__init__.py,sha256=rYHDMK7n-5X5HoxiRITt-sVLgePnPQbgwntkhzvJvOk,234
|
163
163
|
meerschaum/connectors/api/_actions.py,sha256=gd3F8i5BvN8XRvMcPvPVR8sc1DeLzgoBHdDhc8PtACE,3966
|
164
164
|
meerschaum/connectors/api/_fetch.py,sha256=Khq9AFr1nk8Dsmcedb77aWhAuHw0JGgVeahDG95Q5MQ,2072
|
165
165
|
meerschaum/connectors/api/_jobs.py,sha256=N5lpHFGG10jlVgaJeWAOTuLBQw3AdgjXsEPpp1YwZQE,11270
|
166
166
|
meerschaum/connectors/api/_login.py,sha256=cVVmiS-QT0y0QHdrG25eGB4f7j44om1E0YPxnMCNeas,2049
|
167
167
|
meerschaum/connectors/api/_misc.py,sha256=XK0LLexNUEKZjAAqoJ-9oOgwLlMdwxSOvcpqO5NuOas,1083
|
168
|
-
meerschaum/connectors/api/_pipes.py,sha256=
|
169
|
-
meerschaum/connectors/api/_plugins.py,sha256=
|
170
|
-
meerschaum/connectors/api/_request.py,sha256=
|
168
|
+
meerschaum/connectors/api/_pipes.py,sha256=6WVHx5chscrejIPcvBNKIH4FDaRCJ1cMzADrdtEpRes,23865
|
169
|
+
meerschaum/connectors/api/_plugins.py,sha256=hv0rqWaH8GrQMup8XMdfUbpv_qGcEAjnl3S8yYQGcsI,5072
|
170
|
+
meerschaum/connectors/api/_request.py,sha256=JtnDa14nkC5CDCuYhutUPztnbLxxzgjmGG_0k09B4mY,6957
|
171
171
|
meerschaum/connectors/api/_uri.py,sha256=HWxqGx4R1cHZ3ywy9Ro9ePbFxxusw4RLaC3hpGt9Z6I,1469
|
172
172
|
meerschaum/connectors/api/_users.py,sha256=kzb7ENgXwQ19OJYKOuuWzx2rwVuUZCly9dTnyvVuT2Q,5275
|
173
173
|
meerschaum/connectors/plugin/PluginConnector.py,sha256=aQ1QaB7MordCFimZqoGLb0R12PfDUN_nWks2J5mzeAs,2084
|
174
174
|
meerschaum/connectors/plugin/__init__.py,sha256=pwF7TGY4WNz2_HaVdmK4rPQ9ZwTOEuPHgzOqsGcoXJw,198
|
175
|
-
meerschaum/connectors/sql/_SQLConnector.py,sha256=
|
175
|
+
meerschaum/connectors/sql/_SQLConnector.py,sha256=FmosRX4PKR7AAW-PgX69R_32AsA7E7preQXJf4xc3WI,12240
|
176
176
|
meerschaum/connectors/sql/__init__.py,sha256=3cqYiDkVasn7zWdtOTAZbT4bo95AuvGOmDD2TkaAxtw,205
|
177
|
-
meerschaum/connectors/sql/_cli.py,sha256=
|
178
|
-
meerschaum/connectors/sql/_create_engine.py,sha256=
|
177
|
+
meerschaum/connectors/sql/_cli.py,sha256=smwMBxq-euAeefbdZSXGTr83cm04GVGT1WIFEftMLa4,5142
|
178
|
+
meerschaum/connectors/sql/_create_engine.py,sha256=RRiTNNVNwE_sabeTRWrlZZoFB6jFXDfcEcXkENuo8Rc,12035
|
179
179
|
meerschaum/connectors/sql/_fetch.py,sha256=mVe5zQo7SM9PSUU3Vjhacg4Bq1-Vttb7KkXL4p5YQdQ,12818
|
180
180
|
meerschaum/connectors/sql/_instance.py,sha256=xCc8M0xWMzF5Tu_1uWIFivAoHey5N1ccFhN_Z7u04zk,6304
|
181
|
-
meerschaum/connectors/sql/_pipes.py,sha256=
|
181
|
+
meerschaum/connectors/sql/_pipes.py,sha256=EMsOU-GgOJuQGEqBilq0jStii4kBwvEmFxvoMavGzxg,129726
|
182
182
|
meerschaum/connectors/sql/_plugins.py,sha256=OVEdZ_UHTi-x5sF-5lu2TmR9ONxddp6SwDOmFo5TpU8,8051
|
183
|
-
meerschaum/connectors/sql/_sql.py,sha256=
|
183
|
+
meerschaum/connectors/sql/_sql.py,sha256=EziDFp9mLU-VPvFczG94ZUtGy-JmKxXB4wbLtCfkykk,43786
|
184
184
|
meerschaum/connectors/sql/_uri.py,sha256=BFzu5pjlbL3kxLH13vHWlpKGYTPfg8wuA2j58O9NsCM,3440
|
185
185
|
meerschaum/connectors/sql/_users.py,sha256=mRyjsUCfPV52nfTQUbpu9gMXfV_DHXNqEhw4N-lSS4Q,9954
|
186
186
|
meerschaum/connectors/sql/tools.py,sha256=jz8huOaRCwGlYdtGfAqAh7SoK8uydYBrasKQba9FT38,187
|
187
187
|
meerschaum/connectors/sql/tables/__init__.py,sha256=53EeJsvmGjj68SpSShdt6kyLuk5Md5O8DnvWC1ra3u8,8876
|
188
188
|
meerschaum/connectors/sql/tables/types.py,sha256=Jc_MTHIBM-KHpQt__Lckp39CeOo7tGOiAk5faDx-znY,1573
|
189
|
-
meerschaum/connectors/valkey/_ValkeyConnector.py,sha256=
|
189
|
+
meerschaum/connectors/valkey/_ValkeyConnector.py,sha256=IJgFXHXH89J2uDP_WaejIzr1L8gSNQtSXGxjXeYm2gw,15854
|
190
190
|
meerschaum/connectors/valkey/__init__.py,sha256=jkVutsygQCvGPLN17cP6wHAjHajxVycnQJbm2eVMuY0,187
|
191
191
|
meerschaum/connectors/valkey/_fetch.py,sha256=MjeE0h3YI4M3LCzy7axQAc_fX_l82vUqX4WXcYoppxE,1920
|
192
|
-
meerschaum/connectors/valkey/_pipes.py,sha256=
|
192
|
+
meerschaum/connectors/valkey/_pipes.py,sha256=3F24dzdCZ17fQU2tnk2x4n-Mr95fd5tP2-sKD0FiXPw,24673
|
193
193
|
meerschaum/connectors/valkey/_plugins.py,sha256=ZqiEW4XZCOpw4G8DUK2IKY6Qrph4mYfTjgXWimgakYY,6267
|
194
194
|
meerschaum/connectors/valkey/_users.py,sha256=AS1vLarrkDA9yPK644GWwRiQiTZVa9x3nlLpyntq40g,7730
|
195
195
|
meerschaum/core/__init__.py,sha256=tjASW10n9uLV6bYhcwP4rggh-ESXSJzgxpSBbVsuISs,251
|
196
|
-
meerschaum/core/Pipe/__init__.py,sha256=
|
196
|
+
meerschaum/core/Pipe/__init__.py,sha256=rHlKky1AZI6kg9J_9_yOVCJHinMB9JN6hy0VMZBQmdk,19393
|
197
197
|
meerschaum/core/Pipe/_attributes.py,sha256=wZQBGspZHmqmab_DNEUrvYsJSZtwaDsj0zeXDHoEBdQ,22419
|
198
198
|
meerschaum/core/Pipe/_bootstrap.py,sha256=gTNGh5e2LmTMrgIpHqrVaL60uPKWCphhsuz8j-lJ2HI,7348
|
199
199
|
meerschaum/core/Pipe/_clear.py,sha256=LghXabgyyc1tD7FNQrh9ExT71ipcg2poM9FDA3k9e4M,2230
|
200
200
|
meerschaum/core/Pipe/_copy.py,sha256=YDclAapf_spm9phpFr4-CALyYyw7nUsyKyiaLM1cnm4,2965
|
201
|
-
meerschaum/core/Pipe/_data.py,sha256=
|
201
|
+
meerschaum/core/Pipe/_data.py,sha256=5iHl-_Nsp1xizcNF60ZcEbDvtIYzmdLqpx0Q596Kz4Q,26792
|
202
202
|
meerschaum/core/Pipe/_deduplicate.py,sha256=Wsa1cJk41LgaHwIsJC9OZfPZ_3GoMP26_y8MmJdTrO8,10137
|
203
203
|
meerschaum/core/Pipe/_delete.py,sha256=1geNp9BgrocXP1gt76dMbnlJWKYFMuSNqPFA4K4-hXE,2118
|
204
204
|
meerschaum/core/Pipe/_drop.py,sha256=KDfJVz2aGjHUE1Jkmj7Ej4ICPR5xPiuhyhgRO7Lu9d4,3299
|
@@ -208,7 +208,7 @@ meerschaum/core/Pipe/_fetch.py,sha256=IojFSA_EXBSm0I8BmlDgmUh3M85FFtXjmDJhdxZ8Ll
|
|
208
208
|
meerschaum/core/Pipe/_index.py,sha256=cYgaVwBVfAYxJBZ6j6MXDqOxnOrD_QnYi33_kIwy_FQ,1944
|
209
209
|
meerschaum/core/Pipe/_register.py,sha256=Sd5xaAW8H7uLTIoommcKb-6kHPRuHJLWNSbPnt2UbvA,2240
|
210
210
|
meerschaum/core/Pipe/_show.py,sha256=nG50y8eBT9TVuKkRgAKtNDNIxysJvMNxfu__lkL1F9k,1352
|
211
|
-
meerschaum/core/Pipe/_sync.py,sha256=
|
211
|
+
meerschaum/core/Pipe/_sync.py,sha256=YsNlWepIPHVxfoBsYtPkdl5jMdTIEEd0kHtMllUyAoI,39968
|
212
212
|
meerschaum/core/Pipe/_verify.py,sha256=aXRpD6azrN9A9Z3AXkKQw6NJFqNWqZVpgidjh5BsfLE,22565
|
213
213
|
meerschaum/core/Plugin/__init__.py,sha256=UXg64EvJPgI1PCxkY_KM02-ZmBm4FZpLPIQR_uSJJDc,137
|
214
214
|
meerschaum/core/User/_User.py,sha256=qbI0GIkr3G0PI4d9S49uatbJQ2kH_-z5-GoVJ0fuEtA,6624
|
@@ -217,21 +217,21 @@ meerschaum/jobs/_Executor.py,sha256=qM62BhFTM4tyJ7p90KOM0y3qyeRY9k3ZV_aTDJMHnO8,
|
|
217
217
|
meerschaum/jobs/_Job.py,sha256=D4TFrEQQ9EYqZrnepLBO7T3Sx2mOOdgBs2JnBdC1dNc,32257
|
218
218
|
meerschaum/jobs/__init__.py,sha256=YmZr1ZU8MLUjlTSLQ61Y6eE-a-SYuSMSMhiIpJKao_Y,12829
|
219
219
|
meerschaum/jobs/systemd.py,sha256=CZbBkm-2z8z7G3CNmP5yBRj2VtWuxmxXVIv97cGhZGc,24613
|
220
|
-
meerschaum/plugins/_Plugin.py,sha256=
|
221
|
-
meerschaum/plugins/__init__.py,sha256=
|
220
|
+
meerschaum/plugins/_Plugin.py,sha256=CyaWg0TImFui9NMJkTP3bYKnYHmRC5uVrPSPKoiB_Dc,34359
|
221
|
+
meerschaum/plugins/__init__.py,sha256=H0VwldqR_n5XaX3amBl58mDgugIo0Pnn-e1Xxyb103I,27312
|
222
222
|
meerschaum/plugins/bootstrap.py,sha256=VwjpZAuYdqPJW0YoVgAoM_taHkdQHqP902-8T7OWWCI,11339
|
223
223
|
meerschaum/utils/__init__.py,sha256=QrK1K9hIbPCRCM5k2nZGFqGnrqhA0Eh-iSmCU7FG6Cs,612
|
224
224
|
meerschaum/utils/_get_pipes.py,sha256=tu4xKPoDn79Dz2kWM13cXTP4DSCkn-3G9M8KiLftopw,11073
|
225
|
-
meerschaum/utils/dataframe.py,sha256=
|
225
|
+
meerschaum/utils/dataframe.py,sha256=Rc9B6oc8hQfhNKzHqemzf_l16Zb4xksPMf6XOut6Ozs,53790
|
226
226
|
meerschaum/utils/debug.py,sha256=GyIzJmunkoPnOcZNYVQdT4Sgd-aOb5MI2VbIgATOjIQ,3695
|
227
227
|
meerschaum/utils/interactive.py,sha256=t-6jWozXSqL7lYGDHuwiOjTgr-UKhdcg61q_eR5mikI,3196
|
228
|
-
meerschaum/utils/misc.py,sha256=
|
228
|
+
meerschaum/utils/misc.py,sha256=by_cNQ2qzQoFZYDBLRIimFzsxXW3QLuHSsFUnSahk5E,47419
|
229
229
|
meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRUc,1006
|
230
230
|
meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
|
231
231
|
meerschaum/utils/process.py,sha256=as0-CjG4mqFP0TydVvmAmgki6er4thS5BqUopeiq98Q,8216
|
232
232
|
meerschaum/utils/prompt.py,sha256=qj1As1tuiL0GZTku_YOC6I5DmOU6L5otDR7DW7LA5fM,19397
|
233
233
|
meerschaum/utils/schedule.py,sha256=Vrcd2Qs-UPVn6xBayNUIgludf0Mlb6Wrgq6ATdyhV8c,11451
|
234
|
-
meerschaum/utils/sql.py,sha256=
|
234
|
+
meerschaum/utils/sql.py,sha256=sVW1F7BMshmGPiG9yi2nSRVtU9mzQKH8SbqfNrl018Q,84369
|
235
235
|
meerschaum/utils/threading.py,sha256=awjbVL_QR6G-o_9Qk85utac9cSdqkiC8tQSdERCdrG8,2814
|
236
236
|
meerschaum/utils/typing.py,sha256=U3MC347sh1umpa3Xr1k71eADyDmk4LB6TnVCpq8dVzI,2830
|
237
237
|
meerschaum/utils/warnings.py,sha256=n-phr3BftNNgyPnvnXC_VMSjtCvjiCZ-ewmVfcROhkc,6611
|
@@ -242,23 +242,23 @@ meerschaum/utils/daemon/RotatingFile.py,sha256=8_bXegBjjzNRlNEjFZ_EHU4pSaDfjXZTw
|
|
242
242
|
meerschaum/utils/daemon/StdinFile.py,sha256=qdZ8E_RSOkURypwnS50mWeyWyRig1bAY9tKWMTVKajc,3307
|
243
243
|
meerschaum/utils/daemon/__init__.py,sha256=ziRPyu_IM3l7Xd58y3Uvt0fZLoirJ9nuboFIxxult6c,8741
|
244
244
|
meerschaum/utils/daemon/_names.py,sha256=d2ZwTxBoTAqXZkCfZ5LuX2XrkQmLNUq1OTlUqfoH5dA,4515
|
245
|
-
meerschaum/utils/dtypes/__init__.py,sha256=
|
246
|
-
meerschaum/utils/dtypes/sql.py,sha256=
|
245
|
+
meerschaum/utils/dtypes/__init__.py,sha256=BCu-a66OdkEn6EwuBN182EDWjXrMIbRQYjuQrXMZ9jc,21491
|
246
|
+
meerschaum/utils/dtypes/sql.py,sha256=zhwGnz6MfsaJEH7Sibtd-GfVEImnBSkZh1I3srxgiKE,31428
|
247
247
|
meerschaum/utils/formatting/__init__.py,sha256=bA8qwBeTNIVHVQOBK682bJsKSKik1yS6xYJAoi0RErk,15528
|
248
248
|
meerschaum/utils/formatting/_jobs.py,sha256=izsqPJhTtUkXUUtWnbXtReYsUYwulXtci3pBj72Ne64,6637
|
249
249
|
meerschaum/utils/formatting/_pipes.py,sha256=gwl8-xCN5GYqBZJ7SkY20BebcofY0nU5X8Y4Emf5dz8,19570
|
250
250
|
meerschaum/utils/formatting/_pprint.py,sha256=wyTmjHFnsHbxfyuytjTWzH-D42Z65GuIisQ_W6UnRPg,3096
|
251
|
-
meerschaum/utils/formatting/_shell.py,sha256=
|
251
|
+
meerschaum/utils/formatting/_shell.py,sha256=2bFvtwNXapjl9jdlc0fg79PRWHbYVcllKiVcG5g36qI,3678
|
252
252
|
meerschaum/utils/packages/__init__.py,sha256=TdKaj2tmN4bFwzusOfMv24P5ET7Zv73vyoOf9GOIr5E,64427
|
253
|
-
meerschaum/utils/packages/_packages.py,sha256=
|
253
|
+
meerschaum/utils/packages/_packages.py,sha256=G3eMtqq4WJo_iTC4ctRAWkzKhN6ZQcdFRpKy5j6glMk,9131
|
254
254
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
255
255
|
meerschaum/utils/venv/_Venv.py,sha256=gc1TCeAj-kTZbQFAT9xl1bi4HXFV5ApT0dPOJfxwr78,3748
|
256
|
-
meerschaum/utils/venv/__init__.py,sha256=
|
257
|
-
meerschaum-2.
|
258
|
-
meerschaum-2.
|
259
|
-
meerschaum-2.
|
260
|
-
meerschaum-2.
|
261
|
-
meerschaum-2.
|
262
|
-
meerschaum-2.
|
263
|
-
meerschaum-2.
|
264
|
-
meerschaum-2.
|
256
|
+
meerschaum/utils/venv/__init__.py,sha256=RhWuDohBEROIu_9T6BNPgYCrGtuE14w7nXHR1E2qyh8,27321
|
257
|
+
meerschaum-2.9.0.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
258
|
+
meerschaum-2.9.0.dist-info/METADATA,sha256=6UP33dXta35YJLMkWzwc_Cp2k8RWy-P8rcS_9TZnIMM,25123
|
259
|
+
meerschaum-2.9.0.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
260
|
+
meerschaum-2.9.0.dist-info/WHEEL,sha256=beeZ86-EfXScwlR_HKu4SllMC9wUEj_8Z_4FJ3egI2w,91
|
261
|
+
meerschaum-2.9.0.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
262
|
+
meerschaum-2.9.0.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
263
|
+
meerschaum-2.9.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
264
|
+
meerschaum-2.9.0.dist-info/RECORD,,
|