Skip to content

Version 4.5.0

Editors can style their forms with images and colours. Those options now include a collection of themes!

Themes come in different colours each with light and dark modes. See dark orange here.

This release also comes with a new Dockerfile with numerous improvements!

Enjoy!

Themes

Public forms' color schemes have been extended to include themes.

light and dark come in classic blue green purple orange and red.

We've also paid some attention to the forms' layout with the intention to make them more readable.

Hope you like them!

Backend themes

While we were at it, we developed a dark theme for the application UI (something that had been requested more the once).

Thank you NLnet for supporting this work.

Dockerfile

The Dockerfile has been improved in many ways, but most notably, it now uses a multi-stage build. As a result, the final image now only includes the runtime dependencies, and not the development ones any more. This led to a significant size reduction of ~43%! It also helps reduce the attack surface as development tools that can be used to craft exploits, such as gcc, are now absent from the final image.

A special thank you to SkypLabs for getting involved and doing this!

There are plans to continue to enhance our containerisation and deployment in general, so stay tuned. :)

Other

  • Form Readers can now enable/disable answer notification.
  • Developing the themes meant going through the application's HTML and Sass, where we found quite a few things that needed improving. Done.
  • Some minor bug fixes.

An elusive bug

It was brought to our attention that an answer to a form with required fields arrived empty (a required field should not be empty).

Apon investigation we discovered that occasionally (seems to be about 0.001% of the time) form answers are not correctly submitted.

To help find out what is happening, this version comes with code to send emails with some info when that happens. Set ALERT_MAILS and LOG_LEVEL to DEBUG in the .env file if you are interested. We will be running this on our SASS installations. The hunt continues!

Upgrade from v4.*.*

Stop LiberaForms

sudo supervisorctl stop liberaforms
sudo supervisorctl stop liberaforms-logs

Fetch version 4.5.0

git fetch origin tag v4.5.0 --no-tags
git checkout v4.5.0 -b v4.5.0
cat VERSION.txt

Upgrade python packages

source ./venv/bin/activate
pip install --upgrade pip
pip install -r ./requirements.txt

Upgrade the database schema to 3d6fc9699337

flask db upgrade

See the installed versions

flask site get-versions

Restart the supervisor processes.

sudo supervisorctl start liberaforms-logs
sudo supervisorctl start liberaforms