From 03140cab96260c6b6948a09167fe581d110fd7ee Mon Sep 17 00:00:00 2001
From: Nadja Geisler <ngeisler@fachschaft.informatik.tu-darmstadt.de>
Date: Mon, 3 Mar 2025 13:32:43 +0100
Subject: [PATCH] update dependencies

---
 .gitlab-ci.yml   |  2 +-
 INSTALL.md       |  2 +-
 Utils/setup.sh   |  2 +-
 Utils/test.sh    | 21 +++++++++++++++++++++
 requirements.txt | 16 ++++++++--------
 5 files changed, 32 insertions(+), 11 deletions(-)
 create mode 100644 Utils/test.sh

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fe4d4446..d44efe51 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: python:3.9
+image: python:3.11
 
 services:
   - mysql
diff --git a/INSTALL.md b/INSTALL.md
index c887af92..cbf8ea28 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -10,7 +10,7 @@ setup.
 
 ### System Requirements
 
-* Python 3.8+ incl. development tools
+* Python3.11+ incl. development tools
 * Virtualenv
 * pdflatex & beamer
   class (`texlive-latex-base texlive-latex-recommended texlive-latex-extra texlive-fonts-extra texlive-luatex`)
diff --git a/Utils/setup.sh b/Utils/setup.sh
index 1c951824..1123bbd8 100755
--- a/Utils/setup.sh
+++ b/Utils/setup.sh
@@ -10,7 +10,7 @@ rm -rf venv/
 
 # Setup Python Environment
 # Requires: Virtualenv, appropriate Python installation
-virtualenv venv -p python3.9
+virtualenv venv -p python3.11
 source venv/bin/activate
 pip install --upgrade setuptools pip wheel
 pip install -r requirements.txt
diff --git a/Utils/test.sh b/Utils/test.sh
new file mode 100644
index 00000000..74fe4928
--- /dev/null
+++ b/Utils/test.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/env bash
+# Test the AKPlanning setup
+# execute as Utils/test.sh
+
+# activate virtualenv when necessary
+if [ -z ${VIRTUAL_ENV+x} ]; then
+    source venv/bin/activate
+fi
+
+# enable really all warnings, some of them are silenced by default
+if [[ "$@" == *"--all"* ]]; then
+    export PYTHONWARNINGS=all
+fi
+
+# in case of testing production setup
+if [[ "$@" == *"--prod"* ]]; then
+    export DJANGO_SETTINGS_MODULE=AKPlanning.settings_production
+    ./manage.py test --deploy
+fi
+
+./manage.py test
diff --git a/requirements.txt b/requirements.txt
index 451feef4..915d2496 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,20 +1,20 @@
-Django==4.2.13
+Django==4.2.19
 django-bootstrap5==24.2
 fontawesomefree==6.5.1 # Makes static files (css, fonts) available locally
 django-fontawesome-6==1.0.0.0 # Provides an icon field for models and forms as well as handy shortcuts to render icons
-django-split-settings==1.3.1
-django-timezone-field==6.1.0
-djangorestframework==3.15.1
-django-simple-history==3.5.0
+django-split-settings==1.3.2
+django-timezone-field==7.1
+djangorestframework==3.15.2
+django-simple-history==3.8.0
 django-registration-redux==2.13
-django-debug-toolbar==4.3.0
+django-debug-toolbar==4.4.6
 django-bootstrap-datepicker-plus==5.0.5
 django-tex==1.1.10
 django-csp==3.8
-django-compressor==4.4
+django-compressor==4.5.1
 django-libsass==0.9
 django-betterforms==2.0.0
-mysqlclient==2.2.0  # for production deployment
+mysqlclient==2.2.7  # for production deployment
 tzdata==2024.1
 
 # Documentation
-- 
GitLab