meerschaum 2.7.7__py3-none-any.whl → 2.7.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. meerschaum/_internal/term/TermPageHandler.py +54 -4
  2. meerschaum/_internal/term/__init__.py +13 -5
  3. meerschaum/_internal/term/tools.py +41 -6
  4. meerschaum/actions/copy.py +1 -0
  5. meerschaum/actions/start.py +25 -10
  6. meerschaum/api/dash/callbacks/dashboard.py +43 -2
  7. meerschaum/api/dash/components.py +13 -6
  8. meerschaum/api/dash/keys.py +82 -108
  9. meerschaum/api/dash/pages/dashboard.py +17 -17
  10. meerschaum/api/dash/sessions.py +1 -0
  11. meerschaum/api/dash/webterm.py +17 -6
  12. meerschaum/api/resources/static/js/terminado.js +0 -2
  13. meerschaum/api/resources/templates/termpage.html +47 -4
  14. meerschaum/api/routes/_webterm.py +15 -11
  15. meerschaum/config/_default.py +6 -0
  16. meerschaum/config/_version.py +1 -1
  17. meerschaum/config/static/__init__.py +2 -2
  18. meerschaum/connectors/sql/_SQLConnector.py +2 -9
  19. meerschaum/connectors/sql/_fetch.py +5 -30
  20. meerschaum/connectors/sql/_pipes.py +7 -4
  21. meerschaum/connectors/sql/_sql.py +56 -31
  22. meerschaum/connectors/valkey/_ValkeyConnector.py +2 -2
  23. meerschaum/core/Pipe/_fetch.py +4 -0
  24. meerschaum/core/Pipe/_sync.py +22 -15
  25. meerschaum/core/Pipe/_verify.py +1 -1
  26. meerschaum/utils/daemon/Daemon.py +24 -11
  27. meerschaum/utils/daemon/RotatingFile.py +3 -3
  28. meerschaum/utils/dataframe.py +42 -12
  29. meerschaum/utils/dtypes/__init__.py +153 -24
  30. meerschaum/utils/dtypes/sql.py +58 -9
  31. meerschaum/utils/formatting/__init__.py +2 -2
  32. meerschaum/utils/formatting/_pprint.py +13 -12
  33. meerschaum/utils/misc.py +32 -18
  34. meerschaum/utils/prompt.py +1 -1
  35. meerschaum/utils/sql.py +26 -8
  36. meerschaum/utils/venv/__init__.py +10 -14
  37. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/METADATA +1 -1
  38. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/RECORD +44 -44
  39. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/LICENSE +0 -0
  40. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/NOTICE +0 -0
  41. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/WHEEL +0 -0
  42. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/entry_points.txt +0 -0
  43. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/top_level.txt +0 -0
  44. {meerschaum-2.7.7.dist-info → meerschaum-2.7.9.dist-info}/zip-safe +0 -0
meerschaum/utils/misc.py CHANGED
@@ -957,24 +957,6 @@ def get_connector_labels(
957
957
  return sorted(possibilities)
958
958
 
959
959
 
960
- def json_serialize_datetime(dt: datetime) -> Union[str, None]:
961
- """
962
- Serialize a datetime object into JSON (ISO format string).
963
-
964
- Examples
965
- --------
966
- >>> import json
967
- >>> from datetime import datetime
968
- >>> json.dumps({'a': datetime(2022, 1, 1)}, default=json_serialize_datetime)
969
- '{"a": "2022-01-01T00:00:00Z"}'
970
-
971
- """
972
- if not isinstance(dt, datetime):
973
- return None
974
- tz_suffix = 'Z' if dt.tzinfo is None else ''
975
- return dt.isoformat() + tz_suffix
976
-
977
-
978
960
  def wget(
979
961
  url: str,
980
962
  dest: Optional[Union[str, 'pathlib.Path']] = None,
@@ -1237,6 +1219,22 @@ def is_systemd_available() -> bool:
1237
1219
  has_systemctl = False
1238
1220
  return has_systemctl
1239
1221
 
1222
+
1223
+ def is_tmux_available() -> bool:
1224
+ """
1225
+ Check if `tmux` is installed.
1226
+ """
1227
+ import subprocess
1228
+ try:
1229
+ has_tmux = subprocess.call(
1230
+ ['tmux', '-V'],
1231
+ stdout=subprocess.DEVNULL,
1232
+ stderr=subprocess.STDOUT
1233
+ ) == 0
1234
+ except Exception as e:
1235
+ has_tmux = False
1236
+ return has_tmux
1237
+
1240
1238
  def get_last_n_lines(file_name: str, N: int):
1241
1239
  """
1242
1240
  https://thispointer.com/python-get-last-n-lines-of-a-text-file-like-tail-command/
@@ -1705,6 +1703,22 @@ def _get_subaction_names(*args, **kwargs) -> Any:
1705
1703
  return real_function(*args, **kwargs)
1706
1704
 
1707
1705
 
1706
+ def json_serialize_datetime(dt: datetime) -> Union[str, None]:
1707
+ """
1708
+ Serialize a datetime object into JSON (ISO format string).
1709
+
1710
+ Examples
1711
+ --------
1712
+ >>> import json
1713
+ >>> from datetime import datetime
1714
+ >>> json.dumps({'a': datetime(2022, 1, 1)}, default=json_serialize_datetime)
1715
+ '{"a": "2022-01-01T00:00:00Z"}'
1716
+
1717
+ """
1718
+ from meerschaum.utils.dtypes import serialize_datetime
1719
+ return serialize_datetime(dt)
1720
+
1721
+
1708
1722
  _current_module = sys.modules[__name__]
1709
1723
  __all__ = tuple(
1710
1724
  name
@@ -585,7 +585,7 @@ def get_connectors_completer(*types: str):
585
585
 
586
586
  class ConnectorCompleter(Completer):
587
587
  def get_completions(self, document, complete_event):
588
- for label in get_connector_labels(*types):
588
+ for label in get_connector_labels(*types, search_term=document.text):
589
589
  yield Completion(label, start_position=(-1 * len(document.text)))
590
590
 
591
591
  return ConnectorCompleter()
meerschaum/utils/sql.py CHANGED
@@ -199,7 +199,9 @@ columns_types_queries = {
199
199
  table_schema AS schema,
200
200
  table_name AS table,
201
201
  column_name AS column,
202
- data_type AS type
202
+ data_type AS type,
203
+ numeric_precision,
204
+ numeric_scale
203
205
  FROM information_schema.columns
204
206
  WHERE table_name IN ('{table}', '{table_trunc}')
205
207
  """,
@@ -222,7 +224,9 @@ columns_types_queries = {
222
224
  TABLE_SCHEMA AS [schema],
223
225
  TABLE_NAME AS [table],
224
226
  COLUMN_NAME AS [column],
225
- DATA_TYPE AS [type]
227
+ DATA_TYPE AS [type],
228
+ NUMERIC_PRECISION AS [numeric_precision],
229
+ NUMERIC_SCALE AS [numeric_scale]
226
230
  FROM {db_prefix}INFORMATION_SCHEMA.COLUMNS
227
231
  WHERE TABLE_NAME IN (
228
232
  '{table}',
@@ -236,7 +240,9 @@ columns_types_queries = {
236
240
  TABLE_SCHEMA `schema`,
237
241
  TABLE_NAME `table`,
238
242
  COLUMN_NAME `column`,
239
- DATA_TYPE `type`
243
+ DATA_TYPE `type`,
244
+ NUMERIC_PRECISION `numeric_precision`,
245
+ NUMERIC_SCALE `numeric_scale`
240
246
  FROM INFORMATION_SCHEMA.COLUMNS
241
247
  WHERE TABLE_NAME IN ('{table}', '{table_trunc}')
242
248
  """,
@@ -246,7 +252,9 @@ columns_types_queries = {
246
252
  TABLE_SCHEMA `schema`,
247
253
  TABLE_NAME `table`,
248
254
  COLUMN_NAME `column`,
249
- DATA_TYPE `type`
255
+ DATA_TYPE `type`,
256
+ NUMERIC_PRECISION `numeric_precision`,
257
+ NUMERIC_SCALE `numeric_scale`
250
258
  FROM INFORMATION_SCHEMA.COLUMNS
251
259
  WHERE TABLE_NAME IN ('{table}', '{table_trunc}')
252
260
  """,
@@ -256,7 +264,9 @@ columns_types_queries = {
256
264
  NULL AS "schema",
257
265
  TABLE_NAME AS "table",
258
266
  COLUMN_NAME AS "column",
259
- DATA_TYPE AS "type"
267
+ DATA_TYPE AS "type",
268
+ DATA_PRECISION AS "numeric_precision",
269
+ DATA_SCALE AS "numeric_scale"
260
270
  FROM all_tab_columns
261
271
  WHERE TABLE_NAME IN (
262
272
  '{table}',
@@ -1230,7 +1240,7 @@ def get_table_cols_types(
1230
1240
  )).lstrip().rstrip()
1231
1241
  )
1232
1242
 
1233
- cols = ['database', 'schema', 'table', 'column', 'type']
1243
+ cols = ['database', 'schema', 'table', 'column', 'type', 'numeric_precision', 'numeric_scale']
1234
1244
  result_cols_ix = dict(enumerate(cols))
1235
1245
 
1236
1246
  debug_kwargs = {'debug': debug} if isinstance(connectable, SQLConnector) else {}
@@ -1286,7 +1296,15 @@ def get_table_cols_types(
1286
1296
  else doc['column']
1287
1297
  )
1288
1298
  )
1289
- ): doc['type'].upper()
1299
+ ): doc['type'].upper() + (
1300
+ f'({precision},{scale})'
1301
+ if (
1302
+ (precision := doc.get('numeric_precision', None))
1303
+ and
1304
+ (scale := doc.get('numeric_scale', None))
1305
+ )
1306
+ else ''
1307
+ )
1290
1308
  for doc in cols_types_docs_filtered
1291
1309
  }
1292
1310
  except Exception as e:
@@ -2289,7 +2307,7 @@ def wrap_query_with_cte(
2289
2307
  .replace('--MRSM_SUBQUERY--', f"(\n{sub_query}\n) AS {cte_name_quoted}")
2290
2308
  )
2291
2309
 
2292
- if 'with ' in sub_query.lower():
2310
+ if sub_query.lstrip().lower().startswith('with '):
2293
2311
  final_select_ix = sub_query.lower().rfind('select')
2294
2312
  return (
2295
2313
  sub_query[:final_select_ix].rstrip() + ',\n'
@@ -410,15 +410,19 @@ def init_venv(
410
410
  pass
411
411
 
412
412
  def wait_for_lock():
413
- max_lock_seconds = 2.0
413
+ max_lock_seconds = 30.0
414
+ sleep_message_seconds = 5.0
414
415
  step_sleep_seconds = 0.1
415
416
  init_venv_check_start = time.perf_counter()
417
+ last_print = init_venv_check_start
416
418
  while ((time.perf_counter() - init_venv_check_start) < max_lock_seconds):
417
419
  if not lock_path.exists():
418
420
  break
419
421
 
420
- if debug:
421
- print(f"Lock exists for '{venv}', sleeping...")
422
+ now = time.perf_counter()
423
+ if debug or (now - last_print) > sleep_message_seconds:
424
+ print(f"Lock exists for venv '{venv}', sleeping...")
425
+ last_print = now
422
426
  time.sleep(step_sleep_seconds)
423
427
  update_lock(False)
424
428
 
@@ -448,7 +452,8 @@ def init_venv(
448
452
 
449
453
  _venv_success = False
450
454
  temp_vtp = VENVS_CACHE_RESOURCES_PATH / str(venv)
451
- rename_vtp = vtp.exists() and not temp_vtp.exists()
455
+ ### NOTE: Disable site-packages movement for now.
456
+ rename_vtp = False and vtp.exists() and not temp_vtp.exists()
452
457
 
453
458
  wait_for_lock()
454
459
  update_lock(True)
@@ -458,19 +463,10 @@ def init_venv(
458
463
  print(f"Moving '{vtp}' to '{temp_vtp}'...")
459
464
  shutil.move(vtp, temp_vtp)
460
465
 
461
- if venv_path.exists():
462
- if debug:
463
- print(f"Removing '{venv_path}'...")
464
- try:
465
- shutil.rmtree(venv_path)
466
- except Exception as e:
467
- if debug:
468
- print(f"Failed to remove '{venv_path}' ({e}). Continuing...")
469
-
470
466
  if uv is not None:
471
467
  _venv_success = run_python_package(
472
468
  'uv',
473
- ['venv', venv_path.as_posix(), '-q'],
469
+ ['venv', venv_path.as_posix(), '-q', '--no-project', '--allow-existing', '--seed'],
474
470
  venv=None,
475
471
  env=_get_pip_os_env(),
476
472
  debug=debug,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: meerschaum
3
- Version: 2.7.7
3
+ Version: 2.7.9
4
4
  Summary: Sync Time-Series Pipes with Meerschaum
5
5
  Home-page: https://meerschaum.io
6
6
  Author: Bennett Meares
@@ -18,15 +18,15 @@ meerschaum/_internal/shell/ValidAutoSuggest.py,sha256=bARjOWMidz0dvMelLUe6yRPto5
18
18
  meerschaum/_internal/shell/__init__.py,sha256=vXQoQPEVlYiUYai1b5AwQAlTnja6A2cSABnqXhzlS7I,281
19
19
  meerschaum/_internal/shell/updates.py,sha256=FmKu1NsIE7AI1zq8zNeKneZzORv6BeURQeX0lRR81Ag,5040
20
20
  meerschaum/_internal/shell/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- meerschaum/_internal/term/TermPageHandler.py,sha256=57peuFD4geabiP7aomVNH_bRfNFPyCaJf56sQ8XMhV0,472
22
- meerschaum/_internal/term/__init__.py,sha256=AT-dUw6cPISDDvHUplrSMsmPR5mo2JgVTtIzmOGcW7E,1733
23
- meerschaum/_internal/term/tools.py,sha256=dXVAimKD-Yv2fg2WOTr0YGBY7XDKjQqw-RizcS65YVI,727
21
+ meerschaum/_internal/term/TermPageHandler.py,sha256=iRvd1v7WsyZE2H7spXkz4vxtolV6IvbhkBLhkke9r5g,2421
22
+ meerschaum/_internal/term/__init__.py,sha256=6hkhA5Hk0O3WrwYYu74itcKTm5MxlOAVM1ozTojwB7c,2162
23
+ meerschaum/_internal/term/tools.py,sha256=7Hb6W9G1nHZHAhzuJjatuP1IK9XZTgUXDRPk7H9Tkpg,1609
24
24
  meerschaum/actions/__init__.py,sha256=MHPs8aRBhbZQXnqd_6tVtisTrNCgPAPgnNcXYbn0zP8,11640
25
25
  meerschaum/actions/api.py,sha256=41r3fBh3vAPyNaOrvbh2oh6WUJTR2I-zaOEZN60A66E,12538
26
26
  meerschaum/actions/attach.py,sha256=UV19d9W_2WYcrf7BRz7k3mriDoX1V4rA4AKvbLdor0o,3106
27
27
  meerschaum/actions/bootstrap.py,sha256=08o3PchrJ_Rv8IP30ZBH1Ovk-b8qFBGPedCjF7jRzSo,18084
28
28
  meerschaum/actions/clear.py,sha256=v_xHn7-Pu7iwFNJ07q9eJt2hqPV7OwNZHUYa9dvixs4,4976
29
- meerschaum/actions/copy.py,sha256=z_51zEQCKDXnAGfICIGKS3klZ2OTPdiZPJACvpuheDY,6861
29
+ meerschaum/actions/copy.py,sha256=bEKWvFVwxq8yoye7Iy_sfkvNVCJFYbAZHfxraX1U7hM,6862
30
30
  meerschaum/actions/deduplicate.py,sha256=puYyxeFYEUy1Sd2IOcZB2e6MrNxAZl2bTLmNzFDkCiw,1167
31
31
  meerschaum/actions/delete.py,sha256=H5oP0nE7qIWnFvkuFhZQZQYBVC0IbUevpaQ_2YQKXRA,18559
32
32
  meerschaum/actions/drop.py,sha256=UZg16dPx1o9f-hBrbIiZ6-F2QOTaTAdmFqLaSQla0t8,4434
@@ -45,7 +45,7 @@ meerschaum/actions/sh.py,sha256=hSkGNTVqP5dNjhJ64zy3V3VCFPTKnDlH3PxdKdxtkGQ,1990
45
45
  meerschaum/actions/show.py,sha256=T8Ol1o-762cI9rlUzd-8svvwgT4slYXYfOPQETh9Koo,28446
46
46
  meerschaum/actions/sql.py,sha256=PhbBMBq20LL8Yh3q-yqGMe7f8ffmyjbD8q_G8Q0WxZc,4527
47
47
  meerschaum/actions/stack.py,sha256=ZwrCTGJ0x3jjZkRieWcvqasQHYCqNtB1HYvTX-r3Z3g,5996
48
- meerschaum/actions/start.py,sha256=NtdVzeB00PQBnDSUSu8ypHmMrZT8_Idmw5BfVZ--Zic,21296
48
+ meerschaum/actions/start.py,sha256=slQ49iImNlV3UsU7CzfMPD6Qms142KguDlEkSitdx6Y,21686
49
49
  meerschaum/actions/stop.py,sha256=5fdUw70YN-yuUWrC-NhA88cxr9FZ5NbssbQ8xXO8nFU,4632
50
50
  meerschaum/actions/sync.py,sha256=br87b8uqpv7GW18f_O7Zg7QioPh0t377J082yfmuSak,17223
51
51
  meerschaum/actions/tag.py,sha256=SJf5qFW0ccLXjqlTdkK_0MCcrCMdg6xhYrhKdco0hdA,3053
@@ -58,18 +58,18 @@ meerschaum/api/_events.py,sha256=f-98AXHU10IL9zRGX1FrZFANxxiMz5ryeJnfFWaU8R8,223
58
58
  meerschaum/api/_oauth2.py,sha256=dJTIVlPpX3sAVW-PcN6pXRNy2RR5QAalu2RHp3l14YU,1683
59
59
  meerschaum/api/_websockets.py,sha256=EMT9wB3yELu_WyCMqn9ZpgMDh23spUUchouRLCCLVuw,1509
60
60
  meerschaum/api/dash/__init__.py,sha256=29vMm_m5gSDYG0lahh-8yVfhqg9kUFnUrYyw_9jC2Y0,2078
61
- meerschaum/api/dash/components.py,sha256=t2goHW7oioao5Ew6Dro9U4LZDnHF-YWb4flLPx46GP8,6293
61
+ meerschaum/api/dash/components.py,sha256=k6VpeeM-grzslAKZyNMXtKKfpC8-Nz9wgZoUoD0p4Ac,6532
62
62
  meerschaum/api/dash/connectors.py,sha256=-Wd40ieYJI2nOASXi4V1C4bvLekjnN_tj6zp7HgZDl0,791
63
63
  meerschaum/api/dash/graphs.py,sha256=wJUDWzcLN8-C3xko6rj0F2v7Rt8YDkSXoVkkXJjYGIk,2046
64
64
  meerschaum/api/dash/jobs.py,sha256=mj9STE6AaQY4fwkjD1JcYRG0iW3VEcP04bO1SlKgiXw,7681
65
- meerschaum/api/dash/keys.py,sha256=hzEVeN60SAfVTVSO5lajGaykxRIKGhj9Ph00HRJnNoE,12598
65
+ meerschaum/api/dash/keys.py,sha256=mQT8MxtaeugbdZxGDhkr-G1mccPB4XpLN-UB7s3tamI,11144
66
66
  meerschaum/api/dash/pipes.py,sha256=Zm2UKovwz6K8Mt6dTCY2LgDyUyFhEZ5D8nWw4ecPUXI,26210
67
67
  meerschaum/api/dash/plugins.py,sha256=KdfG04f6SsUpBg-nm7MUJegFGuElOj-GAkxDX98hi60,3768
68
- meerschaum/api/dash/sessions.py,sha256=-y5p4MYKh1eFzppkBfMsd6T7-rJs1nYS2-4fbVRAeRA,5029
68
+ meerschaum/api/dash/sessions.py,sha256=i8qFGZX1zlxskj13F5B9TYd-mXdVA71Q8d8nESbiJG0,5068
69
69
  meerschaum/api/dash/sync.py,sha256=9lt7IRdG-fe9gf_ZO_viPiGlerX7ic6r_VFocv3I51A,504
70
70
  meerschaum/api/dash/users.py,sha256=3wq3ZG51DxOjNeF-X5HdlXD1MYQ1nQ9oowYSvFEY7hs,1050
71
71
  meerschaum/api/dash/websockets.py,sha256=0iwRaI9k2okU1baYstOkehfZ6-qMi_S6qm4lPBjVlH8,924
72
- meerschaum/api/dash/webterm.py,sha256=khO0tnFgYh9dLOKYlX2rG93aTa2__5RMDDQOU1Ga9Es,3060
72
+ meerschaum/api/dash/webterm.py,sha256=_Aiao08IO2wfeLlWCBlYmn7x-acfHwjcr5BIg6C8eoA,3587
73
73
  meerschaum/api/dash/assets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
74
  meerschaum/api/dash/assets/ansi_up.js,sha256=in4bWSCayjzXbOgROw7eLRrFwCTIiLxh8nbFSJXtDl4,21923
75
75
  meerschaum/api/dash/assets/banner_1920x320.png,sha256=n2cNTSVEsGxO9XZg2keb85J3UOkux70nyIMNII5m4SA,338636
@@ -78,14 +78,14 @@ meerschaum/api/dash/assets/logo_48x48.png,sha256=hTR5BHUHEN4yP2xiqAcDciuigoII9T3
78
78
  meerschaum/api/dash/assets/logo_500x500.png,sha256=9EUtf6wQcEZTXHKfQ2kjNXod6Rn_4DTB_BkTgxggq00,67702
79
79
  meerschaum/api/dash/callbacks/__init__.py,sha256=5nLDkziaWWWt5ivmuMNG3kVBMOfqB6KQNIAS8f16bmA,493
80
80
  meerschaum/api/dash/callbacks/custom.py,sha256=N9pVolAF8sIuJD3V6xBSgS7k8THJo_f8d1qAoh1Kg60,1161
81
- meerschaum/api/dash/callbacks/dashboard.py,sha256=UNbMG1w8sOTyOFLIRSJwnKZ5B1IuGZI8OHjiUTEgrfA,32777
81
+ meerschaum/api/dash/callbacks/dashboard.py,sha256=GKawgBjhgkMLKTE0PtRRGKd72pbmFGGnHlBsIHTnb_I,33962
82
82
  meerschaum/api/dash/callbacks/jobs.py,sha256=JYTrDcUEte_MIT3EegLDmQDsmU_Mxqw8L60dvF71ho4,8418
83
83
  meerschaum/api/dash/callbacks/login.py,sha256=mEvMgV-f85H6DvqNdTvJPoiwHqTnhWY2nf_zLB26ipE,2876
84
84
  meerschaum/api/dash/callbacks/pipes.py,sha256=byphQn-wJOe8ft-fGU9wac0n5xsMjVHJzNvYYb9NsKU,1693
85
85
  meerschaum/api/dash/callbacks/plugins.py,sha256=znPgw_Uf3__QEjKxoIHADfjVNubTehCDaTJ02b16pQo,2760
86
86
  meerschaum/api/dash/callbacks/register.py,sha256=KfMFgXWiFkemz0YriSPaLQBVnFDG8q6_t9gHuempOS0,3666
87
87
  meerschaum/api/dash/pages/__init__.py,sha256=E3MI73_FR21R_-npTJ9HBNd7hdbOwQ75V-TMpq3ohz8,349
88
- meerschaum/api/dash/pages/dashboard.py,sha256=WKwy40kgm2Qy0k1ZTIueFnnVu0YBzFAd_8AT6CHHvfM,3835
88
+ meerschaum/api/dash/pages/dashboard.py,sha256=k6mmvPWXQD6NpAO4_y9Y9r8n-IU5Ql1IOuczOl7OWPs,3802
89
89
  meerschaum/api/dash/pages/error.py,sha256=-uCrASuIBrceHcc-leLeEoLos2ibSBWG0XMFQzFwtbw,595
90
90
  meerschaum/api/dash/pages/job.py,sha256=bAXXDB0fM3bSiqqJ2XlTwVdg2lohRaWdIGZp7ZtTZOw,544
91
91
  meerschaum/api/dash/pages/login.py,sha256=Qjc-kDL9wW4D1cN48x0MrmWCME4igHDt0VkX9JSipjY,4603
@@ -110,14 +110,14 @@ meerschaum/api/resources/static/ico/logo.ico,sha256=nDEekVxwS60wEDno1nbw5GF3TJOc
110
110
  meerschaum/api/resources/static/js/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
111
  meerschaum/api/resources/static/js/action_button.js,sha256=A0tH6W5lXR1dcGKtNk_pTNSKFVH-HGX2eMR-IOgGLeM,540
112
112
  meerschaum/api/resources/static/js/main.js,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
113
- meerschaum/api/resources/static/js/terminado.js,sha256=oYRYUaw1S9gE8Cp6AevQaW_zGvXMYMi3UH3-IMbQSTw,1727
113
+ meerschaum/api/resources/static/js/terminado.js,sha256=Hl1VZ-RhTKUPjEFLNHyytRUUE31NUOKRxpBw4nAFnP4,1644
114
114
  meerschaum/api/resources/static/js/xterm.js,sha256=H5kaw7Syg-v5bmCuI6AKUnZd06Lkb6b92p8aqwMvdJU,289441
115
115
  meerschaum/api/resources/static/png/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
116
116
  meerschaum/api/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
117
117
  meerschaum/api/resources/templates/index.html,sha256=Ck-S0U5abJgB-wTOKIGg0ispGzKlXXqvFUoNAAByzLA,1019
118
118
  meerschaum/api/resources/templates/old_index.html,sha256=BDeOlcXhSsBH3-NaRtuX4Z1sDuhOoCMa_Dq-6g5RMpc,1711
119
119
  meerschaum/api/resources/templates/secret.html,sha256=0QWkm4ZoN81Aw1pd2-62rGCvx3nXPHfFUoegj3Iy8Ls,141
120
- meerschaum/api/resources/templates/termpage.html,sha256=A9YmJurFFliI0se9T4z0SBMIuoQqANyKSUJzZh8dcGo,4810
120
+ meerschaum/api/resources/templates/termpage.html,sha256=I8ZsXunwzRyquErRPZsKKhDNoafeXT0iW0JCL4OSx8U,5989
121
121
  meerschaum/api/routes/__init__.py,sha256=jbkeFNl51Tg8aT5gWe560ZLZLojFJsLMe5IENRjRkb0,606
122
122
  meerschaum/api/routes/_actions.py,sha256=VUasS1dpr4d3TXHcR1CXlRZPAqvGKKuHv_f9PsOkQ5c,1732
123
123
  meerschaum/api/routes/_connectors.py,sha256=NNbcn5xWhKqw2PqueSEaqRaZ95hFGDKazG5lE7gsssc,1849
@@ -129,11 +129,11 @@ meerschaum/api/routes/_pipes.py,sha256=kykrEP6A75WBjn2wP28BLiPVRpwtfd8sVhfOhzjHa
129
129
  meerschaum/api/routes/_plugins.py,sha256=zzUyCiylJGeoLoa3dNjeRMSspvKfywTVXBpB-ghJ7ls,6228
130
130
  meerschaum/api/routes/_users.py,sha256=Gts7gltQc5uxgjfL5pQS_R-cAhkHJZJWBCKGPRS1gmQ,6809
131
131
  meerschaum/api/routes/_version.py,sha256=2t-nw_9IxCVZCNEar0LOwmut2zsClRVHjiOOUx16cu0,825
132
- meerschaum/api/routes/_webterm.py,sha256=MenDvWXnZ8CWEmryB46pKohMf0PN6o1xJGZ3LFjxTOc,3909
132
+ meerschaum/api/routes/_webterm.py,sha256=PvYDSsNlRpGNFXqVA3MAh0E6i4SMQ3ATBQbOVNUqacw,4132
133
133
  meerschaum/api/tables/__init__.py,sha256=e2aNC0CdlWICTUMx1i9RauF8Pm426J0RZJbsJWv4SWo,482
134
134
  meerschaum/config/__init__.py,sha256=5ZBq71P9t3nb74r5CGvMfNuauPscfegBX-nkaAUi5C4,11541
135
135
  meerschaum/config/_dash.py,sha256=BJHl4xMrQB-YHUEU7ldEW8q_nOPoIRSOqLrfGElc6Dw,187
136
- meerschaum/config/_default.py,sha256=6SC7MOkU_2oJ7RtFXQCz9w1Qqg2_8w5UdOaR_HL3lzI,6009
136
+ meerschaum/config/_default.py,sha256=Rdyw50hoV24N2sEteaIm5NeuLlbzIZpDdAeDoBYoPQ0,6130
137
137
  meerschaum/config/_edit.py,sha256=M9yX_SDD24gV5kWITZpy7p9AWTizJsIAGWAs3WZx-Ws,9087
138
138
  meerschaum/config/_environment.py,sha256=Vv4DLDfc2vKLbCLsMvkQDj77K4kEvHKEBmUBo-wCrgo,4419
139
139
  meerschaum/config/_formatting.py,sha256=OMuqS1EWOsj_34wSs2tOqGIWci3bTMIZ5l-uelZgsIM,6672
@@ -144,7 +144,7 @@ meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6
144
144
  meerschaum/config/_read_config.py,sha256=RLC3HHi_1ndj7ITVDKLD9_uULY3caGRwSz3ATYE-ixA,15014
145
145
  meerschaum/config/_shell.py,sha256=46_m49Txc5q1rGfCgO49ca48BODx45DQJi8D0zz1R18,4245
146
146
  meerschaum/config/_sync.py,sha256=jHcWRkxd82_BgX8Xo8agsWvf7BSbv3qHLWmYl6ehp_0,4242
147
- meerschaum/config/_version.py,sha256=zI3Zi2dLLwmP_AO5KiSMWcMgpQo8y2osXT-ZmhrXGXU,71
147
+ meerschaum/config/_version.py,sha256=xTLVpUjkTze_hdaUcpfoffXnbH-lcMVq1kPZen0twaI,71
148
148
  meerschaum/config/paths.py,sha256=JjibeGN3YAdSNceRwsd42aNmeUrIgM6ndzC8qZAmNI0,621
149
149
  meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
150
  meerschaum/config/stack/__init__.py,sha256=2UukC0Lmk-aVL1o1qXzumqmuIrw3vu9fD7iCuz4XD4I,10544
@@ -152,7 +152,7 @@ meerschaum/config/stack/grafana/__init__.py,sha256=LNXQw2FvHKrD68RDhqDmi2wJjAHaK
152
152
  meerschaum/config/stack/mosquitto/__init__.py,sha256=-OwOjq8KiBoSH_pmgCAAF3Dp3CRD4KgAEdimZSadROs,186
153
153
  meerschaum/config/stack/mosquitto/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
154
154
  meerschaum/config/stack/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
155
- meerschaum/config/static/__init__.py,sha256=DJrFtZ7Xi3b0dikzMWddat5BMwNCYEA1MyLw6jSnMTI,5365
155
+ meerschaum/config/static/__init__.py,sha256=8GIJQzIq_gXJm7B8bJJnsT-j_IwCfF31_rYyDHUN9Qs,5394
156
156
  meerschaum/connectors/_Connector.py,sha256=VaVNg0SlQCTXk4shl3c68QdkbymA2Y9ScUlUjckk8PY,6795
157
157
  meerschaum/connectors/__init__.py,sha256=bpWsnU0uvoowWyUkFTwfEkadK84pssZUJ4M7yReudOU,12703
158
158
  meerschaum/connectors/parse.py,sha256=tnqzkzt_suOXYzktn_XVUrprtfym9ThijUf8HXZZlhY,4194
@@ -171,21 +171,21 @@ meerschaum/connectors/api/_uri.py,sha256=HWxqGx4R1cHZ3ywy9Ro9ePbFxxusw4RLaC3hpGt
171
171
  meerschaum/connectors/api/_users.py,sha256=kzb7ENgXwQ19OJYKOuuWzx2rwVuUZCly9dTnyvVuT2Q,5275
172
172
  meerschaum/connectors/plugin/PluginConnector.py,sha256=aQ1QaB7MordCFimZqoGLb0R12PfDUN_nWks2J5mzeAs,2084
173
173
  meerschaum/connectors/plugin/__init__.py,sha256=pwF7TGY4WNz2_HaVdmK4rPQ9ZwTOEuPHgzOqsGcoXJw,198
174
- meerschaum/connectors/sql/_SQLConnector.py,sha256=fAYXt2BrW6PmCJyEGRGfKjY0IffLT-5wrxCT31H4vdE,12137
174
+ meerschaum/connectors/sql/_SQLConnector.py,sha256=B2-ltIIQy_n2qjeeT-sZk60tLJrg2Oefscytt7sGqb4,12083
175
175
  meerschaum/connectors/sql/__init__.py,sha256=3cqYiDkVasn7zWdtOTAZbT4bo95AuvGOmDD2TkaAxtw,205
176
176
  meerschaum/connectors/sql/_cli.py,sha256=VqAHkdXC0HVXuHaZik2q-cTVmIsuS4DWMcPMJPP_g-Q,4514
177
177
  meerschaum/connectors/sql/_create_engine.py,sha256=VfGtqF2hDNbgl2g-ZPcz28gKkfL6UOk4rKxUB4tKHdU,10567
178
- meerschaum/connectors/sql/_fetch.py,sha256=5zkyzTrH0atsXmUduPw9sY1CPoX_l8_rUo-lzgBS49U,13907
178
+ meerschaum/connectors/sql/_fetch.py,sha256=mVe5zQo7SM9PSUU3Vjhacg4Bq1-Vttb7KkXL4p5YQdQ,12818
179
179
  meerschaum/connectors/sql/_instance.py,sha256=KUTDrWWD9uf8G94_n_VM_J0HdggXQofJbekZ4errypw,6310
180
- meerschaum/connectors/sql/_pipes.py,sha256=gMRHe8WrdO60YzTV2j0pgyr8U4CPC1Mujn8NaohpTe0,127996
180
+ meerschaum/connectors/sql/_pipes.py,sha256=rYePCZfUuY43jPV8ysX9OznyXeGIEFAqvIXeffYD1eA,128088
181
181
  meerschaum/connectors/sql/_plugins.py,sha256=OVEdZ_UHTi-x5sF-5lu2TmR9ONxddp6SwDOmFo5TpU8,8051
182
- meerschaum/connectors/sql/_sql.py,sha256=R57E2-QVeCEzvz4j85b_tmYvkXTUSvCDB40LuocrAiw,41247
182
+ meerschaum/connectors/sql/_sql.py,sha256=VDRrfWBS0XbI8Jcr-MiQyXfY9OTHvR2EUtiazFoN-Qw,41999
183
183
  meerschaum/connectors/sql/_uri.py,sha256=BFzu5pjlbL3kxLH13vHWlpKGYTPfg8wuA2j58O9NsCM,3440
184
184
  meerschaum/connectors/sql/_users.py,sha256=Dbe79FV07ms5QVHwp68cruDzkGeKR4cE1-xc9Gza8Hs,9932
185
185
  meerschaum/connectors/sql/tools.py,sha256=jz8huOaRCwGlYdtGfAqAh7SoK8uydYBrasKQba9FT38,187
186
186
  meerschaum/connectors/sql/tables/__init__.py,sha256=53EeJsvmGjj68SpSShdt6kyLuk5Md5O8DnvWC1ra3u8,8876
187
187
  meerschaum/connectors/sql/tables/types.py,sha256=Jc_MTHIBM-KHpQt__Lckp39CeOo7tGOiAk5faDx-znY,1573
188
- meerschaum/connectors/valkey/_ValkeyConnector.py,sha256=xHld4OCnt0SXmAWH8Yintb3931F-MEgXfWerhTthsXc,15849
188
+ meerschaum/connectors/valkey/_ValkeyConnector.py,sha256=_KjJSgUcZhNJZuPfn0vhDBjnOzjtk_jZrjScfhio0Ww,15794
189
189
  meerschaum/connectors/valkey/__init__.py,sha256=jkVutsygQCvGPLN17cP6wHAjHajxVycnQJbm2eVMuY0,187
190
190
  meerschaum/connectors/valkey/_fetch.py,sha256=MjeE0h3YI4M3LCzy7axQAc_fX_l82vUqX4WXcYoppxE,1920
191
191
  meerschaum/connectors/valkey/_pipes.py,sha256=sjjO1vehNCkN_2bsqQKy81WWWrOg8a8ElupqzCjZ_7c,24594
@@ -203,12 +203,12 @@ meerschaum/core/Pipe/_delete.py,sha256=1geNp9BgrocXP1gt76dMbnlJWKYFMuSNqPFA4K4-h
203
203
  meerschaum/core/Pipe/_drop.py,sha256=KDfJVz2aGjHUE1Jkmj7Ej4ICPR5xPiuhyhgRO7Lu9d4,3299
204
204
  meerschaum/core/Pipe/_dtypes.py,sha256=-D3Dr64rSX7twuGNieZOYJOIdEKTknhBFHPmwj_QSQw,4274
205
205
  meerschaum/core/Pipe/_edit.py,sha256=HrKWe9vhqKaNOjOcJzW5BNbaUBPIbgNAhJEK8OMsy7c,8416
206
- meerschaum/core/Pipe/_fetch.py,sha256=dI2WFqaXVSi-xhgRcpp8Dh1g_ALgm5w6umvOj1cyCFk,5368
206
+ meerschaum/core/Pipe/_fetch.py,sha256=IojFSA_EXBSm0I8BmlDgmUh3M85FFtXjmDJhdxZ8LlE,5477
207
207
  meerschaum/core/Pipe/_index.py,sha256=cYgaVwBVfAYxJBZ6j6MXDqOxnOrD_QnYi33_kIwy_FQ,1944
208
208
  meerschaum/core/Pipe/_register.py,sha256=Sd5xaAW8H7uLTIoommcKb-6kHPRuHJLWNSbPnt2UbvA,2240
209
209
  meerschaum/core/Pipe/_show.py,sha256=nG50y8eBT9TVuKkRgAKtNDNIxysJvMNxfu__lkL1F9k,1352
210
- meerschaum/core/Pipe/_sync.py,sha256=Bl-DJTuo-iZvPFlSeTbSjje36NeyUTW0yVcJZLEQMtA,36258
211
- meerschaum/core/Pipe/_verify.py,sha256=IdaAgQBjtxrGBVRnfBcfDZKn4zSynN2WUgq_-NnmEps,14356
210
+ meerschaum/core/Pipe/_sync.py,sha256=aoJRgUt9TOisZmdiUvFQQDQt4BxHXEF2tVOwY-C6X5s,36636
211
+ meerschaum/core/Pipe/_verify.py,sha256=evFjbgfQffeuGXQxSBe5iwN_ePCXyDnxDT_hHEZqps0,14350
212
212
  meerschaum/core/Plugin/__init__.py,sha256=UXg64EvJPgI1PCxkY_KM02-ZmBm4FZpLPIQR_uSJJDc,137
213
213
  meerschaum/core/User/_User.py,sha256=qbI0GIkr3G0PI4d9S49uatbJQ2kH_-z5-GoVJ0fuEtA,6624
214
214
  meerschaum/core/User/__init__.py,sha256=9qNy-Gobui4x6GiaE8U7-WOggsdniOM3_wegLN3SVKs,988
@@ -221,43 +221,43 @@ meerschaum/plugins/__init__.py,sha256=Kl7Dz0CwUUxyjRC5RWnYo6WMLsOvdX2eQ38Rh3Bjdz
221
221
  meerschaum/plugins/bootstrap.py,sha256=VwjpZAuYdqPJW0YoVgAoM_taHkdQHqP902-8T7OWWCI,11339
222
222
  meerschaum/utils/__init__.py,sha256=QrK1K9hIbPCRCM5k2nZGFqGnrqhA0Eh-iSmCU7FG6Cs,612
223
223
  meerschaum/utils/_get_pipes.py,sha256=tu4xKPoDn79Dz2kWM13cXTP4DSCkn-3G9M8KiLftopw,11073
224
- meerschaum/utils/dataframe.py,sha256=fM8_DxnMTMhXDUqWIVXR-bOOwzBGO-cRcjarOIN3jdQ,47990
224
+ meerschaum/utils/dataframe.py,sha256=2wiZcD0Z5ItxMSTapzgVATJ3ny457pSsnHFVovWdk6g,49320
225
225
  meerschaum/utils/debug.py,sha256=GyIzJmunkoPnOcZNYVQdT4Sgd-aOb5MI2VbIgATOjIQ,3695
226
226
  meerschaum/utils/interactive.py,sha256=t-6jWozXSqL7lYGDHuwiOjTgr-UKhdcg61q_eR5mikI,3196
227
- meerschaum/utils/misc.py,sha256=Ut__DxYXuu-WtF9Mg2Z1CrnQMBmhPuqGsjOgiZMhAww,47079
227
+ meerschaum/utils/misc.py,sha256=Mkr1J6DO_7sERwZvTTU04L_Gz0dXHleA9nZf5lHjd9U,47371
228
228
  meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRUc,1006
229
229
  meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
230
230
  meerschaum/utils/process.py,sha256=9O8PPPJjY9Q5W2f39I3B3lFU6TlSiRiI3bgrzdOOyOw,7843
231
- meerschaum/utils/prompt.py,sha256=qbS8l0DfD6eRB9_RRbfkKLPs3m-Hw2zXSeQCf0TDJgU,19370
231
+ meerschaum/utils/prompt.py,sha256=qj1As1tuiL0GZTku_YOC6I5DmOU6L5otDR7DW7LA5fM,19397
232
232
  meerschaum/utils/schedule.py,sha256=bUsaCO9CGn2vJO5UvoISScHDDGIiMdCPHxpTFmu7vwE,11531
233
- meerschaum/utils/sql.py,sha256=3UAC4KnH2tl4bojvFCwIV2uQqdV9RKxwXZRsmfjBfWM,79390
233
+ meerschaum/utils/sql.py,sha256=dAC002vPcalR96p4hK7EM62G3SmD1TPIP_h4oytfTtQ,80165
234
234
  meerschaum/utils/threading.py,sha256=awjbVL_QR6G-o_9Qk85utac9cSdqkiC8tQSdERCdrG8,2814
235
235
  meerschaum/utils/typing.py,sha256=U3MC347sh1umpa3Xr1k71eADyDmk4LB6TnVCpq8dVzI,2830
236
236
  meerschaum/utils/warnings.py,sha256=n-phr3BftNNgyPnvnXC_VMSjtCvjiCZ-ewmVfcROhkc,6611
237
237
  meerschaum/utils/yaml.py,sha256=PoC1du0pn2hLwTHwL-zuOf_EBWZSbCGOz-P-AZ4BWN0,3901
238
- meerschaum/utils/daemon/Daemon.py,sha256=jNhzpkcR-kXgIQKBqr--cFx6ZhAb0a0sdjnCOUkLEL0,42885
238
+ meerschaum/utils/daemon/Daemon.py,sha256=P1JeXROC-321OzjtuisU0tW2ONJp2kI7Hdu_Q85B1cA,43406
239
239
  meerschaum/utils/daemon/FileDescriptorInterceptor.py,sha256=MJKMO0Syf3d8yWUs6xXcQzg8Ptsuvh2aCRRoglOjusA,5257
240
- meerschaum/utils/daemon/RotatingFile.py,sha256=ePm_svjwyFDWh6V1k-bp1RHXCSWlyxDtlFu4SU4XvPU,24369
240
+ meerschaum/utils/daemon/RotatingFile.py,sha256=8_bXegBjjzNRlNEjFZ_EHU4pSaDfjXZTwO9F9kbAU1I,24337
241
241
  meerschaum/utils/daemon/StdinFile.py,sha256=qdZ8E_RSOkURypwnS50mWeyWyRig1bAY9tKWMTVKajc,3307
242
242
  meerschaum/utils/daemon/__init__.py,sha256=ziRPyu_IM3l7Xd58y3Uvt0fZLoirJ9nuboFIxxult6c,8741
243
243
  meerschaum/utils/daemon/_names.py,sha256=d2ZwTxBoTAqXZkCfZ5LuX2XrkQmLNUq1OTlUqfoH5dA,4515
244
- meerschaum/utils/dtypes/__init__.py,sha256=c6DoYyCbWvMdRapBRKP5UJYLRUWtkTIlC_8HRzXFh2s,12166
245
- meerschaum/utils/dtypes/sql.py,sha256=4rd33hXyyzdY51oCMch97z2DPFz_UUd2eoyiFr89VOc,19608
246
- meerschaum/utils/formatting/__init__.py,sha256=6MAIpkLG7inFvPGRZqV8EpVRmMB3BGQsgAh5KBP4tsg,15528
244
+ meerschaum/utils/dtypes/__init__.py,sha256=O4EfRcv53NwvHYZpyP0kfJjS-I-9dUFdXUd78hoy0ZU,15492
245
+ meerschaum/utils/dtypes/sql.py,sha256=hcugN6JhF6QJz7x3KAbTMGoFmu_cc_jQEOUZDpLSVXc,21488
246
+ meerschaum/utils/formatting/__init__.py,sha256=bA8qwBeTNIVHVQOBK682bJsKSKik1yS6xYJAoi0RErk,15528
247
247
  meerschaum/utils/formatting/_jobs.py,sha256=izsqPJhTtUkXUUtWnbXtReYsUYwulXtci3pBj72Ne64,6637
248
248
  meerschaum/utils/formatting/_pipes.py,sha256=OISJmmFiilaDbZxkiXck_g39MnnTfk_fJJyJ-YInvXA,19559
249
- meerschaum/utils/formatting/_pprint.py,sha256=tgrT3FyGyu5CWJYysqK3kX1xdZYorlbOk9fcU_vt9Qg,3096
249
+ meerschaum/utils/formatting/_pprint.py,sha256=wyTmjHFnsHbxfyuytjTWzH-D42Z65GuIisQ_W6UnRPg,3096
250
250
  meerschaum/utils/formatting/_shell.py,sha256=XH7VFLteNv7NGtWhJl7FdIGt80sKeTiDoJokGSDAwBM,3761
251
251
  meerschaum/utils/packages/__init__.py,sha256=TdKaj2tmN4bFwzusOfMv24P5ET7Zv73vyoOf9GOIr5E,64427
252
252
  meerschaum/utils/packages/_packages.py,sha256=_xODMSz1FAcx3XHrn9RXUhGJ1zg-QKsVu9zYZV2UJeY,8868
253
253
  meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
254
254
  meerschaum/utils/venv/_Venv.py,sha256=gc1TCeAj-kTZbQFAT9xl1bi4HXFV5ApT0dPOJfxwr78,3748
255
- meerschaum/utils/venv/__init__.py,sha256=vVU9vj7t-HTiRU--ReQZ9kRLesVqcHnSJDbmcfC-Dzg,27030
256
- meerschaum-2.7.7.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
257
- meerschaum-2.7.7.dist-info/METADATA,sha256=8zR70RhmNHVVh2Lt91DYBmEJ6OVR_kNb4EFok9wpEeU,24489
258
- meerschaum-2.7.7.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
259
- meerschaum-2.7.7.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
260
- meerschaum-2.7.7.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
261
- meerschaum-2.7.7.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
262
- meerschaum-2.7.7.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
263
- meerschaum-2.7.7.dist-info/RECORD,,
255
+ meerschaum/utils/venv/__init__.py,sha256=-Mpfvz1mJ41TzVL0xKJCKOsU3nFi6XabbNiN7UbdVXs,27067
256
+ meerschaum-2.7.9.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
257
+ meerschaum-2.7.9.dist-info/METADATA,sha256=jL5sZBvdVHmo1FUDgI9InBzorrlQIqdiziqqStmaeRE,24489
258
+ meerschaum-2.7.9.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
259
+ meerschaum-2.7.9.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
260
+ meerschaum-2.7.9.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
261
+ meerschaum-2.7.9.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
262
+ meerschaum-2.7.9.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
263
+ meerschaum-2.7.9.dist-info/RECORD,,