Version 4.7.0¶
This version comes with a mix of new features and fixes.
New features¶
Form languages¶
Form Editors can now select the language used for the 'Send' button, messages, and notifications from LiberaForms.
The form's language can be set on a form to form basis, and the default is set on the user's settings page.
This feature already includes five new languages, Bulgarian, Dutch, Italian, Chinese (traditional) and Eesti keel
A Satisfaction form field¶
This new field includes options to display Stars Hearts and Emojis with a choice of colours.
Field conditions may also be configured using this field.
Anti-spam¶
Forms now come with two anti-spam measures. Both can be enabled/disabled on the form's options page.
Rate-limiting¶
- Users must take at least 20 seconds (by default) to answer a form
- When the form is answered sooner, the user is required to wait a little (the remaining seconds)
- Sysadmins may change the default or disabled this feature in the
.envfile. Seedotenv.example
Honeypots¶
Hidden fields designed to trick bots.
GDPR wizard¶
Now also available in Dutch. Thank you @zandbelt!
Fixes¶
Amongst the numerous fixes and tweaks:
Maps¶
When a form's Answer edition option was enabled, there was no way for a user to return and edit a map field.
Also, empty map marker popups were displayed when no popup fields had been defined. And popups also displayed the labels of deleted fields, which definitely should not be the case.
All fixed now.
Webhooks¶
We've added the server's hostname to the JSON object, but more importantly..
The JSON object posted on Answer deleted has changed.
The answer_id type is now a list. We have done this because an Editor may delete all the form's answers in bulk. Please check your webook's configuration for an example.
If you are using this webhook you will need to modify the consumer.
Thanks¶
Thanks to @zandbelt for nudging us to get the new form language feature done, and to the people who submitted new translations.
Thanks to @kapis for fixing the map field.
And thank you @nlnet for supporting development.
Enjoy!
Upgrades¶
Various python and javascript libraries have be upgraded.
At long last LiberaForms is running the latest version of Flask!
Upgrade from v4.*.*¶
Important
LiberaForms now requires Python 3.10 or greater.
Please check your version and install if necessary before continuing.
source ./venv/bin/activate && python --version
See the notes below.
Stop LiberaForms
sudo supervisorctl stop liberaforms
sudo supervisorctl stop liberaforms-logs
Fetch version 4.7.0
git fetch origin tag v4.7.0 --no-tags
git checkout v4.7.0 -b v4.7.0
cat VERSION.txt
Uninstall Flask-Session2 and upgrade python packages
source ./venv/bin/activate
pip uninstall Flask-Session2
pip install --upgrade pip
pip install -r ./requirements.txt
Upgrade the database schema to 37fa6876e080
You have a backup of your database, right?
flask db upgrade
See the installed versions
flask site get-versions
Restart the supervisor processes.
sudo supervisorctl start liberaforms-logs
sudo supervisorctl start liberaforms
Installing python¶
LiberaForms now requires Python 3.10 or greater. Please check your version and install if necessary.
source ./venv/bin/activate && python --version
If you need to upgrade:
- Follow the upgrading Python instructions.
- Then continue with the LiberaForms upgrade instructions above.
Sorry about the extra work.