Skip to content

Releases: decidim/decidim

v0.9.3

18 Apr 07:10
Compare
Choose a tag to compare

Added:

decidim-core: Add context to content parsers #2751

Changed:

Fixed:

  • decidim-proposals: Fix wrong message when creating a proposal private note #2796
  • decidim-core: Fix AuthorEvent when author is missing #2777
  • decidim-core: Fix DefaultActionAuthorizer when options is nil #2753
  • decidim-core: Fix mention parsing to only search users in current organization. \2711
  • decidim-system: Disable recover password for System admins. #2752
  • decidim-core: Don't render notifications if the resource has been deleted. #2746
  • decidim-core: Don't try to send notification emails to deleted users. #2743
  • decidim-core: Fix categories select when missing translations. #2742
  • decidim-core: Fix mention parsing to only search users in current organization. \2711
  • decidim-core: Fix user invitations by generating their nickname. #2783

v0.9.2

09 Feb 14:52
Compare
Choose a tag to compare

Fixed:

  • decidim-core: Fix notifications list when the resource is a User. #2692
  • decidim-core: Fix mention rendering when there's more than one mention. #2691

v0.9.1

09 Feb 14:51
9826ec7
Compare
Choose a tag to compare

Fixed:

  • decidim-participatory_processes: Fix find a process by its ID.#2672
  • decidim-assemblies: Fix find an assembly by its ID.#2672
  • decidim-core: Fix notification mailer when a resource doesn't have an organization. #2661
  • decidim-comments: Fix comment notifications listing. #2652
  • decidim-participatory_processes: Fix editing a process after an error.#2653
  • decidim-assemblies: Fix editing a process after an error.#2653
  • decidim-participatory_processes: Ensure only active processes are shown in the highlighted processes section in the homepage#2682

v0.9.0

05 Feb 16:56
Compare
Choose a tag to compare

Full Changelog
Upgrade notes:

Since uglifier 4.0.0, we need to set harmony: true as options in uglifier. This means
you need to change the following line in config/environments/production.rb:

- config.assets.js_compressor = :uglifier
+ config.assets.js_compressor = Uglifier.new(:harmony => true)

Added

  • decidim-admin: Adds administration interface for highlighted content banner #2572
  • decidim-core: Adds support for highlighted content banner.#2572
  • decidim-core: Added support for content processors. #2491
  • decidim-comments: Added support to mention other users and notify them. #2491
  • decidim: Refactor and DRY Decidim events. #2582
  • decidim-core: Added support for omnipresent banner. #2547
  • decidim-admin: Added administration interface for omnipresent banner. #2547
  • decidim: Rubocop has been upgraded. Ruby version in gem specs now fits with ruby version that rubocop uses. #2548
  • decidim-admin: Notify participatory process followers when a step becomes active. #2544
  • decidim-admin: Notify participatory space followers when a new feature is published. #2515
  • decidim: Add decidim-assemblies to the decidim metagem. #2510
  • decidim-proposals: Notify proposal followers when it gets answered. #2508
  • decidim-proposals: Add private notes by admins to proposal #2490
  • decidim-core: Extends public profile with personal URL and about text. Receive notifications when a profile is updated. \2494
  • decidim-core: Improve Newsletter adding unsubscribe link, see on website, UTM GET codes \2359
  • decidim-verifications: Added action authorizers for authorization handlers. #2438
  • decidim-accountability: Add feature to link projects with results #2467
  • decidim-proposals: Withdrawing of proposals #2289.
  • decidim-proposals: Improve proposals admin panel usability (sorting). #2419
  • decidim-core: Follow users and get notifications about their actions #2401 and #2452.
  • decidim-core: Add unique nicknames for participants. #2360
  • decidim-admin: Let admins officialize certain users from the admin dashboard and specify custom officialization text for them. #2405
  • decidim-core: Public profile page for participants, including name, nickname, follow button, avatar and officialization badge & text. #2391, #2360, #2401 and #2405.
  • decidim-core: Add a way for space manifests to publicize how to retrieve public spaces for a given organization #2384
  • decidim-participatory_processes: Add missing translations for processes #2380
  • decidim-verifications: Let developers specify for how long authorizations are valid. After this space of time passes, authorizations expire and users need to re-authorize #2311
  • decidim-assemblies: Add user roles for assemblies. \2463
  • decidim: Scopes picker that allows hierarchical browsing scope to select them (#2330).
    This picker was used to replace all Select2 based scope selectors. Any module using the Select2 scope selector should replace this:
     <%= form.scopes_select :scope_id, prompt: t("decidim.scopes.global"), remote_path: decidim.scopes_search_path %>
    with this:
    <%= scopes_picker_field form, :scope_id %>
    or this, for filter scopes picker:
    <%= scopes_picker_filter form, :scope_id %>
  • decidim-debates: New Debates component available for all spaces #2506

Changed

  • decidim-comments: Changed the counters to count all comments from all levels instead of only the top-level ones #2551

  • decidim-core: [Breaking change] Changes the participatory space's contracts introducing context. This was done to fix a bug caused by dynamically extending some controllers. #2465

  • decidim-core: Removed horizontal scroll from process navigation bar. #2495

  • decidim-core: Fixes the documentation regarding gems, libraries, plugins and modules. We should always use module, and use decidim-module-<engine_name> nomenclature for repositories naming #2481.

  • decidim-core: Users have notifications enabled by default unless they explicitly uncheck it during registration. #2517

  • decidim-core: Decidim now runs on Ruby 2.5.0 by default, although 2.3+ is expected to work well. #2550

  • decidim-core: translated_attribute helper changes its default behaviour. Previously it was following these steps:

    1. Return the current user locale translation if available.
    2. Fallback to organization default locale in case the user locale translation is not available.
    3. Otherwise return blank.
  • decidim-core: Forced order in conversations (newest on top) and conversation messages (oldest on top). #2520

  • decidim-dev: Decidim now uses Rails' system tests instead of feature tests #2516

    1. Move your tests from spec/features/ to spec/system/
    2. Change type: :feature to type: :system

    Now it follows these steps:

    1. Return the current user locale translation if available.
    2. Fallback to organization default locale in case the user locale translation is not available.
    3. Fallback to the first available translation in case there was no user nor default organization locale translations.
    4. Otherwise return blank.

Fixed:

  • decidim-accountability: Calculate progress average considering all items #2638
  • decidim-proposals: Fix test redirect. #2633
  • decidim-core: Don't allow conversations between the same user. #2630
  • decidim-core: Remove Sendgrid and Heroku references. #2634
  • decidim-core: Notify admins when no valid authorization handlers are available to create managed users. #2631
  • decidim-core: Fix user re-invite. #2626
  • decidim-core: Allow underscores at CTA button path. #2625
  • decidim-core: Fix editing features in assemblies. #2524
  • decidim-core: Fix the texts of 'New Message' email notifications. #2588
  • decidim-admin: Properly save features weight on creation #2499
  • decidim-core: Fix after login redirect. #2321 #2504
    With links or buttons that needs the user to be authorized or signed in you can now add a data-redirect-url attribute to redirect the user after they've signed in so they don't lose context.
  • decidim-core: Prevent many conversation with the same participants at the UI level. #2376
  • decidim-core: Order conversation messages by creation. #2520
  • decidim-admin: Admins no longer being able to impersonate a second time. #2372
  • decidim-admin: User impersonation should only use authorization handlers and not authorization workflows. #2363
  • decidim-budgets: Prevent double-click form submissions #2379
  • decidim-core: Impossible to access conversation page from mobile devices. #2364
  • decidim-core: Update home page stat categories #2221
  • decidim-core: Prevent double-click form submissions [#2379](https://github.com/decidim/dec...
Read more

v0.8.4

30 May 15:02
Compare
Choose a tag to compare

Added:

Changed:

  • decidim-core: [Breaking change] Changes the participatory space's contracts introducing context. This was done to fix a bug caused by dynamically extending some controllers. #2465

Fixed:

  • decidim-accountability: Fixed missing diff.js #2344

v0.8.3

21 Dec 09:28
a7bb41a
Compare
Choose a tag to compare

Changed:

  • decidim-core: Prevent many conversation with the same participants at the UI level. #2376
  • decidim-proposals: Do not allow attachments on proposals edition #2221

Fixed:

  • decidim-core: Impossible to access conversation page from mobile devices. #2364
  • decidim-verifications: Fixed a migration that broke feature permissions. If you already upgraded to 0.8.2 or less, please follow the instructions on the PR #2373

v0.8.2

21 Dec 09:28
8b2d9da
Compare
Choose a tag to compare

Upgrade notes:

Since uglifier 4.0.0, we need to set harmony: true as options in uglifier. This means
you need to change the following line in config/environments/production.rb:

- config.assets.js_compressor = :uglifier
+ config.assets.js_compressor = Uglifier.new(:harmony => true)

Fixed:

  • decidim-verifications: Fix migrations that could fail on existing apps.
  • decidim-core: Force using uglifier 4.0.0. Check out the notes above for more details.

v0.8.1

21 Dec 09:27
33ecde6
Compare
Choose a tag to compare

Fixed:

  • decidim-accountability: [Backport] Fixed missing diff.js #2345

v0.8.0

21 Dec 09:27
Compare
Choose a tag to compare

Full Changelog

Upgrade notes:

Upgrading the gem

You need to alter the following files:

Gemspec file

You must set the decidim version to 0.8.0 or higher in your gemspec.

...
s.add-dependency "decidim-core", "~> 0.8.0"
...

Gemfile

You must adjust the decidim version in your gem file as well. You also need to add the new engine 'decidim-verifications':

...
gem "decidim", "~> 0.8.0"
gem "decidim-verifications"
...

Finally run bundle update to get the required gems updated.

bundle update --full-index

Updating your sources

Factories

Decidim 0.8.0 has migratied from FactoryGirl gem to FactoryBot. Cause this you need to update your factories. Usually the factories.rb file looks like this:

# frozen_string_literal: true

require 'decidim/faker/localized'
require 'decidim/dev'

FactoryGirl.define do
  ...
end

You must replace FactoryGirl by FactoryBot. After the change it should look like this:

# frozen_string_literal: true

require 'decidim/faker/localized'
require 'decidim/dev'

FactoryBot.define do
  ...
end

Spec tests examples

Some examples have changed its name to be more descriptive. In order to have your tests up and running again you must perform the following substitions in the specs folder:

  • include_context "feature" now is include_context "with a feature"

  • include_context "feature admin" now is include_context "when managing a feature as an admin"

Capybara

After I have upgraded to the last version of decidim I have realized that some test that were valid in the previous version now were failing. The reason was the following exception:

RSpec::Core::MultipleExceptionError: unexpected alert open: {Alert text : Are you sure?}

That was caused by a confirmation dialog. In order to get rid of these issue I had to add the following line in the point
where the dialog was supposed to be accepted:

accept_confirm { click_button "Submit" }

Steps to do after migrating your source code

Adapting code for an existing engine

You must remove the external test app and regenerate it:

rm -Rf spec/decidim_dummy_app
bundle exec rails decidim:generate_external_test_app

After regenerating the test app you should recreate the test database as well:

cd spec/decidim_dummy_app
bundle exec rails db:drop
bundle exec rails db:create
bundle exec rails db:migrate
bundle exec rails db:migrate RAILS_ENV=test
bundle exec rails db:seed

Adapting code for an existing Decidim implementation

After updating the decidim gems you should import the new migrations and execute them:

rails decidim:upgraded
rails db:migrate

Additionally you should change the way uglifier is used in your app:

Edit the file config/environments/production.rb and make the following changes:

# Original value
# config.assets.js_compressor = :uglifier

# Enable ES6 support
config.assets.js_compressor = Uglifier.new(harmony: true)

To sum it up

Take a cold beer and enjoy democracy.

Added:

  • decidim-accountability: Add result tracing and version diffing #2206
  • decidim-assemblies: Show promoted assemblies in the homepage #2162
  • decidim-core: Add support for extending the user profile menu. #2193
  • decidim-core: Add view hooks so external engines can extend the homepage and other sections with their own code #2114
  • decidim-core: Private one to one conversations #2186
  • decidim-proposals: Admins can set a minute window after the creation of a proposal in which the proposal can be edited by its author. Once the window has passed, it cannot be edited. #2171
  • decidim-verifications: Support for deferred verification methods that require several steps in order to be granted. #2024

Changed:

  • decidim-core: Only require default locale translations for i18n fields #2204

  • decidim-core: Changed ActiveJob queue name from decidim_events to events for consistency reasons #2229.

  • decidim-admin: Replace url to visit_url moderation admin #2129

  • decidim-core: Hide link to register when user is already logged in #2088

  • decidim-proposals: Change "Already voted" to "Unvote" on button hover #2096

  • decidim-verifications: Authorization forms now must be registered using
    the new API. If you previously had a custom authorization form registered via:

    # config/initializers/decidim.rb
    
    Decidim.configure do |config|
      # ...
    
      config.authorization_handlers = ["Decidim::MyCensusHandler"]
    
      # ...
    end

    You must change it to

    # config/initializers/decidim.rb
    
    Decidim::Verifications.register_workflow(:my_census_handler) do |auth|
      auth.form = "Decidim::MyCensusHandler"
    end

Fixed:

  • decidim-core: Fix foundation datepicker es date format #2278
  • decidim-admin: Do not let newsletters have videos, as emails can't render them #2257
  • decidim-core: Fixes ScopeType relation with Scope #2255
  • decidim-core: Fixes to MigrateUserRolesToParticipatoryProcessRoles: avoid using relations and work with id's directly #2223
  • decidim-core: Embedded videos were not displaying properly #2198
  • decidim-core: Links in emails in development being generated without a port #2237
  • decidim-core: Ensure locale is kept between feature pages #2310
  • decidim-participatory-processes: Fixes active processes and adds all processes filters #2081

v0.7.4

24 Nov 13:34
b5976c0
Compare
Choose a tag to compare

Full Changelog

Fixed:

  • decidim-accountability: Make accountability work with assemblies #2243