decidim 0.25.0 → 0.26.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of decidim might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Rakefile +1 -0
- data/docs/antora.yml +1 -1
- data/docs/modules/customize/pages/authorizations.adoc +26 -0
- data/docs/modules/customize/pages/code.adoc +4 -2
- data/docs/modules/develop/pages/components.adoc +36 -3
- data/docs/modules/develop/pages/{guide_development_with_custom_seed_data.adoc → custom_seed_data.adoc} +1 -1
- data/docs/modules/develop/pages/guide.adoc +5 -8
- data/docs/modules/develop/pages/{guide_git_conventions.adoc → guide_conventions.adoc} +25 -1
- data/docs/modules/develop/pages/guide_development_app.adoc +66 -11
- data/docs/modules/develop/pages/guide_migrate_webpacker_app.adoc +59 -17
- data/docs/modules/develop/pages/guide_migrate_webpacker_module.adoc +11 -0
- data/docs/modules/develop/pages/machine_translations.adoc +8 -2
- data/docs/modules/develop/pages/modules.adoc +109 -6
- data/docs/modules/develop/pages/security.adoc +2 -10
- data/docs/modules/install/pages/manual.adoc +37 -33
- data/lib/decidim/version.rb +1 -1
- data/lib/tasks/common_passwords_tasks.rake +12 -0
- data/package-lock.json +2250 -90
- data/package.json +2 -7
- data/packages/browserslist-config/package.json +1 -1
- data/packages/core/package.json +1 -1
- data/packages/dev/package.json +1 -1
- data/packages/elections/package.json +5 -5
- data/packages/eslint-config/package.json +1 -1
- data/packages/stylelint-config/package.json +1 -1
- data/packages/webpacker/package.json +1 -1
- metadata +49 -50
- data/docs/modules/develop/pages/guide_changelog.adoc +0 -8
- data/docs/modules/develop/pages/guide_semver.adoc +0 -7
@@ -5,15 +5,7 @@
|
|
5
5
|
Until we have the version 1.0 we support only the last minor and major
|
6
6
|
version with security updates.
|
7
7
|
|
8
|
-
|
9
|
-
| Version | Supported
|
10
|
-
|
11
|
-
| 0.21.x
|
12
|
-
| :white_check_mark:
|
13
|
-
|
14
|
-
| \<= 0.20
|
15
|
-
| :x:
|
16
|
-
|===
|
8
|
+
https://github.com/decidim/decidim/blob/doc/security-keyserver/SECURITY.adoc[See the last supported version].
|
17
9
|
|
18
10
|
== Reporting a Vulnerability
|
19
11
|
|
@@ -29,5 +21,5 @@ is `C1BD 8981 D83C 23F9 D419 FE42 149A D0F9 84B9 35C4`. To download our key:
|
|
29
21
|
|
30
22
|
[source,bash]
|
31
23
|
----
|
32
|
-
gpg --keyserver pgp.
|
24
|
+
gpg --keyserver pgp.mit.edu --recv 84B935C4
|
33
25
|
----
|
@@ -4,17 +4,17 @@ In order to develop on decidim, you'll need:
|
|
4
4
|
|
5
5
|
* *Git* 2.15+
|
6
6
|
* *PostgreSQL* 12.7+
|
7
|
-
* *Ruby* 2.7.
|
7
|
+
* *Ruby* 2.7.5
|
8
8
|
* *NodeJS* 16.9.x
|
9
9
|
* *Npm* 7.21.x
|
10
10
|
* *ImageMagick*
|
11
11
|
* *Chrome* browser and https://sites.google.com/a/chromium.org/chromedriver/[chromedriver].
|
12
12
|
|
13
|
-
We're starting with an Ubuntu 20.04 LTS. This is an opinionated guide, so you're free to use the technology that you are most comfortable. If you have any doubts and you're blocked you can go and ask on https://
|
13
|
+
We're starting with an Ubuntu 20.04.2 LTS. This is an opinionated guide, so you're free to use the technology that you are most comfortable. If you have any doubts and you're blocked you can go and ask on https://matrix.to/#/#decidimdevs:matrix.org[our Matrix.org chat room for developers].
|
14
14
|
|
15
15
|
We recommend to have at least some basic proficiency in Ruby on Rails (a good starting point is http://guides.rubyonrails.org/getting_started.html[Getting Started with Ruby on Rails]) and have some knowledge on how gems work.
|
16
16
|
|
17
|
-
In this guide, we'll see how to install rbenv, PostgreSQL and, Decidim, and how to configure everything together.
|
17
|
+
In this guide, we'll see how to install rbenv, PostgreSQL, Node.js and, Decidim, and how to configure everything together for a development environment. Mind that if you want to make a production deployment with real users this guide isn't enough, you should configure a web server (like nginx), backups, monitoring, etc. This is out of the scope of this guide, but you can follow the https://platoniq.github.io/decidim-install/[Platoniq guide].
|
18
18
|
|
19
19
|
== 1. Installing rbenv
|
20
20
|
|
@@ -23,14 +23,14 @@ First, we're going to install https://github.com/rbenv/rbenv[rbenv], for managin
|
|
23
23
|
[source,bash]
|
24
24
|
----
|
25
25
|
sudo apt update
|
26
|
-
sudo apt install -y build-essential git libssl-dev zlib1g-dev
|
26
|
+
sudo apt install -y build-essential curl git libssl-dev zlib1g-dev
|
27
27
|
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
|
28
28
|
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
|
29
29
|
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
|
30
30
|
source ~/.bashrc
|
31
31
|
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
|
32
|
-
rbenv install 2.7.
|
33
|
-
rbenv global 2.7.
|
32
|
+
rbenv install 2.7.5
|
33
|
+
rbenv global 2.7.5
|
34
34
|
----
|
35
35
|
|
36
36
|
== 2. Installing PostgreSQL
|
@@ -45,13 +45,26 @@ sudo -u postgres psql -c "CREATE USER decidim_app WITH SUPERUSER CREATEDB NOCREA
|
|
45
45
|
|
46
46
|
You need to change the password (in this example is "thepassword") and save it somewhere to configure it later with the application.
|
47
47
|
|
48
|
-
== 3. Installing
|
48
|
+
== 3. Installing Node.js
|
49
|
+
|
50
|
+
An important component for Decidim is Node.js and Yarn. With this commands you will install them:
|
51
|
+
|
52
|
+
[source,bash]
|
53
|
+
----
|
54
|
+
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
|
55
|
+
sudo apt-get install -y nodejs
|
56
|
+
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
|
57
|
+
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
|
58
|
+
sudo apt-get update && sudo apt-get install -y yarn
|
59
|
+
----
|
60
|
+
|
61
|
+
== 4. Installing Decidim
|
49
62
|
|
50
63
|
Next, we need to install the `decidim` gem with its dependencies:
|
51
64
|
|
52
65
|
[source,bash]
|
53
66
|
----
|
54
|
-
sudo apt install -y libicu-dev
|
67
|
+
sudo apt install -y libicu-dev imagemagick
|
55
68
|
gem install decidim
|
56
69
|
----
|
57
70
|
|
@@ -71,43 +84,34 @@ git add .
|
|
71
84
|
git commit -m "Initial commit. Generated with Decidim https://decidim.org"
|
72
85
|
----
|
73
86
|
|
74
|
-
==
|
87
|
+
== 5. Configure the database
|
75
88
|
|
76
|
-
Modify your secrets (see `config/database.yml`). For this you can use https://github.com/laserlemon/figaro[figaro], https://github.com/bkeepers/dotenv[dotenv] or https://github.com/rbenv/rbenv-vars[rbenv-vars]. You
|
89
|
+
Modify your secrets (see `config/database.yml`). For this you can use https://github.com/laserlemon/figaro[figaro], https://github.com/bkeepers/dotenv[dotenv] or https://github.com/rbenv/rbenv-vars[rbenv-vars]. You
|
90
|
+
should always be careful of not uploading your plain secrets on git or your version control system. You can also upload the encrypted secrets, using the sekrets gem or if you're on Ruby on Rails greater than 5.1 you can do it natively.
|
77
91
|
|
78
|
-
For
|
92
|
+
For a development environment, and if you are using rbenv, we strongly recommend you to use the https://github.com/rbenv/rbenv-vars[rbenv-vars] to facilitate the edition of ENV vars.
|
79
93
|
|
80
|
-
|
81
|
-
----
|
82
|
-
gem "figaro"
|
83
|
-
----
|
84
|
-
|
85
|
-
Then install it:
|
94
|
+
First you'll need to install the rbenv-vars plugin:
|
86
95
|
|
87
96
|
[source,bash]
|
88
97
|
----
|
89
|
-
|
90
|
-
bundle exec figaro install
|
98
|
+
git clone https://github.com/rbenv/rbenv-vars.git "$(rbenv root)"/plugins/rbenv-vars
|
91
99
|
----
|
92
100
|
|
93
|
-
|
94
|
-
|
95
|
-
[source,yaml]
|
96
|
-
----
|
97
|
-
DATABASE_HOST: localhost
|
98
|
-
DATABASE_USERNAME: decidim_app
|
99
|
-
DATABASE_PASSWORD: thepassword
|
100
|
-
----
|
101
|
-
|
102
|
-
Finally, save it all to git:
|
101
|
+
Then, in **any folder above your decidim generated application**, you need to create a file named `.rbenv-vars` and put your variables there:
|
103
102
|
|
104
103
|
[source,bash]
|
105
104
|
----
|
106
|
-
|
107
|
-
|
105
|
+
cat << EOF > .rbenv-vars
|
106
|
+
DATABASE_HOST=localhost
|
107
|
+
DATABASE_USERNAME=decidim_app
|
108
|
+
DATABASE_PASSWORD=thepassword
|
109
|
+
EOF
|
108
110
|
----
|
109
111
|
|
110
|
-
|
112
|
+
Be careful where you put the `.rbenv-vars` file, as if you put it in the same folder of your decidim generated application, and if you use a version control system (like `git`, which we strongly recommend), then you should ignore this file (ie with the `.gitignore` file).
|
113
|
+
|
114
|
+
== 6. Initializing your app for local development
|
111
115
|
|
112
116
|
We should now create your database:
|
113
117
|
|
@@ -119,7 +123,7 @@ bin/rails db:seed
|
|
119
123
|
|
120
124
|
This will also create some default data so you can start testing the app, with an administrator account with email admin@example.org and password `decidim123456`
|
121
125
|
|
122
|
-
==
|
126
|
+
== 7. Start your web server
|
123
127
|
|
124
128
|
You can now start your server!
|
125
129
|
|
data/lib/decidim/version.rb
CHANGED