From 84ad1814328671486048fb870ffc19653c48720c Mon Sep 17 00:00:00 2001
From: Jonathan Weth <git@jonathanweth.de>
Date: Mon, 12 Feb 2024 12:54:50 +0100
Subject: [PATCH] Drop sites framework

---
 .../apps/matrix/migrations/0001_initial.py    |  5 ---
 .../0003_add_managed_by_app_label.py          |  1 -
 .../apps/matrix/migrations/0004_drop_sites.py | 39 +++++++++++++++++++
 fixtures/example_data.yaml                    | 29 --------------
 pyproject.toml                                |  6 +--
 5 files changed, 42 insertions(+), 38 deletions(-)
 create mode 100644 aleksis/apps/matrix/migrations/0004_drop_sites.py

diff --git a/aleksis/apps/matrix/migrations/0001_initial.py b/aleksis/apps/matrix/migrations/0001_initial.py
index 694ff2d..e8bff34 100644
--- a/aleksis/apps/matrix/migrations/0001_initial.py
+++ b/aleksis/apps/matrix/migrations/0001_initial.py
@@ -11,7 +11,6 @@ class Migration(migrations.Migration):
 
     dependencies = [
         ('core', '0030_user_attributes'),
-        ('sites', '0002_alter_domain_unique'),
         ('contenttypes', '0002_remove_content_type_name'),
     ]
 
@@ -25,7 +24,6 @@ class Migration(migrations.Migration):
                 ('alias', models.CharField(blank=True, max_length=255, unique=True, verbose_name='Alias')),
                 ('group', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='matrix_room', to='core.group', verbose_name='Group')),
                 ('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_matrix.matrixroom_set+', to='contenttypes.contenttype')),
-                ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')),
             ],
             options={
                 'verbose_name': 'Matrix room',
@@ -33,7 +31,6 @@ class Migration(migrations.Migration):
                 'permissions': (('provision_group_in_matrix', 'Can provision group in Matrix'),),
             },
             managers=[
-                ('objects', aleksis.core.managers.PolymorphicCurrentSiteManager()),
             ],
         ),
         migrations.CreateModel(
@@ -43,7 +40,6 @@ class Migration(migrations.Migration):
                 ('extended_data', models.JSONField(default=dict, editable=False)),
                 ('matrix_id', models.CharField(max_length=255, unique=True, verbose_name='Matrix ID')),
                 ('person', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='matrix_profile', to='core.person', verbose_name='Person')),
-                ('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')),
             ],
             options={
                 'verbose_name': 'Matrix profile',
@@ -65,7 +61,6 @@ class Migration(migrations.Migration):
             },
             bases=('matrix.matrixroom',),
             managers=[
-                ('objects', aleksis.core.managers.PolymorphicCurrentSiteManager()),
             ],
         ),
     ]
diff --git a/aleksis/apps/matrix/migrations/0003_add_managed_by_app_label.py b/aleksis/apps/matrix/migrations/0003_add_managed_by_app_label.py
index a91cc40..be683ee 100644
--- a/aleksis/apps/matrix/migrations/0003_add_managed_by_app_label.py
+++ b/aleksis/apps/matrix/migrations/0003_add_managed_by_app_label.py
@@ -8,7 +8,6 @@ import django.db.models.deletion
 class Migration(migrations.Migration):
 
     dependencies = [
-        ('sites', '0002_alter_domain_unique'),
         ('contenttypes', '0002_remove_content_type_name'),
         ('core', '0052_site_related_name'),
         ('matrix', '0002_drop_onetoone'),
diff --git a/aleksis/apps/matrix/migrations/0004_drop_sites.py b/aleksis/apps/matrix/migrations/0004_drop_sites.py
new file mode 100644
index 0000000..f6563cd
--- /dev/null
+++ b/aleksis/apps/matrix/migrations/0004_drop_sites.py
@@ -0,0 +1,39 @@
+# Generated by Django 4.2.10 on 2024-02-12 11:52
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('contenttypes', '0002_remove_content_type_name'),
+        ('matrix', '0003_add_managed_by_app_label'),
+    ]
+
+    operations = [
+        migrations.AlterModelManagers(
+            name='matrixprofile',
+            managers=[
+            ],
+        ),
+        migrations.AlterField(
+            model_name='matrixroom',
+            name='group',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='matrix_rooms', to='core.group', verbose_name='Group'),
+        ),
+        migrations.AlterField(
+            model_name='matrixroom',
+            name='polymorphic_ctype',
+            field=models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_%(app_label)s.%(class)s_set+', to='contenttypes.contenttype'),
+        ),
+    ] + [
+        migrations.RunSQL(
+            f"ALTER TABLE matrix_{model_name} drop column if exists site_id;"
+        ) for model_name  in
+        [
+            "matrixprofile",
+            "matrixroom",
+        ]
+    ]
+
diff --git a/fixtures/example_data.yaml b/fixtures/example_data.yaml
index 64fe88d..3f9212c 100644
--- a/fixtures/example_data.yaml
+++ b/fixtures/example_data.yaml
@@ -41,15 +41,9 @@
     password: pbkdf2_sha256$260000$FaCoGiW0LEmDlf5NozIIPw$FMtYfHkuRzOXXnD6xEnlJUa0j1HEwI1OpQcH5qkk+LE=
     username: test7
     is_active: true
-- model: sites.site
-  pk: 1
-  fields:
-    domain: example.org
-    name: example.org
 - model: core.person
   pk: 2
   fields:
-    site: 1
     user: 2
     is_active: true
     first_name: Jane
@@ -59,7 +53,6 @@
 - model: core.person
   pk: 3
   fields:
-    site: 1
     user: 3
     is_active: true
     first_name: Aunt
@@ -69,7 +62,6 @@
 - model: core.person
   pk: 4
   fields:
-    site: 1
     user: 4
     is_active: true
     first_name: Mad
@@ -79,7 +71,6 @@
 - model: core.person
   pk: 5
   fields:
-    site: 1
     user: 5
     is_active: true
     first_name: Lara
@@ -89,7 +80,6 @@
 - model: core.person
   pk: 6
   fields:
-    site: 1
     user: 6
     is_active: true
     first_name: Student
@@ -98,7 +88,6 @@
 - model: core.person
   pk: 7
   fields:
-    site: 1
     user: 7
     is_active: true
     first_name: Student
@@ -107,7 +96,6 @@
 - model: core.person
   pk: 8
   fields:
-    site: 1
     user: 8
     is_active: true
     first_name: Student
@@ -119,56 +107,48 @@
 - model: core.group
   pk: 101
   fields:
-    site: 1
     name: "8c"
     short_name: "8c"
     members: [6, 7, 8]
 - model: core.group
   pk: 102
   fields:
-    site: 1
     name: "5c"
     short_name: "5c"
     members: [6, 7, 8]
 - model: core.group
   pk: 103
   fields:
-    site: 1
     name: "6c"
     short_name: "6c"
     members: [6, 7, 8]
 - model: core.group
   pk: 104
   fields:
-    site: 1
     name: "5a"
     short_name: "5a"
     members: [6, 7, 8]
 - model: core.group
   pk: 105
   fields:
-    site: 1
     name: "7a"
     short_name: "7a"
     members: [6, 7, 8]
 - model: core.group
   pk: 106
   fields:
-    site: 1
     name: "6a"
     short_name: "6a"
     members: [6, 7, 8]
 - model: core.group
   pk: 107
   fields:
-    site: 1
     name: "9d"
     short_name: "9d"
     members: [6, 7, 8]
 - model: core.group
   pk: 1
   fields:
-    site: 1
     name: "8c:Mu"
     short_name: "8c:Mu"
     members: [6, 7, 8]
@@ -177,7 +157,6 @@
 - model: core.group
   pk: 2
   fields:
-    site: 1
     name: "5c:Mu"
     short_name: "5c:Mu"
     members: [6, 7, 8]
@@ -186,7 +165,6 @@
 - model: core.group
   pk: 3
   fields:
-    site: 1
     name: "6c:Mu"
     short_name: "6c:Mu"
     members: [6, 7, 8]
@@ -195,7 +173,6 @@
 - model: core.group
   pk: 4
   fields:
-    site: 1
     name: "5a:De"
     short_name: "5a:De"
 
@@ -205,7 +182,6 @@
 - model: core.group
   pk: 5
   fields:
-    site: 1
     name: "7a:Mu"
     short_name: "7a:Mu"
     members: [6, 7, 8]
@@ -214,7 +190,6 @@
 - model: core.group
   pk: 6
   fields:
-    site: 1
     name: "6a:Mu"
     short_name: "6a:Mu"
     members: [6, 7, 8]
@@ -223,7 +198,6 @@
 - model: core.group
   pk: 7
   fields:
-    site: 1
     name: "9d:Mu"
     short_name: "9d:Mu"
     members: [6, 7, 8]
@@ -232,7 +206,6 @@
 - model: core.group
   pk: 8
   fields:
-    site: 1
     name: "6a:De"
     short_name: "6a:De"
     members: [6, 7, 8]
@@ -241,14 +214,12 @@
 - model: core.group
   pk: 9
   fields:
-    site: 1
     name: "Teachers"
     short_name: "Teachers"
     members: [2, 3, 4, 5]
 - model: core.group
   pk: 10
   fields:
-    site: 1
     name: "Students"
     short_name: "Students"
     members: [6, 7, 8]
diff --git a/pyproject.toml b/pyproject.toml
index f900880..8e260a8 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -30,14 +30,14 @@ priority = "primary"
 name = "gitlab"
 url = "https://edugit.org/api/v4/projects/461/packages/pypi/simple"
 priority = "supplemental"
+
 [tool.poetry.dependencies]
 python = "^3.10"
-aleksis-core = "^4.0.0.dev0"
+aleksis-core = "^4.0.0.dev3"
 
 [tool.poetry.plugins."aleksis.app"]
 matrix = "aleksis.apps.matrix.apps:DefaultConfig"
 
-
 [tool.poetry.group.dev.dependencies]
 django-stubs = "^4.2"
 safety = "^2.3.5"
@@ -79,7 +79,7 @@ section-order = ["future", "standard-library", "django", "third-party", "first-p
 
 [tool.ruff.isort.sections]
 django = ["django"]
+
 [build-system]
 requires = ["poetry-core>=1.0.0"]
 build-backend = "poetry.core.masonry.api"
-
-- 
GitLab