decidim 0.20.0 → 0.23.1.rc1

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.

@@ -1,6 +1,18 @@
1
1
  # Social providers integration
2
2
 
3
- If you want to enable sign up through social providers like Facebook you will need to generate app credentials and write them into the Rails secrets file: `config/secrets.yml`.
3
+ If you want to enable sign up through social providers like Facebook you will need to generate app credentials and store them in one of the following places:
4
+
5
+ - In the Rails secrets file: `config/secrets.yml`. This configuration will be shared by all tenants.
6
+ - In the site configuration (ex. system/organizations/1/edit). This configuration overrides the one in `config/secrets.yml`.
7
+
8
+ Take into account that for a social provider integration appearing in the organization form, it must also be defined in `config/secrets.yml` (but the values are optional). For example:
9
+
10
+ ```yaml
11
+ twitter:
12
+ enabled: false # disabled by default, unless activated in the organization
13
+ api_key:
14
+ api_secret:
15
+ ```
4
16
 
5
17
  ## Facebook
6
18
 
@@ -12,7 +24,7 @@ If you want to enable sign up through social providers like Facebook you will ne
12
24
  1. Validate the captcha.
13
25
  1. Ignore the source code and fill in the URL field with `https://YOUR_DECIDIM_HOST/users/auth/facebook/callback`
14
26
  1. Navigate to the application dashboard and copy the APP_ID and APP_SECRET
15
- 1. Paste credentials in `config/secrets.yml`. Ensure the `enabled` attribute is `true`.
27
+ 1. Paste credentials in `config/secrets.yml` or in the organization configuration. Ensure the `enabled` attribute is `true`.
16
28
 
17
29
  ## Twitter
18
30
 
@@ -24,7 +36,7 @@ If you want to enable sign up through social providers like Facebook you will ne
24
36
  1. Check the 'Developer Agreement' checkbox and click the 'Create your Twitter application' button.
25
37
  1. Navigate to the "Keys and Access Tokens" tab and copy the API_KEY and API_SECRET.
26
38
  1. (Optional) Navigate to the "Permissions" tab and check the "Request email addresses from users" checkbox.
27
- 1. Paste credentials in `config/secrets.yml`. Ensure the `enabled` attribute is `true`.
39
+ 1. Paste credentials in `config/secrets.yml` or in the organization configuration. Ensure the `enabled` attribute is `true`.
28
40
 
29
41
  ## Google
30
42
 
@@ -38,17 +50,17 @@ If you want to enable sign up through social providers like Facebook you will ne
38
50
  1. Click on `Credentials` tab and click on "Create credentials" button. Select `OAuth client ID`.
39
51
  1. Select `Web applications`. Fill in the `Authorized Javascript origins` with your url. Then fill in the `Authorized redirect URIs` with your url and append the path `/users/auth/google_oauth2/callback`.
40
52
  1. Copy the CLIENT_ID AND CLIENT_SECRET
41
- 1. Paste credentials in `config/secrets.yml`. Ensure the `enabled` attribute is `true`.
53
+ 1. Paste credentials in `config/secrets.yml` or in the organization configuration. Ensure the `enabled` attribute is `true`.
42
54
 
43
55
  ## Custom providers
44
56
 
45
- * You can define your own provider, to allow users from other external applications to login into Decidim.
46
- * The provider should implement an [OmniAuth](https://github.com/omniauth/omniauth) strategy.
47
- * You can use any of the [existing OnmiAuth strategies](https://github.com/omniauth/omniauth/wiki/List-of-Strategies).
48
- * Or you can create a new strategy, as the [Decidim OmniAuth Strategy](https://github.com/decidim/omniauth-decidim). This strategy allow users from a Decidim instance to login in other Decidim instance. For example, this strategy is used to allow [decidim.barcelona](https://decidim.barcelona) users to log into [meta.decidim.barcelona](https://meta.decidim.barcelona).
49
- * Once you have defined your strategy, you can configure it in the `config/secrets.yml`, as it is done for the built-in providers.
50
- * By default, Decidim will search in its icons library for an icon named as the provider. You can change this adding an `icon` or `icon_path` attribute to the provider configuration. The `icon` attribute sets the icon name to look for in the Decidim's icons library. The `icon_path` attribute sets the route to the image that should be used.
51
- * Here is an example of the configuration section for the Decidim strategy, using an icon located on the application's `app/assets/images` folder:
57
+ - You can define your own provider, to allow users from other external applications to login into Decidim.
58
+ - The provider should implement an [OmniAuth](https://github.com/omniauth/omniauth) strategy.
59
+ - You can use any of the [existing OnmiAuth strategies](https://github.com/omniauth/omniauth/wiki/List-of-Strategies).
60
+ - Or you can create a new strategy, as the [Decidim OmniAuth Strategy](https://github.com/decidim/omniauth-decidim). This strategy allow users from a Decidim instance to login in other Decidim instance. For example, this strategy is used to allow [decidim.barcelona](https://decidim.barcelona) users to log into [meta.decidim.barcelona](https://meta.decidim.barcelona).
61
+ - Once you have defined your strategy, you can configure it in the `config/secrets.yml` or in the organization configuration, as it is done for the built-in providers.
62
+ - By default, Decidim will search in its icons library for an icon named as the provider. You can change this adding an `icon` or `icon_path` attribute to the provider configuration. The `icon` attribute sets the icon name to look for in the Decidim's icons library. The `icon_path` attribute sets the route to the image that should be used.
63
+ - Here is an example of the configuration section for the Decidim strategy, using an icon located on the application's `app/assets/images` folder:
52
64
 
53
65
  ```yaml
54
66
  decidim:
@@ -58,3 +70,29 @@ If you want to enable sign up through social providers like Facebook you will ne
58
70
  site_url: <%= ENV["DECIDIM_SITE_URL"] %>
59
71
  icon_path: decidim-logo.svg
60
72
  ```
73
+
74
+ - You will need a custom initializer for your provider in order to pass the proper params to the OmniaAuth Builder.
75
+
76
+ An example of custom initializer could be written as:
77
+
78
+ ```ruby
79
+ #config/initializers/omniauth_myprovider.rb
80
+ if Rails.application.secrets.dig(:omniauth, :myprovider).present?
81
+ Rails.application.config.middleware.use OmniAuth::Builder do
82
+ provider(
83
+ :myprovider,
84
+ setup: ->(env) {
85
+ request = Rack::Request.new(env)
86
+ organization = Decidim::Organization.find_by(host: request.host)
87
+ provider_config = organization.enabled_omniauth_providers[:myprovider]
88
+ env["omniauth.strategy"].options[:client_id] = provider_config[:client_id]
89
+ env["omniauth.strategy"].options[:client_secret] = provider_config[:client_secret]
90
+ env["omniauth.strategy"].options[:site] = provider_config[:site_url]
91
+ },
92
+ scope: :public
93
+ )
94
+ end
95
+ end
96
+ ```
97
+
98
+ The custom provider may have different configuration options, instead of `client_id`, `client_secret` and `site`.
@@ -157,7 +157,7 @@ module Decidim
157
157
  end
158
158
 
159
159
  def semver_friendly_version
160
- version.gsub(/\.pre/, "-pre").gsub(/\.dev/, "-dev")
160
+ version.gsub(/\.pre/, "-pre").gsub(/\.dev/, "-dev").gsub(/.rc(\d*)/, "-rc\\1")
161
161
  end
162
162
 
163
163
  def version_file
@@ -3,6 +3,6 @@
3
3
  # This holds the decidim version and the faker version it uses.
4
4
  module Decidim
5
5
  def self.version
6
- "0.20.0"
6
+ "0.23.1.rc1"
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.0
4
+ version: 0.23.1.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josep Jaume Rey Peroy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-01-08 00:00:00.000000000 Z
13
+ date: 2020-11-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: decidim-accountability
@@ -18,280 +18,280 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.20.0
21
+ version: 0.23.1.rc1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.20.0
28
+ version: 0.23.1.rc1
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: decidim-admin
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - '='
34
34
  - !ruby/object:Gem::Version
35
- version: 0.20.0
35
+ version: 0.23.1.rc1
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '='
41
41
  - !ruby/object:Gem::Version
42
- version: 0.20.0
42
+ version: 0.23.1.rc1
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: decidim-api
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - '='
48
48
  - !ruby/object:Gem::Version
49
- version: 0.20.0
49
+ version: 0.23.1.rc1
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
54
  - - '='
55
55
  - !ruby/object:Gem::Version
56
- version: 0.20.0
56
+ version: 0.23.1.rc1
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: decidim-assemblies
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - '='
62
62
  - !ruby/object:Gem::Version
63
- version: 0.20.0
63
+ version: 0.23.1.rc1
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - '='
69
69
  - !ruby/object:Gem::Version
70
- version: 0.20.0
70
+ version: 0.23.1.rc1
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: decidim-blogs
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - '='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.20.0
77
+ version: 0.23.1.rc1
78
78
  type: :runtime
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
- version: 0.20.0
84
+ version: 0.23.1.rc1
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: decidim-budgets
87
87
  requirement: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - '='
90
90
  - !ruby/object:Gem::Version
91
- version: 0.20.0
91
+ version: 0.23.1.rc1
92
92
  type: :runtime
93
93
  prerelease: false
94
94
  version_requirements: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - '='
97
97
  - !ruby/object:Gem::Version
98
- version: 0.20.0
98
+ version: 0.23.1.rc1
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: decidim-comments
101
101
  requirement: !ruby/object:Gem::Requirement
102
102
  requirements:
103
103
  - - '='
104
104
  - !ruby/object:Gem::Version
105
- version: 0.20.0
105
+ version: 0.23.1.rc1
106
106
  type: :runtime
107
107
  prerelease: false
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - '='
111
111
  - !ruby/object:Gem::Version
112
- version: 0.20.0
112
+ version: 0.23.1.rc1
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: decidim-core
115
115
  requirement: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - - '='
118
118
  - !ruby/object:Gem::Version
119
- version: 0.20.0
119
+ version: 0.23.1.rc1
120
120
  type: :runtime
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
123
123
  requirements:
124
124
  - - '='
125
125
  - !ruby/object:Gem::Version
126
- version: 0.20.0
126
+ version: 0.23.1.rc1
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: decidim-debates
129
129
  requirement: !ruby/object:Gem::Requirement
130
130
  requirements:
131
131
  - - '='
132
132
  - !ruby/object:Gem::Version
133
- version: 0.20.0
133
+ version: 0.23.1.rc1
134
134
  type: :runtime
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - '='
139
139
  - !ruby/object:Gem::Version
140
- version: 0.20.0
140
+ version: 0.23.1.rc1
141
141
  - !ruby/object:Gem::Dependency
142
142
  name: decidim-forms
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - '='
146
146
  - !ruby/object:Gem::Version
147
- version: 0.20.0
147
+ version: 0.23.1.rc1
148
148
  type: :runtime
149
149
  prerelease: false
150
150
  version_requirements: !ruby/object:Gem::Requirement
151
151
  requirements:
152
152
  - - '='
153
153
  - !ruby/object:Gem::Version
154
- version: 0.20.0
154
+ version: 0.23.1.rc1
155
155
  - !ruby/object:Gem::Dependency
156
156
  name: decidim-generators
157
157
  requirement: !ruby/object:Gem::Requirement
158
158
  requirements:
159
159
  - - '='
160
160
  - !ruby/object:Gem::Version
161
- version: 0.20.0
161
+ version: 0.23.1.rc1
162
162
  type: :runtime
163
163
  prerelease: false
164
164
  version_requirements: !ruby/object:Gem::Requirement
165
165
  requirements:
166
166
  - - '='
167
167
  - !ruby/object:Gem::Version
168
- version: 0.20.0
168
+ version: 0.23.1.rc1
169
169
  - !ruby/object:Gem::Dependency
170
170
  name: decidim-meetings
171
171
  requirement: !ruby/object:Gem::Requirement
172
172
  requirements:
173
173
  - - '='
174
174
  - !ruby/object:Gem::Version
175
- version: 0.20.0
175
+ version: 0.23.1.rc1
176
176
  type: :runtime
177
177
  prerelease: false
178
178
  version_requirements: !ruby/object:Gem::Requirement
179
179
  requirements:
180
180
  - - '='
181
181
  - !ruby/object:Gem::Version
182
- version: 0.20.0
182
+ version: 0.23.1.rc1
183
183
  - !ruby/object:Gem::Dependency
184
184
  name: decidim-pages
185
185
  requirement: !ruby/object:Gem::Requirement
186
186
  requirements:
187
187
  - - '='
188
188
  - !ruby/object:Gem::Version
189
- version: 0.20.0
189
+ version: 0.23.1.rc1
190
190
  type: :runtime
191
191
  prerelease: false
192
192
  version_requirements: !ruby/object:Gem::Requirement
193
193
  requirements:
194
194
  - - '='
195
195
  - !ruby/object:Gem::Version
196
- version: 0.20.0
196
+ version: 0.23.1.rc1
197
197
  - !ruby/object:Gem::Dependency
198
198
  name: decidim-participatory_processes
199
199
  requirement: !ruby/object:Gem::Requirement
200
200
  requirements:
201
201
  - - '='
202
202
  - !ruby/object:Gem::Version
203
- version: 0.20.0
203
+ version: 0.23.1.rc1
204
204
  type: :runtime
205
205
  prerelease: false
206
206
  version_requirements: !ruby/object:Gem::Requirement
207
207
  requirements:
208
208
  - - '='
209
209
  - !ruby/object:Gem::Version
210
- version: 0.20.0
210
+ version: 0.23.1.rc1
211
211
  - !ruby/object:Gem::Dependency
212
212
  name: decidim-proposals
213
213
  requirement: !ruby/object:Gem::Requirement
214
214
  requirements:
215
215
  - - '='
216
216
  - !ruby/object:Gem::Version
217
- version: 0.20.0
217
+ version: 0.23.1.rc1
218
218
  type: :runtime
219
219
  prerelease: false
220
220
  version_requirements: !ruby/object:Gem::Requirement
221
221
  requirements:
222
222
  - - '='
223
223
  - !ruby/object:Gem::Version
224
- version: 0.20.0
224
+ version: 0.23.1.rc1
225
225
  - !ruby/object:Gem::Dependency
226
226
  name: decidim-sortitions
227
227
  requirement: !ruby/object:Gem::Requirement
228
228
  requirements:
229
229
  - - '='
230
230
  - !ruby/object:Gem::Version
231
- version: 0.20.0
231
+ version: 0.23.1.rc1
232
232
  type: :runtime
233
233
  prerelease: false
234
234
  version_requirements: !ruby/object:Gem::Requirement
235
235
  requirements:
236
236
  - - '='
237
237
  - !ruby/object:Gem::Version
238
- version: 0.20.0
238
+ version: 0.23.1.rc1
239
239
  - !ruby/object:Gem::Dependency
240
240
  name: decidim-surveys
241
241
  requirement: !ruby/object:Gem::Requirement
242
242
  requirements:
243
243
  - - '='
244
244
  - !ruby/object:Gem::Version
245
- version: 0.20.0
245
+ version: 0.23.1.rc1
246
246
  type: :runtime
247
247
  prerelease: false
248
248
  version_requirements: !ruby/object:Gem::Requirement
249
249
  requirements:
250
250
  - - '='
251
251
  - !ruby/object:Gem::Version
252
- version: 0.20.0
252
+ version: 0.23.1.rc1
253
253
  - !ruby/object:Gem::Dependency
254
254
  name: decidim-system
255
255
  requirement: !ruby/object:Gem::Requirement
256
256
  requirements:
257
257
  - - '='
258
258
  - !ruby/object:Gem::Version
259
- version: 0.20.0
259
+ version: 0.23.1.rc1
260
260
  type: :runtime
261
261
  prerelease: false
262
262
  version_requirements: !ruby/object:Gem::Requirement
263
263
  requirements:
264
264
  - - '='
265
265
  - !ruby/object:Gem::Version
266
- version: 0.20.0
266
+ version: 0.23.1.rc1
267
267
  - !ruby/object:Gem::Dependency
268
268
  name: decidim-verifications
269
269
  requirement: !ruby/object:Gem::Requirement
270
270
  requirements:
271
271
  - - '='
272
272
  - !ruby/object:Gem::Version
273
- version: 0.20.0
273
+ version: 0.23.1.rc1
274
274
  type: :runtime
275
275
  prerelease: false
276
276
  version_requirements: !ruby/object:Gem::Requirement
277
277
  requirements:
278
278
  - - '='
279
279
  - !ruby/object:Gem::Version
280
- version: 0.20.0
280
+ version: 0.23.1.rc1
281
281
  - !ruby/object:Gem::Dependency
282
282
  name: bundler
283
283
  requirement: !ruby/object:Gem::Requirement
284
284
  requirements:
285
285
  - - "~>"
286
286
  - !ruby/object:Gem::Version
287
- version: '1.12'
287
+ version: 2.1.2
288
288
  type: :development
289
289
  prerelease: false
290
290
  version_requirements: !ruby/object:Gem::Requirement
291
291
  requirements:
292
292
  - - "~>"
293
293
  - !ruby/object:Gem::Version
294
- version: '1.12'
294
+ version: 2.1.2
295
295
  - !ruby/object:Gem::Dependency
296
296
  name: rake
297
297
  requirement: !ruby/object:Gem::Requirement
@@ -335,18 +335,31 @@ files:
335
335
  - docs/advanced/activity_log.md
336
336
  - docs/advanced/add_authorizable_action.md
337
337
  - docs/advanced/adding_fixtures_aka_dummy_content.md
338
+ - docs/advanced/api.md
338
339
  - docs/advanced/authorship.md
339
340
  - docs/advanced/components.md
340
341
  - docs/advanced/content_blocks.md
341
342
  - docs/advanced/content_processors.md
342
343
  - docs/advanced/data-picker.md
343
344
  - docs/advanced/deploy.md
345
+ - docs/advanced/embeddable.md
346
+ - docs/advanced/endorsable.md
347
+ - docs/advanced/fixing_locales.md
344
348
  - docs/advanced/followers.md
345
349
  - docs/advanced/how_to_create_a_module.md
350
+ - docs/advanced/how_to_fix_metrics.md
351
+ - docs/advanced/machine_translation_service.md
346
352
  - docs/advanced/managing_translations_i18n.md
347
353
  - docs/advanced/metrics.md
348
354
  - docs/advanced/modules.md
355
+ - docs/advanced/newsletter_templates.md
356
+ - docs/advanced/notifications.md
349
357
  - docs/advanced/open-data.md
358
+ - docs/advanced/permissions.md
359
+ - docs/advanced/profiling.md
360
+ - docs/advanced/releases.md
361
+ - docs/advanced/share_tokens.md
362
+ - docs/advanced/templates.md
350
363
  - docs/advanced/testing.md
351
364
  - docs/advanced/tradeoffs.md
352
365
  - docs/advanced/view_hooks.md
@@ -357,6 +370,8 @@ files:
357
370
  - docs/customization/gemfile.md
358
371
  - docs/customization/images.md
359
372
  - docs/customization/javascript.md
373
+ - docs/customization/machine_translations.md
374
+ - docs/customization/maps.md
360
375
  - docs/customization/oauth.md
361
376
  - docs/customization/styles.md
362
377
  - docs/customization/texts.md
@@ -368,8 +383,9 @@ files:
368
383
  - docs/possible_flows_for_proposal.png
369
384
  - docs/services/activejob.md
370
385
  - docs/services/analytics.md
386
+ - docs/services/elections_bulletin_board.md
371
387
  - docs/services/etherpad.md
372
- - docs/services/geocoding.md
388
+ - docs/services/maps.md
373
389
  - docs/services/social_providers.md
374
390
  - lib/decidim.rb
375
391
  - lib/decidim/gem_manager.rb
@@ -386,12 +402,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
386
402
  requirements:
387
403
  - - ">="
388
404
  - !ruby/object:Gem::Version
389
- version: '2.5'
405
+ version: '2.6'
390
406
  required_rubygems_version: !ruby/object:Gem::Requirement
391
407
  requirements:
392
- - - ">="
408
+ - - ">"
393
409
  - !ruby/object:Gem::Version
394
- version: '0'
410
+ version: 1.3.1
395
411
  requirements: []
396
412
  rubygems_version: 3.0.3
397
413
  signing_key: