veryfi 1.0.4 → 3.0.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: 4472be74f0d0747a19409756b9506f2b0d693d1a8efb3e590641e8611f67193a
4
- data.tar.gz: 71a003d3dd55815e8c5afd65f25e8237ad9de70dae7a6225c61f90cc862f7824
3
+ metadata.gz: 14f1c37d38afb96d558a169fb2852e8ca6478f62394a11938b1d78a4b70360cf
4
+ data.tar.gz: 34a3a69b9bdda18ea8535f9756e730a1e1f5b8858b7c13d83b65de5b73ad3b98
5
5
  SHA512:
6
- metadata.gz: 84868b55237428f35b52f6e17fc8dcea553b59ad3e423f73fe697ec49609f5a66799a1eb69ac058561c77230796e24c94b3147e80d8a778e2155d60d9ec59113
7
- data.tar.gz: 6d368b5cb4b1886dc9b9111cc4c76b54532e838ea2ee4d43d04435375b7b77abd5c18db2d2fbd8f39224a3ad7f19835879758c387cbec8145b513e01be06d4e8
6
+ metadata.gz: aba268d701ff10529bc739936600801684febfe9c23ca44b74bdab04c928480d5b4c6fbd25d127f5ef099b93ae1c92089ad43744c5a517f83c6bd038f571a859
7
+ data.tar.gz: 731763e7a7a923d28ed6e30ae37c880343b491e7ad6bf8dd899f9544410f2dfa812970c07218abd773d423958e8ee93358ab203640a2521015b887f56612d2e8
@@ -9,8 +9,6 @@ jobs:
9
9
  runs-on: ubuntu-latest
10
10
 
11
11
  steps:
12
- - name: Configure safe directory
13
- run: sudo git config --global --add safe.directory /github/workspace
14
12
  - uses: actions/checkout@v3
15
13
  - name: Set up Ruby
16
14
  uses: ruby/setup-ruby@v1
@@ -9,7 +9,7 @@ jobs:
9
9
  runs-on: ubuntu-latest
10
10
  strategy:
11
11
  matrix:
12
- ruby_version: [2.6, 2.7]
12
+ ruby_version: [2.7, 3.0, 3.1, 3.2, 3.3, 3.4]
13
13
  env:
14
14
  CI: true
15
15
  steps:
data/.rubocop.yml CHANGED
@@ -1,4 +1,5 @@
1
- require: rubocop-rspec
1
+ plugins:
2
+ - rubocop-rspec
2
3
 
3
4
  AllCops:
4
5
  DisplayCopNames: true
@@ -56,6 +57,9 @@ Lint/RaiseException:
56
57
  Lint/StructNewOverride:
57
58
  Enabled: false
58
59
 
60
+ Lint/RedundantDirGlobSort:
61
+ Enabled: false
62
+
59
63
  Metrics/ParameterLists:
60
64
  Max: 7
61
65
 
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.7.2
1
+ 2.7.8
data/Gemfile.lock CHANGED
@@ -1,76 +1,97 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- veryfi (1.0.4)
4
+ veryfi (3.0.0)
5
5
  base64 (~> 0.1)
6
6
  faraday (>= 1.7, < 3.0)
7
- openssl (>= 2.2, < 3.1)
7
+ openssl (>= 2.2, < 4.1)
8
8
 
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- addressable (2.8.1)
12
+ activesupport (6.1.7.8)
13
+ concurrent-ruby (~> 1.0, >= 1.0.2)
14
+ i18n (>= 1.6, < 2)
15
+ minitest (>= 5.1)
16
+ tzinfo (~> 2.0)
17
+ zeitwerk (~> 2.3)
18
+ addressable (2.8.6)
13
19
  public_suffix (>= 2.0.2, < 6.0)
14
- ast (2.4.2)
15
- base64 (0.2.0)
20
+ ast (2.4.3)
21
+ base64 (0.3.0)
22
+ bigdecimal (3.1.8)
16
23
  bundler-audit (0.9.1)
17
24
  bundler (>= 1.2.0, < 3)
18
25
  thor (~> 1.0)
19
26
  coderay (1.1.3)
20
- crack (0.4.5)
27
+ concurrent-ruby (1.3.3)
28
+ crack (1.0.0)
29
+ bigdecimal
21
30
  rexml
22
- diff-lcs (1.5.0)
31
+ diff-lcs (1.5.1)
23
32
  docile (1.4.0)
24
- faraday (2.7.12)
33
+ faraday (2.8.1)
25
34
  base64
26
35
  faraday-net_http (>= 2.0, < 3.1)
27
36
  ruby2_keywords (>= 0.0.4)
28
37
  faraday-net_http (3.0.2)
29
- hashdiff (1.0.1)
30
- method_source (1.0.0)
31
- openssl (3.0.2)
32
- parallel (1.22.1)
33
- parser (3.2.0.0)
38
+ hashdiff (1.1.0)
39
+ i18n (1.14.5)
40
+ concurrent-ruby (~> 1.0)
41
+ json (2.18.0)
42
+ language_server-protocol (3.17.0.5)
43
+ lint_roller (1.1.0)
44
+ method_source (1.1.0)
45
+ minitest (5.23.1)
46
+ openssl (4.0.0)
47
+ parallel (1.27.0)
48
+ parser (3.3.10.1)
34
49
  ast (~> 2.4.1)
35
- pry (0.14.1)
50
+ racc
51
+ prism (1.8.0)
52
+ pry (0.14.2)
36
53
  coderay (~> 1.1)
37
54
  method_source (~> 1.0)
38
- public_suffix (5.0.1)
55
+ public_suffix (5.0.5)
56
+ racc (1.8.1)
39
57
  rainbow (3.1.1)
40
- rake (13.0.6)
41
- regexp_parser (2.6.1)
42
- rexml (3.2.5)
43
- rspec (3.12.0)
44
- rspec-core (~> 3.12.0)
45
- rspec-expectations (~> 3.12.0)
46
- rspec-mocks (~> 3.12.0)
47
- rspec-core (3.12.0)
48
- rspec-support (~> 3.12.0)
49
- rspec-expectations (3.12.1)
58
+ rake (13.2.1)
59
+ regexp_parser (2.11.3)
60
+ rexml (3.4.4)
61
+ rspec (3.13.0)
62
+ rspec-core (~> 3.13.0)
63
+ rspec-expectations (~> 3.13.0)
64
+ rspec-mocks (~> 3.13.0)
65
+ rspec-core (3.13.0)
66
+ rspec-support (~> 3.13.0)
67
+ rspec-expectations (3.13.0)
50
68
  diff-lcs (>= 1.2.0, < 2.0)
51
- rspec-support (~> 3.12.0)
69
+ rspec-support (~> 3.13.0)
52
70
  rspec-its (1.3.0)
53
71
  rspec-core (>= 3.0.0)
54
72
  rspec-expectations (>= 3.0.0)
55
- rspec-mocks (3.12.1)
73
+ rspec-mocks (3.13.1)
56
74
  diff-lcs (>= 1.2.0, < 2.0)
57
- rspec-support (~> 3.12.0)
58
- rspec-support (3.12.0)
59
- rubocop (0.93.1)
75
+ rspec-support (~> 3.13.0)
76
+ rspec-support (3.13.1)
77
+ rubocop (1.82.1)
78
+ json (~> 2.3)
79
+ language_server-protocol (~> 3.17.0.2)
80
+ lint_roller (~> 1.1.0)
60
81
  parallel (~> 1.10)
61
- parser (>= 2.7.1.5)
82
+ parser (>= 3.3.0.2)
62
83
  rainbow (>= 2.2.2, < 4.0)
63
- regexp_parser (>= 1.8)
64
- rexml
65
- rubocop-ast (>= 0.6.0)
84
+ regexp_parser (>= 2.9.3, < 3.0)
85
+ rubocop-ast (>= 1.48.0, < 2.0)
66
86
  ruby-progressbar (~> 1.7)
67
- unicode-display_width (>= 1.4.0, < 2.0)
68
- rubocop-ast (1.24.1)
69
- parser (>= 3.1.1.0)
70
- rubocop-rspec (1.44.1)
71
- rubocop (~> 0.87)
72
- rubocop-ast (>= 0.7.1)
73
- ruby-progressbar (1.11.0)
87
+ unicode-display_width (>= 2.4.0, < 4.0)
88
+ rubocop-ast (1.49.0)
89
+ parser (>= 3.3.7.2)
90
+ prism (~> 1.7)
91
+ rubocop-rspec (3.9.0)
92
+ lint_roller (~> 1.1)
93
+ rubocop (~> 1.81)
94
+ ruby-progressbar (1.13.0)
74
95
  ruby2_keywords (0.0.5)
75
96
  simplecov (0.22.0)
76
97
  docile (~> 1.1)
@@ -79,28 +100,36 @@ GEM
79
100
  simplecov-badge (2.0.2)
80
101
  simplecov-html (0.12.3)
81
102
  simplecov_json_formatter (0.1.4)
82
- thor (1.2.1)
83
- unicode-display_width (1.8.0)
103
+ thor (1.4.0)
104
+ tzinfo (2.0.6)
105
+ concurrent-ruby (~> 1.0)
106
+ unicode-display_width (3.2.0)
107
+ unicode-emoji (~> 4.1)
108
+ unicode-emoji (4.2.0)
84
109
  vcr (6.1.0)
85
- webmock (3.18.1)
110
+ webmock (3.23.1)
86
111
  addressable (>= 2.8.0)
87
112
  crack (>= 0.3.2)
88
113
  hashdiff (>= 0.4.0, < 2.0.0)
114
+ zeitwerk (2.6.15)
89
115
 
90
116
  PLATFORMS
117
+ arm64-darwin-23
91
118
  ruby
92
119
  x86_64-darwin-19
93
120
  x86_64-linux
94
121
 
95
122
  DEPENDENCIES
96
- bundler (~> 2.2)
123
+ activesupport (~> 6.0)
124
+ bundler (~> 2.4)
97
125
  bundler-audit (~> 0.9)
98
126
  pry (~> 0.14)
99
127
  rake (~> 13.0)
128
+ rexml (~> 3.4.4)
100
129
  rspec (~> 3.9)
101
130
  rspec-its (~> 1.3)
102
- rubocop (~> 0.82)
103
- rubocop-rspec (~> 1.38)
131
+ rubocop (~> 1.65)
132
+ rubocop-rspec (~> 3.0)
104
133
  simplecov (~> 0.21)
105
134
  simplecov-badge (~> 2.0)
106
135
  vcr (~> 6.0)
@@ -108,4 +137,4 @@ DEPENDENCIES
108
137
  webmock (~> 3.14)
109
138
 
110
139
  BUNDLED WITH
111
- 2.2.33
140
+ 2.4.22
data/lib/veryfi/error.rb CHANGED
@@ -1,63 +1,32 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "json"
4
+
3
5
  module Veryfi
4
6
  class Error
5
7
  def self.from_response(status, response)
6
8
  if response.empty?
7
9
  VeryfiError.new(format("%<code>d", code: status))
8
10
  else
9
- get_error(status, response)
10
- end
11
- end
12
-
13
- def self.get_error(status, response)
14
- case status
15
- when 400 then BadRequest
16
- when 401 then UnauthorizedAccessToken
17
- when 404 then ResourceNotFound
18
- when 405 then UnexpectedHTTPMethod
19
- when 409 then AccessLimitReached
20
- when 500 then InternalError
21
- else VeryfiError.new(format("%<code>d, %<message>s", code: status, message: response["error"]))
22
- end
23
- end
24
- class BadRequest < StandardError
25
- def to_s
26
- "400, Bad Request"
27
- end
28
- end
29
-
30
- class UnauthorizedAccessToken < StandardError
31
- def to_s
32
- "401, Unauthorized Access Token"
33
- end
34
- end
35
-
36
- class ResourceNotFound < StandardError
37
- def to_s
38
- "404, Resource not found"
11
+ VeryfiError.new(format("%<code>d, %<message>s", code: status, message: response["error"]), response)
39
12
  end
40
13
  end
41
14
 
42
- class UnexpectedHTTPMethod < StandardError
43
- def to_s
44
- "405, Unexpected HTTP Method"
45
- end
46
- end
15
+ class VeryfiError < StandardError
16
+ attr_reader :message
47
17
 
48
- class AccessLimitReached < StandardError
49
- def to_s
50
- "409, Access Limit Reached"
18
+ def initialize(message = "An error occurred", response = {})
19
+ @message = if response.empty?
20
+ message
21
+ else
22
+ JSON.pretty_generate(response)
23
+ end
24
+ super(message)
51
25
  end
52
- end
53
26
 
54
- class InternalError < StandardError
55
27
  def to_s
56
- "500, Internal Server Error"
28
+ message
57
29
  end
58
30
  end
59
-
60
- class VeryfiError < StandardError
61
- end
62
31
  end
63
32
  end
@@ -92,10 +92,10 @@ module Veryfi
92
92
  def default_headers
93
93
  {
94
94
  "User-Agent": "Ruby Veryfi-Ruby/#{Veryfi::VERSION}",
95
- "Accept": "application/json",
95
+ Accept: "application/json",
96
96
  "Content-Type": "application/json",
97
97
  "Client-Id": client_id,
98
- "Authorization": "apikey #{username}:#{api_key}"
98
+ Authorization: "apikey #{username}:#{api_key}"
99
99
  }
100
100
  end
101
101
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Veryfi
4
- VERSION = "1.0.4"
4
+ VERSION = "3.0.0"
5
5
  end
data/veryfi.gemspec CHANGED
@@ -66,20 +66,22 @@ Gem::Specification.new do |spec|
66
66
  spec.license = "MIT"
67
67
 
68
68
  spec.add_dependency "base64", "~> 0.1"
69
- spec.add_dependency "openssl", ">= 2.2", "< 3.1"
69
+ spec.add_dependency "openssl", ">= 2.2", "< 4.1"
70
70
 
71
71
  spec.add_dependency "faraday", ">= 1.7", "< 3.0"
72
72
 
73
- spec.add_development_dependency "bundler", "~> 2.2"
73
+ spec.add_development_dependency "bundler", "~> 2.4"
74
74
  spec.add_development_dependency "bundler-audit", "~> 0.9"
75
75
  spec.add_development_dependency "pry", "~> 0.14"
76
76
  spec.add_development_dependency "rake", "~> 13.0"
77
77
  spec.add_development_dependency "rspec", "~> 3.9"
78
78
  spec.add_development_dependency "rspec-its", "~> 1.3"
79
- spec.add_development_dependency "rubocop", "~> 0.82"
80
- spec.add_development_dependency "rubocop-rspec", "~> 1.38"
79
+ spec.add_development_dependency "rubocop", "~> 1.65"
80
+ spec.add_development_dependency "rubocop-rspec", "~> 3.0"
81
81
  spec.add_development_dependency "simplecov", "~> 0.21"
82
82
  spec.add_development_dependency "simplecov-badge", "~> 2.0"
83
83
  spec.add_development_dependency "vcr", "~> 6.0"
84
84
  spec.add_development_dependency "webmock", "~> 3.14"
85
+ spec.add_development_dependency "rexml", "~> 3.4.4"
86
+ spec.add_development_dependency "activesupport", "~> 6.0"
85
87
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: veryfi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Veryfi
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-12-18 00:00:00.000000000 Z
11
+ date: 2026-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '2.2'
34
34
  - - "<"
35
35
  - !ruby/object:Gem::Version
36
- version: '3.1'
36
+ version: '4.1'
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '2.2'
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
- version: '3.1'
46
+ version: '4.1'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: faraday
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -70,14 +70,14 @@ dependencies:
70
70
  requirements:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
- version: '2.2'
73
+ version: '2.4'
74
74
  type: :development
75
75
  prerelease: false
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: '2.2'
80
+ version: '2.4'
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: bundler-audit
83
83
  requirement: !ruby/object:Gem::Requirement
@@ -154,28 +154,28 @@ dependencies:
154
154
  requirements:
155
155
  - - "~>"
156
156
  - !ruby/object:Gem::Version
157
- version: '0.82'
157
+ version: '1.65'
158
158
  type: :development
159
159
  prerelease: false
160
160
  version_requirements: !ruby/object:Gem::Requirement
161
161
  requirements:
162
162
  - - "~>"
163
163
  - !ruby/object:Gem::Version
164
- version: '0.82'
164
+ version: '1.65'
165
165
  - !ruby/object:Gem::Dependency
166
166
  name: rubocop-rspec
167
167
  requirement: !ruby/object:Gem::Requirement
168
168
  requirements:
169
169
  - - "~>"
170
170
  - !ruby/object:Gem::Version
171
- version: '1.38'
171
+ version: '3.0'
172
172
  type: :development
173
173
  prerelease: false
174
174
  version_requirements: !ruby/object:Gem::Requirement
175
175
  requirements:
176
176
  - - "~>"
177
177
  - !ruby/object:Gem::Version
178
- version: '1.38'
178
+ version: '3.0'
179
179
  - !ruby/object:Gem::Dependency
180
180
  name: simplecov
181
181
  requirement: !ruby/object:Gem::Requirement
@@ -232,6 +232,34 @@ dependencies:
232
232
  - - "~>"
233
233
  - !ruby/object:Gem::Version
234
234
  version: '3.14'
235
+ - !ruby/object:Gem::Dependency
236
+ name: rexml
237
+ requirement: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - "~>"
240
+ - !ruby/object:Gem::Version
241
+ version: 3.4.4
242
+ type: :development
243
+ prerelease: false
244
+ version_requirements: !ruby/object:Gem::Requirement
245
+ requirements:
246
+ - - "~>"
247
+ - !ruby/object:Gem::Version
248
+ version: 3.4.4
249
+ - !ruby/object:Gem::Dependency
250
+ name: activesupport
251
+ requirement: !ruby/object:Gem::Requirement
252
+ requirements:
253
+ - - "~>"
254
+ - !ruby/object:Gem::Version
255
+ version: '6.0'
256
+ type: :development
257
+ prerelease: false
258
+ version_requirements: !ruby/object:Gem::Requirement
259
+ requirements:
260
+ - - "~>"
261
+ - !ruby/object:Gem::Version
262
+ version: '6.0'
235
263
  description:
236
264
  email:
237
265
  - support@veryfi.com