meerschaum 2.6.16__tar.gz → 2.7.0rc1__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {meerschaum-2.6.16/meerschaum.egg-info → meerschaum-2.7.0rc1}/PKG-INFO +2 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/arguments/_parse_arguments.py +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/delete.py +65 -69
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/edit.py +22 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/install.py +1 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/sync.py +2 -3
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_default.py +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_paths.py +2 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_version.py +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_pipes.py +4 -3
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_create_engine.py +3 -3
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_pipes.py +84 -38
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_sql.py +6 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/_pipes.py +12 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/__init__.py +23 -13
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_attributes.py +19 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_dtypes.py +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_sync.py +61 -21
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_verify.py +8 -7
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/jobs/_Job.py +2 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/plugins/_Plugin.py +11 -14
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/Daemon.py +20 -13
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/dataframe.py +175 -13
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/dtypes/__init__.py +103 -14
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/dtypes/sql.py +26 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/misc.py +8 -8
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/packages/_packages.py +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/schedule.py +8 -3
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/sql.py +70 -47
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/venv/_Venv.py +4 -4
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/venv/__init__.py +33 -13
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1/meerschaum.egg-info}/PKG-INFO +2 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/requires.txt +1 -1
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_pipes_dtypes.py +118 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_sync.py +3 -2
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/LICENSE +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/NOTICE +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/README.md +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/__main__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/arguments/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/arguments/_parser.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/docs/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/docs/index.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/entry.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/gui/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/gui/app/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/gui/app/_windows.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/gui/app/actions.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/gui/app/pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/Shell.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/ShellCompleter.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/ValidAutoSuggest.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/resources/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/shell/updates.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/term/TermPageHandler.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/term/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/_internal/term/tools.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/api.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/attach.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/bootstrap.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/clear.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/copy.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/deduplicate.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/drop.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/login.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/os.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/pause.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/python.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/register.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/reload.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/restart.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/setup.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/sh.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/show.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/sql.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/stack.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/start.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/stop.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/tag.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/uninstall.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/upgrade.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/actions/verify.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/_chain.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/_events.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/_oauth2.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/_websockets.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/ansi_up.js +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/banner_1920x320.png +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/favicon.ico +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/logo_48x48.png +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/assets/logo_500x500.png +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/custom.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/dashboard.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/login.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/callbacks/register.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/components.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/connectors.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/graphs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/keys.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/dashboard.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/error.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/job.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/login.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pages/register.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/sessions.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/sync.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/websockets.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/dash/webterm.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/models/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/models/_interfaces.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/models/_locations.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/models/_metrics.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/models/_pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/bootstrap.min.css +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/dash.css +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/dbc_dark.css +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/styles.css +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/css/xterm.css +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/ico/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/ico/logo.ico +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/js/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/js/action_button.js +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/js/main.js +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/js/terminado.js +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/js/xterm.js +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/static/png/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/templates/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/templates/index.html +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/templates/old_index.html +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/templates/secret.html +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/resources/templates/termpage.html +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_actions.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_connectors.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_index.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_login.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_misc.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_version.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/routes/_webterm.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/api/tables/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_dash.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_edit.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_environment.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_formatting.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_patch.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_preprocess.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_read_config.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_shell.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/_sync.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/paths.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/resources/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/stack/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/stack/grafana/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/stack/mosquitto/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/stack/mosquitto/resources/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/stack/resources/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/config/static/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/_Connector.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_APIConnector.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_actions.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_fetch.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_login.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_misc.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_request.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_uri.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/api/_users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/parse.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/plugin/PluginConnector.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/plugin/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/poll.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_SQLConnector.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_cli.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_fetch.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_instance.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_uri.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/_users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/tables/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/tables/types.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/sql/tools.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/_ValkeyConnector.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/_fetch.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/_plugins.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/connectors/valkey/_users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_bootstrap.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_clear.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_copy.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_data.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_deduplicate.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_delete.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_drop.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_edit.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_fetch.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_register.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Pipe/_show.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/Plugin/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/User/_User.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/User/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/core/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/jobs/_Executor.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/jobs/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/jobs/systemd.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/plugins/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/plugins/bootstrap.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/_get_pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/FileDescriptorInterceptor.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/RotatingFile.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/StdinFile.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/daemon/_names.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/debug.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/formatting/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/formatting/_jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/formatting/_pipes.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/formatting/_pprint.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/formatting/_shell.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/interactive.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/networking.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/packages/__init__.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/packages/lazy_loader.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/pool.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/process.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/prompt.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/threading.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/typing.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/warnings.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum/utils/yaml.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/SOURCES.txt +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/dependency_links.txt +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/entry_points.txt +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/top_level.txt +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/meerschaum.egg-info/zip-safe +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/setup.cfg +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/setup.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_actions.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_arguments.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_deduplicate.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_jobs.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_pipe_data.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_sql.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_users.py +0 -0
- {meerschaum-2.6.16 → meerschaum-2.7.0rc1}/tests/test_verify.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: meerschaum
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.7.0rc1
|
4
4
|
Summary: Sync Time-Series Pipes with Meerschaum
|
5
5
|
Home-page: https://meerschaum.io
|
6
6
|
Author: Bennett Meares
|
@@ -80,7 +80,7 @@ Requires-Dist: duckdb>=1.0.0; extra == "drivers"
|
|
80
80
|
Requires-Dist: duckdb-engine>=0.13.0; extra == "drivers"
|
81
81
|
Provides-Extra: drivers-extras
|
82
82
|
Requires-Dist: pyodbc>=4.0.30; extra == "drivers-extras"
|
83
|
-
Requires-Dist:
|
83
|
+
Requires-Dist: oracledb>=2.5.0; extra == "drivers-extras"
|
84
84
|
Provides-Extra: cli
|
85
85
|
Requires-Dist: pgcli>=3.1.0; extra == "cli"
|
86
86
|
Requires-Dist: mycli>=1.23.2; extra == "cli"
|
@@ -9,6 +9,7 @@ Functions for deleting elements.
|
|
9
9
|
from __future__ import annotations
|
10
10
|
from meerschaum.utils.typing import Any, SuccessTuple, Union, Optional, List
|
11
11
|
|
12
|
+
|
12
13
|
def delete(
|
13
14
|
action: Optional[List[str]] = None,
|
14
15
|
**kw: Any
|
@@ -21,7 +22,6 @@ def delete(
|
|
21
22
|
|
22
23
|
"""
|
23
24
|
from meerschaum.actions import choose_subaction
|
24
|
-
from meerschaum.utils.debug import dprint
|
25
25
|
options = {
|
26
26
|
'config' : _delete_config,
|
27
27
|
'pipes' : _delete_pipes,
|
@@ -65,19 +65,18 @@ def _complete_delete(
|
|
65
65
|
|
66
66
|
|
67
67
|
def _delete_pipes(
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
68
|
+
debug: bool = False,
|
69
|
+
yes: bool = False,
|
70
|
+
force: bool = False,
|
71
|
+
noask: bool = False,
|
72
|
+
**kw: Any
|
73
|
+
) -> SuccessTuple:
|
74
74
|
"""
|
75
75
|
Drop pipes and delete their registrations.
|
76
|
-
|
77
76
|
"""
|
78
77
|
from meerschaum import get_pipes
|
79
78
|
from meerschaum.utils.prompt import yes_no
|
80
|
-
from meerschaum.utils.formatting import
|
79
|
+
from meerschaum.utils.formatting import highlight_pipes
|
81
80
|
from meerschaum.utils.warnings import warn
|
82
81
|
from meerschaum.actions import actions
|
83
82
|
pipes = get_pipes(as_list=True, debug=debug, **kw)
|
@@ -126,21 +125,22 @@ def _delete_pipes(
|
|
126
125
|
|
127
126
|
return successes > 0, msg
|
128
127
|
|
128
|
+
|
129
129
|
def _delete_config(
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
130
|
+
action: Optional[List[str]] = None,
|
131
|
+
yes: bool = False,
|
132
|
+
force: bool = False,
|
133
|
+
noask: bool = False,
|
134
|
+
debug: bool = False,
|
135
|
+
**kw: Any
|
136
|
+
) -> SuccessTuple:
|
137
137
|
"""
|
138
138
|
Delete configuration files.
|
139
|
-
|
140
139
|
"""
|
141
|
-
import os
|
140
|
+
import os
|
141
|
+
import shutil
|
142
142
|
from meerschaum.utils.prompt import yes_no
|
143
|
-
from meerschaum.config._paths import
|
143
|
+
from meerschaum.config._paths import STACK_COMPOSE_PATH, DEFAULT_CONFIG_DIR_PATH
|
144
144
|
from meerschaum.config._read_config import get_possible_keys, get_keyfile_path
|
145
145
|
from meerschaum.utils.debug import dprint
|
146
146
|
paths = [p for p in [STACK_COMPOSE_PATH, DEFAULT_CONFIG_DIR_PATH] if p.exists()]
|
@@ -157,7 +157,7 @@ def _delete_config(
|
|
157
157
|
else:
|
158
158
|
sep = '\n' + ' - '
|
159
159
|
answer = yes_no(
|
160
|
-
|
160
|
+
"Are you sure you want to delete the following configuration files?" +
|
161
161
|
f"{sep + sep.join([str(p) for p in paths])}\n",
|
162
162
|
default='n', noask=noask, yes=yes
|
163
163
|
)
|
@@ -176,18 +176,18 @@ def _delete_config(
|
|
176
176
|
|
177
177
|
return success, msg
|
178
178
|
|
179
|
+
|
179
180
|
def _delete_plugins(
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
181
|
+
action: Optional[List[str]] = None,
|
182
|
+
repository: Optional[str] = None,
|
183
|
+
yes: bool = False,
|
184
|
+
force: bool = False,
|
185
|
+
noask: bool = False,
|
186
|
+
debug: bool = False,
|
187
|
+
**kw: Any
|
188
|
+
) -> SuccessTuple:
|
188
189
|
"""
|
189
190
|
Delete plugins from a Meerschaum repository.
|
190
|
-
|
191
191
|
"""
|
192
192
|
from meerschaum.utils.warnings import info
|
193
193
|
from meerschaum.plugins import reload_plugins
|
@@ -206,7 +206,7 @@ def _delete_plugins(
|
|
206
206
|
) if not force else True
|
207
207
|
|
208
208
|
if not answer:
|
209
|
-
return False,
|
209
|
+
return False, "No plugins deleted."
|
210
210
|
|
211
211
|
successes = {}
|
212
212
|
for name in action:
|
@@ -218,27 +218,24 @@ def _delete_plugins(
|
|
218
218
|
reload_plugins(debug=debug)
|
219
219
|
return True, "Success"
|
220
220
|
|
221
|
+
|
221
222
|
def _delete_users(
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
223
|
+
action: Optional[List[str]] = None,
|
224
|
+
mrsm_instance: Optional[str] = None,
|
225
|
+
yes: bool = False,
|
226
|
+
force: bool = False,
|
227
|
+
noask: bool = False,
|
228
|
+
shell: bool = False,
|
229
|
+
debug: bool = False,
|
230
|
+
**kw
|
231
|
+
) -> SuccessTuple:
|
231
232
|
"""
|
232
233
|
Delete users from a Meerschaum instance. Adequate permissions are required.
|
233
|
-
|
234
234
|
"""
|
235
|
-
from meerschaum import get_connector
|
236
235
|
from meerschaum.connectors.parse import parse_instance_keys
|
237
|
-
from meerschaum.utils.prompt import yes_no
|
238
|
-
from meerschaum.utils.
|
239
|
-
from meerschaum.utils.warnings import warn, error, info
|
236
|
+
from meerschaum.utils.prompt import yes_no
|
237
|
+
from meerschaum.utils.warnings import info
|
240
238
|
from meerschaum.core import User
|
241
|
-
from meerschaum.connectors.api import APIConnector
|
242
239
|
from meerschaum.utils.formatting import print_tuple
|
243
240
|
instance_connector = parse_instance_keys(mrsm_instance)
|
244
241
|
|
@@ -292,24 +289,25 @@ def _delete_users(
|
|
292
289
|
)
|
293
290
|
return True, msg
|
294
291
|
|
292
|
+
|
295
293
|
def _delete_connectors(
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
294
|
+
action: Optional[List[str]] = None,
|
295
|
+
connector_keys: Optional[List[str]] = None,
|
296
|
+
yes: bool = False,
|
297
|
+
force: bool = False,
|
298
|
+
noask: bool = False,
|
299
|
+
debug: bool = False,
|
300
|
+
**kw: Any
|
301
|
+
) -> SuccessTuple:
|
304
302
|
"""
|
305
303
|
Delete configured connectors.
|
306
304
|
|
307
305
|
Example:
|
308
306
|
`delete connectors sql:test`
|
309
|
-
|
310
307
|
"""
|
311
|
-
import os
|
312
|
-
|
308
|
+
import os
|
309
|
+
import pathlib
|
310
|
+
from meerschaum.utils.prompt import yes_no
|
313
311
|
from meerschaum.connectors.parse import parse_connector_keys
|
314
312
|
from meerschaum.config import _config
|
315
313
|
from meerschaum.config._edit import write_config
|
@@ -329,7 +327,7 @@ def _delete_connectors(
|
|
329
327
|
for ck in _keys:
|
330
328
|
try:
|
331
329
|
conn = parse_connector_keys(ck, debug=debug)
|
332
|
-
except Exception
|
330
|
+
except Exception:
|
333
331
|
warn(f"Could not parse connector '{ck}'. Skipping...", stack=False)
|
334
332
|
continue
|
335
333
|
|
@@ -357,26 +355,27 @@ def _delete_connectors(
|
|
357
355
|
):
|
358
356
|
try:
|
359
357
|
os.remove(c.database)
|
360
|
-
except Exception
|
358
|
+
except Exception:
|
361
359
|
warn(
|
362
360
|
"Failed to delete database file for connector "
|
363
361
|
+ f"'{c}'. Ignoring...", stack=False
|
364
362
|
)
|
365
|
-
except Exception
|
363
|
+
except Exception:
|
366
364
|
pass
|
367
365
|
try:
|
368
366
|
del cf['meerschaum']['connectors'][c.type][c.label]
|
369
|
-
except Exception
|
367
|
+
except Exception:
|
370
368
|
warn(f"Failed to delete connector '{c}' from configuration. Skipping...", stack=False)
|
371
369
|
|
372
370
|
write_config(cf, debug=debug)
|
373
371
|
return True, "Success"
|
374
372
|
|
373
|
+
|
375
374
|
def _complete_delete_connectors(
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
375
|
+
action: Optional[List[str]] = None,
|
376
|
+
line: str = '',
|
377
|
+
**kw: Any
|
378
|
+
) -> List[str]:
|
380
379
|
from meerschaum.config import get_config
|
381
380
|
from meerschaum.utils.misc import get_connector_labels
|
382
381
|
types = list(get_config('meerschaum', 'connectors').keys())
|
@@ -401,10 +400,8 @@ def _delete_jobs(
|
|
401
400
|
Remove a job's log files and delete the job's ID.
|
402
401
|
|
403
402
|
If the job is running, ask to kill the job first.
|
404
|
-
|
405
403
|
"""
|
406
404
|
from meerschaum.jobs import (
|
407
|
-
Job,
|
408
405
|
get_running_jobs,
|
409
406
|
get_stopped_jobs,
|
410
407
|
get_filtered_jobs,
|
@@ -460,7 +457,7 @@ def _delete_jobs(
|
|
460
457
|
### Ensure the running jobs are dead.
|
461
458
|
if get_running_jobs(executor_keys, jobs, debug=debug):
|
462
459
|
return False, (
|
463
|
-
|
460
|
+
"Failed to kill running jobs. Please stop these jobs before deleting."
|
464
461
|
)
|
465
462
|
_to_delete.update(to_stop_jobs)
|
466
463
|
|
@@ -475,7 +472,7 @@ def _delete_jobs(
|
|
475
472
|
pprint_jobs(_to_delete, nopretty=nopretty)
|
476
473
|
if not yes_no(
|
477
474
|
"Are you sure you want to delete these jobs?",
|
478
|
-
yes=yes, noask=noask, default='
|
475
|
+
yes=yes, noask=noask, default='n',
|
479
476
|
):
|
480
477
|
return False, "No jobs were deleted."
|
481
478
|
|
@@ -569,7 +566,6 @@ def _delete_venvs(
|
|
569
566
|
from meerschaum.utils.venv import venv_exists
|
570
567
|
from meerschaum.utils.prompt import yes_no
|
571
568
|
from meerschaum.utils.misc import print_options
|
572
|
-
from meerschaum.utils.warnings import warn
|
573
569
|
|
574
570
|
venvs_to_skip = ['mrsm']
|
575
571
|
venvs = [
|
@@ -397,6 +397,7 @@ def _edit_jobs(
|
|
397
397
|
from meerschaum._internal.arguments import (
|
398
398
|
split_pipeline_sysargs,
|
399
399
|
split_chained_sysargs,
|
400
|
+
parse_arguments,
|
400
401
|
)
|
401
402
|
from meerschaum.utils.formatting import make_header, print_options
|
402
403
|
from meerschaum.utils.warnings import info
|
@@ -410,7 +411,26 @@ def _edit_jobs(
|
|
410
411
|
|
411
412
|
num_edited = 0
|
412
413
|
for name, job in jobs.items():
|
413
|
-
|
414
|
+
try:
|
415
|
+
sub_args_line = None
|
416
|
+
pipeline_args_line = None
|
417
|
+
if job.sysargs[:2] == ['start', 'pipeline']:
|
418
|
+
job_args = parse_arguments(job.sysargs)
|
419
|
+
mrsm.pprint(job_args)
|
420
|
+
sub_args_line = job_args['params']['sub_args_line']
|
421
|
+
params_index = job.sysargs[2:].index('-P')
|
422
|
+
indices_to_skip = (params_index, params_index + 1)
|
423
|
+
pipeline_args_line = shlex.join(
|
424
|
+
[a for i, a in enumerate(job.sysargs[2:]) if i not in indices_to_skip]
|
425
|
+
)
|
426
|
+
except (ValueError, IndexError):
|
427
|
+
sub_args_line = None
|
428
|
+
|
429
|
+
sysargs_str = (
|
430
|
+
f"{sub_args_line} : {pipeline_args_line}"
|
431
|
+
if sub_args_line is not None and pipeline_args_line is not None
|
432
|
+
else shlex.join(job.sysargs)
|
433
|
+
)
|
414
434
|
clear_screen(debug=debug)
|
415
435
|
info(
|
416
436
|
f"Editing arguments for job '{name}'.\n"
|
@@ -422,7 +442,7 @@ def _edit_jobs(
|
|
422
442
|
try:
|
423
443
|
new_sysargs_str = prompt(
|
424
444
|
"",
|
425
|
-
default_editable=
|
445
|
+
default_editable=job.label,
|
426
446
|
multiline=True,
|
427
447
|
icon=False,
|
428
448
|
completer=ShellCompleter(),
|
@@ -175,7 +175,7 @@ def _install_packages(
|
|
175
175
|
+ f" into the virtual environment '{venv}'."
|
176
176
|
)
|
177
177
|
return False, (
|
178
|
-
|
178
|
+
"Failed to install package" + ("s" if len(action) != 1 else '') + f" {items_str(action)}."
|
179
179
|
)
|
180
180
|
|
181
181
|
|
@@ -200,7 +200,6 @@ def _install_required(
|
|
200
200
|
from meerschaum.core import Plugin
|
201
201
|
from meerschaum.utils.warnings import warn, info
|
202
202
|
from meerschaum.connectors.parse import parse_repo_keys
|
203
|
-
from meerschaum.utils.formatting import print_tuple
|
204
203
|
from meerschaum.plugins import get_plugins_names
|
205
204
|
repo_connector = parse_repo_keys(repository)
|
206
205
|
|
@@ -282,9 +282,8 @@ def _sync_pipes(
|
|
282
282
|
from meerschaum.utils.formatting import print_pipes_results
|
283
283
|
from meerschaum.config.static import STATIC_CONFIG
|
284
284
|
|
285
|
-
### NOTE: Removed MRSM_NONINTERACTIVE check.
|
286
285
|
noninteractive_val = os.environ.get(STATIC_CONFIG['environment']['noninteractive'], None)
|
287
|
-
|
286
|
+
noninteractive = str(noninteractive_val).lower() in ('1', 'true', 'yes')
|
288
287
|
|
289
288
|
run = True
|
290
289
|
msg = ""
|
@@ -292,7 +291,7 @@ def _sync_pipes(
|
|
292
291
|
cooldown = 2 * (min_seconds + 1)
|
293
292
|
success_pipes, failure_pipes = [], []
|
294
293
|
while run:
|
295
|
-
_progress = progress() if shell else None
|
294
|
+
_progress = progress() if shell and not noninteractive else None
|
296
295
|
cm = _progress if _progress is not None else contextlib.nullcontext()
|
297
296
|
|
298
297
|
lap_begin = time.perf_counter()
|
@@ -103,7 +103,7 @@ if ENVIRONMENT_VENVS_DIR in os.environ:
|
|
103
103
|
if not _VENVS_DIR_PATH.exists():
|
104
104
|
try:
|
105
105
|
_VENVS_DIR_PATH.mkdir(parents=True, exist_ok=True)
|
106
|
-
except Exception
|
106
|
+
except Exception:
|
107
107
|
print(
|
108
108
|
f"Invalid path set for environment variable '{ENVIRONMENT_VENVS_DIR}':\n"
|
109
109
|
+ f"{_VENVS_DIR_PATH}"
|
@@ -148,6 +148,7 @@ paths = {
|
|
148
148
|
'CACHE_RESOURCES_PATH' : ('{ROOT_DIR_PATH}', '.cache'),
|
149
149
|
'PIPES_CACHE_RESOURCES_PATH' : ('{CACHE_RESOURCES_PATH}', 'pipes'),
|
150
150
|
'USERS_CACHE_RESOURCES_PATH' : ('{CACHE_RESOURCES_PATH}', 'users'),
|
151
|
+
'VENVS_CACHE_RESOURCES_PATH' : ('{CACHE_RESOURCES_PATH}', 'venvs'),
|
151
152
|
|
152
153
|
'PLUGINS_RESOURCES_PATH' : ('{INTERNAL_RESOURCES_PATH}', 'plugins'),
|
153
154
|
'PLUGINS_INTERNAL_LOCK_PATH' : ('{INTERNAL_RESOURCES_PATH}', 'plugins.lock'),
|
@@ -15,7 +15,8 @@ from datetime import datetime
|
|
15
15
|
import meerschaum as mrsm
|
16
16
|
from meerschaum.utils.debug import dprint
|
17
17
|
from meerschaum.utils.warnings import warn, error
|
18
|
-
from meerschaum.utils.typing import SuccessTuple, Union, Any, Optional,
|
18
|
+
from meerschaum.utils.typing import SuccessTuple, Union, Any, Optional, List, Dict, Tuple
|
19
|
+
|
19
20
|
|
20
21
|
def pipe_r_url(
|
21
22
|
pipe: mrsm.Pipe
|
@@ -30,6 +31,7 @@ def pipe_r_url(
|
|
30
31
|
+ f"{pipe.connector_keys}/{pipe.metric_key}/{location_key}"
|
31
32
|
)
|
32
33
|
|
34
|
+
|
33
35
|
def register_pipe(
|
34
36
|
self,
|
35
37
|
pipe: mrsm.Pipe,
|
@@ -39,7 +41,6 @@ def register_pipe(
|
|
39
41
|
Returns a tuple of (success_bool, response_dict).
|
40
42
|
"""
|
41
43
|
from meerschaum.utils.debug import dprint
|
42
|
-
from meerschaum.config.static import STATIC_CONFIG
|
43
44
|
### NOTE: if `parameters` is supplied in the Pipe constructor,
|
44
45
|
### then `pipe.parameters` will exist and not be fetched from the database.
|
45
46
|
r_url = pipe_r_url(pipe)
|
@@ -180,7 +181,7 @@ def sync_pipe(
|
|
180
181
|
from meerschaum.utils.misc import json_serialize_datetime, items_str
|
181
182
|
from meerschaum.config import get_config
|
182
183
|
from meerschaum.utils.packages import attempt_import
|
183
|
-
from meerschaum.utils.dataframe import get_numeric_cols, to_json
|
184
|
+
from meerschaum.utils.dataframe import get_numeric_cols, to_json, get_bytes_cols
|
184
185
|
begin = time.time()
|
185
186
|
more_itertools = attempt_import('more_itertools')
|
186
187
|
if df is None:
|
@@ -107,7 +107,7 @@ flavor_configs = {
|
|
107
107
|
},
|
108
108
|
},
|
109
109
|
'oracle': {
|
110
|
-
'engine': 'oracle+
|
110
|
+
'engine': 'oracle+oracledb',
|
111
111
|
'create_engine': default_create_engine_args,
|
112
112
|
'omit_create_engine': {'method',},
|
113
113
|
'to_sql': {
|
@@ -164,7 +164,7 @@ install_flavor_drivers = {
|
|
164
164
|
'citus': ['psycopg'],
|
165
165
|
'cockroachdb': ['psycopg', 'sqlalchemy_cockroachdb', 'sqlalchemy_cockroachdb.psycopg'],
|
166
166
|
'mssql': ['pyodbc'],
|
167
|
-
'oracle': ['
|
167
|
+
'oracle': ['oracledb'],
|
168
168
|
}
|
169
169
|
require_patching_flavors = {'cockroachdb': [('sqlalchemy-cockroachdb', 'sqlalchemy_cockroachdb')]}
|
170
170
|
|
@@ -239,7 +239,7 @@ def create_engine(
|
|
239
239
|
self._sys_config['create_engine'] = {}
|
240
240
|
if 'connect_args' not in self._sys_config['create_engine']:
|
241
241
|
self._sys_config['create_engine']['connect_args'] = {}
|
242
|
-
self._sys_config['create_engine']['connect_args'].update({"check_same_thread"
|
242
|
+
self._sys_config['create_engine']['connect_args'].update({"check_same_thread": False})
|
243
243
|
else:
|
244
244
|
engine_str = (
|
245
245
|
_engine + "://" + (_username if _username is not None else '') +
|