Upgrade from version 6 to 7
From LimeSurvey Manual
LimeSurvey 7 Major Version
This page serves as an overview of the major changes introduced with LimeSurvey 7 and links to the relevant documentation pages.
Major changes in LimeSurvey 7
Modified response table and field name structure
LimeSurvey 7 introduces a structural cleanup of how response tables and fieldnames are generated. This change improves consistency and makes the platform easier to maintain and extend.
Find more details here: Fieldname and response table refactor - LimeSurvey 7
New question editor
LimeSurvey 7 also introduces a new question editor with an updated user interface and improved workflows for creating and managing questions.
Find more details here: New Question Editor in LimeSurvey 7
RemoteControl API changes
The responses from RemoteControl 2 API have been improved by returning error codes in addition to the error text. Please check out the RemoteControl 2 API documentation for these changes. Depending on how you handle return values, this should be backward compatible - however it might not be properly handled in your implementation.
Find more details here: RemoteControl 2 API
Time zone changes
In version 6 and earlier recorded timestamps were undetermined regarding timezone and depended on the server date/time. With migration to version 7 the old 'Time difference' setting is migrated if possible, and all timestamps going forward are recorded as UTC timestamps. Old timestamps are not migrated. It is possible to set a global timezone as default in global settings and an individual one can be set per user. These apply only on the display of data. Export and RemoteControl API will only accept/deliver the raw timestamps.
Custom survey themes
All survey themes compatible with LS6 will stay active after, If the surveytheme was incompatible with LS6 they will be uninstalled, and the theme options in the global, group and survey settings will be reset to the new default.
Upgrade Strategy:
- Export the survey theme from the old application
- Before importing it into the new application, make sure the compatibility tag is set correctly: https://manual.limesurvey.org/Extension_compatibility#Survey_themes
- Import it into the new application
- Check the code you customized for the survey theme and update it in accordance with the new version of the application you want to use.
- Export your updated customized survey theme from the new application
- After upgrading your survey themes compatible in LS6 will stay active while older themes will be uninstalled.
- If you choose to update a survey theme, you can now import it. And after you confirm that it has been updated correctly, you can choose to delete the old one.
Custom admin themes
The default admin theme will be enabled by default. Custom themes will stay untouched but cannot be reactivated unless they are updated.
for self-hosted application:
- Before copying the admin theme to the new application, make sure the compatibility tag is set correctly: https://manual.limesurvey.org/Extension_compatibility#Admin_themes
- Copy the existing admin theme from the old application to the new application https://manual.limesurvey.org/Custom_Admin_Themes
- Check the code you customized for the admin theme and update it in accordance with the new version of the application you want to use.
- After upgrading your old application, our new admin theme is displayed by default. To update your previously installed admin theme, either:
- Manually update the code of the admin theme currently marked as incompatible
- Delete the old admin theme and install the new one you previously updated in your test environment.
for Cloud users:
Please contact our support.
Custom question themes
Custom question themes that do not match the current version cannot be installed, but will still be active after the upgrade. More information about question themes can be found here Question themes. Custom JavaScript inserted into the survey theme or any of the questions in a survey will likely not work anymore as well.
Upgrading your customized question theme:
- Download the question theme from a website or export the current question theme
- Before uploading, make sure the compatibility of your custom question theme is set correctly https://manual.limesurvey.org/Extension_compatibility#Question_themes
- Try to upload your question theme into the new application.
- If it is a self-created question theme, make the necessary adjustments
- After successfully uploading, please check if the question theme is displayed and working as expected.
Upgrading a theme you do not own:
Try to see if an update is available from the website or developer that provided it
Custom plugins
Custom plugins that do not match the current version will be deactivated during the upgrade process.
for self-hosted application:
- Check if the plugin can be installed on the new version.
- Update the plugin or contact the plugin author to update the plugin.
- Manually override the plugin with new files in your application which will preserve settings or uninstall the old version and reinstall the new version, in that case all settings will be reentered.
for Cloud users:
- LimeSAML will stay active
- Check if the plugin can be installed on the new version.
- Update the plugin code or contact the plugin author to update the plugin.
- Installation options:
- Uninstall the old version and reinstall the new version (all settings will be lost and have to be reapplied)
- Contact support to make an update to the plugin without loosing configuration data
Requirements
| LimeSurvey 6 | LimeSurvey 7 | |
|---|---|---|
| PHP | 7.4 or higher | 8.1 or higher (8.3 recommended) |
| MySQL | 8.0 or higher | 8.0 or higher |
| MariaDB | 10.3.38 or higher | 10.3.38 or higher |
| PostgreSQL | 12 or higher | 14 or higher |
| MSSQL | 2016 or higher | 2019 or higher |
| URL format | get or path |
path, required for the new editor
|
You do not need Node.js or npm. The new editor is included in the LimeSurvey package and is ready to use.
Make a full backup of your files and your database before you begin, and test the upgrade on a copy of your installation first. Once the upgrade has run, there is no way back other than restoring that backup.
Plan a maintenance window. LimeSurvey switches the site into maintenance mode while the database is being upgraded, and on installations with a lot of response data this can take a while.
Recommended: Use our ComfortUpdate service
The easiest and safest way to upgrade is to use our ComfortUpdate service. It downloads and installs the new version for you, so you do not have to replace any files manually.
If you prefer to upgrade by hand, follow the steps below instead.
Upgrading manually
- Back up your files and database, and put the site into maintenance mode.
- Keep the following files and folders from your old installation:
application/config/config.phpapplication/config/security.phpapplication/config/allowed_hosts.php- the
upload/folder, which holds your uploaded files, user themes and user plugins - the
plugins/folder, if you installed plugins into it by hand
- Download the LimeSurvey 7 package and update the installation using one of the following methods:
- Delete the old files first. Move the files listed above out of the way, delete everything else in your LimeSurvey directory, unpack the new package into it and put the kept files back.
- Or copy the new files over the old ones. Unpack the new package over your existing installation and let it overwrite what is already there, leaving the files listed above untouched.
- With either option, use the new
.htaccessfrom the package, as the 6.x one does not work with the new editor. Afterwards, emptytmp/runtime/so no cached data from version 6 is left behind. - Set the URL format to
pathinapplication/config/config.php. - Make sure your web server serves the
/editor/folder directly and passes theAuthorizationheader through to PHP. More details: New Question Editor in LimeSurvey 7 - Run the database upgrade. LimeSurvey detects the older database version and offers to upgrade it. Confirm, and let it finish without interrupting it.
- When it completes, switch maintenance mode off and work through the checklist below.
After the upgrade
- Check the version number in the footer of the admin pages.
- Re-activate the plugins you need, one by one.
- Open a survey and confirm that the new editor loads.
- Run one full test response through each active survey, covering conditions, quotas, e-mails and the end URL.
Troubleshooting
"Action needed" message about the URL format. The URL format is still get. Change it to path and clear tmp/runtime/.
The editor loads but stays empty. The Authorization header is not reaching PHP.
/editor/ shows a LimeSurvey page or a "not found" error. Check your web server configuration and make sure the /editor/ folder is served directly instead of being routed through LimeSurvey.
"You cannot use this theme with the new question editor". The survey uses a theme that is not based on fruity_twentythree. Switch the theme, or continue in the classic editor.
A plugin causes errors after being re-activated. It is not compatible with LimeSurvey 7. Deactivate it and check with its maintainer.
Notes
Each major change is documented on its own page. This helps keep the documentation focused and makes it easier to find the information relevant to your setup.