pages_core 3.8.3 → 3.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d7df440ff9a21a26be6a747ecde409240f9cc50f588c71ef591563c21b6be7d7
4
- data.tar.gz: d2c61c64b14c263995c2433229c58c654da98872af751f0254cae17a9e6a3666
3
+ metadata.gz: e2692e584d5de6e4afb27ab99239182658ab625bbfa210a36e66ceabda3e0be2
4
+ data.tar.gz: a56a734875e5727c9b078f596543aea3907be51f35f4952583849ff88f26e5a0
5
5
  SHA512:
6
- metadata.gz: 5bf110e21b5138455f2869e2a0a7eff642210004acc4a3a451bb2481bedf202a5a172606d043cb136cd0296dc85519c3505801857db98e42d91c64f0d4c39f53
7
- data.tar.gz: ab958e4c7a392ec0c34ee18b3e6eab4e61509a32fc5824bca5e10cdc0b450550e3b19e726d817779a3a76a30fbcb88b5657f21b9f8edea9942264135e2478c5b
6
+ metadata.gz: ba7516de39aec3fcff0011afd6a18b25ba03e551447d5c42b7c34ab15c26cdefeb2ff5bf5338af081f445b92583e35ad639cb1a96b0515bbf351b1c70329c4f9
7
+ data.tar.gz: c4cd9ecf532d80e6253d0e05fc79c839fd5b4c29d825cae830339690e1e3cd6b9a779850711cf15b32fdfc0f1dd5bc9ec77607ee8da5278a48fd7ced6a4a201f
data/Rakefile CHANGED
@@ -22,22 +22,22 @@ def write_version(version)
22
22
  end
23
23
 
24
24
  desc "Increment to next patch version"
25
- task "version:patch" do
25
+ task "version:patch" => :environment do
26
26
  write_version(current_version.patch!)
27
27
  end
28
28
 
29
29
  desc "Increment to next minor version"
30
- task "version:minor" do
30
+ task "version:minor" => :environment do
31
31
  write_version(current_version.minor!)
32
32
  end
33
33
 
34
34
  desc "Increment to next major version"
35
- task "version:major" do
35
+ task "version:major" => :environment do
36
36
  write_version(current_version.major!)
37
37
  end
38
38
 
39
39
  desc "Push NPM package"
40
- task "release:npm" do
40
+ task "release:npm" => :environment do
41
41
  system("npm publish --access public")
42
42
  end
43
43
 
data/app/models/role.rb CHANGED
@@ -7,17 +7,15 @@ class Role < ApplicationRecord
7
7
  uniqueness: { scope: :user_id },
8
8
  inclusion: { in: proc { Role.roles.map(&:name) } }
9
9
 
10
+ RoleDefinition = Struct.new(:name, :description, :default)
11
+
10
12
  class << self
11
13
  def define(name, description, default: false)
12
14
  if roles.map(&:name).include?(name.to_s)
13
15
  raise ArgumentError, "Tried to define role :#{role}, " \
14
16
  "but a role by that name already exists"
15
17
  else
16
- roles << OpenStruct.new(
17
- name: name.to_s,
18
- description: description,
19
- default: default
20
- )
18
+ roles << RoleDefinition.new(name.to_s, description, default)
21
19
  end
22
20
  end
23
21
 
@@ -39,21 +37,13 @@ class Role < ApplicationRecord
39
37
  return [] unless File.exist?(config_file)
40
38
 
41
39
  YAML.load_file(config_file).map do |key, opts|
42
- OpenStruct.new(name: key.to_s,
43
- description: opts["description"],
44
- default: opts["default"])
40
+ RoleDefinition.new(key.to_s, opts["description"], opts["default"])
45
41
  end
46
42
  end
47
43
 
48
44
  def default_roles
49
- [
50
- OpenStruct.new(
51
- name: "users", description: "Can manage users", default: false
52
- ),
53
- OpenStruct.new(
54
- name: "pages", description: "Can manage pages", default: true
55
- )
56
- ]
45
+ [RoleDefinition.new("users", "Can manage users", false),
46
+ RoleDefinition.new("pages", "Can manage pages", true)]
57
47
  end
58
48
  end
59
49
 
@@ -16,15 +16,6 @@ module PagesCore
16
16
  disable(&block)
17
17
  PagesCore::StaticCache.handler.sweep!
18
18
  end
19
-
20
- def config
21
- ActiveSupport::Deprecation.warn(
22
- "PagesCore::CacheSweeper.config is no longer used."
23
- )
24
- configuration = OpenStruct.new(patterns: [])
25
- yield configuration if block_given?
26
- configuration
27
- end
28
19
  end
29
20
 
30
21
  self.enabled ||= true
@@ -5,12 +5,14 @@ module PagesCore
5
5
  class Base
6
6
  class InvalidConfigurationKey < StandardError; end
7
7
 
8
+ SettingStruct = Struct.new(:type, :default)
9
+
8
10
  def self.settings
9
11
  @settings ||= {}
10
12
  end
11
13
 
12
14
  def self.setting(key, type, default = nil)
13
- settings[key] = OpenStruct.new(type: type, default: default)
15
+ settings[key] = SettingStruct.new(type, default)
14
16
 
15
17
  define_method key do |*args|
16
18
  args.any? ? set(key, *args) : get(key)
@@ -4,9 +4,8 @@ module PagesCore
4
4
  module PubSub
5
5
  class << self
6
6
  def publish(name, payload = {})
7
- payload_struct = OpenStruct.new(payload)
8
7
  subscribers.select { |s| s.name == name }
9
- .each { |s| s.call(payload_struct) }
8
+ .each { |s| s.call(payload) }
10
9
  end
11
10
 
12
11
  def subscribe(name, &block)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pages_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.3
4
+ version: 3.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Inge Jørgensen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-18 00:00:00.000000000 Z
11
+ date: 2021-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
@@ -95,7 +95,7 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: 3.8.1
97
97
  - !ruby/object:Gem::Dependency
98
- name: shoulda-matchers
98
+ name: semantic
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -109,47 +109,47 @@ dependencies:
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
- name: simplecov
112
+ name: shoulda-matchers
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
- version: 0.17.1
117
+ version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
- version: 0.17.1
124
+ version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: timecop
126
+ name: simplecov
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.8.0
131
+ version: 0.17.1
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 0.8.0
138
+ version: 0.17.1
139
139
  - !ruby/object:Gem::Dependency
140
- name: semantic
140
+ name: timecop
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">="
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0'
145
+ version: 0.8.0
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ">="
150
+ - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '0'
152
+ version: 0.8.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: rails
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -848,7 +848,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
848
848
  - !ruby/object:Gem::Version
849
849
  version: '0'
850
850
  requirements: []
851
- rubygems_version: 3.2.22
851
+ rubygems_version: 3.2.32
852
852
  signing_key:
853
853
  specification_version: 4
854
854
  summary: Pages Core