Skip to content

0.31 backports - #99

Draft
microstudi wants to merge 162 commits into
release/0.31-stablefrom
0.31-backports
Draft

0.31 backports#99
microstudi wants to merge 162 commits into
release/0.31-stablefrom
0.31-backports

Conversation

commit 6cc62f36552c2ab27d76df75d5d339320f85d9a7
Merge: 31e09c7 82c93ce
Author: Ivan Vergés <ivan@pokecode.net>
Date:   Tue Oct 21 10:37:46 2025 +0200

    Merge branch 'develop' into feature/elections-census-check-before-start

commit 31e09c7
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Tue Oct 21 07:10:47 2025 +0200

    fix linter

commit 85f1a25
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Mon Oct 20 22:08:55 2025 +0200

    Allow users to check if they can vote before the election starts

commit e503bec
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Fri Oct 10 15:36:16 2025 +0200

    xhange controller, add tests

commit 408a174
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Fri Oct 10 14:52:00 2025 +0200

    change text

commit a1ed690
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Fri Oct 10 13:55:51 2025 +0200

    change test

commit 242f0a6
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Fri Oct 10 13:33:59 2025 +0200

    add check before start
commit 0ddc2b4df70d72348aefab4d1ed2d5f4778228a3
Merge: ad11ec8 82c93ce
Author: Ivan Vergés <ivan@pokecode.net>
Date:   Tue Oct 21 10:40:41 2025 +0200

    Merge branch 'develop' into feature/elections-display-question-description

commit ad11ec8
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Tue Oct 21 09:43:20 2025 +0200

    fix title

commit 0136d42
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Tue Oct 21 08:56:39 2025 +0200

    fix tests

commit 2523af2
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Mon Oct 20 14:44:11 2025 +0200

    fix question_description

commit 8dfe2c1
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Thu Oct 9 11:51:33 2025 +0200

    display question description
commit 328e89ce35525d8d3efdbff7a82d01ea24c578f8
Merge: a0d1ea9 8fb3f92
Author: Ivan Vergés <ivan@pokecode.net>
Date:   Tue Oct 21 12:32:05 2025 +0200

    Merge branch 'develop' into feature/elections-max-choices-limit

commit 8fb3f92
Author: Alexandru Emil Lupu <contact@alecslupu.ro>
Date:   Tue Oct 21 12:52:21 2025 +0300

    Fix ActiveRecord::AssociationTypeMismatch error in AddDemocraticQualityStaticPage (decidim#15399)

commit 3f8a04f
Author: Alexandru Emil Lupu <contact@alecslupu.ro>
Date:   Tue Oct 21 11:35:30 2025 +0300

    Fix expiring Cloud Storage tokens (decidim#15005)

    * Fix expiring Cloud Storage tokens

    * Fix spellcheck issues

    * 📝 qlty fmt

    * Add public env variable

    * Revert qlty.toml

    * Revert toml

    * Apply suggestions from code review

    Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>

    * Fix liniting issues

    * Trigger pipeline

    ---------

    Co-authored-by: qltysh[bot] <168846912+qltysh[bot]@users.noreply.github.com>
    Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>

commit a0d1ea9
Merge: e1952f9 e34bce9
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Thu Oct 9 10:11:13 2025 +0200

    Merge branch 'develop' into feature/elections-max-choices-limit

commit e1952f9
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Thu Oct 9 09:54:36 2025 +0200

    fix test

commit 85e53d2
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Wed Oct 8 17:20:28 2025 +0200

    fix test

commit abe20bc
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Wed Oct 8 16:19:11 2025 +0200

    fix linter

commit cf06937
Author: Anna Topalidi <t.opalidisanna@gmail.com>
Date:   Tue Oct 7 15:24:39 2025 +0200

    add max choices limit
@coderabbitai

coderabbitai Bot commented Mar 12, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: b3b001ec-c428-4dfa-978b-1304c03c9880

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch 0.31-backports

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

microstudi and others added 16 commits March 13, 2026 10:47
…ecidim#16159)

* JS import configured to select states based on component

* Route configured for collection on proposal import new

* Imported js entry point of import_proposals.

* Configured a new iteration from select on the component origin within the form

* Created component_states method within the import controller

* Updated some lint issues with the JS script

* Updated import controller to retrieve the origin_id instead of component id

* Moved the proposals_merge resource route.

* Added attribute to select states based on the selected component

* Added selectedStates which parses the selected states based on the component

* Removed validate :valid_states because pluck token wasn't reterving states on its own componet not from that selected

* Fixed the tercary operator on the selected states checkbox

* Aligned the method call on the new form to fix lint error

* not answered missing from the component states maped to be selected from the componet

* Extracted the enforce_permissions method to component_states to parse users who dont have permissions to run the import actions

* clean up of unused methods within the proposal import form

* Updated object that retrieves the states via the proposal_import

* Escaped the html by interpolating the state.token and state.title within the script to encode all handles

* reverted private method of valid_states checking the proposal state and plucking the not_answered state server side validation

* System spec added to check for dynamically added states from origin component

* Updated spec to account for custom states to be detected in drop down

* refactored the proposal import change to import from a stimulus controller

* modified the new page to call the data attribute of the dynamic states

* update to controller based on lint errors

* refactored to use the mordern way of stimulus of calling the controller and an absolute path

* jS docs added to the controller fetching the states dynamically
* add export button

* add serializer

* add specs

* fix sql & export data

---------

Co-authored-by: Ivan Vergés <ivan@pokecode.net>
* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-admin/config/locales/tr-TR.yml Fixed
Comment thread decidim-core/config/locales/de.yml Fixed
decidim-bot and others added 11 commits July 20, 2026 09:24
…n' to v0.31 (decidim#17312)

Co-authored-by: andra-panaite <135139066+andra-panaite@users.noreply.github.com>
Co-authored-by: Alexandru Emil Lupu <contact@alecslupu.ro>
…decidim#17327)

Prompt:

"""
When changing the "Sort by" order in the Comments sections the focus is
lost.
"""

Assisted-By: Kimi K2.6 (OpenCode)
<andreslucena+ai@users.noreply.github.com>

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
…m#17303)

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
…decidim#17324)

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
… v0.31 (decidim#17334)

* Fix responsiveness in "Related documents" content block

* Fix edge case when the title in the card is a really long word

* Implement CodeRabbit feedback

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
…im#17336)

* Make idempotent the "show password" toggle

Prompt:

"""
Fix a11y bug where the password visibility toggle button in the login
modal receives focus twice and the first instance is non-interactive.

Root cause: PasswordTogglerController
(decidim-core/app/packs/src/decidim/controllers/password_toggler/controller.js)
creates a new <button> and .input-group__password wrapper on every
connect(). Because a11y.js moves dialogs to document.body on init,
Stimulus disconnects and reconnects the controller, producing nested
duplicate elements. disconnect() only removes listeners, not DOM.

Changes required:
1. Controller: Make connect() idempotent — detect and reuse an existing
.input-group__password wrapper + button + status text instead of always
creating new ones. Keep disconnect() removing listeners.
2. Tests: Fix the test fixture in password_toggler.test.js to start from
a clean <input type="password"> without pre-rendered wrappers/buttons.
Add a test simulating disconnect() then connect() and asserting only one
button/wrapper exists afterward.
3. System template: Remove the hardcoded .input-group__password wrapper
in decidim-system/app/views/decidim/system/shared/_api_users.html.erb so
the controller owns the structure.

Verification: After the fix, inspecting #loginModal should show exactly
one .input-group__password with one <button> inside it, even after
Stimulus reconnects.
"""

Assisted-By: Kimi K2.6 (OpenCode)
<andreslucena+ai@users.noreply.github.com>

* Fix spec

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
…system form' to v0.31 (decidim#17341)

* Added test case

* Add validations for password mismatch in admins' system form

* Adapt spec to new behavior

* Add specs

Prompt:

"""
Create unit tests for
@decidim-system/app/forms/decidim/system/admin_form.rb
"""

Assisted-By: Kimi K2.6 (OpenCode)
<andreslucena+ai@users.noreply.github.com>

* Apply suggestions from code review



* Fix rubocop offense

---------

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: andra-panaite <andra.panaite@tremend.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
…m#17346)

* Ensure JWT secret exists for

* Fix spelling

Co-authored-by: Antti Hukkanen <antti.hukkanen@mainiotech.fi>
@@ -0,0 +1,19 @@
# frozen_string_literal: true
@@ -0,0 +1,19 @@
# frozen_string_literal: true
@@ -0,0 +1,61 @@
# frozen_string_literal: true
@@ -0,0 +1,61 @@
# frozen_string_literal: true
@@ -0,0 +1,61 @@
# frozen_string_literal: true
@@ -0,0 +1,8 @@
var blogs = document.getElementById('blogs');
@@ -0,0 +1,8 @@
var blogs = document.getElementById('blogs');
@@ -0,0 +1,8 @@
var blogs = document.getElementById('blogs');
@@ -0,0 +1,18 @@
# frozen_string_literal: true
@@ -0,0 +1,18 @@
# frozen_string_literal: true
decidim-bot and others added 16 commits July 24, 2026 10:03
)

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Tom Greenwood <101816158+greenwoodt@users.noreply.github.com>
…im#17366)

* Fix the focus guard in the "QR code" modal

Prompt:

"""
Problem: Opening the QR modal from within the Share modal breaks focus
management. Focus leaks back to hidden elements of the parent Share
modal, and closing the QR modal does not return focus to its opener.

Root cause: FocusGuard only tracks a single dialog. Opening the QR
dialog overwrites the guarded element, so the parent Share modal loses
its focus trap. The QR modal template also lacks the dialog-title-* id
needed for autofocus on open.

Goal: Make FocusGuard support nested (stacked) dialogs so each new
dialog pushes its state and closing pops back to the previous one,
restoring focus to the correct trigger. Ensure QR modals have proper
dialog-title-* ids so focus moves to their heading on open
"""

Assisted-By: Kimi K2.6 (OpenCode)
<andreslucena+ai@users.noreply.github.com>

* Fix eslint offenses

Co-authored-by: Andrés Pereira de Lucena <andreslucena@users.noreply.github.com>
….31 (decidim#17368)

Co-authored-by: Ivan Vergés <ivan@pokecode.net>
…' to v0.31 (decidim#17381)

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Romanian)

[ci skip]

* New translations en.yml (Romanian)

[ci skip]

* New translations en.yml (Romanian)

[ci skip]

* New translations en.yml (Romanian)

[ci skip]

* New translations en.yml (Romanian)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Arabic)

[ci skip]

* New translations en.yml (Arabic)

[ci skip]

* New translations en.yml (Arabic)

[ci skip]

* New translations en.yml (Arabic)

[ci skip]

* New translations en.yml (Arabic)

[ci skip]

* New translations en.yml (Bulgarian)

[ci skip]

* New translations en.yml (Bulgarian)

[ci skip]

* New translations en.yml (Bulgarian)

[ci skip]

* New translations en.yml (Bulgarian)

[ci skip]

* New translations en.yml (Bulgarian)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (German)

[ci skip]

* New translations en.yml (German)

[ci skip]

* New translations en.yml (German)

[ci skip]

* New translations en.yml (German)

[ci skip]

* New translations en.yml (German)

[ci skip]

* New translations en.yml (Greek)

[ci skip]

* New translations en.yml (Greek)

[ci skip]

* New translations en.yml (Greek)

[ci skip]

* New translations en.yml (Greek)

[ci skip]

* New translations en.yml (Greek)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Hungarian)

[ci skip]

* New translations en.yml (Hungarian)

[ci skip]

* New translations en.yml (Hungarian)

[ci skip]

* New translations en.yml (Hungarian)

[ci skip]

* New translations en.yml (Hungarian)

[ci skip]

* New translations en.yml (Italian)

[ci skip]

* New translations en.yml (Italian)

[ci skip]

* New translations en.yml (Italian)

[ci skip]

* New translations en.yml (Italian)

[ci skip]

* New translations en.yml (Italian)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Lithuanian)

[ci skip]

* New translations en.yml (Lithuanian)

[ci skip]

* New translations en.yml (Lithuanian)

[ci skip]

* New translations en.yml (Lithuanian)

[ci skip]

* New translations en.yml (Lithuanian)

[ci skip]

* New translations en.yml (Dutch)

[ci skip]

* New translations en.yml (Dutch)

[ci skip]

* New translations en.yml (Dutch)

[ci skip]

* New translations en.yml (Dutch)

[ci skip]

* New translations en.yml (Dutch)

[ci skip]

* New translations en.yml (Norwegian)

[ci skip]

* New translations en.yml (Norwegian)

[ci skip]

* New translations en.yml (Norwegian)

[ci skip]

* New translations en.yml (Norwegian)

[ci skip]

* New translations en.yml (Norwegian)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Portuguese)

[ci skip]

* New translations en.yml (Portuguese)

[ci skip]

* New translations en.yml (Portuguese)

[ci skip]

* New translations en.yml (Portuguese)

[ci skip]

* New translations en.yml (Portuguese)

[ci skip]

* New translations en.yml (Slovak)

[ci skip]

* New translations en.yml (Slovak)

[ci skip]

* New translations en.yml (Slovak)

[ci skip]

* New translations en.yml (Slovak)

[ci skip]

* New translations en.yml (Slovak)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Swedish)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (Chinese Simplified)

[ci skip]

* New translations en.yml (Chinese Simplified)

[ci skip]

* New translations en.yml (Chinese Simplified)

[ci skip]

* New translations en.yml (Chinese Simplified)

[ci skip]

* New translations en.yml (Chinese Simplified)

[ci skip]

* New translations en.yml (Chinese Traditional)

[ci skip]

* New translations en.yml (Chinese Traditional)

[ci skip]

* New translations en.yml (Chinese Traditional)

[ci skip]

* New translations en.yml (Chinese Traditional)

[ci skip]

* New translations en.yml (Chinese Traditional)

[ci skip]

* New translations en.yml (Galician)

[ci skip]

* New translations en.yml (Galician)

[ci skip]

* New translations en.yml (Galician)

[ci skip]

* New translations en.yml (Galician)

[ci skip]

* New translations en.yml (Galician)

[ci skip]

* New translations en.yml (Icelandic)

[ci skip]

* New translations en.yml (Icelandic)

[ci skip]

* New translations en.yml (Icelandic)

[ci skip]

* New translations en.yml (Icelandic)

[ci skip]

* New translations en.yml (Icelandic)

[ci skip]

* New translations en.yml (Portuguese, Brazilian)

[ci skip]

* New translations en.yml (Portuguese, Brazilian)

[ci skip]

* New translations en.yml (Portuguese, Brazilian)

[ci skip]

* New translations en.yml (Portuguese, Brazilian)

[ci skip]

* New translations en.yml (Portuguese, Brazilian)

[ci skip]

* New translations en.yml (Indonesian)

[ci skip]

* New translations en.yml (Indonesian)

[ci skip]

* New translations en.yml (Indonesian)

[ci skip]

* New translations en.yml (Indonesian)

[ci skip]

* New translations en.yml (Indonesian)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Latvian)

[ci skip]

* New translations en.yml (Latvian)

[ci skip]

* New translations en.yml (Latvian)

[ci skip]

* New translations en.yml (Latvian)

[ci skip]

* New translations en.yml (Latvian)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (Luxembourgish)

[ci skip]

* New translations en.yml (Luxembourgish)

[ci skip]

* New translations en.yml (Luxembourgish)

[ci skip]

* New translations en.yml (Luxembourgish)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Ukrainian with many plural form)

[ci skip]

* New translations en.yml (Ukrainian with many plural form)

[ci skip]

* New translations en.yml (Ukrainian with many plural form)

[ci skip]

* New translations en.yml (Ukrainian with many plural form)

[ci skip]

* New translations en.yml (Ukrainian with many plural form)

[ci skip]

* New translations en.yml (Russian with many plural form)

[ci skip]

* New translations en.yml (Russian with many plural form)

[ci skip]

* New translations en.yml (Russian with many plural form)

[ci skip]

* New translations en.yml (Russian with many plural form)

[ci skip]

* New translations en.yml (Russian with many plural form)

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]

* New translations en.yml (Czech)

[ci skip]
* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (Turkish)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Polish)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (French)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (French, Canada)

[ci skip]

* New translations en.yml (Spanish)

[ci skip]

* New translations en.yml (Catalan)

[ci skip]

* New translations en.yml (Basque)

[ci skip]

* New translations en.yml (Finnish)

[ci skip]

* New translations en.yml (Japanese)

[ci skip]

* New translations en.yml (Spanish, Mexico)

[ci skip]

* New translations en.yml (Spanish, Paraguay)

[ci skip]

* New translations en.yml (Finnish (plain))

[ci skip]

* New translations en.yml (Catalan, Algherese)

[ci skip]
Co-authored-by: Alexandru Emil Lupu <contact@alecslupu.ro>
* Use Ubuntu 24.04 in github actions

* Addional fix for ubuntu 24

* Fix performance workflow

---------

Co-authored-by: Alexandru Emil Lupu <contact@alecslupu.ro>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants