fractal-server 2.18.0__py3-none-any.whl → 2.18.0a0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. fractal_server/__init__.py +1 -1
  2. fractal_server/__main__.py +1 -2
  3. fractal_server/app/models/security.py +5 -7
  4. fractal_server/app/models/v2/job.py +2 -13
  5. fractal_server/app/models/v2/resource.py +0 -13
  6. fractal_server/app/routes/admin/v2/__init__.py +12 -10
  7. fractal_server/app/routes/admin/v2/accounting.py +2 -2
  8. fractal_server/app/routes/admin/v2/job.py +17 -17
  9. fractal_server/app/routes/admin/v2/task.py +8 -8
  10. fractal_server/app/routes/admin/v2/task_group.py +16 -94
  11. fractal_server/app/routes/admin/v2/task_group_lifecycle.py +20 -20
  12. fractal_server/app/routes/api/__init__.py +9 -0
  13. fractal_server/app/routes/api/v2/__init__.py +49 -47
  14. fractal_server/app/routes/api/v2/_aux_functions.py +47 -22
  15. fractal_server/app/routes/api/v2/_aux_functions_task_lifecycle.py +4 -4
  16. fractal_server/app/routes/api/v2/_aux_functions_tasks.py +2 -2
  17. fractal_server/app/routes/api/v2/dataset.py +60 -66
  18. fractal_server/app/routes/api/v2/history.py +5 -7
  19. fractal_server/app/routes/api/v2/job.py +12 -12
  20. fractal_server/app/routes/api/v2/project.py +11 -11
  21. fractal_server/app/routes/api/v2/sharing.py +2 -1
  22. fractal_server/app/routes/api/v2/status_legacy.py +29 -15
  23. fractal_server/app/routes/api/v2/submit.py +66 -65
  24. fractal_server/app/routes/api/v2/task.py +17 -15
  25. fractal_server/app/routes/api/v2/task_collection.py +18 -18
  26. fractal_server/app/routes/api/v2/task_collection_custom.py +13 -11
  27. fractal_server/app/routes/api/v2/task_collection_pixi.py +9 -9
  28. fractal_server/app/routes/api/v2/task_group.py +18 -18
  29. fractal_server/app/routes/api/v2/task_group_lifecycle.py +26 -26
  30. fractal_server/app/routes/api/v2/task_version_update.py +5 -5
  31. fractal_server/app/routes/api/v2/workflow.py +18 -18
  32. fractal_server/app/routes/api/v2/workflow_import.py +11 -11
  33. fractal_server/app/routes/api/v2/workflowtask.py +36 -10
  34. fractal_server/app/routes/auth/_aux_auth.py +0 -100
  35. fractal_server/app/routes/auth/current_user.py +63 -0
  36. fractal_server/app/routes/auth/group.py +30 -1
  37. fractal_server/app/routes/auth/router.py +0 -2
  38. fractal_server/app/routes/auth/users.py +0 -9
  39. fractal_server/app/schemas/user.py +12 -29
  40. fractal_server/app/schemas/user_group.py +15 -0
  41. fractal_server/app/schemas/v2/__init__.py +48 -48
  42. fractal_server/app/schemas/v2/dataset.py +13 -35
  43. fractal_server/app/schemas/v2/dumps.py +9 -9
  44. fractal_server/app/schemas/v2/job.py +11 -11
  45. fractal_server/app/schemas/v2/project.py +3 -3
  46. fractal_server/app/schemas/v2/resource.py +4 -13
  47. fractal_server/app/schemas/v2/status_legacy.py +3 -3
  48. fractal_server/app/schemas/v2/task.py +6 -6
  49. fractal_server/app/schemas/v2/task_collection.py +4 -4
  50. fractal_server/app/schemas/v2/task_group.py +16 -16
  51. fractal_server/app/schemas/v2/workflow.py +16 -16
  52. fractal_server/app/schemas/v2/workflowtask.py +14 -14
  53. fractal_server/app/security/__init__.py +1 -1
  54. fractal_server/app/shutdown.py +6 -6
  55. fractal_server/config/__init__.py +6 -0
  56. fractal_server/config/_data.py +79 -0
  57. fractal_server/config/_main.py +1 -6
  58. fractal_server/images/models.py +2 -1
  59. fractal_server/main.py +11 -72
  60. fractal_server/runner/config/_slurm.py +0 -2
  61. fractal_server/runner/executors/slurm_common/slurm_config.py +0 -1
  62. fractal_server/runner/v2/_local.py +3 -4
  63. fractal_server/runner/v2/_slurm_ssh.py +3 -4
  64. fractal_server/runner/v2/_slurm_sudo.py +3 -4
  65. fractal_server/runner/v2/runner.py +17 -36
  66. fractal_server/runner/v2/runner_functions.py +14 -11
  67. fractal_server/runner/v2/submit_workflow.py +9 -22
  68. fractal_server/tasks/v2/local/_utils.py +2 -2
  69. fractal_server/tasks/v2/local/collect.py +6 -5
  70. fractal_server/tasks/v2/local/collect_pixi.py +6 -5
  71. fractal_server/tasks/v2/local/deactivate.py +7 -7
  72. fractal_server/tasks/v2/local/deactivate_pixi.py +3 -3
  73. fractal_server/tasks/v2/local/delete.py +5 -5
  74. fractal_server/tasks/v2/local/reactivate.py +5 -5
  75. fractal_server/tasks/v2/local/reactivate_pixi.py +5 -5
  76. fractal_server/tasks/v2/ssh/collect.py +5 -5
  77. fractal_server/tasks/v2/ssh/collect_pixi.py +5 -5
  78. fractal_server/tasks/v2/ssh/deactivate.py +7 -7
  79. fractal_server/tasks/v2/ssh/deactivate_pixi.py +2 -2
  80. fractal_server/tasks/v2/ssh/delete.py +5 -5
  81. fractal_server/tasks/v2/ssh/reactivate.py +5 -5
  82. fractal_server/tasks/v2/ssh/reactivate_pixi.py +5 -5
  83. fractal_server/tasks/v2/utils_background.py +7 -7
  84. fractal_server/tasks/v2/utils_database.py +5 -5
  85. fractal_server/types/__init__.py +0 -22
  86. fractal_server/types/validators/__init__.py +0 -3
  87. fractal_server/types/validators/_common_validators.py +0 -32
  88. {fractal_server-2.18.0.dist-info → fractal_server-2.18.0a0.dist-info}/METADATA +1 -1
  89. {fractal_server-2.18.0.dist-info → fractal_server-2.18.0a0.dist-info}/RECORD +92 -97
  90. fractal_server/app/routes/auth/viewer_paths.py +0 -43
  91. fractal_server/data_migrations/2_18_0.py +0 -30
  92. fractal_server/migrations/versions/7910eed4cf97_user_project_dirs_and_usergroup_viewer_.py +0 -60
  93. fractal_server/migrations/versions/88270f589c9b_add_prevent_new_submissions.py +0 -39
  94. fractal_server/migrations/versions/f0702066b007_one_submitted_job_per_dataset.py +0 -40
  95. {fractal_server-2.18.0.dist-info → fractal_server-2.18.0a0.dist-info}/WHEEL +0 -0
  96. {fractal_server-2.18.0.dist-info → fractal_server-2.18.0a0.dist-info}/entry_points.txt +0 -0
  97. {fractal_server-2.18.0.dist-info → fractal_server-2.18.0a0.dist-info}/licenses/LICENSE +0 -0
@@ -1,39 +0,0 @@
1
- """add_prevent_new_submissions
2
-
3
- Revision ID: 88270f589c9b
4
- Revises: f0702066b007
5
- Create Date: 2025-12-02 12:34:11.028259
6
-
7
- """
8
-
9
- import sqlalchemy as sa
10
- from alembic import op
11
-
12
- # revision identifiers, used by Alembic.
13
- revision = "88270f589c9b"
14
- down_revision = "f0702066b007"
15
- branch_labels = None
16
- depends_on = None
17
-
18
-
19
- def upgrade() -> None:
20
- # ### commands auto generated by Alembic - please adjust! ###
21
- with op.batch_alter_table("resource", schema=None) as batch_op:
22
- batch_op.add_column(
23
- sa.Column(
24
- "prevent_new_submissions",
25
- sa.BOOLEAN(),
26
- server_default="false",
27
- nullable=False,
28
- )
29
- )
30
-
31
- # ### end Alembic commands ###
32
-
33
-
34
- def downgrade() -> None:
35
- # ### commands auto generated by Alembic - please adjust! ###
36
- with op.batch_alter_table("resource", schema=None) as batch_op:
37
- batch_op.drop_column("prevent_new_submissions")
38
-
39
- # ### end Alembic commands ###
@@ -1,40 +0,0 @@
1
- """One submitted Job per Dataset
2
-
3
- Revision ID: f0702066b007
4
- Revises: 7910eed4cf97
5
- Create Date: 2025-12-01 20:54:03.137093
6
-
7
- """
8
-
9
- import sqlalchemy as sa
10
- from alembic import op
11
-
12
- # revision identifiers, used by Alembic.
13
- revision = "f0702066b007"
14
- down_revision = "7910eed4cf97"
15
- branch_labels = None
16
- depends_on = None
17
-
18
-
19
- def upgrade() -> None:
20
- # ### commands auto generated by Alembic - please adjust! ###
21
- with op.batch_alter_table("jobv2", schema=None) as batch_op:
22
- batch_op.create_index(
23
- "ix_jobv2_one_submitted_job_per_dataset",
24
- ["dataset_id"],
25
- unique=True,
26
- postgresql_where=sa.text("status = 'submitted'"),
27
- )
28
-
29
- # ### end Alembic commands ###
30
-
31
-
32
- def downgrade() -> None:
33
- # ### commands auto generated by Alembic - please adjust! ###
34
- with op.batch_alter_table("jobv2", schema=None) as batch_op:
35
- batch_op.drop_index(
36
- "ix_jobv2_one_submitted_job_per_dataset",
37
- postgresql_where=sa.text("status = 'submitted'"),
38
- )
39
-
40
- # ### end Alembic commands ###