fractal-server 2.14.0a11__tar.gz → 2.14.0a13__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.
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/PKG-INFO +1 -1
- fractal_server-2.14.0a13/fractal_server/__init__.py +1 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/base_runner.py +22 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/local/runner.py +8 -17
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_sudo/runner.py +48 -56
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/db_tools.py +1 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/pyproject.toml +2 -2
- fractal_server-2.14.0a11/fractal_server/__init__.py +0 -1
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/LICENSE +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/README.md +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/__main__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/alembic.ini +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/db/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/history/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/linkusergroup.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/linkuserproject.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/security.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/user_settings.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/accounting.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/dataset.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/history.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/project.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/task.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/task_group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/workflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/workflowtask.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/accounting.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/impersonate.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/project.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/task.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/task_group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/task_group_lifecycle.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/_aux_functions.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/_aux_functions_history.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/_aux_functions_tasks.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/dataset.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/history.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/images.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/project.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/status_legacy.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/submit.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task_collection.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task_collection_custom.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task_group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task_group_lifecycle.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/verify_image_types.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/workflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/workflow_import.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/workflowtask.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/_aux_auth.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/current_user.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/login.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/oauth.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/register.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/router.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/users.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/_job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/_runner.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/validate_user_settings.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/pagination.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/components.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/compress_folder.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/exceptions.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/local/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/local/get_local_config.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/_batching.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/_check_jobs_status.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/_job_states.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/_slurm_config.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/get_slurm_config.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/remote.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_common/utils_executors.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/_check_job_status_ssh.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/_executor_wait_thread.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/_slurm_job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/executor.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_ssh/runner.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_sudo/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/executors/slurm_sudo/_subprocess_run_as_user.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/extract_archive.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/filenames.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/run_subprocess.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/set_start_and_last_task_index.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/shutdown.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/task_files.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_local.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_slurm_ssh.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_slurm_sudo.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/deduplicate_list.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/merge_outputs.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/runner.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/runner_functions.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/runner_functions_low_level.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/submit_workflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/task_interface.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/versions.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/_filter_validators.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/_validators.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/user.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/user_group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/user_settings.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/accounting.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/dataset.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/dumps.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/history.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/job.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/manifest.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/project.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/status_legacy.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/task.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/task_collection.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/task_group.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/workflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/workflowtask.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/security/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/security/signup_email.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/user_settings.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/config.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/data_migrations/README.md +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/data_migrations/tools.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/gunicorn_fractal.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/images/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/images/models.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/images/tools.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/logger.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/main.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/env.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/naming_convention.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/034a469ec2eb_task_groups.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/091b01f51f88_add_usergroup_and_linkusergroup_table.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/19eca0dd47a9_user_settings_project_dir.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/1eac13a26c83_drop_v1_tables.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/316140ff7ee1_remove_usersettings_cache_dir.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/47351f8c7ebc_drop_dataset_filters.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/4c308bcaea2b_add_task_args_schema_and_task_args_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/4cedeb448a53_workflowtask_foreign_keys_not_nullables.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/501961cfcd85_remove_link_between_v1_and_v2_tasks_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/50a13d6138fd_initial_schema.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/5bf02391cfef_v2.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/70e77f1c38b0_add_applyworkflow_first_task_index_and_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/71eefd1dd202_add_slurm_accounts.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/84bf0fffde30_add_dumps_to_applyworkflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/8e8f227a3e36_update_taskv2_post_2_7_0.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/8f79bd162e35_add_docs_info_and_docs_link_to_task_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/94a47ea2d3ff_remove_cache_dir_slurm_user_and_slurm_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/97f444d47249_add_applyworkflow_project_dump.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/99ea79d9e5d2_add_dataset_history.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/9c5ae74c9b98_add_user_settings_table.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/9fd26a2b0de4_add_workflow_timestamp_created.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/a7f4d6137b53_add_workflow_dump_to_applyworkflow.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/af1ef1c83c9b_add_accounting_tables.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/af8673379a5c_drop_old_filter_columns.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/d256a7379ab8_taskgroup_activity_and_venv_info_to_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/d4fe3708d309_make_applyworkflow_workflow_dump_non_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/da2cb2ac4255_user_group_viewer_paths.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/db09233ad13a_split_filters_and_keep_old_columns.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/e75cac726012_make_applyworkflow_start_timestamp_not_.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/e81103413827_add_job_type_filters.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/efa89c30e0a4_add_project_timestamp_created.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/f384e1c0cf5d_drop_task_default_args_columns.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/versions/fbce16ff4e47_new_history_items.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/py.typed +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/ssh/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/ssh/_fabric.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/string_tools.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/syringe.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/utils.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/_utils.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/collect.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/deactivate.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/reactivate.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/__init__.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/_utils.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/collect.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/deactivate.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/reactivate.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/1_create_venv.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/2_pip_install.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/3_pip_freeze.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/4_pip_show.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/5_get_venv_size_and_file_number.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/templates/6_pip_install_from_freeze.sh +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_background.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_database.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_package_names.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_python_interpreter.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_templates.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/urls.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/utils.py +0 -0
- {fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/zip_tools.py +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
__VERSION__ = "2.14.0a13"
|
@@ -139,3 +139,25 @@ class BaseRunner(object):
|
|
139
139
|
zarr_urls = [kwargs["zarr_url"] for kwargs in list_parameters]
|
140
140
|
if len(zarr_urls) != len(set(zarr_urls)):
|
141
141
|
raise ValueError("Non-unique zarr_urls")
|
142
|
+
|
143
|
+
def validate_multisubmit_history_unit_ids(
|
144
|
+
self,
|
145
|
+
*,
|
146
|
+
history_unit_ids: list[int],
|
147
|
+
task_type: TaskTypeType,
|
148
|
+
list_parameters: list[dict[str, Any]],
|
149
|
+
) -> None:
|
150
|
+
if task_type in ["compound", "converter_compound"]:
|
151
|
+
if len(history_unit_ids) != 1:
|
152
|
+
raise NotImplementedError(
|
153
|
+
"We are breaking the assumption that compound/multisubmit "
|
154
|
+
"is associated to a single HistoryUnit. This is not "
|
155
|
+
"supported."
|
156
|
+
)
|
157
|
+
elif task_type == "parallel" and len(history_unit_ids) != len(
|
158
|
+
list_parameters
|
159
|
+
):
|
160
|
+
raise ValueError(
|
161
|
+
f"{len(history_unit_ids)=} differs from "
|
162
|
+
f"{len(list_parameters)=}."
|
163
|
+
)
|
@@ -115,23 +115,6 @@ class LocalRunner(BaseRunner):
|
|
115
115
|
when we are in one of the "compound" cases
|
116
116
|
|
117
117
|
"""
|
118
|
-
# FIXME: De-duplicate this check
|
119
|
-
if task_type in ["compound", "converter_compound"]:
|
120
|
-
if len(history_unit_ids) != 1:
|
121
|
-
raise NotImplementedError(
|
122
|
-
"We are breaking the assumption that compound/multisubmit "
|
123
|
-
"is associated to a single HistoryUnit. This is not "
|
124
|
-
"supported."
|
125
|
-
)
|
126
|
-
elif task_type == "parallel" and len(history_unit_ids) != len(
|
127
|
-
list_parameters
|
128
|
-
):
|
129
|
-
raise ValueError(
|
130
|
-
f"{len(history_unit_ids)=} differs from "
|
131
|
-
f"{len(list_parameters)=}."
|
132
|
-
)
|
133
|
-
|
134
|
-
logger.debug(f"[multisubmit] START, {len(list_parameters)=}")
|
135
118
|
|
136
119
|
self.validate_multisubmit_parameters(
|
137
120
|
list_parameters=list_parameters,
|
@@ -139,6 +122,14 @@ class LocalRunner(BaseRunner):
|
|
139
122
|
list_task_files=list_task_files,
|
140
123
|
)
|
141
124
|
|
125
|
+
self.validate_multisubmit_history_unit_ids(
|
126
|
+
history_unit_ids=history_unit_ids,
|
127
|
+
task_type=task_type,
|
128
|
+
list_parameters=list_parameters,
|
129
|
+
)
|
130
|
+
|
131
|
+
logger.debug(f"[multisubmit] START, {len(list_parameters)=}")
|
132
|
+
|
142
133
|
workdir_local = list_task_files[0].wftask_subfolder_local
|
143
134
|
if task_type == "parallel":
|
144
135
|
workdir_local.mkdir()
|
@@ -17,7 +17,6 @@ from pydantic import BaseModel
|
|
17
17
|
from pydantic import ConfigDict
|
18
18
|
|
19
19
|
from ..slurm_common._check_jobs_status import get_finished_jobs
|
20
|
-
from ..slurm_common._check_jobs_status import run_squeue
|
21
20
|
from ._subprocess_run_as_user import _mkdir_as_user
|
22
21
|
from ._subprocess_run_as_user import _run_command_as_user
|
23
22
|
from fractal_server import __VERSION__
|
@@ -543,31 +542,21 @@ class RunnerSlurmSudo(BaseRunner):
|
|
543
542
|
task_files=task_files,
|
544
543
|
)
|
545
544
|
],
|
546
|
-
)
|
547
|
-
|
545
|
+
)
|
548
546
|
config.parallel_tasks_per_job = 1
|
549
547
|
self._submit_single_sbatch(
|
550
548
|
func,
|
551
549
|
slurm_job=slurm_job,
|
552
550
|
slurm_config=config,
|
553
551
|
)
|
554
|
-
logger.
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
jobs_that_started = set()
|
560
|
-
while len(jobs_that_started) != len(self.job_ids):
|
561
|
-
logger.debug("CALL SQUEUE")
|
562
|
-
res = run_squeue(self.job_ids)
|
563
|
-
new_jobs = set(out.split()[0] for out in res.stdout.splitlines())
|
564
|
-
jobs_that_started = jobs_that_started.union(new_jobs)
|
565
|
-
logger.debug(f"{new_jobs=}")
|
566
|
-
logger.debug(f"{len(jobs_that_started)=}")
|
567
|
-
|
568
|
-
logger.debug("START RETRIEVAL PHASE")
|
552
|
+
logger.info(f"END submission phase, {self.job_ids=}")
|
553
|
+
|
554
|
+
# FIXME: Replace with more robust/efficient logic
|
555
|
+
logger.warning("Now sleep 4 (FIXME)")
|
556
|
+
time.sleep(4)
|
569
557
|
|
570
558
|
# Retrieval phase
|
559
|
+
logger.info("START retrieval phase")
|
571
560
|
while len(self.jobs) > 0:
|
572
561
|
if self.is_shutdown():
|
573
562
|
self.scancel_jobs()
|
@@ -581,19 +570,22 @@ class RunnerSlurmSudo(BaseRunner):
|
|
581
570
|
result, exception = self._postprocess_single_task(
|
582
571
|
task=slurm_job.tasks[0]
|
583
572
|
)
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
history_unit_id=history_unit_id,
|
588
|
-
status=HistoryUnitStatus.DONE,
|
589
|
-
db_sync=db,
|
590
|
-
)
|
573
|
+
# Note: the relevant done/failed check is based on
|
574
|
+
# whether `exception is None`. The fact that
|
575
|
+
# `result is None` is not relevant for this purpose.
|
591
576
|
if exception is not None:
|
592
577
|
update_status_of_history_unit(
|
593
578
|
history_unit_id=history_unit_id,
|
594
579
|
status=HistoryUnitStatus.FAILED,
|
595
580
|
db_sync=db,
|
596
581
|
)
|
582
|
+
else:
|
583
|
+
if task_type not in ["compound", "converter_compound"]:
|
584
|
+
update_status_of_history_unit(
|
585
|
+
history_unit_id=history_unit_id,
|
586
|
+
status=HistoryUnitStatus.DONE,
|
587
|
+
db_sync=db,
|
588
|
+
)
|
597
589
|
|
598
590
|
time.sleep(self.slurm_poll_interval)
|
599
591
|
|
@@ -610,21 +602,8 @@ class RunnerSlurmSudo(BaseRunner):
|
|
610
602
|
):
|
611
603
|
|
612
604
|
if len(self.jobs) > 0:
|
613
|
-
raise RuntimeError(
|
614
|
-
|
615
|
-
if task_type in ["compound", "converter_compound"]:
|
616
|
-
if len(history_unit_ids) != 1:
|
617
|
-
raise NotImplementedError(
|
618
|
-
"We are breaking the assumption that compound/multisubmit "
|
619
|
-
"is associated to a single HistoryUnit. This is not "
|
620
|
-
"supported."
|
621
|
-
)
|
622
|
-
elif task_type == "parallel" and len(history_unit_ids) != len(
|
623
|
-
list_parameters
|
624
|
-
):
|
625
|
-
raise ValueError(
|
626
|
-
f"{len(history_unit_ids)=} differs from "
|
627
|
-
f"{len(list_parameters)=}."
|
605
|
+
raise RuntimeError(
|
606
|
+
f"Cannot run .multisubmit when {len(self.jobs)=}"
|
628
607
|
)
|
629
608
|
|
630
609
|
self.validate_multisubmit_parameters(
|
@@ -632,12 +611,19 @@ class RunnerSlurmSudo(BaseRunner):
|
|
632
611
|
task_type=task_type,
|
633
612
|
list_task_files=list_task_files,
|
634
613
|
)
|
614
|
+
self.validate_multisubmit_history_unit_ids(
|
615
|
+
history_unit_ids=history_unit_ids,
|
616
|
+
task_type=task_type,
|
617
|
+
list_parameters=list_parameters,
|
618
|
+
)
|
619
|
+
|
620
|
+
logger.debug(f"[multisubmit] START, {len(list_parameters)=}")
|
635
621
|
|
636
622
|
workdir_local = list_task_files[0].wftask_subfolder_local
|
637
623
|
workdir_remote = list_task_files[0].wftask_subfolder_remote
|
638
624
|
|
639
625
|
# Create local&remote task subfolders
|
640
|
-
if task_type
|
626
|
+
if task_type == "parallel":
|
641
627
|
original_umask = os.umask(0)
|
642
628
|
workdir_local.mkdir(parents=True, mode=0o755)
|
643
629
|
os.umask(original_umask)
|
@@ -714,18 +700,14 @@ class RunnerSlurmSudo(BaseRunner):
|
|
714
700
|
slurm_job=slurm_job,
|
715
701
|
slurm_config=config,
|
716
702
|
)
|
717
|
-
logger.info(f"END submission phase, {
|
703
|
+
logger.info(f"END submission phase, {self.job_ids=}")
|
718
704
|
|
719
|
-
# FIXME
|
720
|
-
|
721
|
-
|
722
|
-
res = run_squeue(self.job_ids)
|
723
|
-
new_jobs = set(out.split()[0] for out in res.stdout.splitlines())
|
724
|
-
jobs_that_started = jobs_that_started.union(new_jobs)
|
725
|
-
logger.debug(f"{new_jobs=}")
|
726
|
-
logger.debug(f"{len(jobs_that_started)=}")
|
705
|
+
# FIXME: Replace with more robust/efficient logic
|
706
|
+
logger.warning("Now sleep 4 (FIXME)")
|
707
|
+
time.sleep(4)
|
727
708
|
|
728
709
|
# Retrieval phase
|
710
|
+
logger.info("START retrieval phase")
|
729
711
|
while len(self.jobs) > 0:
|
730
712
|
if self.is_shutdown():
|
731
713
|
self.scancel_jobs()
|
@@ -737,28 +719,38 @@ class RunnerSlurmSudo(BaseRunner):
|
|
737
719
|
slurm_job = self.jobs.pop(slurm_job_id)
|
738
720
|
self._copy_files_from_remote_to_local(slurm_job)
|
739
721
|
for task in slurm_job.tasks:
|
722
|
+
logger.debug(f"Now processing {task.index=}")
|
740
723
|
result, exception = self._postprocess_single_task(
|
741
724
|
task=task
|
742
725
|
)
|
743
726
|
|
744
|
-
|
745
|
-
|
727
|
+
# Note: the relevant done/failed check is based on
|
728
|
+
# whether `exception is None`. The fact that
|
729
|
+
# `result is None` is not relevant for this purpose.
|
730
|
+
if exception is not None:
|
731
|
+
logger.debug(
|
732
|
+
f"Task {task.index} has an exception."
|
733
|
+
) # FIXME # noqa
|
734
|
+
exceptions[task.index] = exception
|
746
735
|
if task_type == "parallel":
|
747
736
|
update_status_of_history_unit(
|
748
737
|
history_unit_id=history_unit_ids[
|
749
738
|
task.index
|
750
739
|
],
|
751
|
-
status=HistoryUnitStatus.
|
740
|
+
status=HistoryUnitStatus.FAILED,
|
752
741
|
db_sync=db,
|
753
742
|
)
|
754
|
-
|
755
|
-
|
743
|
+
else:
|
744
|
+
logger.debug(
|
745
|
+
f"Task {task.index} has no exception."
|
746
|
+
) # FIXME # noqa
|
747
|
+
results[task.index] = result
|
756
748
|
if task_type == "parallel":
|
757
749
|
update_status_of_history_unit(
|
758
750
|
history_unit_id=history_unit_ids[
|
759
751
|
task.index
|
760
752
|
],
|
761
|
-
status=HistoryUnitStatus.
|
753
|
+
status=HistoryUnitStatus.DONE,
|
762
754
|
db_sync=db,
|
763
755
|
)
|
764
756
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[project]
|
2
2
|
name = "fractal-server"
|
3
|
-
version = "2.14.
|
3
|
+
version = "2.14.0a13"
|
4
4
|
description = "Backend component of the Fractal analytics platform"
|
5
5
|
authors = [
|
6
6
|
{ name="Tommaso Comparin", email="tommaso.comparin@exact-lab.it" },
|
@@ -95,7 +95,7 @@ filterwarnings = [
|
|
95
95
|
markers = ["container", "ssh"]
|
96
96
|
|
97
97
|
[tool.bumpver]
|
98
|
-
current_version = "2.14.
|
98
|
+
current_version = "2.14.0a13"
|
99
99
|
version_pattern = "MAJOR.MINOR.PATCH[PYTAGNUM]"
|
100
100
|
commit_message = "bump version {old_version} -> {new_version}"
|
101
101
|
commit = true
|
@@ -1 +0,0 @@
|
|
1
|
-
__VERSION__ = "2.14.0a11"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/history/__init__.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/linkusergroup.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/linkuserproject.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/user_settings.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/accounting.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/dataset.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/history.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/project.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/task_group.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/workflow.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/models/v2/workflowtask.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/job.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/project.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/admin/v2/task.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/dataset.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/history.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/images.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/job.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/project.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/submit.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/task_group.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/api/v2/workflow.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/_aux_auth.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/current_user.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/group.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/login.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/oauth.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/register.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/router.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/auth/users.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/__init__.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/aux/_runner.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/routes/pagination.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/components.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/compress_folder.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/exceptions.py
RENAMED
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
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/extract_archive.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/filenames.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/run_subprocess.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/task_files.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_local.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_slurm_ssh.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/_slurm_sudo.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/merge_outputs.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/runner.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/runner/v2/task_interface.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/__init__.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/_validators.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/user_group.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/user_settings.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/accounting.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/dataset.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/dumps.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/history.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/manifest.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/project.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/status_legacy.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/task_group.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/workflow.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/schemas/v2/workflowtask.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/security/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/app/security/signup_email.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/data_migrations/README.md
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/data_migrations/tools.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/migrations/naming_convention.py
RENAMED
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
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/__init__.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/_utils.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/collect.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/deactivate.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/local/reactivate.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/__init__.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/collect.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/deactivate.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/ssh/reactivate.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_background.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_database.py
RENAMED
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_package_names.py
RENAMED
File without changes
|
File without changes
|
{fractal_server-2.14.0a11 → fractal_server-2.14.0a13}/fractal_server/tasks/v2/utils_templates.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|