meerschaum 2.2.0rc4__py3-none-any.whl → 2.2.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- meerschaum/_internal/entry.py +36 -11
- meerschaum/config/_version.py +1 -1
- meerschaum/connectors/__init__.py +8 -1
- meerschaum/connectors/sql/_cli.py +7 -1
- meerschaum/connectors/sql/_pipes.py +6 -0
- meerschaum/utils/packages/_packages.py +2 -2
- meerschaum/utils/schedule.py +9 -2
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/METADATA +9 -9
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/RECORD +15 -15
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/LICENSE +0 -0
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/NOTICE +0 -0
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/WHEEL +0 -0
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/entry_points.txt +0 -0
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/top_level.txt +0 -0
- {meerschaum-2.2.0rc4.dist-info → meerschaum-2.2.1.dist-info}/zip-safe +0 -0
meerschaum/_internal/entry.py
CHANGED
@@ -47,9 +47,9 @@ def entry(sysargs: Optional[List[str]] = None) -> SuccessTuple:
|
|
47
47
|
)
|
48
48
|
)
|
49
49
|
|
50
|
-
if args.get('schedule', None):
|
51
|
-
from meerschaum.utils.schedule import schedule_function
|
52
|
-
return schedule_function(entry_with_args, **args)
|
50
|
+
# if args.get('schedule', None):
|
51
|
+
# from meerschaum.utils.schedule import schedule_function
|
52
|
+
# return schedule_function(entry_with_args, **args)
|
53
53
|
return entry_with_args(**args)
|
54
54
|
|
55
55
|
|
@@ -61,7 +61,7 @@ def entry_with_args(
|
|
61
61
|
Use `_entry()` for parsing sysargs before executing.
|
62
62
|
"""
|
63
63
|
import sys
|
64
|
-
|
64
|
+
import functools
|
65
65
|
from meerschaum.actions import get_action, get_main_action_name
|
66
66
|
from meerschaum._internal.arguments import remove_leading_action
|
67
67
|
from meerschaum.utils.venv import Venv, active_venvs, deactivate_venv
|
@@ -88,10 +88,41 @@ def entry_with_args(
|
|
88
88
|
action_function.__module__.startswith('plugins.')
|
89
89
|
) else None
|
90
90
|
)
|
91
|
-
|
91
|
+
|
92
|
+
skip_schedule = False
|
93
|
+
if (
|
94
|
+
kw['action']
|
95
|
+
and kw['action'][0] == 'start'
|
96
|
+
and kw['action'][1] in ('job', 'jobs')
|
97
|
+
):
|
98
|
+
skip_schedule = True
|
92
99
|
|
93
100
|
kw['action'] = remove_leading_action(kw['action'], _actions=_actions)
|
94
101
|
|
102
|
+
do_action = functools.partial(_do_action_wrapper, action_function, plugin_name, **kw)
|
103
|
+
if kw.get('schedule', None) and not skip_schedule:
|
104
|
+
from meerschaum.utils.schedule import schedule_function
|
105
|
+
from meerschaum.utils.misc import interval_str
|
106
|
+
import time
|
107
|
+
from datetime import timedelta
|
108
|
+
start_time = time.perf_counter()
|
109
|
+
schedule_function(do_action, **kw)
|
110
|
+
delta = timedelta(seconds=(time.perf_counter() - start_time))
|
111
|
+
result = True, f"Exited scheduler after {interval_str(delta)}."
|
112
|
+
else:
|
113
|
+
result = do_action()
|
114
|
+
|
115
|
+
### Clean up stray virtual environments.
|
116
|
+
for venv in [venv for venv in active_venvs]:
|
117
|
+
deactivate_venv(venv, debug=kw.get('debug', False), force=True)
|
118
|
+
|
119
|
+
return result
|
120
|
+
|
121
|
+
|
122
|
+
def _do_action_wrapper(action_function, plugin_name, **kw):
|
123
|
+
from meerschaum.plugins import Plugin
|
124
|
+
from meerschaum.utils.venv import Venv, active_venvs, deactivate_venv
|
125
|
+
plugin = Plugin(plugin_name) if plugin_name else None
|
95
126
|
with Venv(plugin, debug=kw.get('debug', False)):
|
96
127
|
action_name = ' '.join(action_function.__name__.split('_') + kw.get('action', []))
|
97
128
|
try:
|
@@ -111,14 +142,8 @@ def entry_with_args(
|
|
111
142
|
)
|
112
143
|
except KeyboardInterrupt:
|
113
144
|
result = False, f"Cancelled action `{action_name}`."
|
114
|
-
|
115
|
-
### Clean up stray virtual environments.
|
116
|
-
for venv in [venv for venv in active_venvs]:
|
117
|
-
deactivate_venv(venv, debug=kw.get('debug', False), force=True)
|
118
|
-
|
119
145
|
return result
|
120
146
|
|
121
|
-
|
122
147
|
_shells = []
|
123
148
|
_shell = None
|
124
149
|
def get_shell(
|
meerschaum/config/_version.py
CHANGED
@@ -23,7 +23,14 @@ from meerschaum.connectors.sql.SQLConnector import SQLConnector
|
|
23
23
|
from meerschaum.connectors.api.APIConnector import APIConnector
|
24
24
|
from meerschaum.connectors.sql._create_engine import flavor_configs as sql_flavor_configs
|
25
25
|
|
26
|
-
__all__ = (
|
26
|
+
__all__ = (
|
27
|
+
"Connector",
|
28
|
+
"SQLConnector",
|
29
|
+
"APIConnector",
|
30
|
+
"get_connector",
|
31
|
+
"is_connected",
|
32
|
+
"poll",
|
33
|
+
)
|
27
34
|
|
28
35
|
### store connectors partitioned by
|
29
36
|
### type, label for reuse
|
@@ -42,9 +42,13 @@ def cli(
|
|
42
42
|
env = copy.deepcopy(dict(os.environ))
|
43
43
|
env[f'MRSM_SQL_{self.label.upper()}'] = json.dumps(self.meta)
|
44
44
|
cli_code = (
|
45
|
+
"import sys\n"
|
45
46
|
"import meerschaum as mrsm\n"
|
46
47
|
f"conn = mrsm.get_connector('sql:{self.label}')\n"
|
47
|
-
|
48
|
+
"success, msg = conn._cli_exit()\n"
|
49
|
+
"mrsm.pprint((success, msg))\n"
|
50
|
+
"if not success:\n"
|
51
|
+
" raise Exception(msg)"
|
48
52
|
)
|
49
53
|
try:
|
50
54
|
_ = venv_exec(cli_code, venv=None, debug=debug, capture_output=False)
|
@@ -91,6 +95,8 @@ def _cli_exit(
|
|
91
95
|
cli_arg_str = self.DATABASE_URL
|
92
96
|
if self.flavor in ('sqlite', 'duckdb'):
|
93
97
|
cli_arg_str = str(self.database)
|
98
|
+
if cli_arg_str.startswith('postgresql+psycopg://'):
|
99
|
+
cli_arg_str = cli_arg_str.replace('postgresql+psycopg://', 'postgresql://')
|
94
100
|
|
95
101
|
### Define the script to execute to launch the CLI.
|
96
102
|
### The `mssqlcli` script is manually written to avoid telemetry
|
@@ -385,6 +385,9 @@ def get_create_index_queries(
|
|
385
385
|
-------
|
386
386
|
A dictionary of column names mapping to lists of queries.
|
387
387
|
"""
|
388
|
+
### NOTE: Due to recent breaking changes in DuckDB, indices don't behave properly.
|
389
|
+
if self.flavor == 'duckdb':
|
390
|
+
return {}
|
388
391
|
from meerschaum.utils.sql import (
|
389
392
|
sql_item_name,
|
390
393
|
get_distinct_col_count,
|
@@ -554,6 +557,9 @@ def get_drop_index_queries(
|
|
554
557
|
-------
|
555
558
|
A dictionary of column names mapping to lists of queries.
|
556
559
|
"""
|
560
|
+
### NOTE: Due to breaking changes within DuckDB, indices must be skipped.
|
561
|
+
if self.flavor == 'duckdb':
|
562
|
+
return {}
|
557
563
|
if not pipe.exists(debug=debug):
|
558
564
|
return {}
|
559
565
|
from meerschaum.utils.sql import sql_item_name, table_exists, hypertable_queries
|
@@ -60,8 +60,8 @@ packages: Dict[str, Dict[str, str]] = {
|
|
60
60
|
'pymysql' : 'PyMySQL>=0.9.0',
|
61
61
|
'aiomysql' : 'aiomysql>=0.0.21',
|
62
62
|
'sqlalchemy_cockroachdb' : 'sqlalchemy-cockroachdb>=2.0.0',
|
63
|
-
'duckdb' : 'duckdb
|
64
|
-
'duckdb_engine' : 'duckdb-engine>=0.
|
63
|
+
'duckdb' : 'duckdb>=1.0.0',
|
64
|
+
'duckdb_engine' : 'duckdb-engine>=0.13.0',
|
65
65
|
},
|
66
66
|
'drivers-extras': {
|
67
67
|
'pyodbc' : 'pyodbc>=4.0.30',
|
meerschaum/utils/schedule.py
CHANGED
@@ -99,7 +99,7 @@ def schedule_function(
|
|
99
99
|
apscheduler = mrsm.attempt_import('apscheduler', lazy=False)
|
100
100
|
now = round_time(datetime.now(timezone.utc), timedelta(minutes=1))
|
101
101
|
trigger = parse_schedule(schedule, now=now)
|
102
|
-
_scheduler = apscheduler.AsyncScheduler()
|
102
|
+
_scheduler = apscheduler.AsyncScheduler(identity='mrsm-scheduler')
|
103
103
|
try:
|
104
104
|
loop = asyncio.get_running_loop()
|
105
105
|
except RuntimeError:
|
@@ -107,7 +107,14 @@ def schedule_function(
|
|
107
107
|
|
108
108
|
async def run_scheduler():
|
109
109
|
async with _scheduler:
|
110
|
-
job = await _scheduler.add_schedule(
|
110
|
+
job = await _scheduler.add_schedule(
|
111
|
+
function,
|
112
|
+
trigger,
|
113
|
+
args = args,
|
114
|
+
kwargs = kw,
|
115
|
+
max_running_jobs = 1,
|
116
|
+
conflict_policy = apscheduler.ConflictPolicy.replace,
|
117
|
+
)
|
111
118
|
try:
|
112
119
|
await _scheduler.run_until_stopped()
|
113
120
|
except (KeyboardInterrupt, SystemExit) as e:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: meerschaum
|
3
|
-
Version: 2.2.
|
3
|
+
Version: 2.2.1
|
4
4
|
Summary: Sync Time-Series Pipes with Meerschaum
|
5
5
|
Home-page: https://meerschaum.io
|
6
6
|
Author: Bennett Meares
|
@@ -55,8 +55,8 @@ Requires-Dist: psycopg[binary] >=3.1.18 ; extra == 'api'
|
|
55
55
|
Requires-Dist: PyMySQL >=0.9.0 ; extra == 'api'
|
56
56
|
Requires-Dist: aiomysql >=0.0.21 ; extra == 'api'
|
57
57
|
Requires-Dist: sqlalchemy-cockroachdb >=2.0.0 ; extra == 'api'
|
58
|
-
Requires-Dist: duckdb
|
59
|
-
Requires-Dist: duckdb-engine >=0.
|
58
|
+
Requires-Dist: duckdb >=1.0.0 ; extra == 'api'
|
59
|
+
Requires-Dist: duckdb-engine >=0.13.0 ; extra == 'api'
|
60
60
|
Requires-Dist: wheel >=0.34.2 ; extra == 'api'
|
61
61
|
Requires-Dist: setuptools >=63.3.0 ; extra == 'api'
|
62
62
|
Requires-Dist: PyYAML >=5.3.1 ; extra == 'api'
|
@@ -161,8 +161,8 @@ Requires-Dist: psycopg[binary] >=3.1.18 ; extra == 'drivers'
|
|
161
161
|
Requires-Dist: PyMySQL >=0.9.0 ; extra == 'drivers'
|
162
162
|
Requires-Dist: aiomysql >=0.0.21 ; extra == 'drivers'
|
163
163
|
Requires-Dist: sqlalchemy-cockroachdb >=2.0.0 ; extra == 'drivers'
|
164
|
-
Requires-Dist: duckdb
|
165
|
-
Requires-Dist: duckdb-engine >=0.
|
164
|
+
Requires-Dist: duckdb >=1.0.0 ; extra == 'drivers'
|
165
|
+
Requires-Dist: duckdb-engine >=0.13.0 ; extra == 'drivers'
|
166
166
|
Provides-Extra: drivers-extras
|
167
167
|
Requires-Dist: pyodbc >=4.0.30 ; extra == 'drivers-extras'
|
168
168
|
Requires-Dist: cx-Oracle >=8.3.0 ; extra == 'drivers-extras'
|
@@ -217,8 +217,8 @@ Requires-Dist: psycopg[binary] >=3.1.18 ; extra == 'full'
|
|
217
217
|
Requires-Dist: PyMySQL >=0.9.0 ; extra == 'full'
|
218
218
|
Requires-Dist: aiomysql >=0.0.21 ; extra == 'full'
|
219
219
|
Requires-Dist: sqlalchemy-cockroachdb >=2.0.0 ; extra == 'full'
|
220
|
-
Requires-Dist: duckdb
|
221
|
-
Requires-Dist: duckdb-engine >=0.
|
220
|
+
Requires-Dist: duckdb >=1.0.0 ; extra == 'full'
|
221
|
+
Requires-Dist: duckdb-engine >=0.13.0 ; extra == 'full'
|
222
222
|
Requires-Dist: toga >=0.3.0-dev29 ; extra == 'full'
|
223
223
|
Requires-Dist: pywebview >=3.6.3 ; extra == 'full'
|
224
224
|
Requires-Dist: pycparser >=2.21.0 ; extra == 'full'
|
@@ -271,8 +271,8 @@ Requires-Dist: psycopg[binary] >=3.1.18 ; extra == 'sql'
|
|
271
271
|
Requires-Dist: PyMySQL >=0.9.0 ; extra == 'sql'
|
272
272
|
Requires-Dist: aiomysql >=0.0.21 ; extra == 'sql'
|
273
273
|
Requires-Dist: sqlalchemy-cockroachdb >=2.0.0 ; extra == 'sql'
|
274
|
-
Requires-Dist: duckdb
|
275
|
-
Requires-Dist: duckdb-engine >=0.
|
274
|
+
Requires-Dist: duckdb >=1.0.0 ; extra == 'sql'
|
275
|
+
Requires-Dist: duckdb-engine >=0.13.0 ; extra == 'sql'
|
276
276
|
Requires-Dist: wheel >=0.34.2 ; extra == 'sql'
|
277
277
|
Requires-Dist: setuptools >=63.3.0 ; extra == 'sql'
|
278
278
|
Requires-Dist: PyYAML >=5.3.1 ; extra == 'sql'
|
@@ -1,7 +1,7 @@
|
|
1
1
|
meerschaum/__init__.py,sha256=mw_PhxT7155SW8d_S51T4-WTibL5g205CwMa3qX8qyA,1487
|
2
2
|
meerschaum/__main__.py,sha256=Q43yra6APe5CdhDp9ngaorUjs8ZoabeYnMa6C5kQchA,2763
|
3
3
|
meerschaum/_internal/__init__.py,sha256=ilC7utfKtin7GAvuN34fKyUQYfPyqH0Mm3MJF5iyEf4,169
|
4
|
-
meerschaum/_internal/entry.py,sha256=
|
4
|
+
meerschaum/_internal/entry.py,sha256=_pfnlnXhqzP4XQ5syZ04sDG9LxS5UhNdziBlETDMUhc,5756
|
5
5
|
meerschaum/_internal/arguments/__init__.py,sha256=HFciFQgo2ZOT19Mo6CpLhPYlpLYh2sNn1C9Lo7NMADc,519
|
6
6
|
meerschaum/_internal/arguments/_parse_arguments.py,sha256=dNVDBvXYNgEw-TrlZJ9A6VPlG696EpQcQm6FOAhseqw,10249
|
7
7
|
meerschaum/_internal/arguments/_parser.py,sha256=OtcrZK-_qV9a5qpdcP9NLKOGRevjmCU9fBLbB88px3c,13719
|
@@ -135,7 +135,7 @@ meerschaum/config/_preprocess.py,sha256=-AEA8m_--KivZwTQ1sWN6LTn5sio_fUr2XZ51BO6
|
|
135
135
|
meerschaum/config/_read_config.py,sha256=WFZKIXZMDe_ca0ES7ivgM_mnwShvFxLdoeisT_X5-h0,14720
|
136
136
|
meerschaum/config/_shell.py,sha256=s74cmJl8NrhM_Y1cB_P41_JDUYXV0g4WXnKFZWMtnrY,3551
|
137
137
|
meerschaum/config/_sync.py,sha256=oK2ZujO2T1he08BXCFyiniBUevNGWSQKXLcS_jRv_7Y,4155
|
138
|
-
meerschaum/config/_version.py,sha256=
|
138
|
+
meerschaum/config/_version.py,sha256=OydT3amCDUZG1dyzap3MREBRuMd53MMaduOv0qZtPL8,71
|
139
139
|
meerschaum/config/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
140
140
|
meerschaum/config/stack/__init__.py,sha256=c_WdTSejVdj8lqSE_pK5MhIBkHoftiZWDuEuB9dmk2I,9007
|
141
141
|
meerschaum/config/stack/grafana/__init__.py,sha256=LNXQw2FvHKrD68RDhqDmi2wJjAHaKw9IWx8rNuyWEPo,2010
|
@@ -144,7 +144,7 @@ meerschaum/config/stack/mosquitto/resources/__init__.py,sha256=47DEQpj8HBSa-_TIm
|
|
144
144
|
meerschaum/config/stack/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
145
145
|
meerschaum/config/static/__init__.py,sha256=zsSq54OkLqjfG_QGyH6zXzZnoaGpDyjmV0OCvbygFr8,4474
|
146
146
|
meerschaum/connectors/Connector.py,sha256=cJKinmk7eWZwCBvtX4H9r66macTZOY1qjxR7JUEmDmg,6381
|
147
|
-
meerschaum/connectors/__init__.py,sha256=
|
147
|
+
meerschaum/connectors/__init__.py,sha256=zXumYuKTWOyu3U6J1zvMQS30HImYLE8ssBdJs-I134M,12106
|
148
148
|
meerschaum/connectors/parse.py,sha256=gidA2jvOLTvEeL5hM9JjcUwkMRBadUhd4IfA5Jy1tgg,4044
|
149
149
|
meerschaum/connectors/poll.py,sha256=gIY9TvFBqMvMNQvR0O2No7koLLz2PjfExBr_Dsosgpg,7363
|
150
150
|
meerschaum/connectors/api/APIConnector.py,sha256=pj-RncLhDUEBK7R4tByH6nrxZWU8zxGVOS2Wyik36zs,4355
|
@@ -162,11 +162,11 @@ meerschaum/connectors/plugin/PluginConnector.py,sha256=aQ1QaB7MordCFimZqoGLb0R12
|
|
162
162
|
meerschaum/connectors/plugin/__init__.py,sha256=pwF7TGY4WNz2_HaVdmK4rPQ9ZwTOEuPHgzOqsGcoXJw,198
|
163
163
|
meerschaum/connectors/sql/SQLConnector.py,sha256=QvsFgAv2NAUdsJrcNYZIkQ9x_ow5JRe4Ie_UgSrDz3M,11709
|
164
164
|
meerschaum/connectors/sql/__init__.py,sha256=xwSYhYuketTXhQLXyD9pZ0NNBPboW5Oqv9zrKfjx0Ic,175
|
165
|
-
meerschaum/connectors/sql/_cli.py,sha256=
|
165
|
+
meerschaum/connectors/sql/_cli.py,sha256=1SgnWeMIAihoxp4FzbNrcq1npXf0dSOQnCntpU9hUXA,4405
|
166
166
|
meerschaum/connectors/sql/_create_engine.py,sha256=vPVwR3cpfcQm0aW9xo_DUWA3gMdlkuB0wJ8JoTpRYD0,10396
|
167
167
|
meerschaum/connectors/sql/_fetch.py,sha256=NYYWDoEd-aGIS337KwH-D9_3KVWVCZOHAspGLfdEuUE,13086
|
168
168
|
meerschaum/connectors/sql/_instance.py,sha256=r_S96vzSuKnBVGROSKQAPl-DnFnOOEPUkz1KFDFPHFQ,6509
|
169
|
-
meerschaum/connectors/sql/_pipes.py,sha256=
|
169
|
+
meerschaum/connectors/sql/_pipes.py,sha256=0FeRmmZueWBfgBo6XFKcidC7l8eBTDUY12-DbdrXOsk,101627
|
170
170
|
meerschaum/connectors/sql/_plugins.py,sha256=OsCmDlZKyJnY77QAWghmpuXR0z_CmFq5uHpZK7Cj-ZI,8321
|
171
171
|
meerschaum/connectors/sql/_sql.py,sha256=553BTPtvnnLMERYK8IcxR4CS3R4Sq7id-5hbApOEsIU,34199
|
172
172
|
meerschaum/connectors/sql/_uri.py,sha256=0BrhQtqQdzg9mR04gWBZINs_BbPFtSlTECXT_TCUwik,3460
|
@@ -205,7 +205,7 @@ meerschaum/utils/networking.py,sha256=Sr_eYUGW8_UV9-k9LqRFf7xLtbUcsDucODyLCRsFRU
|
|
205
205
|
meerschaum/utils/pool.py,sha256=vkE42af4fjrTEJTxf6Ek3xGucm1MtEkpsSEiaVzNKHs,2655
|
206
206
|
meerschaum/utils/process.py,sha256=IHnUhX79XofHwMsOs1A_irLMa7i48xXB-GCL83MtZOY,7192
|
207
207
|
meerschaum/utils/prompt.py,sha256=0mBFbgi_l9rCou9UnC_6qKTHkqyl1Z_jSRzfmc0xRXM,16490
|
208
|
-
meerschaum/utils/schedule.py,sha256=
|
208
|
+
meerschaum/utils/schedule.py,sha256=2UpXg5E9mfjg83w3N6C2_Q7tlE2exVJehro2Bvp6PzQ,10871
|
209
209
|
meerschaum/utils/sql.py,sha256=4sCNEpgUd6uFz6ySs4nnUMVaOT0YAvPM1ZlQYJTSF-0,46656
|
210
210
|
meerschaum/utils/threading.py,sha256=3N8JXPAnwqJiSjuQcbbJg3Rv9-CCUMJpeQRfKFR7MaA,2489
|
211
211
|
meerschaum/utils/typing.py,sha256=L05wOXfWdn_nJ0KnZVr-2zdMYcqjdyOW_7InT3xe6-s,2807
|
@@ -224,15 +224,15 @@ meerschaum/utils/formatting/_pipes.py,sha256=wy0iWJFsFl3X2VloaiA_gp9Yx9w6tD3FQZv
|
|
224
224
|
meerschaum/utils/formatting/_pprint.py,sha256=tgrT3FyGyu5CWJYysqK3kX1xdZYorlbOk9fcU_vt9Qg,3096
|
225
225
|
meerschaum/utils/formatting/_shell.py,sha256=ox75O7VHDAiwzSvdMSJZhXLadvAqYJVeihU6WeZ2Ogc,3677
|
226
226
|
meerschaum/utils/packages/__init__.py,sha256=HEJYz_rceqljpyRFlnToLR6vc_b7r-2d2K8zh_th2lg,57185
|
227
|
-
meerschaum/utils/packages/_packages.py,sha256=
|
227
|
+
meerschaum/utils/packages/_packages.py,sha256=P1Y0mc0TlX5iCL08U-4WkMG9LpEt_REWo30GJUn38cM,7865
|
228
228
|
meerschaum/utils/packages/lazy_loader.py,sha256=VHnph3VozH29R4JnSSBfwtA5WKZYZQFT_GeQSShCnuc,2540
|
229
229
|
meerschaum/utils/venv/_Venv.py,sha256=sBnlmxHdAh2bx8btfVoD79-H9-cYsv5lP02IIXkyECs,3553
|
230
230
|
meerschaum/utils/venv/__init__.py,sha256=sj-n8scWH2NPDJGAxfpqzsYqVUt2jMEr-7Uq9G7YUNQ,23183
|
231
|
-
meerschaum-2.2.
|
232
|
-
meerschaum-2.2.
|
233
|
-
meerschaum-2.2.
|
234
|
-
meerschaum-2.2.
|
235
|
-
meerschaum-2.2.
|
236
|
-
meerschaum-2.2.
|
237
|
-
meerschaum-2.2.
|
238
|
-
meerschaum-2.2.
|
231
|
+
meerschaum-2.2.1.dist-info/LICENSE,sha256=jG2zQEdRNt88EgHUWPpXVWmOrOduUQRx7MnYV9YIPaw,11359
|
232
|
+
meerschaum-2.2.1.dist-info/METADATA,sha256=XUYdU9OV2qtydf3XiXIvkA0gE-Nikh43zj_KRqA4ruo,23807
|
233
|
+
meerschaum-2.2.1.dist-info/NOTICE,sha256=OTA9Fcthjf5BRvWDDIcBC_xfLpeDV-RPZh3M-HQBRtQ,114
|
234
|
+
meerschaum-2.2.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
235
|
+
meerschaum-2.2.1.dist-info/entry_points.txt,sha256=5YBVzibw-0rNA_1VjB16z5GABsOGf-CDhW4yqH8C7Gc,88
|
236
|
+
meerschaum-2.2.1.dist-info/top_level.txt,sha256=bNoSiDj0El6buocix-FRoAtJOeq1qOF5rRm2u9i7Q6A,11
|
237
|
+
meerschaum-2.2.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
238
|
+
meerschaum-2.2.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|