decidim-cdtb 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/decidim-cdtb.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.description = "A gem to help managing Decidim applications."
13
13
  spec.homepage = "https://github.com/CodiTramuntana/decidim-module-cdtb"
14
14
  spec.license = "MIT"
15
- spec.required_ruby_version = ">= 3.0.7"
15
+ spec.required_ruby_version = ">= 3.1.7"
16
16
 
17
17
  spec.metadata["homepage_uri"] = spec.homepage
18
18
  spec.metadata["source_code_uri"] = spec.homepage
@@ -34,6 +34,5 @@ Gem::Specification.new do |spec|
34
34
  spec.add_dependency "ruby-progressbar"
35
35
 
36
36
  spec.add_development_dependency "decidim-dev", Decidim::Cdtb::DECIDIM_MIN_VERSION
37
- spec.add_development_dependency "faker"
38
37
  spec.metadata["rubygems_mfa_required"] = "true"
39
38
  end
@@ -7,12 +7,15 @@ module Decidim
7
7
  #
8
8
  class NicknameFixer < ::Decidim::Cdtb::Task
9
9
  def initialize
10
+ regex= Decidim::UserBaseEntity::REGEXP_NICKNAME.source.gsub("\\z", "\\Z")
11
+ @query= Decidim::User.where.not("nickname ~ ?", regex)
12
+
10
13
  progress_bar= { title: "Decidim::User" }
11
- super("FIX NICKNAMES", progress_bar: progress_bar)
14
+ super("FIX NICKNAMES", progress_bar:)
12
15
  end
13
16
 
14
17
  def prepare_execution(_ctx)
15
- @num_users= Decidim::User.count
18
+ @num_users= @query.count
16
19
  log_task_info("Checking #{@num_users} users...")
17
20
  end
18
21
 
@@ -23,7 +26,7 @@ module Decidim
23
26
  def do_execution(context)
24
27
  progress_bar= context[:progress_bar]
25
28
 
26
- Decidim::User.find_each do |user|
29
+ @query.find_each do |user|
27
30
  Decidim::User.validators_on(:nickname).each do |validator|
28
31
  validator.validate_each(user, :nickname, user.nickname)
29
32
  end
@@ -23,7 +23,7 @@ module Decidim
23
23
 
24
24
  def initialize
25
25
  progress_bar= { title: self.class.name }
26
- super("FIX YOUTUBE EMBEDS", progress_bar: progress_bar)
26
+ super("FIX YOUTUBE EMBEDS", progress_bar:)
27
27
  end
28
28
 
29
29
  attr_reader :num_fixed
@@ -13,7 +13,7 @@ module Decidim
13
13
  progress_bar= { title: self.class.name }
14
14
  @processed_models = processed_models
15
15
  @content_block_names = content_block_names
16
- super("ADD CONTENT BLOCKS", progress_bar: progress_bar)
16
+ super("ADD CONTENT BLOCKS", progress_bar:)
17
17
  end
18
18
 
19
19
  attr_reader :num_added
@@ -18,7 +18,7 @@ module Decidim
18
18
  log_task_step("Adding #{content_block_name} to #{space.slug}[#{space.id}]")
19
19
  Decidim::ContentBlock.create(
20
20
  decidim_organization_id: space.organization.id,
21
- weight: weight,
21
+ weight:,
22
22
  scope_name: scope_name(space),
23
23
  scoped_resource_id: space.id,
24
24
  manifest_name: content_block_name,
@@ -39,7 +39,7 @@ module Decidim
39
39
  end
40
40
 
41
41
  def current_space_content_blocks(scope_name, organization, scoped_resource_id)
42
- Decidim::ContentBlock.for_scope(scope_name, organization: organization).where(scoped_resource_id: scoped_resource_id)
42
+ Decidim::ContentBlock.for_scope(scope_name, organization:).where(scoped_resource_id:)
43
43
  end
44
44
 
45
45
  def manifest_for(resource)
@@ -12,7 +12,7 @@ module Decidim
12
12
  def initialize(processed_models)
13
13
  progress_bar= { title: self.class.name }
14
14
  @processed_models = processed_models
15
- super("MOVING IMAGES...", progress_bar: progress_bar)
15
+ super("MOVING IMAGES...", progress_bar:)
16
16
  end
17
17
 
18
18
  attr_reader :num_added
@@ -17,7 +17,7 @@ module Decidim
17
17
  def initialize(organization = nil)
18
18
  @organization = organization
19
19
  progress_bar = { title: "Decidim::User" }
20
- super("SPAM DETECTOR", progress_bar: progress_bar)
20
+ super("SPAM DETECTOR", progress_bar:)
21
21
  end
22
22
 
23
23
  def prepare_execution(_ctx)
@@ -11,7 +11,7 @@ module Decidim
11
11
  class LocalSharding < ::Decidim::Cdtb::Task
12
12
  def initialize
13
13
  progress_bar= { title: "ActiveStorage::Blob" }
14
- super("S3 to local: DO SHARDING", progress_bar: progress_bar)
14
+ super("S3 to local: DO SHARDING", progress_bar:)
15
15
  end
16
16
 
17
17
  def prepare_execution(_ctx)
@@ -29,7 +29,7 @@ module Decidim
29
29
  init
30
30
  ctx= {}
31
31
  prepare_execution(ctx)
32
- ctx[:progress_bar]= ProgressBar.create(total: total_items, title: title) if has_progress?
32
+ ctx[:progress_bar]= ProgressBar.create(total: total_items, title:) if has_progress?
33
33
  do_execution(ctx)
34
34
  end_execution(ctx)
35
35
  finish
@@ -8,7 +8,7 @@ module Decidim
8
8
  class UpgradeModulesTask < ::Decidim::Cdtb::Task
9
9
  def initialize
10
10
  progress_bar= { title: "Modules" }
11
- super("UPGRADE MODULES", progress_bar: progress_bar)
11
+ super("UPGRADE MODULES", progress_bar:)
12
12
  end
13
13
 
14
14
  def prepare_execution(_ctx)
@@ -12,7 +12,7 @@ module Decidim
12
12
 
13
13
  def initialize
14
14
  progress_bar= { title: "Modules" }
15
- super("VALIDATE MODULES MIGRATIONS", progress_bar: progress_bar)
15
+ super("VALIDATE MODULES MIGRATIONS", progress_bar:)
16
16
  end
17
17
 
18
18
  def prepare_execution(_ctx)
@@ -11,7 +11,7 @@ module Decidim
11
11
  @csv_path = csv_path
12
12
  @reporter_user_email = reporter_user_email
13
13
  progress_bar = { title: "Decidim::User" }
14
- super("USER REMOVER", progress_bar: progress_bar)
14
+ super("USER REMOVER", progress_bar:)
15
15
  end
16
16
 
17
17
  def prepare_execution(_ctx); end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Decidim
4
4
  module Cdtb
5
- VERSION = "0.4.2"
6
- DECIDIM_MIN_VERSION = ">= 0.27.0"
5
+ VERSION = "0.5.0"
6
+ DECIDIM_MIN_VERSION = ">= 0.28.0"
7
7
  end
8
8
  end
@@ -12,7 +12,7 @@ namespace :cdtb do
12
12
 
13
13
  def with_progress(collection, name:)
14
14
  total = collection.count
15
- progressbar = create_progress_bar(total: total)
15
+ progressbar = create_progress_bar(total:)
16
16
 
17
17
  puts "Anonymizing #{total} #{name}...\n"
18
18
  skip_logs do
@@ -27,7 +27,7 @@ namespace :cdtb do
27
27
  ProgressBar.create(
28
28
  progress_mark: " ",
29
29
  remainder_mark: "\u{FF65}",
30
- total: total,
30
+ total:,
31
31
  format: "%a %e %b\u{15E7}%i %p%% %t"
32
32
  )
33
33
  end
@@ -73,7 +73,7 @@ namespace :cdtb do
73
73
  identity.update_columns(uid: "anonymized-identity-#{identity.id}")
74
74
  end
75
75
 
76
- Decidim::Authorization.where(user: user).find_each do |authorization|
76
+ Decidim::Authorization.where(user:).find_each do |authorization|
77
77
  authorization.update_columns(unique_id: authorization.id)
78
78
  end
79
79
  end
@@ -51,7 +51,7 @@ namespace :cdtb do
51
51
  else
52
52
  Decidim::Organization.find(arguments.first)
53
53
  end
54
- handler.with_context(current_organization: current_organization)
54
+ handler.with_context(current_organization:)
55
55
 
56
56
  credentials= arguments.map { |arg| arg.split(":") }
57
57
  puts "Setting credentials: #{credentials}"
@@ -15,7 +15,7 @@ namespace :cdtb do
15
15
  exit(-1)
16
16
  end
17
17
 
18
- fixer= ::Decidim::Cdtb::Fixes::YouTubeEmbedsFixer.new
18
+ fixer= Decidim::Cdtb::Fixes::YouTubeEmbedsFixer.new
19
19
  fixer.execute!
20
20
  end
21
21
  end
@@ -5,7 +5,7 @@
5
5
  #
6
6
  namespace :cdtb do
7
7
  require "decidim/cdtb/tasks_utils"
8
- include ::Decidim::Cdtb::TasksUtils
8
+ include Decidim::Cdtb::TasksUtils
9
9
 
10
10
  desc <<~EODESC
11
11
  Finds information about the Organization, or Organizations, searching by the :host_term argument ignorecase.
@@ -42,7 +42,7 @@ namespace :cdtb do
42
42
  return "Please, select an option"
43
43
  end
44
44
 
45
- adder = ::Decidim::Cdtb::ParticipatorySpaces::AddContentBlocks.new(processed_models, content_block_names)
45
+ adder = Decidim::Cdtb::ParticipatorySpaces::AddContentBlocks.new(processed_models, content_block_names)
46
46
  adder.execute!
47
47
  end
48
48
 
@@ -81,7 +81,7 @@ namespace :cdtb do
81
81
  return "Please, select an option"
82
82
  end
83
83
 
84
- adder = ::Decidim::Cdtb::ParticipatorySpaces::MoveImagesToContentBlock.new(processed_models)
84
+ adder = Decidim::Cdtb::ParticipatorySpaces::MoveImagesToContentBlock.new(processed_models)
85
85
  adder.execute!
86
86
  end
87
87
  end
data/lib/tasks/spam.rake CHANGED
@@ -6,7 +6,7 @@ namespace :cdtb do
6
6
  task :users, %i[org_id] => :environment do |_task, args|
7
7
  organization = args.org_id.present? ? Decidim::Organization.find(args.org_id) : nil
8
8
 
9
- detector = ::Decidim::Cdtb::Spam::UserSpamDetector.new(organization)
9
+ detector = Decidim::Cdtb::Spam::UserSpamDetector.new(organization)
10
10
  detector.execute!
11
11
  end
12
12
  end
@@ -5,7 +5,7 @@
5
5
  #
6
6
  namespace :cdtb do
7
7
  require "decidim/cdtb/tasks_utils"
8
- include ::Decidim::Cdtb::TasksUtils
8
+ include Decidim::Cdtb::TasksUtils
9
9
  require "decidim/cdtb/storage/local_sharding"
10
10
 
11
11
  # To migrate from S3 to local storage.
@@ -6,13 +6,13 @@
6
6
  namespace :cdtb do
7
7
  namespace :upgrades do
8
8
  require "decidim/cdtb/tasks_utils"
9
- include ::Decidim::Cdtb::TasksUtils
9
+ include Decidim::Cdtb::TasksUtils
10
10
 
11
11
  desc <<~EODESC
12
12
  Validates that migrations from all gems in the Gemfile have been installed.
13
13
  EODESC
14
14
  task validate_migrations: [:environment] do
15
- task= ::Decidim::Cdtb::Upgrades::ValidateMigrationsTask.new
15
+ task= Decidim::Cdtb::Upgrades::ValidateMigrationsTask.new
16
16
  task.execute!
17
17
  raise("There are pending migrations") if task.pending_migrations?
18
18
  end
data/lib/tasks/users.rake CHANGED
@@ -8,7 +8,7 @@ namespace :cdtb do
8
8
  Fix Decidim::User's nicknames.
9
9
  EODESC
10
10
  task fix_nicknames: [:environment] do
11
- fixer= ::Decidim::Cdtb::Fixes::NicknameFixer.new
11
+ fixer= Decidim::Cdtb::Fixes::NicknameFixer.new
12
12
  fixer.execute!
13
13
  end
14
14
 
@@ -16,7 +16,7 @@ namespace :cdtb do
16
16
  Remove Decidim::User's by IDs in a CSV.
17
17
  EODESC
18
18
  task :remove, %i[csv_path reporter_user_email] => [:environment] do |_taks, args|
19
- service = ::Decidim::Cdtb::Users::Remover.new(args.csv_path, args.reporter_user_email)
19
+ service = Decidim::Cdtb::Users::Remover.new(args.csv_path, args.reporter_user_email)
20
20
  service.execute!
21
21
  end
22
22
 
@@ -30,7 +30,7 @@ namespace :cdtb do
30
30
  filename= "admins"
31
31
 
32
32
  if organization_id.present?
33
- query= query.where(organization_id: organization_id)
33
+ query= query.where(organization_id:)
34
34
  filename+= "-org#{organization_id}"
35
35
  end
36
36
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-cdtb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oliver Valls
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-04-24 00:00:00.000000000 Z
11
+ date: 2025-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: decidim
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.27.0
19
+ version: 0.28.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.27.0
26
+ version: 0.28.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rails
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,28 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 0.27.0
61
+ version: 0.28.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: 0.27.0
69
- - !ruby/object:Gem::Dependency
70
- name: faker
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
68
+ version: 0.28.0
83
69
  description: A gem to help managing Decidim applications.
84
70
  email:
85
71
  - 199462+tramuntanal@users.noreply.github.com
@@ -151,14 +137,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
137
  requirements:
152
138
  - - ">="
153
139
  - !ruby/object:Gem::Version
154
- version: 3.0.7
140
+ version: 3.1.7
155
141
  required_rubygems_version: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - ">="
158
144
  - !ruby/object:Gem::Version
159
145
  version: '0'
160
146
  requirements: []
161
- rubygems_version: 3.2.33
147
+ rubygems_version: 3.3.27
162
148
  signing_key:
163
149
  specification_version: 4
164
150
  summary: CodiTramuntana's Decidim Toolbelt (cdtb).