# Changelog (nightly branch) Note: Breaking changes between versions are indicated by "💥". - [Bugfix] Start MongoDB when running migrations, because a new data migration fails if MongoDB is not running - [Feature] Better support of Caddy as a load balancer in Kubernetes: - Make it possible to start/stop a selection of resources with ``tutor k8s start/stop [names...]``. - Make it easy to deploy an independent LoadBalancer by converting the caddy service to a ClusterIP when ``ENABLE_WEB_PROXY=false``. - Add a ``app.kubernetes.io/component: loadbalancer`` label to the LoadBalancer service. - Add ``app.kubernetes.io/name`` labels to all services. - Preserve the LoadBalancer service in ``tutor k8s stop`` commands. - Wait for the caddy deployment to be ready before running initialisation jobs. - [Security] On Kubernetes, convert all NodePort services to ClusterIP to guarantee network isolation from outside the cluster. - 💥[Improvement] Drop Python 3.5 compatibility. - [Bugfix] Fix docker-compose project name in development on nightly branch. - 💥[Bugfix] No longer track the Tutor version number in resource labels (and label selectors, which breaks the update of Deployment resources), but instead do so in resource annotations. - [Bugfix] Make it possible for plugins to implement the "caddyfile" patch without relying on the "port" local variable. - 💥[Improvement] Move the Open edX forum to a [dedicated plugin](https://github.com/overhangio/tutor-forum/) (#450). - 💥[Improvement] Get rid of the "tutor-openedx" package, which is no longer supported. - [Bugfix] Fix running Caddy container in k8s, which should always be the case even if `ENABLE_WEB_PROXY` is false. - 💥[Improvement] Run all services as unprivileged containers, for better security. This has multiple consequences: - The "openedx-dev" image is now built with `tutor dev dc build lms`. - The "smtp" service now runs the "devture/exim-relay" Docker image, which is unprivileged. Also, the default SMTP port is now 8025. - 💥[Feature] Get rid of the nginx container and service, which is now replaced by Caddy. this has the following consequences: - Patches "nginx-cms", "nginx-lms", "nginx-extra", "local-docker-compose-nginx-aliases" are replaced by "caddyfile-cms", "caddyfile-lms", "caddyfile", " local-docker-compose-caddy-aliases". - Patches "k8s-deployments-nginx-volume-mounts", "k8s-deployments-nginx-volumes" were obsolete and are removed. - The `NGINX_HTTP_PORT` setting is renamed to `CADDY_HTTP_PORT`.