zou 0.20.17__py3-none-any.whl → 0.20.18__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.
- zou/__init__.py +1 -1
- zou/app/config.py +1 -1
- zou/app/models/comment.py +10 -10
- zou/app/models/project.py +26 -6
- zou/app/services/assets_service.py +3 -0
- zou/app/services/edits_service.py +3 -0
- zou/app/services/entities_service.py +3 -0
- zou/app/services/shots_service.py +3 -0
- zou/app/services/tasks_service.py +4 -4
- zou/migrations/versions/fba149993140_add_missing_index.py +132 -0
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/METADATA +5 -6
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/RECORD +16 -15
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/LICENSE +0 -0
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/WHEEL +0 -0
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/entry_points.txt +0 -0
- {zou-0.20.17.dist-info → zou-0.20.18.dist-info}/top_level.txt +0 -0
zou/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.20.
|
|
1
|
+
__version__ = "0.20.18"
|
zou/app/config.py
CHANGED
|
@@ -142,7 +142,7 @@ LOGS_MODE = os.getenv("LOGS_MODE", "default")
|
|
|
142
142
|
LOGS_HOST = os.getenv("LOGS_HOST", "localhost")
|
|
143
143
|
LOGS_PORT = os.getenv("LOGS_PORT", 2202)
|
|
144
144
|
LOGS_TOKEN = os.getenv("LOGS_TOKEN")
|
|
145
|
-
LOG_FILE_NOT_FOUND = envtobool("LOG_FILE_NOT_FOUND",
|
|
145
|
+
LOG_FILE_NOT_FOUND = envtobool("LOG_FILE_NOT_FOUND", False)
|
|
146
146
|
|
|
147
147
|
SENTRY_ENABLED = envtobool("SENTRY_ENABLED", False)
|
|
148
148
|
SENTRY_DSN = os.getenv("SENTRY_DSN", "")
|
zou/app/models/comment.py
CHANGED
|
@@ -6,21 +6,19 @@ from zou.app.models.serializer import SerializerMixin
|
|
|
6
6
|
from zou.app.models.base import BaseMixin
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
db.Column(
|
|
12
|
-
"comment",
|
|
9
|
+
class CommentPreviewLink(db.Model):
|
|
10
|
+
comment = db.Column(
|
|
13
11
|
UUIDType(binary=False),
|
|
14
12
|
db.ForeignKey("comment.id"),
|
|
15
13
|
primary_key=True,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
index=True,
|
|
15
|
+
)
|
|
16
|
+
preview_file = db.Column(
|
|
19
17
|
UUIDType(binary=False),
|
|
20
18
|
db.ForeignKey("preview_file.id"),
|
|
21
19
|
primary_key=True,
|
|
22
|
-
|
|
23
|
-
)
|
|
20
|
+
index=True,
|
|
21
|
+
)
|
|
24
22
|
|
|
25
23
|
|
|
26
24
|
mentions_table = db.Table(
|
|
@@ -107,7 +105,9 @@ class Comment(db.Model, BaseMixin, SerializerMixin):
|
|
|
107
105
|
UUIDType(binary=False), db.ForeignKey("preview_file.id")
|
|
108
106
|
)
|
|
109
107
|
previews = db.relationship(
|
|
110
|
-
"PreviewFile",
|
|
108
|
+
"PreviewFile",
|
|
109
|
+
secondary=CommentPreviewLink.__table__,
|
|
110
|
+
backref="comments",
|
|
111
111
|
)
|
|
112
112
|
mentions = db.relationship("Person", secondary=mentions_table)
|
|
113
113
|
department_mentions = db.relationship(
|
zou/app/models/project.py
CHANGED
|
@@ -29,10 +29,16 @@ PROJECT_STYLES = [
|
|
|
29
29
|
class ProjectPersonLink(db.Model):
|
|
30
30
|
__tablename__ = "project_person_link"
|
|
31
31
|
project_id = db.Column(
|
|
32
|
-
UUIDType(binary=False),
|
|
32
|
+
UUIDType(binary=False),
|
|
33
|
+
db.ForeignKey("project.id"),
|
|
34
|
+
primary_key=True,
|
|
35
|
+
index=True,
|
|
33
36
|
)
|
|
34
37
|
person_id = db.Column(
|
|
35
|
-
UUIDType(binary=False),
|
|
38
|
+
UUIDType(binary=False),
|
|
39
|
+
db.ForeignKey("person.id"),
|
|
40
|
+
primary_key=True,
|
|
41
|
+
index=True,
|
|
36
42
|
)
|
|
37
43
|
shotgun_id = db.Column(db.Integer)
|
|
38
44
|
|
|
@@ -40,10 +46,16 @@ class ProjectPersonLink(db.Model):
|
|
|
40
46
|
class ProjectTaskTypeLink(db.Model, BaseMixin, SerializerMixin):
|
|
41
47
|
__tablename__ = "project_task_type_link"
|
|
42
48
|
project_id = db.Column(
|
|
43
|
-
UUIDType(binary=False),
|
|
49
|
+
UUIDType(binary=False),
|
|
50
|
+
db.ForeignKey("project.id"),
|
|
51
|
+
primary_key=True,
|
|
52
|
+
index=True,
|
|
44
53
|
)
|
|
45
54
|
task_type_id = db.Column(
|
|
46
|
-
UUIDType(binary=False),
|
|
55
|
+
UUIDType(binary=False),
|
|
56
|
+
db.ForeignKey("task_type.id"),
|
|
57
|
+
primary_key=True,
|
|
58
|
+
index=True,
|
|
47
59
|
)
|
|
48
60
|
priority = db.Column(db.Integer, default=None)
|
|
49
61
|
|
|
@@ -57,12 +69,16 @@ class ProjectTaskTypeLink(db.Model, BaseMixin, SerializerMixin):
|
|
|
57
69
|
class ProjectTaskStatusLink(db.Model, BaseMixin, SerializerMixin):
|
|
58
70
|
__tablename__ = "project_task_status_link"
|
|
59
71
|
project_id = db.Column(
|
|
60
|
-
UUIDType(binary=False),
|
|
72
|
+
UUIDType(binary=False),
|
|
73
|
+
db.ForeignKey("project.id"),
|
|
74
|
+
primary_key=True,
|
|
75
|
+
index=True,
|
|
61
76
|
)
|
|
62
77
|
task_status_id = db.Column(
|
|
63
78
|
UUIDType(binary=False),
|
|
64
79
|
db.ForeignKey("task_status.id"),
|
|
65
80
|
primary_key=True,
|
|
81
|
+
index=True,
|
|
66
82
|
)
|
|
67
83
|
priority = db.Column(db.Integer, default=None)
|
|
68
84
|
roles_for_board = db.Column(
|
|
@@ -92,12 +108,16 @@ class ProjectAssetTypeLink(db.Model):
|
|
|
92
108
|
class ProjectStatusAutomationLink(db.Model):
|
|
93
109
|
__tablename__ = "project_status_automation_link"
|
|
94
110
|
project_id = db.Column(
|
|
95
|
-
UUIDType(binary=False),
|
|
111
|
+
UUIDType(binary=False),
|
|
112
|
+
db.ForeignKey("project.id"),
|
|
113
|
+
primary_key=True,
|
|
114
|
+
index=True,
|
|
96
115
|
)
|
|
97
116
|
status_automation_id = db.Column(
|
|
98
117
|
UUIDType(binary=False),
|
|
99
118
|
db.ForeignKey("status_automation.id"),
|
|
100
119
|
primary_key=True,
|
|
120
|
+
index=True,
|
|
101
121
|
)
|
|
102
122
|
|
|
103
123
|
|
|
@@ -202,6 +202,7 @@ def get_assets_and_tasks(criterions={}, with_episode_ids=False):
|
|
|
202
202
|
Task.due_date,
|
|
203
203
|
Task.done_date,
|
|
204
204
|
Task.last_comment_date,
|
|
205
|
+
Task.last_preview_file_id,
|
|
205
206
|
Task.difficulty,
|
|
206
207
|
assignees_table.columns.person,
|
|
207
208
|
).order_by(EntityType.name, Entity.name)
|
|
@@ -294,6 +295,7 @@ def get_assets_and_tasks(criterions={}, with_episode_ids=False):
|
|
|
294
295
|
task_due_date,
|
|
295
296
|
task_done_date,
|
|
296
297
|
task_last_comment_date,
|
|
298
|
+
task_last_preview_file_id,
|
|
297
299
|
task_difficulty,
|
|
298
300
|
person_id,
|
|
299
301
|
) in query_result:
|
|
@@ -346,6 +348,7 @@ def get_assets_and_tasks(criterions={}, with_episode_ids=False):
|
|
|
346
348
|
"last_comment_date": fields.serialize_value(
|
|
347
349
|
task_last_comment_date
|
|
348
350
|
),
|
|
351
|
+
"last_preview_file_id": str(task_last_preview_file_id or ""),
|
|
349
352
|
"priority": task_priority or 0,
|
|
350
353
|
"real_start_date": fields.serialize_value(
|
|
351
354
|
task_real_start_date
|
|
@@ -106,6 +106,7 @@ def get_edits_and_tasks(criterions={}):
|
|
|
106
106
|
Task.start_date,
|
|
107
107
|
Task.due_date,
|
|
108
108
|
Task.last_comment_date,
|
|
109
|
+
Task.last_preview_file_id,
|
|
109
110
|
Task.nb_assets_ready,
|
|
110
111
|
assignees_table.columns.person,
|
|
111
112
|
Project.id,
|
|
@@ -153,6 +154,7 @@ def get_edits_and_tasks(criterions={}):
|
|
|
153
154
|
task_start_date,
|
|
154
155
|
task_due_date,
|
|
155
156
|
task_last_comment_date,
|
|
157
|
+
task_last_preview_file_id,
|
|
156
158
|
task_nb_assets_ready,
|
|
157
159
|
person_id,
|
|
158
160
|
project_id,
|
|
@@ -203,6 +205,7 @@ def get_edits_and_tasks(criterions={}):
|
|
|
203
205
|
"end_date": task_end_date,
|
|
204
206
|
"estimation": task_estimation,
|
|
205
207
|
"last_comment_date": task_last_comment_date,
|
|
208
|
+
"last_preview_file_id": task_last_preview_file_id,
|
|
206
209
|
"is_subscribed": subscription_map.get(task_id, False),
|
|
207
210
|
"nb_assets_ready": task_nb_assets_ready,
|
|
208
211
|
"priority": task_priority or 0,
|
|
@@ -251,6 +251,7 @@ def get_entities_and_tasks(criterions={}):
|
|
|
251
251
|
Task.due_date,
|
|
252
252
|
Task.done_date,
|
|
253
253
|
Task.last_comment_date,
|
|
254
|
+
Task.last_preview_file_id,
|
|
254
255
|
Task.difficulty,
|
|
255
256
|
assignees_table.columns.person,
|
|
256
257
|
)
|
|
@@ -282,6 +283,7 @@ def get_entities_and_tasks(criterions={}):
|
|
|
282
283
|
task_due_date,
|
|
283
284
|
task_done_date,
|
|
284
285
|
task_last_comment_date,
|
|
286
|
+
task_last_preview_file_id,
|
|
285
287
|
task_difficulty,
|
|
286
288
|
person_id,
|
|
287
289
|
) in query.all():
|
|
@@ -322,6 +324,7 @@ def get_entities_and_tasks(criterions={}):
|
|
|
322
324
|
"duration": task_duration,
|
|
323
325
|
"is_subscribed": subscription_map.get(task_id, False),
|
|
324
326
|
"last_comment_date": task_last_comment_date,
|
|
327
|
+
"last_preview_file_id": task_last_preview_file_id,
|
|
325
328
|
"priority": task_priority or 0,
|
|
326
329
|
"real_start_date": task_real_start_date,
|
|
327
330
|
"retake_count": task_retake_count,
|
|
@@ -253,6 +253,7 @@ def get_shots_and_tasks(criterions={}):
|
|
|
253
253
|
Task.due_date,
|
|
254
254
|
Task.done_date,
|
|
255
255
|
Task.last_comment_date,
|
|
256
|
+
Task.last_preview_file_id,
|
|
256
257
|
Task.nb_assets_ready,
|
|
257
258
|
Task.difficulty,
|
|
258
259
|
assignees_table.columns.person,
|
|
@@ -304,6 +305,7 @@ def get_shots_and_tasks(criterions={}):
|
|
|
304
305
|
task_due_date,
|
|
305
306
|
task_done_date,
|
|
306
307
|
task_last_comment_date,
|
|
308
|
+
task_last_preview_file_id,
|
|
307
309
|
task_nb_assets_ready,
|
|
308
310
|
task_difficulty,
|
|
309
311
|
person_id,
|
|
@@ -364,6 +366,7 @@ def get_shots_and_tasks(criterions={}):
|
|
|
364
366
|
"estimation": task_estimation,
|
|
365
367
|
"is_subscribed": subscription_map.get(task_id, False),
|
|
366
368
|
"last_comment_date": task_last_comment_date,
|
|
369
|
+
"last_preview_file_id": task_last_preview_file_id,
|
|
367
370
|
"nb_assets_ready": task_nb_assets_ready,
|
|
368
371
|
"priority": task_priority or 0,
|
|
369
372
|
"real_start_date": task_real_start_date,
|
|
@@ -15,7 +15,7 @@ from zou.app.models.comment import (
|
|
|
15
15
|
acknowledgements_table,
|
|
16
16
|
mentions_table,
|
|
17
17
|
department_mentions_table,
|
|
18
|
-
|
|
18
|
+
CommentPreviewLink,
|
|
19
19
|
)
|
|
20
20
|
from zou.app.models.department import Department
|
|
21
21
|
from zou.app.models.entity import Entity, EntityLink
|
|
@@ -686,9 +686,9 @@ def _build_department_mention_map_for_comments(comment_ids):
|
|
|
686
686
|
def _build_preview_map_for_comments(comment_ids, is_client=False):
|
|
687
687
|
preview_map = {}
|
|
688
688
|
query = (
|
|
689
|
-
PreviewFile.query.join(
|
|
690
|
-
.filter(
|
|
691
|
-
.add_columns(
|
|
689
|
+
PreviewFile.query.join(CommentPreviewLink)
|
|
690
|
+
.filter(CommentPreviewLink.comment.in_(comment_ids))
|
|
691
|
+
.add_columns(CommentPreviewLink.comment)
|
|
692
692
|
)
|
|
693
693
|
for preview, comment_id in query.all():
|
|
694
694
|
comment_id = str(comment_id)
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"""Add missing index
|
|
2
|
+
|
|
3
|
+
Revision ID: fba149993140
|
|
4
|
+
Revises: 20a8ad264659
|
|
5
|
+
Create Date: 2025-02-19 02:19:27.407568
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from alembic import op
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
# revision identifiers, used by Alembic.
|
|
13
|
+
revision = "fba149993140"
|
|
14
|
+
down_revision = "20a8ad264659"
|
|
15
|
+
branch_labels = None
|
|
16
|
+
depends_on = None
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def upgrade():
|
|
20
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
21
|
+
with op.batch_alter_table("comment_preview_link", schema=None) as batch_op:
|
|
22
|
+
batch_op.create_index(
|
|
23
|
+
batch_op.f("ix_comment_preview_link_comment"),
|
|
24
|
+
["comment"],
|
|
25
|
+
unique=False,
|
|
26
|
+
)
|
|
27
|
+
batch_op.create_index(
|
|
28
|
+
batch_op.f("ix_comment_preview_link_preview_file"),
|
|
29
|
+
["preview_file"],
|
|
30
|
+
unique=False,
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
with op.batch_alter_table("project_person_link", schema=None) as batch_op:
|
|
34
|
+
batch_op.create_index(
|
|
35
|
+
batch_op.f("ix_project_person_link_person_id"),
|
|
36
|
+
["person_id"],
|
|
37
|
+
unique=False,
|
|
38
|
+
)
|
|
39
|
+
batch_op.create_index(
|
|
40
|
+
batch_op.f("ix_project_person_link_project_id"),
|
|
41
|
+
["project_id"],
|
|
42
|
+
unique=False,
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
with op.batch_alter_table(
|
|
46
|
+
"project_status_automation_link", schema=None
|
|
47
|
+
) as batch_op:
|
|
48
|
+
batch_op.create_index(
|
|
49
|
+
batch_op.f("ix_project_status_automation_link_project_id"),
|
|
50
|
+
["project_id"],
|
|
51
|
+
unique=False,
|
|
52
|
+
)
|
|
53
|
+
batch_op.create_index(
|
|
54
|
+
batch_op.f(
|
|
55
|
+
"ix_project_status_automation_link_status_automation_id"
|
|
56
|
+
),
|
|
57
|
+
["status_automation_id"],
|
|
58
|
+
unique=False,
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
with op.batch_alter_table(
|
|
62
|
+
"project_task_status_link", schema=None
|
|
63
|
+
) as batch_op:
|
|
64
|
+
batch_op.create_index(
|
|
65
|
+
batch_op.f("ix_project_task_status_link_project_id"),
|
|
66
|
+
["project_id"],
|
|
67
|
+
unique=False,
|
|
68
|
+
)
|
|
69
|
+
batch_op.create_index(
|
|
70
|
+
batch_op.f("ix_project_task_status_link_task_status_id"),
|
|
71
|
+
["task_status_id"],
|
|
72
|
+
unique=False,
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
with op.batch_alter_table(
|
|
76
|
+
"project_task_type_link", schema=None
|
|
77
|
+
) as batch_op:
|
|
78
|
+
batch_op.create_index(
|
|
79
|
+
batch_op.f("ix_project_task_type_link_project_id"),
|
|
80
|
+
["project_id"],
|
|
81
|
+
unique=False,
|
|
82
|
+
)
|
|
83
|
+
batch_op.create_index(
|
|
84
|
+
batch_op.f("ix_project_task_type_link_task_type_id"),
|
|
85
|
+
["task_type_id"],
|
|
86
|
+
unique=False,
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
# ### end Alembic commands ###
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
def downgrade():
|
|
93
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
94
|
+
with op.batch_alter_table(
|
|
95
|
+
"project_task_type_link", schema=None
|
|
96
|
+
) as batch_op:
|
|
97
|
+
batch_op.drop_index(
|
|
98
|
+
batch_op.f("ix_project_task_type_link_task_type_id")
|
|
99
|
+
)
|
|
100
|
+
batch_op.drop_index(batch_op.f("ix_project_task_type_link_project_id"))
|
|
101
|
+
|
|
102
|
+
with op.batch_alter_table(
|
|
103
|
+
"project_task_status_link", schema=None
|
|
104
|
+
) as batch_op:
|
|
105
|
+
batch_op.drop_index(
|
|
106
|
+
batch_op.f("ix_project_task_status_link_task_status_id")
|
|
107
|
+
)
|
|
108
|
+
batch_op.drop_index(
|
|
109
|
+
batch_op.f("ix_project_task_status_link_project_id")
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
with op.batch_alter_table(
|
|
113
|
+
"project_status_automation_link", schema=None
|
|
114
|
+
) as batch_op:
|
|
115
|
+
batch_op.drop_index(
|
|
116
|
+
batch_op.f(
|
|
117
|
+
"ix_project_status_automation_link_status_automation_id"
|
|
118
|
+
)
|
|
119
|
+
)
|
|
120
|
+
batch_op.drop_index(
|
|
121
|
+
batch_op.f("ix_project_status_automation_link_project_id")
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
with op.batch_alter_table("project_person_link", schema=None) as batch_op:
|
|
125
|
+
batch_op.drop_index(batch_op.f("ix_project_person_link_project_id"))
|
|
126
|
+
batch_op.drop_index(batch_op.f("ix_project_person_link_person_id"))
|
|
127
|
+
|
|
128
|
+
with op.batch_alter_table("comment_preview_link", schema=None) as batch_op:
|
|
129
|
+
batch_op.drop_index(batch_op.f("ix_comment_preview_link_preview_file"))
|
|
130
|
+
batch_op.drop_index(batch_op.f("ix_comment_preview_link_comment"))
|
|
131
|
+
|
|
132
|
+
# ### end Alembic commands ###
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: zou
|
|
3
|
-
Version: 0.20.
|
|
3
|
+
Version: 0.20.18
|
|
4
4
|
Summary: API to store and manage the data of your animation production
|
|
5
5
|
Home-page: https://zou.cg-wire.com
|
|
6
6
|
Author: CG Wire
|
|
@@ -21,10 +21,9 @@ Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
|
21
21
|
Classifier: Topic :: Multimedia :: Graphics
|
|
22
22
|
Requires-Python: >=3.9, <3.14
|
|
23
23
|
License-File: LICENSE
|
|
24
|
-
Requires-Dist: audioop-lts==0.2.1; python_version >= "3.13"
|
|
25
24
|
Requires-Dist: babel==2.17.0
|
|
26
25
|
Requires-Dist: click==8.1.8
|
|
27
|
-
Requires-Dist: discord.py==2.
|
|
26
|
+
Requires-Dist: discord.py==2.5.0
|
|
28
27
|
Requires-Dist: email-validator==2.2.0
|
|
29
28
|
Requires-Dist: ffmpeg-python==0.2.0
|
|
30
29
|
Requires-Dist: fido2==1.2.0
|
|
@@ -41,7 +40,7 @@ Requires-Dist: flask-jwt-extended==4.7.1
|
|
|
41
40
|
Requires-Dist: flask-migrate==4.1.0
|
|
42
41
|
Requires-Dist: flask-socketio==5.5.1
|
|
43
42
|
Requires-Dist: flask==3.1.0
|
|
44
|
-
Requires-Dist: gazu==0.10.
|
|
43
|
+
Requires-Dist: gazu==0.10.28
|
|
45
44
|
Requires-Dist: gevent-websocket==0.10.1
|
|
46
45
|
Requires-Dist: gevent==24.11.1
|
|
47
46
|
Requires-Dist: gunicorn==23.0.0
|
|
@@ -50,7 +49,7 @@ Requires-Dist: itsdangerous==2.2.0
|
|
|
50
49
|
Requires-Dist: Jinja2==3.1.5
|
|
51
50
|
Requires-Dist: ldap3==2.9.1
|
|
52
51
|
Requires-Dist: matterhook==0.2
|
|
53
|
-
Requires-Dist: meilisearch==0.
|
|
52
|
+
Requires-Dist: meilisearch==0.34.0
|
|
54
53
|
Requires-Dist: numpy==2.0.1; python_version == "3.9"
|
|
55
54
|
Requires-Dist: numpy==2.2.3; python_version >= "3.10"
|
|
56
55
|
Requires-Dist: opencv-python==4.11.0.86
|
|
@@ -87,7 +86,7 @@ Requires-Dist: pytest==8.3.4; extra == "test"
|
|
|
87
86
|
Provides-Extra: monitoring
|
|
88
87
|
Requires-Dist: prometheus-flask-exporter==0.23.1; extra == "monitoring"
|
|
89
88
|
Requires-Dist: pygelf==0.4.2; extra == "monitoring"
|
|
90
|
-
Requires-Dist: sentry-sdk==2.
|
|
89
|
+
Requires-Dist: sentry-sdk==2.22.0; extra == "monitoring"
|
|
91
90
|
Provides-Extra: lint
|
|
92
91
|
Requires-Dist: autoflake==2.3.1; extra == "lint"
|
|
93
92
|
Requires-Dist: black==25.1.0; extra == "lint"
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
zou/__init__.py,sha256=
|
|
1
|
+
zou/__init__.py,sha256=oNL5wFOwj6vUybBQ_nAogGdRw6PlvL58pKDBW1mt5L0,24
|
|
2
2
|
zou/cli.py,sha256=8JyGrWm7-Ykshv5IBjwlBMn8JkFpHPCADChA9n8loTI,18755
|
|
3
3
|
zou/debug.py,sha256=1fawPbkD4wn0Y9Gk0BiBFSa-CQe5agFi8R9uJYl2Uyk,520
|
|
4
4
|
zou/event_stream.py,sha256=EpohqFJwWL0zs-Ic_W5dX5_XSDeCrqHQPL5Re39OnQ0,6382
|
|
5
5
|
zou/job_settings.py,sha256=_aqBhujt2Q8sXRWIbgbDf-LUdXRdBimdtTc-fZbiXoY,202
|
|
6
6
|
zou/app/__init__.py,sha256=zGmaBGBHSS_Px34I3_WZmcse62G_AZJArjm4F6TwmRk,7100
|
|
7
7
|
zou/app/api.py,sha256=JTB_IMVO8EOoyqx9KdRkiIix0chOLi0yGDY-verUJXA,5127
|
|
8
|
-
zou/app/config.py,sha256=
|
|
8
|
+
zou/app/config.py,sha256=eXVrmZf550Tk0fiN0Asfrhel0StesTDLTAYU6LdM3n4,6747
|
|
9
9
|
zou/app/mixin.py,sha256=eYwfS_CUFvNmldaQXrjsN5mK_gX0wYrBFykfx60uUM8,4897
|
|
10
10
|
zou/app/swagger.py,sha256=Jr7zsMqJi0V4FledODOdu-aqqVE02jMFzhqVxHK0_2c,54158
|
|
11
11
|
zou/app/blueprints/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -141,7 +141,7 @@ zou/app/models/base.py,sha256=vZoPzdixyRbk0SoDJGEbQ9LFouBaDCA7gVSZ1o_SIhI,8808
|
|
|
141
141
|
zou/app/models/build_job.py,sha256=aW6KZXkyMP9d3g8fvcOYk9EAoNMw-6IleZdWbaqLLVw,1286
|
|
142
142
|
zou/app/models/chat.py,sha256=u-IZB67IYlMMoPooFSKJX2kpXFdshlmRKf7UuwAcA6c,1273
|
|
143
143
|
zou/app/models/chat_message.py,sha256=8w7xtoqCW_CRoGKrF4ba5w-oyAHIRh-2ms3p5sQQor4,874
|
|
144
|
-
zou/app/models/comment.py,sha256=
|
|
144
|
+
zou/app/models/comment.py,sha256=2DkzSFwlhqibRmiti3z_GbtxObHMnxRNWel9xsE4uoo,5897
|
|
145
145
|
zou/app/models/custom_action.py,sha256=wx5ASKJ2oG-ivASZbVf1nLiL7zELgQBJ8U1jDdvGkuU,578
|
|
146
146
|
zou/app/models/data_import_error.py,sha256=dCyzaX0KATa0F8h5V3sTPlXz-XNl1VNkflRfJuaCmsg,425
|
|
147
147
|
zou/app/models/day_off.py,sha256=WMZs7oMhUBpMnNyvhgpl1j6egZ5J0drnrF1dH3N5cII,691
|
|
@@ -163,7 +163,7 @@ zou/app/models/person.py,sha256=txHmSzokaS-tET_MIjGHxhNNS8CPt-GzUPIhp5baDmU,7714
|
|
|
163
163
|
zou/app/models/playlist.py,sha256=YGgAk84u0_fdIEY02Dal4kfk8APVZvWFwWYV74qvrio,1503
|
|
164
164
|
zou/app/models/preview_background_file.py,sha256=j8LgRmY7INnlB07hFwwB-8ssQrRC8vsb8VcpsTbt6tA,559
|
|
165
165
|
zou/app/models/preview_file.py,sha256=eDPXw0QIdJze_E4kAS8SsyabrefWhIIdwuGmjss7iXo,3282
|
|
166
|
-
zou/app/models/project.py,sha256=
|
|
166
|
+
zou/app/models/project.py,sha256=m9Rhlfa8K21-xuNJUIadaYGuj5hMnC0yzJcxXcqoCsE,9162
|
|
167
167
|
zou/app/models/project_status.py,sha256=pExaHH7x4Eu8xOqD3_mRRbMzjT2jJZ8rm-9jo7yUGXA,390
|
|
168
168
|
zou/app/models/schedule_item.py,sha256=coY5uDDuBoctaMICnfCzx4zT5om2E1uu4iq5MDWAPlY,1444
|
|
169
169
|
zou/app/models/search_filter.py,sha256=Q699mJa3GGwFEva93Y_nHiIcx3BDht9VsAe2zeQL0FA,1242
|
|
@@ -179,7 +179,7 @@ zou/app/models/task_type.py,sha256=IsixVAfz3pyMf0eQw8x-uFNM9OHNkZpsPLEz_VNQ0hA,1
|
|
|
179
179
|
zou/app/models/time_spent.py,sha256=n7i3FO9g1eE_zATkItoCgrGVqq3iMSfdlKSveEZPloc,795
|
|
180
180
|
zou/app/models/working_file.py,sha256=q0LM3s1ziw_9AmmPDCkwyf1-TJkWTBMgo2LdHyVRwxg,1509
|
|
181
181
|
zou/app/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
182
|
-
zou/app/services/assets_service.py,sha256=
|
|
182
|
+
zou/app/services/assets_service.py,sha256=Hj1dznCFM86HxAIRIRXEcGwI9lCtYpzurhusVqOVrMc,24139
|
|
183
183
|
zou/app/services/auth_service.py,sha256=hQpNb21xlr5EiTrXnzpFb4W4GDtglubqA2z_-YIBfnk,22897
|
|
184
184
|
zou/app/services/backup_service.py,sha256=_ZtZp6wkcVYnHxBosziwLGdrTvsUttXGphiydq53iy8,4840
|
|
185
185
|
zou/app/services/base_service.py,sha256=OZd0STFh-DyBBdwsmA7DMMnrwv4C8wJUbShvZ1isndU,1383
|
|
@@ -189,9 +189,9 @@ zou/app/services/comments_service.py,sha256=dEZ4Y4NQRGtCDnChlZp3VtF02noSPqXPT4yJ
|
|
|
189
189
|
zou/app/services/concepts_service.py,sha256=sXzMPQ5Rav-c_36CBxdDBjKNq0-gaLWFY9QZGy3jjv4,11252
|
|
190
190
|
zou/app/services/custom_actions_service.py,sha256=fWISEOOdthadrxeHuacEel5Xj6msn0yWXJQDG1gzvsY,297
|
|
191
191
|
zou/app/services/deletion_service.py,sha256=GdPWmw60_EmWxJohvqQ9KRcION7_PIdQgbl7nr2g2mY,17429
|
|
192
|
-
zou/app/services/edits_service.py,sha256=
|
|
192
|
+
zou/app/services/edits_service.py,sha256=P3-eBoHSikYjtuHeulTv_WuILEe502sU4qFObfokcQY,12114
|
|
193
193
|
zou/app/services/emails_service.py,sha256=i9EP3zw02ZteVt9OZTvkfaoU19_T4kLhRmrhIvYw2SQ,11965
|
|
194
|
-
zou/app/services/entities_service.py,sha256=
|
|
194
|
+
zou/app/services/entities_service.py,sha256=c-AnoHkro_Bw-6156m85qg96VpdI6Ox-sv0xL1d_TTU,16903
|
|
195
195
|
zou/app/services/events_service.py,sha256=Ew-bY5hqrWLmpbVj1_xd3E2S3JtyAGzdgw2XjudTZjc,2700
|
|
196
196
|
zou/app/services/exception.py,sha256=mcDVjWGICMIlOi4nsN2EQ7nc3V70rAC-iCmXt6kOXbA,4240
|
|
197
197
|
zou/app/services/file_tree_service.py,sha256=8JNBDgnXtV-AmSJ3gnUGB4oSwLjPgi1WYyL0Kc98JRE,33875
|
|
@@ -206,11 +206,11 @@ zou/app/services/preview_files_service.py,sha256=Yk-vwzHuKTzNkEZfl9DhQRdDuRU006u
|
|
|
206
206
|
zou/app/services/projects_service.py,sha256=aIbYaFomy7OX2Pxvkf9w5qauDvkjuc9ummSGNYIpQMY,21249
|
|
207
207
|
zou/app/services/scenes_service.py,sha256=iXN19HU4njPF5VtZXuUrVJ-W23ZQuQNPC3ADXltbWtU,992
|
|
208
208
|
zou/app/services/schedule_service.py,sha256=E99HKYsXgnK2sw58fw-NNHXWBgVJiA60upztjkNSCaM,6989
|
|
209
|
-
zou/app/services/shots_service.py,sha256=
|
|
209
|
+
zou/app/services/shots_service.py,sha256=JEBywQGSKz1R7uXM8wtQQebMhWQZbGrWmTS5nOyn_Js,52191
|
|
210
210
|
zou/app/services/stats_service.py,sha256=cAlc92i9d6eYtsuwe3hYHYwdytg8KEMi1-TADfysJwM,11733
|
|
211
211
|
zou/app/services/status_automations_service.py,sha256=tVio7Sj7inhvKS4UOyRhcdpwr_KNP96hT1o0X7XcGF4,715
|
|
212
212
|
zou/app/services/sync_service.py,sha256=kJ1LGMNfPh9_BDwGTfoYWHrLZ8OlT0hWk-R8wNt0t3w,41562
|
|
213
|
-
zou/app/services/tasks_service.py,sha256=
|
|
213
|
+
zou/app/services/tasks_service.py,sha256=7tOZLSKB26Jj9N6hl02vmJAzeq9uV121B4Mf3IVBEm4,68530
|
|
214
214
|
zou/app/services/telemetry_services.py,sha256=xQm1h1t_JxSFW59zQGf4NuNdUi1UfMa_6pQ-ytRbmGA,1029
|
|
215
215
|
zou/app/services/time_spents_service.py,sha256=H9X-60s6oqtY9rtU-K2jKwUSljfkdGlf_9wMr3iVfIA,15158
|
|
216
216
|
zou/app/services/user_service.py,sha256=74gi_ao4gQenmN95Yf2aRmVyTFTJ8TIZO3joov2SNJ4,50346
|
|
@@ -406,6 +406,7 @@ zou/migrations/versions/f874ad5e898a_add_link_entity_type_task_type.py,sha256=QI
|
|
|
406
406
|
zou/migrations/versions/f995b28fb749_.py,sha256=YFshxpF-CRpMkSpYm-n2xCeE_q-Dow0nbqTLPGkkJBc,959
|
|
407
407
|
zou/migrations/versions/fb6b6f188497_.py,sha256=-LSlab37yRW7EHloDuCTOgtCXnII6IcubZtgom_iJUA,1003
|
|
408
408
|
zou/migrations/versions/fb87feaaa094_add_missing_unique_constraints.py,sha256=37v2puXZ6F60I-qYMOHvLWyPjNmE30MBNuqMAoTp6TI,934
|
|
409
|
+
zou/migrations/versions/fba149993140_add_missing_index.py,sha256=Tj_5aweXlp61xNzp7bxSTlxCqqV-io7NeV6_CodKMls,4062
|
|
409
410
|
zou/migrations/versions/fc322f908695_.py,sha256=KT3BfEVbbvlMDvC_tP2Y96fh9v3TjxOSldjCCLHTw9w,704
|
|
410
411
|
zou/migrations/versions/fee7c696166e_.py,sha256=jVvkr0uY5JPtC_I9h18DELo_eRu99RdOYMtEcaUnNXc,1839
|
|
411
412
|
zou/migrations/versions/feffd3c5b806_introduce_concepts.py,sha256=wFNAtTTDHa01AdoXhRDayCVdB33stUFn6whc3opg2vQ,4774
|
|
@@ -416,9 +417,9 @@ zou/remote/normalize_movie.py,sha256=zNfEY3N1UbAHZfddGONTg2Sff3ieLVWd4dfZa1dpnes
|
|
|
416
417
|
zou/remote/playlist.py,sha256=AsDo0bgYhDcd6DfNRV6r6Jj3URWwavE2ZN3VkKRPbLU,3293
|
|
417
418
|
zou/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
418
419
|
zou/utils/movie.py,sha256=d67fIL9dVBKt-E_qCGXRbNNdbJaJR5sHvZeX3hf8ldE,16559
|
|
419
|
-
zou-0.20.
|
|
420
|
-
zou-0.20.
|
|
421
|
-
zou-0.20.
|
|
422
|
-
zou-0.20.
|
|
423
|
-
zou-0.20.
|
|
424
|
-
zou-0.20.
|
|
420
|
+
zou-0.20.18.dist-info/LICENSE,sha256=dql8h4yceoMhuzlcK0TT_i-NgTFNIZsgE47Q4t3dUYI,34520
|
|
421
|
+
zou-0.20.18.dist-info/METADATA,sha256=Isa3DGGFp6qYjXcCd_ZqcGv4rPE4xeJ3kIjajg9d6LI,6673
|
|
422
|
+
zou-0.20.18.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
423
|
+
zou-0.20.18.dist-info/entry_points.txt,sha256=PelQoIx3qhQ_Tmne7wrLY-1m2izuzgpwokoURwSohy4,130
|
|
424
|
+
zou-0.20.18.dist-info/top_level.txt,sha256=4S7G_jk4MzpToeDItHGjPhHx_fRdX52zJZWTD4SL54g,4
|
|
425
|
+
zou-0.20.18.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|