diff --git a/CHANGELOG.md b/CHANGELOG.md
index 632350f..0082e88 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,6 +19,11 @@ instructions, because git commits are used to generate release notes:
+
+## v20.0.0 (2025-06-05)
+
+- 💥[Feature] Upgrade to Teak. (by @jfavellar90)
+
## v19.0.2 (2025-03-12)
diff --git a/pyproject.toml b/pyproject.toml
index 82432c3..a97b394 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -27,7 +27,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "tutor>=19.0.0,<20.0.0",
+ "tutor>=20.0.0,<21.0.0",
]
# These fields will be set by hatch_build.py
@@ -35,7 +35,7 @@ dynamic = ["version"]
[project.optional-dependencies]
dev = [
- "tutor[dev]>=19.0.0,<20.0.0",
+ "tutor[dev]>=20.0.0,<21.0.0",
"black",
"pylint"
]
diff --git a/tutornotes/__about__.py b/tutornotes/__about__.py
index 14d428a..9c9eb91 100644
--- a/tutornotes/__about__.py
+++ b/tutornotes/__about__.py
@@ -1 +1 @@
-__version__ = "19.0.2"
+__version__ = "20.0.0"
diff --git a/tutornotes/templates/notes/build/notes/Dockerfile b/tutornotes/templates/notes/build/notes/Dockerfile
index 7bd90db..34752a2 100644
--- a/tutornotes/templates/notes/build/notes/Dockerfile
+++ b/tutornotes/templates/notes/build/notes/Dockerfile
@@ -1,4 +1,4 @@
-# syntax=docker/dockerfile:1.4
+# syntax=docker/dockerfile:1
FROM docker.io/ubuntu:24.04
ENV DEBIAN_FRONTEND=noninteractive
@@ -7,17 +7,17 @@ ENV DEBIAN_FRONTEND=noninteractive
RUN userdel -r ubuntu
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
- --mount=type=cache,target=/var/lib/apt,sharing=locked \
- apt update && \
- apt upgrade -y && \
- apt install -y \
- language-pack-en \
- git \
- python3 \
- python3-pip \
- python3-venv \
- libmysqlclient-dev \
- pkg-config
+ --mount=type=cache,target=/var/lib/apt,sharing=locked \
+ apt update && \
+ apt upgrade -y && \
+ apt install -y \
+ language-pack-en \
+ git \
+ python3 \
+ python3-pip \
+ python3-venv \
+ libmysqlclient-dev \
+ pkg-config
RUN ln -s /usr/bin/python3 /usr/bin/python
###### Git-clone Notes repo ######
@@ -34,8 +34,13 @@ ENV PATH=/app/venv/bin:${PATH}
# https://pypi.org/project/setuptools/
# https://pypi.org/project/pip/
# https://pypi.org/project/wheel/
-RUN --mount=type=cache,target=/app/.cache/pip,sharing=shared pip install setuptools==75.2.0 pip==24.2 wheel==0.44.0
+RUN --mount=type=cache,target=/app/.cache/pip,sharing=shared pip install setuptools==78.1.0 pip==25.0.1 wheel==0.46.0
RUN --mount=type=cache,target=/app/.cache/pip,sharing=shared pip install -r requirements/base.txt
EXPOSE 8000
-CMD gunicorn --workers=2 --name notes --bind=0.0.0.0:8000 --max-requests=1000 notesserver.wsgi:application
+CMD ["gunicorn", \
+ "--workers=2", \
+ "--name", "notes", \
+ "--bind=0.0.0.0:8000", \
+ "--max-requests=1000", \
+ "notesserver.wsgi:application"]