mcli-framework 8.0.18__tar.gz → 8.0.19__tar.gz
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.
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/PKG-INFO +1 -1
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/pyproject.toml +1 -1
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/main.py +15 -4
- mcli_framework-8.0.19/src/mcli/app/mv_cmd.py +143 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/__init__.py +2 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/messages.py +32 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/PKG-INFO +1 -1
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/SOURCES.txt +1 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/dependabot.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/dependency-review-config.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/build.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/ci.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/codeql.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/docs-links.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/publish-self-hosted.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/publish.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/release.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/security.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/.github/workflows/test.yml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/LICENSE +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/MANIFEST.in +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/README.md +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/llms-full.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/llms.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/Cargo.toml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/src/command_parser.rs +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/src/file_watcher.rs +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/src/lib.rs +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/src/process_manager.rs +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/mcli_rust/src/tfidf.rs +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/setup.cfg +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/commands_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/completion_helpers.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/context_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/create_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/delete_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/edit_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/init_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/list_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/migrate_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/model/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/model/model.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/model_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/new_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/remove_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/rm_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/search_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/sync_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/video/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/app/video/video.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/config.toml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/api.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/daemon_client.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/daemon_client_local.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/daemon_decorator.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/api/mcli_decorators.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/auth.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/aws_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/azure_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/credential_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/gcp_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/key_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/mcli_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/token_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/auth/token_util.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/config/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/config/config.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/defaults.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/env.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/paths.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/scripts.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/constants/storage.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/custom_commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/discovery/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/discovery/command_discovery.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/erd/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/erd/erd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/erd/generate_graph.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/errors.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/feature_detection.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/files/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/files/files.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/folder_workflows.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/fs/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/fs/fs.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/ipfs_sync.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/lib.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/logger/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/logger/logger.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/optional_deps.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/paths.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/performance/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/performance/optimizer.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/performance/rust_bridge.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/performance/uvloop_config.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pickles/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pickles/pickles.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pyenv/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pyenv/deps.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pyenv/manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/pyenv/venv.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/script_loader.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/script_sync.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/script_watcher.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/search/cached_vectorizer.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/secrets/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/secrets/commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/secrets/manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/secrets/repl.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/secrets/store.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/services/data_pipeline.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/services/lsh_client.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/services/redis_service.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/shell/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/shell/shell.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/templates/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/templates/command_templates.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/toml/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/toml/toml.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/types.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/ui/styling.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/ui/visual_effects.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/watcher/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/watcher/watcher.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/lib/workspace_registry.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/app.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/middleware.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/admin_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/auth_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/backtest_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/data_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/model_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/monitoring_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/portfolio_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/prediction_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/trade_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/routers/websocket_router.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/api/schemas.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/auth/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/auth/auth_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/auth/models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/auth/permissions.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/backtesting/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/backtesting/backtest_engine.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/backtesting/performance_metrics.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/backtesting/run.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/cache.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/cli/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/cli/main.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/config/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/config/settings.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/configs/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/configs/dvc_config.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/configs/mlflow_config.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/configs/mlops_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/app.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/app_integrated.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/app_supabase.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/app_training.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/cli.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/common.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/components/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/components/charts.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/components/metrics.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/components/tables.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/overview.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/cicd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/debug_dependencies.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/gravity_viz.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/monte_carlo_predictions.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/predictions_enhanced.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/scrapers_and_logs.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/test_portfolio.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/trading.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/pages/workflows.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/streamlit_extras_utils.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/styles.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/utils.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/dashboard/warning_suppression.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/data_ingestion/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/data_ingestion/api_connectors.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/data_ingestion/data_pipeline.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/data_ingestion/stream_processor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/database/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/database/migrations/env.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/database/models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/database/session.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/experimentation/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/experimentation/ab_testing.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/features/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/features/ensemble_features.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/features/recommendation_engine.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/features/stock_features.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/features/test_feature_engineering.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/logging.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/mlops/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/mlops/data_versioning.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/mlops/experiment_tracker.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/mlops/model_serving.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/mlops/pipeline_orchestrator.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/models/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/models/base_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/models/ensemble_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/models/recommendation_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/models/test_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/monitoring/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/monitoring/drift_detection.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/monitoring/metrics.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/optimization/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/optimization/optimize.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/optimization/portfolio_optimizer.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/predictions/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/predictions/monte_carlo.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/predictions/prediction_engine.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/preprocessing/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/preprocessing/data_cleaners.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/preprocessing/feature_extractors.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/preprocessing/ml_pipeline.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/preprocessing/test_preprocessing.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/scripts/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/scripts/populate_sample_data.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/serving/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/serving/serve.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/tasks.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/tests/test_integration.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/tests/test_training_dashboard.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/alpaca_client.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/migrations.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/paper_trading.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/risk_management.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/trading/trading_service.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/training/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/training/train.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/ml/training/train_model.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/mygroup/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/mygroup/test_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/public/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/public/commands/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/public/oi/oi.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/public/public.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/completion_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/health_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/logs_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/migrate_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/redis_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/self_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/store_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/test_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/visual_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/workflows_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/self/zsh_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/backends/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/backends/ipfs_backend.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/base.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/cache.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/encryption.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/factory.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/registry.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/storage/storacha_cli.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/async_command_database.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/async_process_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/client.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/daemon.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/daemon_api.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/enhanced_daemon.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/process_cli.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/process_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/daemon/test_daemon.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/dashboard/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/dashboard/dashboard_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/doc_convert.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/docker/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/docker/docker.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/file/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/gcloud/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/gcloud/config.toml +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/gcloud/gcloud.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/git_commit/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/git_commit/ai_service.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/interview/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/lsh_integration.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/client.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/download_and_run_efficient_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/lightweight_embedder.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/lightweight_model_server.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/lightweight_test.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/model_service.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/ollama_efficient_runner.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/openai_adapter.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/pdf_processor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/test_efficient_runner.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/test_example.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/test_integration.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/model_service/test_new_features.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/command_loader.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/converter.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/executor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/notebook_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/schema.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/notebook/validator.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/openai/openai.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/registry/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/registry/registry.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/repo/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/repo/repo.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/cron_parser.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/job.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/monitor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/persistence.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/scheduler/scheduler.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/search/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/secrets/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/secrets/secrets_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/storage/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/storage/storage_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/sync/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/sync/test_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/videos/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/wakatime/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/wakatime/wakatime.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli/workflow/workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/dependency_links.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/entry_points.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/requires.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/src/mcli_framework.egg-info/top_level.txt +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_all_commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_app_logs_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_app_redis_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_logs_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_main_app.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_model_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_self_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_self_cmd_plugins.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_self_cmd_utilities.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_workflow_creation_commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_workflow_file.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_workflow_gcloud.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/cli/test_workflow_registry.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/conftest.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/e2e/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/e2e/test_complete_workflows.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/e2e/test_model_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/e2e/test_new_user_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/e2e/test_update_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/fixtures/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/fixtures/cli_fixtures.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/fixtures/data_fixtures.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/fixtures/db_fixtures.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/fixtures/model_fixtures.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_all_commands_comprehensive.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_daemon_server.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_direct_file_execution.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_e2e_dashboard_lsh_supabase.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_flask_webapp.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_folder_workflows_integration.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_gcloud_services.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_ml_auth.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_ml_data_pipeline.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_ml_models.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_ml_pipeline.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_module_imports.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_notebook_workflows.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_oi_service.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_repo_operations.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_scheduler_integration.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_service_registry.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_supabase_live_connection.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_video_processing.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_wakatime_api.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_webapp_full.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/integration/test_workflow_commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/performance/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/property/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/storage/__init__.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/storage/test_cache.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/storage/test_encryption.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/storage/test_storacha_cli.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_api_utils.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_async_process_manager.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_auth_modules.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_bug_fixes.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_config.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_custom_commands.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_custom_commands_filtering.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_daemon_api.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_dashboard_components.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_dashboard_functions.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_dashboard_pages.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_dependencies.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_doc_convert_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_emulator_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_erd_generation.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_erd_generic.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_erd_imports.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_folder_workflows.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_git_commit_workflow.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_health_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_lib_auth.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_lib_files.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_lib_utils.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_logger.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_ml_preprocessing.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_new_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_notebook_command_loader.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_notebook_executor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_optional_deps.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_paths.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_pdf_compress.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_prediction_engine.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_pyenv.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_regression.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_scheduler.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_scheduler_cron_parser.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_scheduler_job.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_scheduler_monitor.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_scheduler_persistence.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_self_update.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_store_cmd.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_supabase_connection.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_supabase_pagination.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_toml_utils.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_trading_imports.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_ui_rich.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_uv_compat.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/test_workflow_file_completion.py +0 -0
- {mcli_framework-8.0.18 → mcli_framework-8.0.19}/tests/unit/workflow/test_notebook.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mcli-framework
|
|
3
|
-
Version: 8.0.
|
|
3
|
+
Version: 8.0.19
|
|
4
4
|
Summary: Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job.
|
|
5
5
|
Author-email: Luis Fernandez de la Vara <luis@lefv.io>
|
|
6
6
|
Maintainer-email: Luis Fernandez de la Vara <luis@lefv.io>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "mcli-framework"
|
|
3
|
-
version = "8.0.
|
|
3
|
+
version = "8.0.19"
|
|
4
4
|
description = "Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -11,16 +11,18 @@ from mcli.lib.logger.logger import disable_runtime_tracing, enable_runtime_traci
|
|
|
11
11
|
|
|
12
12
|
# Desired command order for help display
|
|
13
13
|
COMMAND_ORDER = [
|
|
14
|
-
"
|
|
15
|
-
"list",
|
|
16
|
-
"search",
|
|
14
|
+
"init",
|
|
17
15
|
"new",
|
|
18
16
|
"edit",
|
|
17
|
+
"mv",
|
|
19
18
|
"rm",
|
|
19
|
+
"search",
|
|
20
|
+
"list",
|
|
21
|
+
"run",
|
|
22
|
+
"context",
|
|
20
23
|
"health",
|
|
21
24
|
"sync",
|
|
22
25
|
"self",
|
|
23
|
-
"init",
|
|
24
26
|
]
|
|
25
27
|
|
|
26
28
|
|
|
@@ -401,6 +403,15 @@ def _add_lazy_commands(app: click.Group):
|
|
|
401
403
|
except ImportError as e:
|
|
402
404
|
logger.debug(f"Could not load edit command: {e}")
|
|
403
405
|
|
|
406
|
+
# mcli mv - Move/rename a command
|
|
407
|
+
try:
|
|
408
|
+
from mcli.app.mv_cmd import mv
|
|
409
|
+
|
|
410
|
+
app.add_command(mv, name="mv")
|
|
411
|
+
logger.debug("Added mv command")
|
|
412
|
+
except ImportError as e:
|
|
413
|
+
logger.debug(f"Could not load mv command: {e}")
|
|
414
|
+
|
|
404
415
|
# mcli rm - Delete a command
|
|
405
416
|
try:
|
|
406
417
|
from mcli.app.delete_cmd import rm
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"""Top-level mv command for MCLI.
|
|
2
|
+
|
|
3
|
+
This module provides the `mcli mv` command for moving/renaming workflow commands.
|
|
4
|
+
Supports moving between local and global locations.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import shutil
|
|
8
|
+
from pathlib import Path
|
|
9
|
+
|
|
10
|
+
import click
|
|
11
|
+
from rich.prompt import Prompt
|
|
12
|
+
|
|
13
|
+
from mcli.lib.constants import MoveMessages
|
|
14
|
+
from mcli.lib.custom_commands import get_command_manager
|
|
15
|
+
from mcli.lib.logger.logger import get_logger
|
|
16
|
+
from mcli.lib.paths import get_custom_commands_dir
|
|
17
|
+
from mcli.lib.ui.styling import console
|
|
18
|
+
|
|
19
|
+
logger = get_logger(__name__)
|
|
20
|
+
MM = MoveMessages # Short alias for cleaner code
|
|
21
|
+
|
|
22
|
+
# Supported native script extensions
|
|
23
|
+
NATIVE_SCRIPT_EXTENSIONS = [".py", ".sh", ".bash", ".js", ".ts", ".ipynb"]
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def find_command_file(workflows_dir: Path, command_name: str) -> Path | None:
|
|
27
|
+
"""Find a command file by name (native script or JSON)."""
|
|
28
|
+
# Check native scripts first
|
|
29
|
+
for ext in NATIVE_SCRIPT_EXTENSIONS:
|
|
30
|
+
script_path = workflows_dir / f"{command_name}{ext}"
|
|
31
|
+
if script_path.exists():
|
|
32
|
+
return script_path
|
|
33
|
+
|
|
34
|
+
# Check JSON file
|
|
35
|
+
json_path = workflows_dir / f"{command_name}.json"
|
|
36
|
+
if json_path.exists():
|
|
37
|
+
return json_path
|
|
38
|
+
|
|
39
|
+
return None
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
@click.command("mv")
|
|
43
|
+
@click.argument("from_name", required=True)
|
|
44
|
+
@click.argument("to_name", required=True)
|
|
45
|
+
@click.option(
|
|
46
|
+
"--global",
|
|
47
|
+
"-g",
|
|
48
|
+
"from_global",
|
|
49
|
+
is_flag=True,
|
|
50
|
+
help="Source is a global command",
|
|
51
|
+
)
|
|
52
|
+
@click.option(
|
|
53
|
+
"--to-global",
|
|
54
|
+
"-G",
|
|
55
|
+
"to_global",
|
|
56
|
+
is_flag=True,
|
|
57
|
+
help="Move destination to global commands",
|
|
58
|
+
)
|
|
59
|
+
@click.option("--yes", "-y", is_flag=True, help="Skip confirmation prompt")
|
|
60
|
+
def mv(from_name: str, to_name: str, from_global: bool, to_global: bool, yes: bool):
|
|
61
|
+
"""📦 Move or rename a workflow command.
|
|
62
|
+
|
|
63
|
+
Move a command from one location to another, or rename it within the same scope.
|
|
64
|
+
|
|
65
|
+
\b
|
|
66
|
+
Examples:
|
|
67
|
+
mcli mv old-name new-name # Rename local command
|
|
68
|
+
mcli mv my-cmd --to-global # Move local to global (keep same name)
|
|
69
|
+
mcli mv my-cmd -g new-name # Move global to local with new name
|
|
70
|
+
mcli mv my-cmd -g -G new-name # Rename global command
|
|
71
|
+
"""
|
|
72
|
+
# Get source and destination directories
|
|
73
|
+
source_dir = get_custom_commands_dir(global_mode=from_global)
|
|
74
|
+
dest_dir = get_custom_commands_dir(global_mode=to_global)
|
|
75
|
+
|
|
76
|
+
# Find the source file
|
|
77
|
+
source_file = find_command_file(source_dir, from_name)
|
|
78
|
+
|
|
79
|
+
if not source_file:
|
|
80
|
+
console.print(MM.COMMAND_NOT_FOUND.format(name=from_name))
|
|
81
|
+
console.print(MM.SEARCHED_IN.format(path=source_dir))
|
|
82
|
+
return 1
|
|
83
|
+
|
|
84
|
+
# Determine destination path (preserve extension)
|
|
85
|
+
dest_file = dest_dir / f"{to_name}{source_file.suffix}"
|
|
86
|
+
|
|
87
|
+
# Check if destination already exists
|
|
88
|
+
if dest_file.exists():
|
|
89
|
+
console.print(MM.ALREADY_EXISTS.format(name=to_name))
|
|
90
|
+
console.print(MM.PATH_DISPLAY.format(path=dest_file))
|
|
91
|
+
return 1
|
|
92
|
+
|
|
93
|
+
# Describe the operation
|
|
94
|
+
if from_global == to_global:
|
|
95
|
+
# Same scope - just renaming
|
|
96
|
+
if from_name == to_name:
|
|
97
|
+
console.print(MM.NO_CHANGE_NEEDED)
|
|
98
|
+
return 0
|
|
99
|
+
operation = MM.RENAME_OP.format(from_name=from_name, to_name=to_name)
|
|
100
|
+
scope = "global" if from_global else "local"
|
|
101
|
+
console.print(MM.RENAMING_COMMAND.format(scope=scope))
|
|
102
|
+
else:
|
|
103
|
+
# Moving between scopes
|
|
104
|
+
from_scope = "global" if from_global else "local"
|
|
105
|
+
to_scope = "global" if to_global else "local"
|
|
106
|
+
operation = MM.MOVE_OP.format(from_name=from_name, from_scope=from_scope, to_scope=to_scope)
|
|
107
|
+
if from_name != to_name:
|
|
108
|
+
operation += MM.MOVE_AS_OP.format(to_name=to_name)
|
|
109
|
+
console.print(MM.MOVING_COMMAND)
|
|
110
|
+
|
|
111
|
+
console.print(MM.FROM_PATH.format(path=source_file))
|
|
112
|
+
console.print(MM.TO_PATH.format(path=dest_file))
|
|
113
|
+
|
|
114
|
+
# Confirm
|
|
115
|
+
if not yes:
|
|
116
|
+
should_move = Prompt.ask(MM.PROCEED_PROMPT, choices=["y", "n"], default="n")
|
|
117
|
+
if should_move.lower() != "y":
|
|
118
|
+
console.print(MM.CANCELLED)
|
|
119
|
+
return 0
|
|
120
|
+
|
|
121
|
+
# Ensure destination directory exists
|
|
122
|
+
dest_dir.mkdir(parents=True, exist_ok=True)
|
|
123
|
+
|
|
124
|
+
# Perform the move
|
|
125
|
+
try:
|
|
126
|
+
shutil.move(str(source_file), str(dest_file))
|
|
127
|
+
|
|
128
|
+
# Update lockfiles for both source and destination managers
|
|
129
|
+
source_manager = get_command_manager(global_mode=from_global)
|
|
130
|
+
source_manager.update_lockfile()
|
|
131
|
+
|
|
132
|
+
if from_global != to_global:
|
|
133
|
+
dest_manager = get_command_manager(global_mode=to_global)
|
|
134
|
+
dest_manager.update_lockfile()
|
|
135
|
+
|
|
136
|
+
console.print(MM.MOVE_SUCCESS.format(operation=operation))
|
|
137
|
+
console.print(MM.NEW_LOCATION.format(path=dest_file))
|
|
138
|
+
return 0
|
|
139
|
+
|
|
140
|
+
except Exception as e:
|
|
141
|
+
console.print(MM.MOVE_FAILED.format(error=e))
|
|
142
|
+
logger.exception("Failed to move command")
|
|
143
|
+
return 1
|
|
@@ -39,6 +39,7 @@ from .messages import (
|
|
|
39
39
|
ErrorMessages,
|
|
40
40
|
InfoMessages,
|
|
41
41
|
ModelServiceMessages,
|
|
42
|
+
MoveMessages,
|
|
42
43
|
PromptMessages,
|
|
43
44
|
SuccessMessages,
|
|
44
45
|
SyncMessages,
|
|
@@ -86,6 +87,7 @@ __all__ = [
|
|
|
86
87
|
"ChatMessages",
|
|
87
88
|
"CommandMessages",
|
|
88
89
|
"EditMessages",
|
|
90
|
+
"MoveMessages",
|
|
89
91
|
"ModelServiceMessages",
|
|
90
92
|
"SystemIntegrationMessages",
|
|
91
93
|
"SyncMessages",
|
|
@@ -942,6 +942,37 @@ class SyncMessages:
|
|
|
942
942
|
DIR_NOT_EXIST = "Commands directory does not exist: {path}"
|
|
943
943
|
|
|
944
944
|
|
|
945
|
+
class MoveMessages:
|
|
946
|
+
"""Move/rename command message constants."""
|
|
947
|
+
|
|
948
|
+
# Info messages
|
|
949
|
+
RENAMING_COMMAND = "[cyan]Renaming {scope} command:[/cyan]"
|
|
950
|
+
MOVING_COMMAND = "[cyan]Moving command:[/cyan]"
|
|
951
|
+
FROM_PATH = " From: {path}"
|
|
952
|
+
TO_PATH = " To: {path}"
|
|
953
|
+
PROCEED_PROMPT = "Proceed?"
|
|
954
|
+
|
|
955
|
+
# Success messages
|
|
956
|
+
MOVE_SUCCESS = "[green]✅ {operation}[/green]"
|
|
957
|
+
NEW_LOCATION = "[dim]New location: {path}[/dim]"
|
|
958
|
+
|
|
959
|
+
# Warning messages
|
|
960
|
+
NO_CHANGE_NEEDED = "[yellow]Source and destination are the same. Nothing to do.[/yellow]"
|
|
961
|
+
CANCELLED = "[yellow]Cancelled.[/yellow]"
|
|
962
|
+
|
|
963
|
+
# Error messages
|
|
964
|
+
COMMAND_NOT_FOUND = "[red]Command '{name}' not found.[/red]"
|
|
965
|
+
SEARCHED_IN = "[dim]Searched in: {path}[/dim]"
|
|
966
|
+
ALREADY_EXISTS = "[red]Command '{name}' already exists at destination.[/red]"
|
|
967
|
+
PATH_DISPLAY = "[dim]Path: {path}[/dim]"
|
|
968
|
+
MOVE_FAILED = "[red]Failed to move command: {error}[/red]"
|
|
969
|
+
|
|
970
|
+
# Operation descriptions
|
|
971
|
+
RENAME_OP = "Rename '{from_name}' to '{to_name}'"
|
|
972
|
+
MOVE_OP = "Move '{from_name}' from {from_scope} to {to_scope}"
|
|
973
|
+
MOVE_AS_OP = " as '{to_name}'"
|
|
974
|
+
|
|
975
|
+
|
|
945
976
|
class VenvMessages:
|
|
946
977
|
"""Virtual environment related messages."""
|
|
947
978
|
|
|
@@ -984,5 +1015,6 @@ __all__ = [
|
|
|
984
1015
|
"SystemIntegrationMessages",
|
|
985
1016
|
"EditMessages",
|
|
986
1017
|
"SyncMessages",
|
|
1018
|
+
"MoveMessages",
|
|
987
1019
|
"VenvMessages",
|
|
988
1020
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mcli-framework
|
|
3
|
-
Version: 8.0.
|
|
3
|
+
Version: 8.0.19
|
|
4
4
|
Summary: Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job.
|
|
5
5
|
Author-email: Luis Fernandez de la Vara <luis@lefv.io>
|
|
6
6
|
Maintainer-email: Luis Fernandez de la Vara <luis@lefv.io>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|