diff --git a/projects/dev.py b/projects/dev.py index 02f5824e2..733077c36 100644 --- a/projects/dev.py +++ b/projects/dev.py @@ -112,6 +112,9 @@ USE_TZ = True +# See test_settings.py for why this must match openedx-platform. +SIMPLE_HISTORY_DATE_INDEX = False + # openedx-core required configuration OPENEDX_LEARNING = { # Custom file storage, though this is better done through Django's diff --git a/src/openedx_learning/applets/cbe/models/criteria.py b/src/openedx_learning/applets/cbe/models/criteria.py index ea23196fc..084ae81f2 100644 --- a/src/openedx_learning/applets/cbe/models/criteria.py +++ b/src/openedx_learning/applets/cbe/models/criteria.py @@ -15,7 +15,7 @@ from organizations.models import Organization from simple_history.models import HistoricalRecords -from openedx_catalog.models import CourseRun +from openedx_catalog.models_api import CourseRun from openedx_django_lib.fields import case_insensitive_char_field, immutable_uuid_field from openedx_tagging.models import ObjectTag, Tag diff --git a/src/openedx_learning/migrations/0013_alter_historicalcompetencycriteriagroup_history_date_and_more.py b/src/openedx_learning/migrations/0013_alter_historicalcompetencycriteriagroup_history_date_and_more.py new file mode 100644 index 000000000..3d14915e9 --- /dev/null +++ b/src/openedx_learning/migrations/0013_alter_historicalcompetencycriteriagroup_history_date_and_more.py @@ -0,0 +1,28 @@ +# Generated by Django 5.2.17 on 2026-10-09 16:49 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("openedx_learning", "0012_studentcompetencycriteriagroupstatus"), + ] + + operations = [ + migrations.AlterField( + model_name="historicalcompetencycriteriagroup", + name="history_date", + field=models.DateTimeField(), + ), + migrations.AlterField( + model_name="historicalcompetencycriterion", + name="history_date", + field=models.DateTimeField(), + ), + migrations.AlterField( + model_name="historicalcompetencyruleprofile", + name="history_date", + field=models.DateTimeField(), + ), + ] diff --git a/test_settings.py b/test_settings.py index b3cc99ec1..4480c094b 100644 --- a/test_settings.py +++ b/test_settings.py @@ -127,3 +127,11 @@ def root(*args): "django.contrib.auth.middleware.AuthenticationMiddleware", "django.contrib.messages.middleware.MessageMiddleware", ] + +# django-simple-history bakes this setting into the history_date field of every +# HistoricalRecords() model, and therefore into any migration we generate for one. +# openedx-platform has had this set to False since its 2023 django-simple-history +# upgrade (openedx/openedx-platform#32880), to avoid adding an index to every +# historical table in the platform at once. Our migrations run there, so this has +# to match. +SIMPLE_HISTORY_DATE_INDEX = False