ubersicht-ruby-sdk 0.4.0 → 1.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: a35a6ae445e85111a3a1c8617db7fde3cc878a7fdda72180973fb246ba83b8be
4
- data.tar.gz: c6c7c652477afe950897d7130573b5ceceee9ae72501fd1ac31b78e0b0b22a79
3
+ metadata.gz: 5b1208bcf8d9fa5988661f2b466c28348f0c7416d5aa6179cacdf7ad2fc34712
4
+ data.tar.gz: 056d22083c5c69087fae97338614da17bec0d927cd0d0d3c79635c37ac24478f
5
5
  SHA512:
6
- metadata.gz: caa4f559506fafc4c15421f136dcb42a8bb221d3675ac83ae7a5bde70bbdcd635ecdc78781bba7a9c8834037a3d21b8300331c5f4162ccda7ee7c4bf28589137
7
- data.tar.gz: 1437cbb4de27a8020f6605b0f309bd7dd36774f858acbdaeb00a2cf6551c7c69d913622712d78895ffc39455ba6172f697d04670404a06995d8c4bcb92e2b773
6
+ metadata.gz: 0ad871b5e3a408fb64ee2c6cd30544bb9e63309375da430fa357418601b99f1d4181ad1f874779ae296e28dd573ea6c874fdaaf08638e73e4608519771d89973
7
+ data.tar.gz: ef74e20bd8ac2c14eac571c0a15662727f594a1abd1abcde34247b106035e03bc900732a6eb1cacba0b986e48302e30f325a843536bb9025d27e627a5f9fa1b4
@@ -19,7 +19,7 @@ jobs:
19
19
  timeout-minutes: 2
20
20
  strategy:
21
21
  matrix:
22
- ruby-version: ["3.0.2"]
22
+ ruby-version: ["3.3.0"]
23
23
 
24
24
  steps:
25
25
  - uses: actions/checkout@v2
@@ -37,7 +37,7 @@ jobs:
37
37
  timeout-minutes: 2
38
38
  strategy:
39
39
  matrix:
40
- ruby-version: ["3.0.2"]
40
+ ruby-version: ["3.3.0"]
41
41
 
42
42
  steps:
43
43
  - uses: actions/checkout@v2
data/.rubocop.yml CHANGED
@@ -18,7 +18,7 @@ AllCops:
18
18
  - "config.ru"
19
19
  - "vendor/bundle/**/*" # for CI
20
20
  CacheRootDirectory: tmp/cache/rubocop_cache/
21
- TargetRubyVersion: '2.6'
21
+ TargetRubyVersion: '3.0'
22
22
  DefaultFormatter: fuubar
23
23
  NewCops: enable
24
24
 
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 3.3.0
data/.tool-versions ADDED
@@ -0,0 +1 @@
1
+ ruby 3.3.0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  ## Not released
2
2
 
3
+ ## 1.0.0
4
+
5
+ Breaking changes:
6
+ - Update faraday to 2.0
7
+
8
+ ## 0.5.0
9
+
10
+ Breaking changes:
11
+ - [ingestion] Added source argument to `ingest` method
12
+
3
13
  ## 0.4.0
4
14
 
5
15
  Breaking changes:
data/Dockerfile CHANGED
@@ -1,6 +1,6 @@
1
1
  # Dockerfile
2
2
  # Use ruby image to build our own image
3
- FROM ruby:3.0.2
3
+ FROM ruby:3.3.0
4
4
 
5
5
  ARG APP_ROOT=/app
6
6
  ARG BUILD_PACKAGES="\
data/Gemfile CHANGED
@@ -2,3 +2,14 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in ubersicht-ruby-sdk.gemspec
4
4
  gemspec
5
+
6
+ gem 'bundler'
7
+ gem 'pry'
8
+ gem 'rake'
9
+ gem 'rspec'
10
+ gem 'rubocop'
11
+ gem 'rubocop-performance'
12
+ gem 'rubocop-rake'
13
+ gem 'rubocop-rspec'
14
+ gem 'simplecov'
15
+ gem 'webmock'
data/Gemfile.lock CHANGED
@@ -1,95 +1,96 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ubersicht-ruby-sdk (0.4.0)
5
- faraday (>= 0.9.2, < 2)
4
+ ubersicht-ruby-sdk (1.0.0)
5
+ base64 (~> 0.1)
6
+ faraday (~> 2.0)
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
9
10
  specs:
10
- addressable (2.8.0)
11
- public_suffix (>= 2.0.2, < 5.0)
11
+ addressable (2.8.6)
12
+ public_suffix (>= 2.0.2, < 6.0)
12
13
  ast (2.4.2)
14
+ base64 (0.2.0)
15
+ bigdecimal (3.1.6)
13
16
  coderay (1.1.3)
14
- crack (0.4.5)
17
+ crack (1.0.0)
18
+ bigdecimal
15
19
  rexml
16
- diff-lcs (1.4.4)
20
+ diff-lcs (1.5.1)
17
21
  docile (1.4.0)
18
- faraday (1.7.1)
19
- faraday-em_http (~> 1.0)
20
- faraday-em_synchrony (~> 1.0)
21
- faraday-excon (~> 1.1)
22
- faraday-httpclient (~> 1.0.1)
23
- faraday-net_http (~> 1.0)
24
- faraday-net_http_persistent (~> 1.1)
25
- faraday-patron (~> 1.0)
26
- faraday-rack (~> 1.0)
27
- multipart-post (>= 1.2, < 3)
28
- ruby2_keywords (>= 0.0.4)
29
- faraday-em_http (1.0.0)
30
- faraday-em_synchrony (1.0.0)
31
- faraday-excon (1.1.0)
32
- faraday-httpclient (1.0.1)
33
- faraday-net_http (1.0.1)
34
- faraday-net_http_persistent (1.2.0)
35
- faraday-patron (1.0.0)
36
- faraday-rack (1.0.0)
37
- hashdiff (1.0.1)
22
+ faraday (2.9.0)
23
+ faraday-net_http (>= 2.0, < 3.2)
24
+ faraday-net_http (3.1.0)
25
+ net-http
26
+ hashdiff (1.1.0)
27
+ json (2.7.1)
28
+ language_server-protocol (3.17.0.3)
38
29
  method_source (1.0.0)
39
- multipart-post (2.1.1)
40
- parallel (1.20.1)
41
- parser (3.0.2.0)
30
+ net-http (0.4.1)
31
+ uri
32
+ parallel (1.24.0)
33
+ parser (3.3.0.5)
42
34
  ast (~> 2.4.1)
35
+ racc
43
36
  pry (0.14.1)
44
37
  coderay (~> 1.1)
45
38
  method_source (~> 1.0)
46
- public_suffix (4.0.6)
47
- rainbow (3.0.0)
39
+ public_suffix (5.0.4)
40
+ racc (1.7.3)
41
+ rainbow (3.1.1)
48
42
  rake (10.5.0)
49
- regexp_parser (2.1.1)
50
- rexml (3.2.5)
51
- rspec (3.10.0)
52
- rspec-core (~> 3.10.0)
53
- rspec-expectations (~> 3.10.0)
54
- rspec-mocks (~> 3.10.0)
55
- rspec-core (3.10.1)
56
- rspec-support (~> 3.10.0)
57
- rspec-expectations (3.10.1)
43
+ regexp_parser (2.9.0)
44
+ rexml (3.2.6)
45
+ rspec (3.13.0)
46
+ rspec-core (~> 3.13.0)
47
+ rspec-expectations (~> 3.13.0)
48
+ rspec-mocks (~> 3.13.0)
49
+ rspec-core (3.13.0)
50
+ rspec-support (~> 3.13.0)
51
+ rspec-expectations (3.13.0)
58
52
  diff-lcs (>= 1.2.0, < 2.0)
59
- rspec-support (~> 3.10.0)
60
- rspec-mocks (3.10.2)
53
+ rspec-support (~> 3.13.0)
54
+ rspec-mocks (3.13.0)
61
55
  diff-lcs (>= 1.2.0, < 2.0)
62
- rspec-support (~> 3.10.0)
63
- rspec-support (3.10.2)
64
- rubocop (1.20.0)
56
+ rspec-support (~> 3.13.0)
57
+ rspec-support (3.13.1)
58
+ rubocop (1.62.0)
59
+ json (~> 2.3)
60
+ language_server-protocol (>= 3.17.0)
65
61
  parallel (~> 1.10)
66
- parser (>= 3.0.0.0)
62
+ parser (>= 3.3.0.2)
67
63
  rainbow (>= 2.2.2, < 4.0)
68
64
  regexp_parser (>= 1.8, < 3.0)
69
- rexml
70
- rubocop-ast (>= 1.9.1, < 2.0)
65
+ rexml (>= 3.2.5, < 4.0)
66
+ rubocop-ast (>= 1.31.1, < 2.0)
71
67
  ruby-progressbar (~> 1.7)
72
- unicode-display_width (>= 1.4.0, < 3.0)
73
- rubocop-ast (1.11.0)
74
- parser (>= 3.0.1.1)
75
- rubocop-performance (1.11.5)
76
- rubocop (>= 1.7.0, < 2.0)
77
- rubocop-ast (>= 0.4.0)
68
+ unicode-display_width (>= 2.4.0, < 3.0)
69
+ rubocop-ast (1.31.1)
70
+ parser (>= 3.3.0.4)
71
+ rubocop-capybara (2.20.0)
72
+ rubocop (~> 1.41)
73
+ rubocop-factory_bot (2.25.1)
74
+ rubocop (~> 1.41)
75
+ rubocop-performance (1.20.2)
76
+ rubocop (>= 1.48.1, < 2.0)
77
+ rubocop-ast (>= 1.30.0, < 2.0)
78
78
  rubocop-rake (0.6.0)
79
79
  rubocop (~> 1.0)
80
- rubocop-rspec (2.4.0)
81
- rubocop (~> 1.0)
82
- rubocop-ast (>= 1.1.0)
83
- ruby-progressbar (1.11.0)
84
- ruby2_keywords (0.0.5)
85
- simplecov (0.21.2)
80
+ rubocop-rspec (2.27.1)
81
+ rubocop (~> 1.40)
82
+ rubocop-capybara (~> 2.17)
83
+ rubocop-factory_bot (~> 2.22)
84
+ ruby-progressbar (1.13.0)
85
+ simplecov (0.22.0)
86
86
  docile (~> 1.1)
87
87
  simplecov-html (~> 0.11)
88
88
  simplecov_json_formatter (~> 0.1)
89
89
  simplecov-html (0.12.3)
90
- simplecov_json_formatter (0.1.3)
91
- unicode-display_width (2.0.0)
92
- webmock (3.14.0)
90
+ simplecov_json_formatter (0.1.4)
91
+ unicode-display_width (2.5.0)
92
+ uri (0.13.0)
93
+ webmock (3.23.0)
93
94
  addressable (>= 2.8.0)
94
95
  crack (>= 0.3.2)
95
96
  hashdiff (>= 0.4.0, < 2.0.0)
@@ -99,17 +100,17 @@ PLATFORMS
99
100
  x86_64-linux
100
101
 
101
102
  DEPENDENCIES
102
- bundler (~> 2.0)
103
+ bundler
103
104
  pry
104
- rake (~> 10.0)
105
- rspec (~> 3.0)
106
- rubocop (~> 1.0)
107
- rubocop-performance (~> 1.0)
108
- rubocop-rake (~> 0.6)
109
- rubocop-rspec (~> 2.0)
110
- simplecov (~> 0.1)
105
+ rake
106
+ rspec
107
+ rubocop
108
+ rubocop-performance
109
+ rubocop-rake
110
+ rubocop-rspec
111
+ simplecov
111
112
  ubersicht-ruby-sdk!
112
113
  webmock
113
114
 
114
115
  BUNDLED WITH
115
- 2.2.22
116
+ 2.5.3
data/README.md CHANGED
@@ -48,6 +48,7 @@ Parameters:
48
48
  Send event:
49
49
 
50
50
  ```sh
51
+ source = 'dauth'
51
52
  type = 'DeviceBinding'
52
53
 
53
54
  payload = {
@@ -56,11 +57,12 @@ Send event:
56
57
  event_group_id: 'eb2bc8bb-f584-4801-b98c-361a0c2d38f8',
57
58
  event_id: 'ed62d0c1-f2a5-41b7-ab58-24c033eec508'
58
59
  }
59
- client.ingest(type, payload)
60
+ client.ingest(source, type, payload)
60
61
  ```
61
62
 
62
63
  Event attributes:
63
64
 
65
+ * `source` (required) - a source of events, e.g. adyen, dauth
64
66
  * `type` (required) - a process or resource to which event belongs, e.g. DeviceBinding, Authentication
65
67
  * `event_code` - string identifier of a transition
66
68
  * `event_date` - time when event was triggered
data/docker-compose.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  version: "3.8"
2
2
  services:
3
- gem:
3
+ app:
4
4
  container_name: ubersicht_ruby_sdk
5
5
  build:
6
6
  context: .
@@ -22,11 +22,13 @@ module Ubersicht
22
22
  @conn = setup_conn(url, token, &block)
23
23
  end
24
24
 
25
- def ingest(type, payload = {})
25
+ def ingest(source, type, payload = {})
26
+ raise ArgumentError, 'Source cannot be blank' if empty?(source)
26
27
  raise ArgumentError, 'Transaction type cannot be blank' if empty?(type)
27
28
 
28
29
  body = {
29
30
  event: {
31
+ source: source,
30
32
  type: type,
31
33
  payload: payload
32
34
  }
@@ -63,7 +65,7 @@ module Ubersicht
63
65
  'Content-Type' => 'application/json'
64
66
  }
65
67
  Faraday.new(url: url, headers: headers) do |conn|
66
- conn.request :token_auth, token
68
+ conn.request :authorization, 'Token', -> { %(token="#{token}") }
67
69
 
68
70
  yield(conn) if block_given?
69
71
  end
@@ -1,3 +1,3 @@
1
1
  module Ubersicht
2
- VERSION = '0.4.0'.freeze
2
+ VERSION = '1.0.0'.freeze
3
3
  end
data/lib/ubersicht.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'base64'
1
2
  require 'faraday'
2
3
 
3
4
  require 'ubersicht/version'
@@ -15,10 +15,11 @@ Gem::Specification.new do |spec|
15
15
 
16
16
  # spec.metadata["allowed_push_host"] = "rubygems.org"
17
17
 
18
- spec.required_ruby_version = '>= 2.6'
18
+ spec.required_ruby_version = '>= 3.0'
19
19
  spec.metadata['homepage_uri'] = spec.homepage
20
20
  spec.metadata['source_code_uri'] = spec.homepage
21
21
  spec.metadata['changelog_uri'] = 'https://github.com/starfish-codes/ubersicht-ruby-sdk/blob/main/CHANGELOG.md'
22
+ spec.metadata['rubygems_mfa_required'] = 'true'
22
23
 
23
24
  # Specify which files should be added to the gem when it is released.
24
25
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -27,16 +28,6 @@ Gem::Specification.new do |spec|
27
28
  end
28
29
  spec.require_paths = ['lib']
29
30
 
30
- spec.add_dependency 'faraday', ['>= 0.9.2', '< 2']
31
-
32
- spec.add_development_dependency 'bundler', '~> 2.0'
33
- spec.add_development_dependency 'pry'
34
- spec.add_development_dependency 'rake', '~> 10.0'
35
- spec.add_development_dependency 'rspec', '~> 3.0'
36
- spec.add_development_dependency 'rubocop', '~> 1.0'
37
- spec.add_development_dependency 'rubocop-performance', '~> 1.0'
38
- spec.add_development_dependency 'rubocop-rake', '~> 0.6'
39
- spec.add_development_dependency 'rubocop-rspec', '~> 2.0'
40
- spec.add_development_dependency 'simplecov', '~> 0.1'
41
- spec.add_development_dependency 'webmock'
31
+ spec.add_dependency 'base64', '~> 0.1'
32
+ spec.add_dependency 'faraday', '~> 2.0'
42
33
  end
metadata CHANGED
@@ -1,175 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ubersicht-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Starfish Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-11 00:00:00.000000000 Z
11
+ date: 2024-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: faraday
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 0.9.2
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '2'
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- version: 0.9.2
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '2'
33
- - !ruby/object:Gem::Dependency
34
- name: bundler
14
+ name: base64
35
15
  requirement: !ruby/object:Gem::Requirement
36
16
  requirements:
37
17
  - - "~>"
38
18
  - !ruby/object:Gem::Version
39
- version: '2.0'
40
- type: :development
41
- prerelease: false
42
- version_requirements: !ruby/object:Gem::Requirement
43
- requirements:
44
- - - "~>"
45
- - !ruby/object:Gem::Version
46
- version: '2.0'
47
- - !ruby/object:Gem::Dependency
48
- name: pry
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: '0'
61
- - !ruby/object:Gem::Dependency
62
- name: rake
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '10.0'
68
- type: :development
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '10.0'
75
- - !ruby/object:Gem::Dependency
76
- name: rspec
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '3.0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '3.0'
89
- - !ruby/object:Gem::Dependency
90
- name: rubocop
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '1.0'
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '1.0'
103
- - !ruby/object:Gem::Dependency
104
- name: rubocop-performance
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '1.0'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '1.0'
117
- - !ruby/object:Gem::Dependency
118
- name: rubocop-rake
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '0.6'
124
- type: :development
19
+ version: '0.1'
20
+ type: :runtime
125
21
  prerelease: false
126
22
  version_requirements: !ruby/object:Gem::Requirement
127
23
  requirements:
128
24
  - - "~>"
129
25
  - !ruby/object:Gem::Version
130
- version: '0.6'
26
+ version: '0.1'
131
27
  - !ruby/object:Gem::Dependency
132
- name: rubocop-rspec
28
+ name: faraday
133
29
  requirement: !ruby/object:Gem::Requirement
134
30
  requirements:
135
31
  - - "~>"
136
32
  - !ruby/object:Gem::Version
137
33
  version: '2.0'
138
- type: :development
34
+ type: :runtime
139
35
  prerelease: false
140
36
  version_requirements: !ruby/object:Gem::Requirement
141
37
  requirements:
142
38
  - - "~>"
143
39
  - !ruby/object:Gem::Version
144
40
  version: '2.0'
145
- - !ruby/object:Gem::Dependency
146
- name: simplecov
147
- requirement: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - "~>"
150
- - !ruby/object:Gem::Version
151
- version: '0.1'
152
- type: :development
153
- prerelease: false
154
- version_requirements: !ruby/object:Gem::Requirement
155
- requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: '0.1'
159
- - !ruby/object:Gem::Dependency
160
- name: webmock
161
- requirement: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - ">="
164
- - !ruby/object:Gem::Version
165
- version: '0'
166
- type: :development
167
- prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: '0'
173
41
  description: Official Ubersicht SDK. Simplifies integration with Ubersicht API
174
42
  email:
175
43
  - support@starfish.codes
@@ -181,6 +49,8 @@ files:
181
49
  - ".gitignore"
182
50
  - ".rspec"
183
51
  - ".rubocop.yml"
52
+ - ".ruby-version"
53
+ - ".tool-versions"
184
54
  - ".travis.yml"
185
55
  - CHANGELOG.md
186
56
  - Dockerfile
@@ -206,6 +76,7 @@ metadata:
206
76
  homepage_uri: https://github.com/starfish-codes/ubersicht-ruby-sdk
207
77
  source_code_uri: https://github.com/starfish-codes/ubersicht-ruby-sdk
208
78
  changelog_uri: https://github.com/starfish-codes/ubersicht-ruby-sdk/blob/main/CHANGELOG.md
79
+ rubygems_mfa_required: 'true'
209
80
  post_install_message:
210
81
  rdoc_options: []
211
82
  require_paths:
@@ -214,14 +85,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
214
85
  requirements:
215
86
  - - ">="
216
87
  - !ruby/object:Gem::Version
217
- version: '2.6'
88
+ version: '3.0'
218
89
  required_rubygems_version: !ruby/object:Gem::Requirement
219
90
  requirements:
220
91
  - - ">="
221
92
  - !ruby/object:Gem::Version
222
93
  version: '0'
223
94
  requirements: []
224
- rubygems_version: 3.0.3
95
+ rubygems_version: 3.5.4
225
96
  signing_key:
226
97
  specification_version: 4
227
98
  summary: Official Ubersicht SDK