authorized_persona 0.11.0 → 0.13.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ed24355127dcd3b98f5763e523d65e578fdafb0957d4eebd51655d6c1fac4d5
4
- data.tar.gz: f529b2dd701b51e85257a07e0b451c1c6271e714a622f90620a318d3709970db
3
+ metadata.gz: b2b87fe53b1aeb04823fbbc2ade82a57696887979da81bc9fcff7f3ee6c31289
4
+ data.tar.gz: dacdb3b15a16704ec53c8fb48e1f1271899efc42207dab3bd76d25474af3bdd7
5
5
  SHA512:
6
- metadata.gz: d28d814d7f2238c6b4bfc41eb64713890bc1a5f9bd6917e4a2719df0b80fc615d366936bb3955d61ddb0d2b626ae8dd845395c7967e754b4aefd7c0d486e6287
7
- data.tar.gz: 986de5cc04424cfdfb5662a0ba8114922b46344083e1134510c8ee844f7b5c8220cd92eb094d3e94e431691b32c0068af390a6d38acb8548a08bbfab1f09d3a3
6
+ metadata.gz: 3001a79ccb4fec1438d547bef4f3bf65d18b25b20dbd83163b726c460e79ece50d5984f7a716621f09394ca9a87dbd0094928fc5f4d6edddb9ba4cc6c6712d30
7
+ data.tar.gz: ae091d5c9999749559bd4e9e2961384300446b653851ea3a86cfe1671747b895942e2f7928be50a6e31007317914e6995fa56b2879669a90534c00b6a2b56cb7
@@ -8,14 +8,13 @@ jobs:
8
8
  strategy:
9
9
  fail-fast: false
10
10
  matrix:
11
- ruby: ['3.0', '3.2']
11
+ ruby: ['3.2', '3.3']
12
12
  gemfile:
13
- - gemfiles/rails_6_1.gemfile
14
- - gemfiles/rails_7_0.gemfile
15
- - gemfiles/rails_7_1.gemfile
13
+ - gemfiles/rails_7_2.gemfile
14
+ - gemfiles/rails_8_0.gemfile
16
15
  steps:
17
- - uses: actions/checkout@v2
18
- - uses: ruby/setup-ruby@v1
16
+ - uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
17
+ - uses: ruby/setup-ruby@a4effe49ee8ee5b8b5091268c473a4628afb5651 # v1
19
18
  env:
20
19
  BUNDLE_GEMFILE: ${{ matrix.gemfile }}
21
20
  with:
data/.rubocop.yml CHANGED
@@ -4,5 +4,12 @@ inherit_gem:
4
4
  betterlint:
5
5
  - config/default.yml
6
6
 
7
+ inherit_mode:
8
+ merge:
9
+ - Exclude
10
+
7
11
  AllCops:
8
- TargetRubyVersion: 3.0
12
+ TargetRubyVersion: 3.2
13
+ TargetRailsVersion: 7.2
14
+ Exclude:
15
+ - gemfiles/*.gemfile
data/.rubocop_todo.yml CHANGED
@@ -1,12 +1,12 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config --auto-gen-only-exclude --exclude-limit 99999`
3
- # on 2023-05-09 13:01:46 UTC using RuboCop version 1.50.2.
3
+ # on 2025-01-21 18:35:39 UTC using RuboCop version 1.62.1.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 4
9
+ # Offense count: 6
10
10
  # Configuration parameters: EnforcedStyle, AllowedGems, Include.
11
11
  # SupportedStyles: Gemfile, gems.rb, gemspec
12
12
  # Include: **/*.gemspec, **/Gemfile, **/gems.rb
@@ -15,11 +15,25 @@ Gemspec/DevelopmentDependencies:
15
15
  - 'authorized_persona.gemspec'
16
16
 
17
17
  # Offense count: 1
18
- # Configuration parameters: Severity, Include.
19
- # Include: **/*.gemspec
20
- Gemspec/RequiredRubyVersion:
18
+ # This cop supports safe autocorrection (--autocorrect).
19
+ Layout/ElseAlignment:
21
20
  Exclude:
22
- - 'authorized_persona.gemspec'
21
+ - 'lib/authorized_persona/authorization.rb'
22
+
23
+ # Offense count: 1
24
+ # This cop supports safe autocorrection (--autocorrect).
25
+ # Configuration parameters: EnforcedStyleAlignWith, Severity.
26
+ # SupportedStylesAlignWith: keyword, variable, start_of_line
27
+ Layout/EndAlignment:
28
+ Exclude:
29
+ - 'lib/authorized_persona/authorization.rb'
30
+
31
+ # Offense count: 1
32
+ # This cop supports safe autocorrection (--autocorrect).
33
+ # Configuration parameters: Width, AllowedPatterns.
34
+ Layout/IndentationWidth:
35
+ Exclude:
36
+ - 'lib/authorized_persona/authorization.rb'
23
37
 
24
38
  # Offense count: 1
25
39
  # This cop supports safe autocorrection (--autocorrect).
@@ -30,16 +44,18 @@ Layout/LineLength:
30
44
  - 'lib/authorized_persona/authorization.rb'
31
45
 
32
46
  # Offense count: 2
47
+ # Configuration parameters: AllowedParentClasses.
33
48
  Lint/MissingSuper:
34
49
  Exclude:
35
50
  - 'spec/authorized_persona/authorization_spec.rb'
36
51
  - 'spec/authorized_persona/persona_spec.rb'
37
52
 
38
- # Offense count: 2
53
+ # Offense count: 4
39
54
  # This cop supports safe autocorrection (--autocorrect).
40
55
  Lint/RedundantCopDisableDirective:
41
56
  Exclude:
42
57
  - 'lib/authorized_persona/authorization.rb'
58
+ - 'lib/authorized_persona/persona.rb'
43
59
 
44
60
  # Offense count: 1
45
61
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
@@ -47,12 +63,6 @@ Metrics/PerceivedComplexity:
47
63
  Exclude:
48
64
  - 'lib/authorized_persona/persona.rb'
49
65
 
50
- # Offense count: 2
51
- # This cop supports unsafe autocorrection (--autocorrect-all).
52
- RSpec/BeEq:
53
- Exclude:
54
- - 'spec/authorized_persona/authorization_spec.rb'
55
-
56
66
  # Offense count: 1
57
67
  # This cop supports unsafe autocorrection (--autocorrect-all).
58
68
  Rails/ActiveSupportOnLoad:
@@ -64,20 +74,6 @@ Rails/I18nLocaleTexts:
64
74
  Exclude:
65
75
  - 'lib/authorized_persona/authorization.rb'
66
76
 
67
- # Offense count: 1
68
- # This cop supports unsafe autocorrection (--autocorrect-all).
69
- # Configuration parameters: Include.
70
- # Include: **/Rakefile, **/*.rake
71
- Rails/RakeEnvironment:
72
- Exclude:
73
- - 'Rakefile'
74
-
75
- # Offense count: 1
76
- # This cop supports safe autocorrection (--autocorrect).
77
- Rake/Desc:
78
- Exclude:
79
- - 'Rakefile'
80
-
81
77
  # Offense count: 2
82
78
  # This cop supports unsafe autocorrection (--autocorrect-all).
83
79
  # Configuration parameters: AllowedReceivers.
data/Appraisals CHANGED
@@ -1,16 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- appraise 'rails-6-1' do
4
- gem 'railties', '~> 6.1.0'
5
- gem 'activemodel', '~>6.1.0'
3
+ appraise 'rails-7-2' do
4
+ gem 'railties', '~> 7.2.0'
6
5
  end
7
6
 
8
- appraise 'rails-7-0' do
9
- gem 'railties', '~> 7.0.0'
10
- gem 'activemodel', '~>7.0.0'
11
- end
12
-
13
- appraise 'rails-7-1' do
14
- gem 'railties', '~> 7.1.0'
15
- gem 'activemodel', '~>7.1.0'
7
+ appraise 'rails-8-0' do
8
+ gem 'railties', '~> 8.0.0'
16
9
  end
data/Gemfile CHANGED
@@ -2,3 +2,7 @@ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in authorized_persona.gemspec
4
4
  gemspec
5
+
6
+ gem 'zeitwerk', '~> 2.6.18' # Newer versions require Ruby 3.2
7
+ gem 'nokogiri', '~> 1.17.2' # Newer versions require Ruby 3.2
8
+ gem 'securerandom', '~> 0.3.2' # Newer versions require Ruby 3.1
data/Gemfile.lock CHANGED
@@ -1,155 +1,205 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- authorized_persona (0.11.0)
5
- railties (>= 6.1, < 7.2)
4
+ authorized_persona (0.13.0)
5
+ railties (>= 7.2, < 8.1)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- actionpack (7.0.8.4)
11
- actionview (= 7.0.8.4)
12
- activesupport (= 7.0.8.4)
13
- rack (~> 2.0, >= 2.2.4)
10
+ actionpack (8.0.1)
11
+ actionview (= 8.0.1)
12
+ activesupport (= 8.0.1)
13
+ nokogiri (>= 1.8.5)
14
+ rack (>= 2.2.4)
15
+ rack-session (>= 1.0.1)
14
16
  rack-test (>= 0.6.3)
15
- rails-dom-testing (~> 2.0)
16
- rails-html-sanitizer (~> 1.0, >= 1.2.0)
17
- actionview (7.0.8.4)
18
- activesupport (= 7.0.8.4)
17
+ rails-dom-testing (~> 2.2)
18
+ rails-html-sanitizer (~> 1.6)
19
+ useragent (~> 0.16)
20
+ actionview (8.0.1)
21
+ activesupport (= 8.0.1)
19
22
  builder (~> 3.1)
20
- erubi (~> 1.4)
21
- rails-dom-testing (~> 2.0)
22
- rails-html-sanitizer (~> 1.1, >= 1.2.0)
23
- activemodel (7.0.8.4)
24
- activesupport (= 7.0.8.4)
25
- activesupport (7.0.8.4)
26
- concurrent-ruby (~> 1.0, >= 1.0.2)
23
+ erubi (~> 1.11)
24
+ rails-dom-testing (~> 2.2)
25
+ rails-html-sanitizer (~> 1.6)
26
+ activemodel (8.0.1)
27
+ activesupport (= 8.0.1)
28
+ activesupport (8.0.1)
29
+ base64
30
+ benchmark (>= 0.3)
31
+ bigdecimal
32
+ concurrent-ruby (~> 1.0, >= 1.3.1)
33
+ connection_pool (>= 2.2.5)
34
+ drb
27
35
  i18n (>= 1.6, < 2)
36
+ logger (>= 1.4.2)
28
37
  minitest (>= 5.1)
29
- tzinfo (~> 2.0)
38
+ securerandom (>= 0.3)
39
+ tzinfo (~> 2.0, >= 2.0.5)
40
+ uri (>= 0.13.1)
30
41
  appraisal (2.5.0)
31
42
  bundler
32
43
  rake
33
44
  thor (>= 0.14.0)
34
45
  ast (2.4.2)
35
- betterlint (1.7.0)
36
- rubocop (> 1.0)
37
- rubocop-performance
38
- rubocop-rails
39
- rubocop-rake
40
- rubocop-rspec (>= 2.24)
46
+ base64 (0.2.0)
47
+ benchmark (0.4.0)
48
+ betterlint (1.16.0)
49
+ rubocop (~> 1.62.0)
50
+ rubocop-graphql (~> 1.5.0)
51
+ rubocop-performance (~> 1.21.0)
52
+ rubocop-rails (~> 2.24.0)
53
+ rubocop-rake (~> 0.6.0)
54
+ rubocop-rspec (~> 2.28.0)
55
+ bigdecimal (3.1.9)
41
56
  builder (3.3.0)
42
- concurrent-ruby (1.3.4)
57
+ concurrent-ruby (1.3.5)
58
+ connection_pool (2.5.0)
43
59
  crass (1.0.6)
44
- diff-lcs (1.5.0)
45
- erubi (1.13.0)
46
- i18n (1.14.5)
60
+ date (3.4.1)
61
+ diff-lcs (1.5.1)
62
+ drb (2.2.1)
63
+ erubi (1.13.1)
64
+ i18n (1.14.7)
47
65
  concurrent-ruby (~> 1.0)
48
- json (2.7.1)
66
+ io-console (0.8.0)
67
+ irb (1.15.0)
68
+ pp (>= 0.6.0)
69
+ rdoc (>= 4.0.0)
70
+ reline (>= 0.4.2)
71
+ json (2.9.1)
49
72
  language_server-protocol (3.17.0.3)
50
- loofah (2.22.0)
73
+ logger (1.6.5)
74
+ loofah (2.24.0)
51
75
  crass (~> 1.0.2)
52
76
  nokogiri (>= 1.12.0)
53
- method_source (1.0.0)
54
- minitest (5.25.1)
55
- nokogiri (1.16.7-arm64-darwin)
77
+ minitest (5.25.4)
78
+ nokogiri (1.17.2-arm64-darwin)
56
79
  racc (~> 1.4)
57
- nokogiri (1.16.7-x86_64-darwin)
80
+ nokogiri (1.17.2-x86_64-darwin)
58
81
  racc (~> 1.4)
59
- nokogiri (1.16.7-x86_64-linux)
82
+ nokogiri (1.17.2-x86_64-linux)
60
83
  racc (~> 1.4)
61
- parallel (1.24.0)
62
- parser (3.2.2.4)
84
+ parallel (1.26.3)
85
+ parser (3.3.7.0)
63
86
  ast (~> 2.4.1)
64
87
  racc
88
+ pp (0.6.2)
89
+ prettyprint
90
+ prettyprint (0.2.0)
91
+ psych (5.2.3)
92
+ date
93
+ stringio
65
94
  racc (1.8.1)
66
- rack (2.2.9)
67
- rack-test (2.1.0)
95
+ rack (3.1.8)
96
+ rack-session (2.1.0)
97
+ base64 (>= 0.1.0)
98
+ rack (>= 3.0.0)
99
+ rack-test (2.2.0)
68
100
  rack (>= 1.3)
101
+ rackup (2.2.1)
102
+ rack (>= 3)
69
103
  rails-dom-testing (2.2.0)
70
104
  activesupport (>= 5.0.0)
71
105
  minitest
72
106
  nokogiri (>= 1.6)
73
- rails-html-sanitizer (1.6.0)
107
+ rails-html-sanitizer (1.6.2)
74
108
  loofah (~> 2.21)
75
- nokogiri (~> 1.14)
76
- railties (7.0.8.4)
77
- actionpack (= 7.0.8.4)
78
- activesupport (= 7.0.8.4)
79
- method_source
109
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
110
+ railties (8.0.1)
111
+ actionpack (= 8.0.1)
112
+ activesupport (= 8.0.1)
113
+ irb (~> 1.13)
114
+ rackup (>= 1.0.0)
80
115
  rake (>= 12.2)
81
- thor (~> 1.0)
82
- zeitwerk (~> 2.5)
116
+ thor (~> 1.0, >= 1.2.2)
117
+ zeitwerk (~> 2.6)
83
118
  rainbow (3.1.1)
84
- rake (13.1.0)
85
- regexp_parser (2.8.3)
86
- rexml (3.3.6)
87
- strscan
88
- rspec (3.12.0)
89
- rspec-core (~> 3.12.0)
90
- rspec-expectations (~> 3.12.0)
91
- rspec-mocks (~> 3.12.0)
92
- rspec-core (3.12.2)
93
- rspec-support (~> 3.12.0)
94
- rspec-expectations (3.12.3)
119
+ rake (13.2.1)
120
+ rdoc (6.11.0)
121
+ psych (>= 4.0.0)
122
+ regexp_parser (2.10.0)
123
+ reline (0.6.0)
124
+ io-console (~> 0.5)
125
+ rexml (3.4.0)
126
+ rspec (3.13.0)
127
+ rspec-core (~> 3.13.0)
128
+ rspec-expectations (~> 3.13.0)
129
+ rspec-mocks (~> 3.13.0)
130
+ rspec-core (3.13.2)
131
+ rspec-support (~> 3.13.0)
132
+ rspec-expectations (3.13.3)
95
133
  diff-lcs (>= 1.2.0, < 2.0)
96
- rspec-support (~> 3.12.0)
97
- rspec-mocks (3.12.6)
134
+ rspec-support (~> 3.13.0)
135
+ rspec-mocks (3.13.2)
98
136
  diff-lcs (>= 1.2.0, < 2.0)
99
- rspec-support (~> 3.12.0)
100
- rspec-support (3.12.1)
101
- rubocop (1.59.0)
137
+ rspec-support (~> 3.13.0)
138
+ rspec-support (3.13.2)
139
+ rubocop (1.62.1)
102
140
  json (~> 2.3)
103
141
  language_server-protocol (>= 3.17.0)
104
142
  parallel (~> 1.10)
105
- parser (>= 3.2.2.4)
143
+ parser (>= 3.3.0.2)
106
144
  rainbow (>= 2.2.2, < 4.0)
107
145
  regexp_parser (>= 1.8, < 3.0)
108
146
  rexml (>= 3.2.5, < 4.0)
109
- rubocop-ast (>= 1.30.0, < 2.0)
147
+ rubocop-ast (>= 1.31.1, < 2.0)
110
148
  ruby-progressbar (~> 1.7)
111
149
  unicode-display_width (>= 2.4.0, < 3.0)
112
- rubocop-ast (1.30.0)
113
- parser (>= 3.2.1.0)
114
- rubocop-capybara (2.19.0)
150
+ rubocop-ast (1.37.0)
151
+ parser (>= 3.3.1.0)
152
+ rubocop-capybara (2.21.0)
115
153
  rubocop (~> 1.41)
116
- rubocop-factory_bot (2.24.0)
117
- rubocop (~> 1.33)
118
- rubocop-performance (1.20.1)
154
+ rubocop-factory_bot (2.26.1)
155
+ rubocop (~> 1.61)
156
+ rubocop-graphql (1.5.4)
157
+ rubocop (>= 1.50, < 2)
158
+ rubocop-performance (1.21.1)
119
159
  rubocop (>= 1.48.1, < 2.0)
120
- rubocop-ast (>= 1.30.0, < 2.0)
121
- rubocop-rails (2.23.1)
160
+ rubocop-ast (>= 1.31.1, < 2.0)
161
+ rubocop-rails (2.24.1)
122
162
  activesupport (>= 4.2.0)
123
163
  rack (>= 1.1)
124
164
  rubocop (>= 1.33.0, < 2.0)
125
- rubocop-ast (>= 1.30.0, < 2.0)
165
+ rubocop-ast (>= 1.31.1, < 2.0)
126
166
  rubocop-rake (0.6.0)
127
167
  rubocop (~> 1.0)
128
- rubocop-rspec (2.25.0)
168
+ rubocop-rspec (2.28.0)
129
169
  rubocop (~> 1.40)
130
170
  rubocop-capybara (~> 2.17)
131
171
  rubocop-factory_bot (~> 2.22)
172
+ rubocop-rspec_rails (~> 2.28)
173
+ rubocop-rspec_rails (2.29.1)
174
+ rubocop (~> 1.61)
132
175
  ruby-progressbar (1.13.0)
133
- strscan (3.1.0)
134
- thor (1.3.0)
176
+ securerandom (0.3.2)
177
+ stringio (3.1.2)
178
+ thor (1.3.2)
135
179
  tzinfo (2.0.6)
136
180
  concurrent-ruby (~> 1.0)
137
- unicode-display_width (2.5.0)
138
- zeitwerk (2.6.12)
181
+ unicode-display_width (2.6.0)
182
+ uri (1.0.2)
183
+ useragent (0.16.11)
184
+ zeitwerk (2.6.18)
139
185
 
140
186
  PLATFORMS
141
187
  arm64-darwin-22
188
+ arm64-darwin-23
142
189
  x86_64-darwin-22
143
190
  x86_64-linux
144
191
 
145
192
  DEPENDENCIES
146
- activemodel (>= 6.1, < 7.2)
193
+ activemodel (>= 7.2, < 8.1)
147
194
  appraisal
148
195
  authorized_persona!
149
196
  betterlint
150
197
  bundler
198
+ nokogiri (~> 1.17.2)
151
199
  rake
152
200
  rspec (~> 3.0)
201
+ securerandom (~> 0.3.2)
202
+ zeitwerk (~> 2.6.18)
153
203
 
154
204
  BUNDLED WITH
155
205
  2.4.21
data/Rakefile CHANGED
@@ -1,12 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "bundler/gem_tasks"
4
- require "rspec/core/rake_task"
5
4
 
5
+ require 'rubocop/rake_task'
6
+ RuboCop::RakeTask.new
7
+
8
+ require 'rspec/core'
9
+ require 'rspec/core/rake_task'
6
10
  RSpec::Core::RakeTask.new(:spec)
7
11
 
8
- task :rubocop do
9
- sh 'rubocop'
12
+ def default_task
13
+ if ENV['APPRAISAL_INITIALIZED'] || ENV['CI']
14
+ %i(rubocop spec)
15
+ else
16
+ require 'appraisal'
17
+ Appraisal::Task.new
18
+ %i(appraisal)
19
+ end
10
20
  end
11
21
 
12
- task default: %i(rubocop spec)
22
+ task(:default).clear.enhance(default_task)
@@ -14,7 +14,7 @@ Gem::Specification.new do |spec|
14
14
  spec.description = "AuthorizedPersona is a rails implementation of Betterment's Persona Centric Authorization pattern"
15
15
  spec.homepage = "https://github.com/Betterment/authorized_persona"
16
16
  spec.license = "MIT"
17
- spec.required_ruby_version = ">= 3.0"
17
+ spec.required_ruby_version = ">= 3.2"
18
18
 
19
19
  # Specify which files should be added to the gem when it is released.
20
20
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
26
26
  spec.require_paths = ["lib"]
27
27
 
28
- rails_version_range = [">= 6.1", "< 7.2"]
28
+ rails_version_range = [">= 7.2", "< 8.1"]
29
29
 
30
30
  spec.add_dependency "railties", *rails_version_range
31
31
 
@@ -0,0 +1,10 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "zeitwerk", "~> 2.6.18"
6
+ gem "nokogiri", "~> 1.17.2"
7
+ gem "securerandom", "~> 0.3.2"
8
+ gem "railties", "~> 7.2.0"
9
+
10
+ gemspec path: "../"