peoplegroup-connectors 0.1.96 → 0.2.2

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: 8bf603701e7dc27da76fcc61f2a8a4047133e7933ea58ec0f2549efb1d709afe
4
- data.tar.gz: 8e600b62d801d284c831fb69fd55430d9322594b355ce5a65fe1cca335c387ff
3
+ metadata.gz: a4d8d6cd4cacabb2a89006ab60d46aa576efd4dee85679d30398631de2d43297
4
+ data.tar.gz: 2dc1e83b223fc8b40e49d8b4ac1a9d9f3926170a769979afb2f6fda8af89db22
5
5
  SHA512:
6
- metadata.gz: abd0763536f8eeeb9769e8ee5c2996e27ea459194613ab3e8bb6db249feb9620fc0a283f01e791adb9ecb04638775dd75ff33a37fbc7a957dfd38dff5d449a76
7
- data.tar.gz: 07d010c5b8c01fbcfa8e2bc84e741280034974ce4e7499027f488c2af4ea0b190bfbffe55a61073a6db3a673d24a5a23c41a4209ed4cac708821c732fe74e174
6
+ metadata.gz: f70842d6c8074b66c8ddbedaacb007c3f46ce8c9e0fd175b300666ae7e173c9e65285d9b4bc81b6fb4f0fef85eacf622c92f96a7b3a44955589cfd82f70423b4
7
+ data.tar.gz: 9953059b487167e0d15ff8e80aababd41d1ee64ca86c0c0067d01ed441a884b8ee6e66d5fd24473037927fcf47d276cfdc864778abeb386e598424cfad5045ed
data/README.md CHANGED
@@ -31,6 +31,8 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
31
31
 
32
32
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
33
33
 
34
+ For local development and manual testing, copy the contents of the `.env.example` file to a new file called `.env` and fill-in the environment variable values. You will then be able to run a REPL by running `bundle exec bin/console` from the root of the repository.
35
+
34
36
  ## Contributing and Code of Conduct
35
37
 
36
38
  Bug reports and pull requests are welcome on GitLab at https://gitlab.com/gitlab-com/people-group/peopleops-eng/connectors-gem. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
@@ -15,16 +15,21 @@ module PeopleGroup
15
15
  end
16
16
 
17
17
  def get_employee_details(id)
18
- employees.find { |emp| emp['id'] == id.to_s }
18
+ employees.find { |emp| emp['employeeNumber'] == id.to_s }
19
19
  end
20
20
  alias_method :get_team_member_details, :get_employee_details
21
21
 
22
22
  def get_employee_details!(id)
23
23
  employee_details = get_employee_details(id)
24
- raise EmployeeNotFoundError, "No employee found with id #{id}" if employee_details.nil?
24
+ raise EmployeeNotFoundError, "No team member found with employee number #{id}" if employee_details.nil?
25
25
 
26
26
  employee_details
27
27
  end
28
+ alias_method :get_team_member_details!, :get_employee_details!
29
+
30
+ def bamboo_id!(employee_number)
31
+ get_team_member_details!(employee_number)['id']
32
+ end
28
33
 
29
34
  def search_employee(name)
30
35
  return if name.empty?
@@ -109,7 +114,7 @@ module PeopleGroup
109
114
 
110
115
  def people_managers_in_functions(departments: [], divisions: [])
111
116
  active_and_current_team_members.select do |team_member|
112
- (departments.include?(team_member['department']) || divisions.include?(team_member['division'])) && has_direct_reports?(team_member['id'])
117
+ (departments.include?(team_member['department']) || divisions.include?(team_member['division'])) && has_direct_reports?(team_member['employeeNumber'])
113
118
  end
114
119
  end
115
120
 
@@ -119,17 +124,17 @@ module PeopleGroup
119
124
  while direct_reports_to_check.present?
120
125
  current_node = direct_reports_to_check.shift
121
126
  reports_to_return << current_node
122
- direct_reports_to_check.concat(direct_reports_for(current_node['id']))
127
+ direct_reports_to_check.concat(direct_reports_for(current_node['employeeNumber']))
123
128
  end
124
129
  reports_to_return
125
130
  end
126
131
 
127
132
  def direct_reports_for(id)
128
- active_and_current_team_members.select { |team_member| team_member['supervisorEId'] == id.to_s }
133
+ active_and_current_team_members.select { |team_member| team_member['supervisorId'] == id.to_s }
129
134
  end
130
135
 
131
136
  def has_direct_reports?(id)
132
- active_and_current_team_members.any? { |team_member| team_member['supervisorEId'] == id.to_s }
137
+ active_and_current_team_members.any? { |team_member| team_member['supervisorId'] == id.to_s }
133
138
  end
134
139
 
135
140
  def reports_in_departments(departments, exclude_email)
@@ -147,19 +152,30 @@ module PeopleGroup
147
152
  end
148
153
 
149
154
  def create_employee(employee_details_hash)
155
+ invalidate_cache
150
156
  retry_on_error { @client.employee.add(employee_details_hash) }
151
157
  end
158
+ alias_method :create_team_member, :create_employee
152
159
 
153
- def update_employee(employee_id, employee_details_hash)
154
- retry_on_error { @client.employee.update(employee_id, employee_details_hash) }
160
+ def update_employee(employee_number, employee_details_hash)
161
+ id = bamboo_id!(employee_number)
162
+ invalidate_cache
163
+ retry_on_error { @client.employee.update(id, employee_details_hash) }
155
164
  end
165
+ alias_method :update_team_member, :update_employee
156
166
 
157
167
  def departments
158
- meta_fields.detect { |res| res['name'] == 'Department' }.dig('options').each_with_object([]) { |option, array| array << option['name'] if option['archived'] == 'no' } || []
168
+ meta_fields
169
+ .detect { |res| res['name'] == 'Department' }
170
+ .dig('options')
171
+ .each_with_object([]) { |option, array| array << option['name'] if option['archived'] == 'no' } || []
159
172
  end
160
173
 
161
174
  def divisions
162
- meta_fields.detect { |res| res['name'] == 'Division' }.dig('options').each_with_object([]) { |option, array| array << option['name'] if option['archived'] == 'no' } || []
175
+ meta_fields
176
+ .detect { |res| res['name'] == 'Division' }
177
+ .dig('options')
178
+ .each_with_object([]) { |option, array| array << option['name'] if option['archived'] == 'no' } || []
163
179
  end
164
180
 
165
181
  def locations
@@ -199,30 +215,36 @@ module PeopleGroup
199
215
  end
200
216
  alias_method :active_and_current_team_members, :active_and_current_employees
201
217
 
202
- def add_stock_options(employee_id, data)
203
- retry_on_error { @client.employee.add_table_row(employee_id, 'customEquity', data) }
218
+ def add_stock_options(employee_number, data)
219
+ id = bamboo_id!(employee_number)
220
+ retry_on_error { @client.employee.add_table_row(id, 'customEquity', data) }
204
221
  end
205
222
 
206
- def stock_options_data(employee_id)
207
- retry_on_error { @client.employee.table_data(employee_id, 'customEquity') }
223
+ def stock_options_data(employee_number)
224
+ id = bamboo_id!(employee_number)
225
+ retry_on_error { @client.employee.table_data(id, 'customEquity') }
208
226
  end
209
227
 
210
- def add_job_details(employee_id, data)
211
- retry_on_error { @client.employee.add_table_row(employee_id, 'jobInfo', data) }
228
+ def add_job_details(employee_number, data)
229
+ id = bamboo_id!(employee_number)
230
+ retry_on_error { @client.employee.add_table_row(id, 'jobInfo', data) }
212
231
  end
213
232
 
214
- def update_job_details(employee_id, data)
215
- current_data = job_details(employee_id) # it should only be one row as we just created this user
233
+ def update_job_details(employee_number, data)
234
+ id = bamboo_id!(employee_number)
235
+ current_data = job_details(employee_number) # it should only be one row as we just created this user
216
236
  row_id = current_data.first.dig('id')
217
- retry_on_error { @client.employee.update_table_row(employee_id, 'jobInfo', row_id, data) }
237
+ retry_on_error { @client.employee.update_table_row(id, 'jobInfo', row_id, data) }
218
238
  end
219
239
 
220
- def add_compensation_details(employee_id, data)
221
- retry_on_error { @client.employee.add_table_row(employee_id, 'compensation', data) }
240
+ def add_compensation_details(employee_number, data)
241
+ id = bamboo_id!(employee_number)
242
+ retry_on_error { @client.employee.add_table_row(id, 'compensation', data) }
222
243
  end
223
244
 
224
- def employment_statuses(employee_id)
225
- retry_on_error { @client.employee.table_data(employee_id, 'employmentStatus') }
245
+ def employment_statuses(employee_number)
246
+ id = bamboo_id!(employee_number)
247
+ retry_on_error { @client.employee.table_data(id, 'employmentStatus') }
226
248
  end
227
249
 
228
250
  def time_off_types
@@ -233,17 +255,19 @@ module PeopleGroup
233
255
  time_off_types['timeOffTypes'].find { |type| type['name'] == name }
234
256
  end
235
257
 
236
- def time_off_estimate(employee_id, end_date = Date.today)
237
- retry_on_error { @client.employee.time_off_estimate(employee_id, end_date) }
258
+ def time_off_estimate(employee_number, end_date = Date.today)
259
+ id = bamboo_id!(employee_number)
260
+ retry_on_error { @client.employee.time_off_estimate(id, end_date) }
238
261
  end
239
262
 
240
- def time_off_adjustment(employee_id, options)
241
- retry_on_error { @client.employee.time_off_balance_adjustment(employee_id, options) }
263
+ def time_off_adjustment(employee_number, options)
264
+ id = bamboo_id!(employee_number)
265
+ retry_on_error { @client.employee.time_off_balance_adjustment(id, options) }
242
266
  end
243
267
 
244
- def accrued_days(employee_id)
268
+ def accrued_days(employee_number)
245
269
  employee_accruals_type = time_off_type('Employee Accruals')
246
- total_accruals = time_off_estimate(employee_id).find { |type| type['timeOffType'] == employee_accruals_type['id'] }
270
+ total_accruals = time_off_estimate(employee_number).find { |type| type['timeOffType'] == employee_accruals_type['id'] }
247
271
 
248
272
  total_accruals['balance'].to_f
249
273
  end
@@ -252,75 +276,88 @@ module PeopleGroup
252
276
  @time_off_policies ||= retry_on_error { @client.meta.time_off_policies }
253
277
  end
254
278
 
255
- def employee_time_off_policies(employee_id)
256
- retry_on_error { @client.employee.time_off_policies(employee_id) }
279
+ def employee_time_off_policies(employee_number)
280
+ id = bamboo_id!(employee_number)
281
+ retry_on_error { @client.employee.time_off_policies(id) }
257
282
  end
258
283
  alias_method :team_member_time_off_policies, :employee_time_off_policies
259
284
 
260
- def add_time_off_policy(employee_id, time_off_policy_id, accrual_start_date)
285
+ def add_time_off_policy(employee_number, time_off_policy_id, accrual_start_date)
261
286
  policies = [{ timeOffPolicyId: time_off_policy_id, accrualStartDate: accrual_start_date }]
287
+ id = bamboo_id!(employee_number)
262
288
 
263
- retry_on_error { @client.employee.add_time_off_policies(employee_id, policies) }
289
+ retry_on_error { @client.employee.add_time_off_policies(id, policies) }
264
290
  end
265
291
 
266
- def remove_time_off_policy(employee_id, time_off_policy_id)
292
+ def remove_time_off_policy(employee_number, time_off_policy_id)
267
293
  # A nil accrual start date removes a policy assignment
268
294
  # Reference: https://documentation.bamboohr.com/reference#time-off-assign-time-off-policies-for-an-employee
269
- add_time_off_policy(employee_id, time_off_policy_id, nil)
295
+ add_time_off_policy(employee_number, time_off_policy_id, nil)
270
296
  end
271
297
 
272
- def job_details(employee_id)
273
- retry_on_error { @client.employee.table_data(employee_id, 'jobInfo') }
298
+ def job_details(employee_number)
299
+ id = bamboo_id!(employee_number)
300
+ retry_on_error { @client.employee.table_data(id, 'jobInfo') }
274
301
  end
275
302
 
276
- def resumes_folder_id(employee_id)
277
- @resumes_folder_id ||= files(employee_id).dig('categories').find { |folder| folder['name'] == 'Resumes and Applications' }.dig('id')
303
+ def resumes_folder_id(employee_number)
304
+ @resumes_folder_id ||= files(employee_number).dig('categories').find { |folder| folder['name'] == 'Resumes and Applications' }.dig('id')
278
305
  end
279
306
 
280
- def contract_folder_id(employee_id)
281
- @contract_folder_id ||= files(employee_id).dig('categories').find { |folder| folder['name'] == 'Contracts & Changes' }.dig('id')
307
+ def contract_folder_id(employee_number)
308
+ @contract_folder_id ||= files(employee_number).dig('categories').find { |folder| folder['name'] == 'Contracts & Changes' }.dig('id')
282
309
  end
283
310
 
284
- def add_file(employee_id, file_name, file, folder_id)
311
+ def add_file(employee_number, file_name, file, folder_id)
312
+ id = bamboo_id!(employee_number)
313
+
285
314
  options = {
286
315
  category: folder_id,
287
316
  fileName: file_name,
288
317
  share: 'yes',
289
318
  file: file
290
319
  }
291
- retry_on_error { @client.employee.add_file(employee_id, options) }
320
+ retry_on_error { @client.employee.add_file(id, options) }
292
321
  end
293
322
 
294
- def add_employment_status(employee_id, data)
295
- retry_on_error { @client.employee.add_table_row(employee_id, 'employmentStatus', data) }
323
+ def add_employment_status(employee_number, data)
324
+ id = bamboo_id!(employee_number)
325
+ retry_on_error { @client.employee.add_table_row(id, 'employmentStatus', data) }
296
326
  end
297
327
 
298
- def add_currency_conversion(employee_id, data)
299
- retry_on_error { @client.employee.add_table_row(employee_id, 'customCurrencyConversion', data) }
328
+ def add_currency_conversion(employee_number, data)
329
+ id = bamboo_id!(employee_number)
330
+ retry_on_error { @client.employee.add_table_row(id, 'customCurrencyConversion', data) }
300
331
  end
301
332
 
302
- def add_on_target_earnings(employee_id, data)
303
- retry_on_error { @client.employee.add_table_row(employee_id, 'customOnTargetEarnings', data) }
333
+ def add_on_target_earnings(employee_number, data)
334
+ id = bamboo_id!(employee_number)
335
+ retry_on_error { @client.employee.add_table_row(id, 'customOnTargetEarnings', data) }
304
336
  end
305
337
 
306
- def add_signing_bonus(employee_id, data)
307
- retry_on_error { @client.employee.add_table_row(employee_id, 'customBonus', data) }
338
+ def add_signing_bonus(employee_number, data)
339
+ id = bamboo_id!(employee_number)
340
+ retry_on_error { @client.employee.add_table_row(id, 'customBonus', data) }
308
341
  end
309
342
 
310
- def add_family_member(employee_id, data)
311
- retry_on_error { @client.employee.add_table_row(employee_id, 'customFamilyMember', data) }
343
+ def add_family_member(employee_number, data)
344
+ id = bamboo_id!(employee_number)
345
+ retry_on_error { @client.employee.add_table_row(id, 'customFamilyMember', data) }
312
346
  end
313
347
 
314
- def add_additional_data(employee_id, data)
315
- retry_on_error { @client.employee.add_table_row(employee_id, 'customAdditionalInformation1', data) }
348
+ def add_additional_data(employee_number, data)
349
+ id = bamboo_id!(employee_number)
350
+ retry_on_error { @client.employee.add_table_row(id, 'customAdditionalInformation1', data) }
316
351
  end
317
352
 
318
- def additional_data(employee_id)
319
- retry_on_error { @client.employee.table_data(employee_id, 'employmentStatus') }
353
+ def additional_data(employee_number)
354
+ id = bamboo_id!(employee_number)
355
+ retry_on_error { @client.employee.table_data(id, 'employmentStatus') }
320
356
  end
321
357
 
322
- def currency_conversion(employee_id)
323
- retry_on_error { @client.employee.table_data(employee_id, 'customCurrencyConversion') }
358
+ def currency_conversion(employee_number)
359
+ id = bamboo_id!(employee_number)
360
+ retry_on_error { @client.employee.table_data(id, 'customCurrencyConversion') }
324
361
  end
325
362
 
326
363
  def add_bonus(employee_number, comment)
@@ -350,13 +387,18 @@ module PeopleGroup
350
387
  @meta_fields ||= retry_on_error { @client.meta.lists }
351
388
  end
352
389
 
353
- def files(employee_id)
354
- @files ||= retry_on_error { @client.employee.files(employee_id) }
390
+ def files(employee_number)
391
+ id = bamboo_id!(employee_number)
392
+ @files ||= retry_on_error { @client.employee.files(id) }
355
393
  end
356
394
 
357
395
  def retry_on_error(&block)
358
396
  Utils.retry_on_error(errors: [Net::ReadTimeout, Bamboozled::GatewayError, Bamboozled::ServiceUnavailable], delay: 3, &block)
359
397
  end
398
+
399
+ def invalidate_cache
400
+ @employees = nil
401
+ end
360
402
  end
361
403
  end
362
404
  end
@@ -25,7 +25,7 @@ module PeopleGroup
25
25
  end
26
26
 
27
27
  def retry_on_error(&block)
28
- Utils.retry_on_error(errors: [Google::Apis::ServerError], delay: 3, max_attempts: 4, &block)
28
+ Utils.retry_on_error(errors: [Google::Apis::ServerError], delay: 5, max_attempts: 5, &block)
29
29
  end
30
30
  end
31
31
  end
@@ -14,14 +14,14 @@ module PeopleGroup
14
14
  @workday.workers.map { |worker| format_worker(worker) }
15
15
  end
16
16
 
17
- def get_employee_details(id)
18
- employees.find { |emp| emp['id'] == id.to_s }
17
+ def get_employee_details(employee_number)
18
+ employees.find { |emp| emp['employeeNumber'] == employee_number.to_s }
19
19
  end
20
20
  alias_method :get_team_member_details, :get_employee_details
21
21
 
22
- def get_employee_details!(id)
23
- employee_details = get_employee_details(id)
24
- raise EmployeeNotFoundError, "No employee found with id #{id}" if employee_details.nil?
22
+ def get_employee_details!(employee_number)
23
+ employee_details = get_employee_details(employee_number)
24
+ raise EmployeeNotFoundError, "No team member found with employee number #{employee_number}" if employee_details.nil?
25
25
 
26
26
  employee_details
27
27
  end
@@ -33,7 +33,7 @@ module PeopleGroup
33
33
  return nil if worker.nil?
34
34
 
35
35
  {
36
- 'id' => worker.dig(:worker_data, :worker_id),
36
+ 'employeeNumber' => worker.dig(:worker_data, :worker_id),
37
37
  'firstName' => worker.dig(:worker_data, :personal_data, :name_data, :legal_name_data, :name_detail_data, :first_name),
38
38
  'lastName' => worker.dig(:worker_data, :personal_data, :name_data, :legal_name_data, :name_detail_data, :last_name),
39
39
  'preferredName' => worker.dig(:worker_data, :personal_data, :name_data, :preferred_name_data, :name_detail_data, :first_name),
@@ -2,6 +2,6 @@
2
2
 
3
3
  module PeopleGroup
4
4
  module Connectors
5
- VERSION = '0.1.96'
5
+ VERSION = '0.2.2'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: peoplegroup-connectors
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.96
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - lien van den steen
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-03-31 00:00:00.000000000 Z
11
+ date: 2022-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gitlab
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '3.2'
131
+ version: '3.11'
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: '3.2'
138
+ version: '3.11'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rubocop
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -150,34 +150,48 @@ dependencies:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0.91'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rake
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '13.0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '13.0'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: gitlab-styles
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
171
  - - "~>"
158
172
  - !ruby/object:Gem::Version
159
- version: '6.6'
173
+ version: '7.0'
160
174
  type: :development
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
178
  - - "~>"
165
179
  - !ruby/object:Gem::Version
166
- version: '6.6'
180
+ version: '7.0'
167
181
  - !ruby/object:Gem::Dependency
168
182
  name: rubocop-packaging
169
183
  requirement: !ruby/object:Gem::Requirement
170
184
  requirements:
171
185
  - - "~>"
172
186
  - !ruby/object:Gem::Version
173
- version: '0.1'
187
+ version: '0.5'
174
188
  type: :development
175
189
  prerelease: false
176
190
  version_requirements: !ruby/object:Gem::Requirement
177
191
  requirements:
178
192
  - - "~>"
179
193
  - !ruby/object:Gem::Version
180
- version: '0.1'
194
+ version: '0.5'
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: rubocop-rspec
183
197
  requirement: !ruby/object:Gem::Requirement
@@ -220,6 +234,20 @@ dependencies:
220
234
  - - "~>"
221
235
  - !ruby/object:Gem::Version
222
236
  version: '0.21'
237
+ - !ruby/object:Gem::Dependency
238
+ name: byebug
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: '11.1'
244
+ type: :development
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: '11.1'
223
251
  description: Avoid repeating methods in different projects for our connectos.
224
252
  email:
225
253
  - lvandensteen@gitlab.com
@@ -247,7 +275,7 @@ metadata:
247
275
  homepage_uri: https://gitlab.com/gitlab-com/people-group/peopleops-eng/connectors-gem
248
276
  source_code_uri: https://gitlab.com/gitlab-com/people-group/peopleops-eng/connectors-gem
249
277
  changelog_uri: https://gitlab.com/gitlab-com/people-group/peopleops-eng/connectors-gem
250
- post_install_message:
278
+ post_install_message:
251
279
  rdoc_options: []
252
280
  require_paths:
253
281
  - lib
@@ -262,8 +290,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
262
290
  - !ruby/object:Gem::Version
263
291
  version: '0'
264
292
  requirements: []
265
- rubygems_version: 3.2.22
266
- signing_key:
293
+ rubygems_version: 3.2.32
294
+ signing_key:
267
295
  specification_version: 4
268
296
  summary: Library for our shared connectors.
269
297
  test_files: []