github consuldemocracy/consuldemocracy 2.1.0

latest release: 2.1.1
2 months ago

Here's release 2.1.0 with:

  • The possibility to undo "like/unlike" votes in debates, legislation processes and comments
  • A new content block to add links to the footer
  • The option to enable map markers clustering
  • Systemd integration for Puma, which means Consul Democray will automatically restart if it crashes
  • JavaScript dependencies management with NPM
  • Ubuntu 22.04 and Debian Bookworm support in the installer
  • Maintenance updates like upgrading to Rails 6.1 and Ruby 3.1
  • Better compatibility with security standards like the Spanish National Security Schema (ENS)
  • Many bug fixes and small improvements

Check the Changelog to see all the changes. Please take your time reading all referenced pull requests to understand new features and changes.

Updating your fork

Check how to keep your fork updated; if you're updating from release 2.0.1, you can just:

git checkout master
git pull
git checkout -b release
git fetch upstream tag 2.1.0
git merge 2.1.0
git checkout master
git merge release
git branch -d release
git push

⚙️ After deploying the new version, execute the release tasks:

bin/rake consul:execute_release_tasks RAILS_ENV=production

⚠️ We've upgraded Puma to a version that doesn't support running Puma as a daemon. If you're using Capistrano to deploy, a service to run and monitor Puma with Systemd will be configured automatically. If you aren't using Capistrano, you'll have to configure Systemd or a tool like Monit or God in order to start and monitor Puma. If you use Capistrano and you're already using tools like Monit or God, you might want to disable them or disable the integration with Systemd. If you are running Consul Democracy on a Debian or Ubuntu server, ensure you have the package policykit-1 installed so the Puma systemd unit works as expected. Due to these changes, your website will be down for a few seconds when upgrading to this version. See also issue #5392 for a possible side effect.

⚠️ We now depend on a specific version of Node.js. If you use Capistrano to deploy, this version will be automatically installed during deployment. If you use a different system to deploy, you might need to take this into account. This also means we no longer support Ubuntu 18.04 (which is no longer supported by Ubuntu either).

⚠️ JavaScript dependencies are now handled using NPM. During development, you'll have to run npm install in order to get these dependencies (just like you run bundle install to get Ruby dependencies). On production, this is done automatically during deployment if you use Capistrano; if you don't use Capistrano to deploy, you might need to take this into account.

⚠️ On production and staging environments, in order to avoid having log files with a size of several gigabytes, the log file will now keep the entries of the current day, and old log entries will automatically be moved to a different file under the same folder. If you were already implementing a similar system, you can either disable the system you were using or disable the changes we've done in pull request #5105.

⚠️ If you've added custom settings to the database, take into account that we no longer display all database settings on the /admin/settings page, so you'll have to add your custom settings by customizing a component under app/components/custom/admin/settings. For examples regarding how to do so, check the components customization documentation.

ℹ️ We've enabled Dependabot in order to make it easier to maintain the project dependencies. Your Consul Democracy fork shouldn't be affected by this change, but if you've enabled Dependabot on your fork in the past, there's a chance Dependabot might be opening dozens of pull requests on your fork. If that's the case, you can disable Dependabot in the "Settings" section of your GitHub's fork, under "Code security and analysis".

ℹ️ Existing installations using a timezone other than Madrid can now add the time_zone entry to the secrets.yml file before upgrading, so, if you have some custom code to set the application timezone, you can remove it and use the secrets.yml file instead. Check pull request #5318 for more information. This step is optional

Don't miss a new consuldemocracy release

NewReleases is sending notifications on new releases.