diff --git a/CHANGELOG.rst b/CHANGELOG.rst index dc0d5dfe5262c8dcc7c988b203fc5cfa26e34bfc..7034599455b8bc118527cef5d26fb570c4435517 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -9,17 +9,9 @@ and this project adheres to `Semantic Versioning`_. Unreleased ---------- -Deprecated -~~~~~~~~~~ - -* Numeric object IDs (primary keys) will be removed and replaced by UUIDs in - AlekSIS-Core 4.0. All apps must update their URLs, foriegn keys and the - like. - Added ~~~~~ -* Introduce a UUID for every object * Introduce GraphQL API `2.10`_ - 2022-06-25 diff --git a/aleksis/core/migrations/0042_add_uuid_field.py b/aleksis/core/migrations/0042_add_uuid_field.py deleted file mode 100644 index 6f8437c69f049de3ba15f6faad129e64036ca132..0000000000000000000000000000000000000000 --- a/aleksis/core/migrations/0042_add_uuid_field.py +++ /dev/null @@ -1,95 +0,0 @@ -# Generated by Django 3.2.14 on 2022-07-16 12:49 - -import aleksis.core.mixins -from django.db import migrations, models -import django.utils.timezone - - -class Migration(migrations.Migration): - - dependencies = [ - ('core', '0041_update_gender_choices'), - ] - - operations = [ - migrations.AddField( - model_name='activity', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='additionalfield', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='announcement', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='announcementrecipient', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='custommenu', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='custommenuitem', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='dashboardwidgetorder', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='datacheckresult', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='group', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='grouptype', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='notification', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='pdffile', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='person', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='persongroupthrough', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='schoolterm', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - migrations.AddField( - model_name='taskuserassignment', - name='uuid', - field=models.UUIDField(default=aleksis.core.mixins._generate_object_uuid, editable=False, unique=True), - ), - ] diff --git a/aleksis/core/mixins.py b/aleksis/core/mixins.py index d81c736973aaa27efba672461fd68a67379d5eee..c6cee9a8c6bbefed3439eef156b685f5484e4a13 100644 --- a/aleksis/core/mixins.py +++ b/aleksis/core/mixins.py @@ -1,7 +1,6 @@ # flake8: noqa: DJ12 import os -import uuid from datetime import datetime from typing import Any, Callable, List, Optional, Union @@ -83,10 +82,6 @@ def _generate_one_to_one_proxy_property(field, subfield): return property(getter, setter) -def _generate_object_uuid(): - return uuid.uuid5(uuid.NAMESPACE_URL, settings.BASE_URL) - - class ExtensibleModel(models.Model, metaclass=_ExtensibleModelBase): """Base model for all objects in AlekSIS apps. @@ -131,8 +126,6 @@ class ExtensibleModel(models.Model, metaclass=_ExtensibleModelBase): - Dominik George <dominik.george@teckids.org> """ - uuid = models.UUIDField(unique=True, default=_generate_object_uuid, editable=False) - # Defines a material design icon associated with this type of model icon_ = "radio_button_unchecked"