* wip: gotenberg
* Generate and provide supporting docs for Mural payouts
* Correct docs
* shear
* update cargo lock because r-a complains otherwise
* Remove local Gotenberg queue and use Redis instead
* Store platform_id in database correctly
* Address PR comments
* Fix up CI
* fix rebase
* Add timeout to default env vars
* feat(labrinth): support STMP servers with no auth credentials
* feat: set up Mailpit SMTP server as part of our Docker Compose services swarm
* chore(docker-compose): fix healthcheck for mail service
* feat(docker-compose): enable SpamAssassin integration through Postmark
Unlike spinning up yet another container, this requires no
configuration, and is good and simple enough for a funny little feature
developers may occassionally use with non-confidential messages.
* feat(docker-compose): give all containers a name
* fix(docker-compose): fix healthcheck for clickhouse container
For some reason, its CMD form always returned a healthcheck error, at
least in Podman.
* fix(editorconfig): address formatting regression for YAML files introduced in 8af65f58d9
* fix: frontend temp editorconfig change
* fix(editorconfig): add more extensions that use 2 spaces indentation
---------
Co-authored-by: Calum H. (IMB11) <hendersoncal117@gmail.com>
* perf(ci): use Turbo to schedule both `lint` and `test` tasks at once
* fix(ci): wait until service containers are initialized for tests
This is achieved by adding a health check to the containers, and
instructing the CI workflow to wait until the containers are healthy.
Not doing this wait risks spurious CI failures due to DB migrations
being applied before the DB even starts.
* chore(turbo): use locally installed schema in new Turbo override file
On the latest versions of Turbo, this ensures that the used schema is
always in sync with what's available in the installed Turbo version,
which is something that has already caused confusion to me before.