Skip to content

Commit 09ff08a

Browse files
committed
BE: Add embargo to unique fields
- Add embargo field to APITimeSeries unique constraint - Add embargo field to CoreTimeSeries unique constraint - Add embargo field to CoreHeadline unique constraint Fixes #2977
1 parent c9c6101 commit 09ff08a

File tree

7 files changed

+2310
-1
lines changed

7 files changed

+2310
-1
lines changed

cms/home/migrations/0024_alter_landingpage_body.py

Lines changed: 879 additions & 0 deletions
Large diffs are not rendered by default.

cms/topic/migrations/0022_alter_topicpage_body.py

Lines changed: 1337 additions & 0 deletions
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# Generated by Django 5.2.9 on 2025-12-18 10:30
2+
3+
from django.db import migrations, models
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
dependencies = [
9+
("data", "0040_remove_age_and_stratum_from_rbac_permission"),
10+
]
11+
12+
operations = [
13+
migrations.RemoveConstraint(
14+
model_name="apitimeseries",
15+
name="The `APITimeSeries` record should be unique if `force_write` is False",
16+
),
17+
migrations.RemoveConstraint(
18+
model_name="coreheadline",
19+
name="The `CoreHeadline` record should be unique if `force_write` is False",
20+
),
21+
migrations.RemoveConstraint(
22+
model_name="coretimeseries",
23+
name="The `CoreTimeSeries` record should be unique if `force_write` is False",
24+
),
25+
migrations.AddConstraint(
26+
model_name="apitimeseries",
27+
constraint=models.UniqueConstraint(
28+
condition=models.Q(("force_write", False)),
29+
fields=(
30+
"metric",
31+
"topic",
32+
"theme",
33+
"sub_theme",
34+
"geography",
35+
"geography_type",
36+
"geography_code",
37+
"stratum",
38+
"age",
39+
"sex",
40+
"year",
41+
"month",
42+
"epiweek",
43+
"date",
44+
"metric_value",
45+
"in_reporting_delay_period",
46+
"embargo",
47+
),
48+
name="The `APITimeSeries` record should be unique if `force_write` is False",
49+
),
50+
),
51+
migrations.AddConstraint(
52+
model_name="coreheadline",
53+
constraint=models.UniqueConstraint(
54+
condition=models.Q(("force_write", False)),
55+
fields=(
56+
"metric",
57+
"geography",
58+
"stratum",
59+
"age",
60+
"sex",
61+
"period_start",
62+
"period_end",
63+
"metric_value",
64+
"embargo",
65+
),
66+
name="The `CoreHeadline` record should be unique if `force_write` is False",
67+
),
68+
),
69+
migrations.AddConstraint(
70+
model_name="coretimeseries",
71+
constraint=models.UniqueConstraint(
72+
condition=models.Q(("force_write", False)),
73+
fields=(
74+
"metric",
75+
"geography",
76+
"stratum",
77+
"age",
78+
"sex",
79+
"year",
80+
"month",
81+
"epiweek",
82+
"date",
83+
"metric_value",
84+
"in_reporting_delay_period",
85+
"embargo",
86+
),
87+
name="The `CoreTimeSeries` record should be unique if `force_write` is False",
88+
),
89+
),
90+
]

metrics/data/models/api_models.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ class Meta:
6767
"date",
6868
"metric_value",
6969
"in_reporting_delay_period",
70+
"embargo",
7071
),
7172
name="The `APITimeSeries` record should be unique if `force_write` is False",
7273
condition=Q(force_write=False),

metrics/data/models/core_models/headline.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ class Meta:
6767
"period_start",
6868
"period_end",
6969
"metric_value",
70+
"embargo",
7071
),
7172
name="The `CoreHeadline` record should be unique if `force_write` is False",
7273
condition=Q(force_write=False),

metrics/data/models/core_models/timeseries.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ class Meta:
8181
"date",
8282
"metric_value",
8383
"in_reporting_delay_period",
84+
"embargo",
8485
),
8586
name="The `CoreTimeSeries` record should be unique if `force_write` is False",
8687
condition=Q(force_write=False),

requirements-prod.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ drf-nested-routers==0.95.0
2525
drf-spectacular==0.27.2
2626
et-xmlfile==2.0.0
2727
exceptiongroup==1.3.1
28-
filelock==3.20.0
28+
filelock==3.20.1
2929
grimp==3.13
3030
gunicorn==23.0.0
3131
html5lib==1.1

0 commit comments

Comments
 (0)