rimless 1.1.1 → 1.3.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.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/documentation.yml +39 -0
  3. data/.github/workflows/test.yml +63 -0
  4. data/.rspec +2 -2
  5. data/.rubocop.yml +16 -2
  6. data/.simplecov +12 -0
  7. data/Appraisals +2 -22
  8. data/CHANGELOG.md +12 -0
  9. data/Dockerfile +2 -3
  10. data/Envfile +0 -3
  11. data/Guardfile +44 -0
  12. data/LICENSE +1 -1
  13. data/Makefile +25 -15
  14. data/README.md +11 -4
  15. data/Rakefile +13 -65
  16. data/doc/kafka-playground/.gitignore +2 -0
  17. data/doc/kafka-playground/Dockerfile +41 -0
  18. data/doc/kafka-playground/Gemfile +8 -0
  19. data/doc/kafka-playground/Gemfile.lock +155 -0
  20. data/doc/kafka-playground/Makefile +209 -0
  21. data/doc/kafka-playground/README.md +185 -0
  22. data/doc/kafka-playground/bin/consume-topic +7 -0
  23. data/doc/kafka-playground/bin/create-topic +42 -0
  24. data/doc/kafka-playground/bin/delete-topic +22 -0
  25. data/doc/kafka-playground/bin/list-topics +3 -0
  26. data/doc/kafka-playground/bin/produce-event +64 -0
  27. data/doc/kafka-playground/config/avro_schemas/.gitignore +1 -0
  28. data/doc/kafka-playground/config/avro_schemas/playground_app/item_v1.avsc.erb +36 -0
  29. data/doc/kafka-playground/config/avro_schemas/playground_app/payment_v1.avsc.erb +59 -0
  30. data/doc/kafka-playground/config/avro_schemas/playground_app/payment_v1_event.avsc.erb +18 -0
  31. data/doc/kafka-playground/config/docker/shell/.bash_profile +3 -0
  32. data/doc/kafka-playground/config/docker/shell/.bashrc +231 -0
  33. data/doc/kafka-playground/config/docker/shell/.config/kcat.conf +3 -0
  34. data/doc/kafka-playground/config/docker/shell/.gemrc +2 -0
  35. data/doc/kafka-playground/config/docker/shell/.inputrc +17 -0
  36. data/doc/kafka-playground/config/environment.rb +69 -0
  37. data/doc/kafka-playground/doc/assets/project.svg +68 -0
  38. data/doc/kafka-playground/docker-compose.yml +83 -0
  39. data/doc/kafka-playground/examples/rimless-produce +48 -0
  40. data/gemfiles/rails_5.2.gemfile +2 -2
  41. data/lib/rimless/configuration_handling.rb +11 -1
  42. data/lib/rimless/consumer.rb +4 -2
  43. data/lib/rimless/dependencies.rb +3 -0
  44. data/lib/rimless/kafka_helpers.rb +2 -0
  45. data/lib/rimless/karafka/avro_deserializer.rb +3 -3
  46. data/lib/rimless/rspec/helpers.rb +11 -0
  47. data/lib/rimless/rspec/matchers.rb +24 -9
  48. data/lib/rimless/rspec.rb +1 -1
  49. data/lib/rimless/tasks/consumer.rake +3 -0
  50. data/lib/rimless/tasks/generator.rake +3 -0
  51. data/lib/rimless/tasks/stats.rake +5 -2
  52. data/lib/rimless/version.rb +18 -1
  53. data/lib/rimless.rb +0 -1
  54. data/rimless.gemspec +43 -29
  55. metadata +121 -71
  56. data/.travis.yml +0 -35
  57. data/gemfiles/rails_4.2.gemfile +0 -8
  58. data/gemfiles/rails_5.0.gemfile +0 -8
  59. data/gemfiles/rails_5.1.gemfile +0 -8
  60. data/gemfiles/rails_6.0.gemfile +0 -8
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rimless
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hermann Mayer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-12 00:00:00.000000000 Z
11
+ date: 2023-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.2.0
19
+ version: '5.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 4.2.0
26
+ version: '5.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: avro_turf
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -84,16 +84,16 @@ dependencies:
84
84
  name: sinatra
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '2.2'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: '2.2'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: sparsify
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -114,90 +114,112 @@ dependencies:
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '1.2'
117
+ version: '1.4'
118
118
  type: :runtime
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: '1.2'
124
+ version: '1.4'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: webmock
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ">="
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0'
131
+ version: '3.18'
132
132
  type: :runtime
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'
138
+ version: '3.18'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: appraisal
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">="
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0'
145
+ version: '2.4'
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: '2.4'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: bundler
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '1.16'
160
- - - "<"
157
+ - - "~>"
161
158
  - !ruby/object:Gem::Version
162
- version: '3'
159
+ version: '2.3'
163
160
  type: :development
164
161
  prerelease: false
165
162
  version_requirements: !ruby/object:Gem::Requirement
166
163
  requirements:
167
- - - ">="
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '2.3'
167
+ - !ruby/object:Gem::Dependency
168
+ name: countless
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
168
172
  - !ruby/object:Gem::Version
169
- version: '1.16'
170
- - - "<"
173
+ version: '1.1'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
171
179
  - !ruby/object:Gem::Version
172
- version: '3'
180
+ version: '1.1'
173
181
  - !ruby/object:Gem::Dependency
174
182
  name: factory_bot
175
183
  requirement: !ruby/object:Gem::Requirement
176
184
  requirements:
177
185
  - - "~>"
178
186
  - !ruby/object:Gem::Version
179
- version: '4.11'
187
+ version: '6.2'
180
188
  type: :development
181
189
  prerelease: false
182
190
  version_requirements: !ruby/object:Gem::Requirement
183
191
  requirements:
184
192
  - - "~>"
185
193
  - !ruby/object:Gem::Version
186
- version: '4.11'
194
+ version: '6.2'
195
+ - !ruby/object:Gem::Dependency
196
+ name: guard-rspec
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '4.7'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '4.7'
187
209
  - !ruby/object:Gem::Dependency
188
210
  name: railties
189
211
  requirement: !ruby/object:Gem::Requirement
190
212
  requirements:
191
213
  - - ">="
192
214
  - !ruby/object:Gem::Version
193
- version: 4.2.0
215
+ version: '5.2'
194
216
  type: :development
195
217
  prerelease: false
196
218
  version_requirements: !ruby/object:Gem::Requirement
197
219
  requirements:
198
220
  - - ">="
199
221
  - !ruby/object:Gem::Version
200
- version: 4.2.0
222
+ version: '5.2'
201
223
  - !ruby/object:Gem::Dependency
202
224
  name: rake
203
225
  requirement: !ruby/object:Gem::Requirement
@@ -213,143 +235,143 @@ dependencies:
213
235
  - !ruby/object:Gem::Version
214
236
  version: '13.0'
215
237
  - !ruby/object:Gem::Dependency
216
- name: rdoc
238
+ name: redcarpet
217
239
  requirement: !ruby/object:Gem::Requirement
218
240
  requirements:
219
241
  - - "~>"
220
242
  - !ruby/object:Gem::Version
221
- version: '6.1'
243
+ version: '3.5'
222
244
  type: :development
223
245
  prerelease: false
224
246
  version_requirements: !ruby/object:Gem::Requirement
225
247
  requirements:
226
248
  - - "~>"
227
249
  - !ruby/object:Gem::Version
228
- version: '6.1'
250
+ version: '3.5'
229
251
  - !ruby/object:Gem::Dependency
230
- name: redcarpet
252
+ name: rspec
231
253
  requirement: !ruby/object:Gem::Requirement
232
254
  requirements:
233
255
  - - "~>"
234
256
  - !ruby/object:Gem::Version
235
- version: '3.4'
257
+ version: '3.12'
236
258
  type: :development
237
259
  prerelease: false
238
260
  version_requirements: !ruby/object:Gem::Requirement
239
261
  requirements:
240
262
  - - "~>"
241
263
  - !ruby/object:Gem::Version
242
- version: '3.4'
264
+ version: '3.12'
243
265
  - !ruby/object:Gem::Dependency
244
- name: rspec
266
+ name: rubocop
245
267
  requirement: !ruby/object:Gem::Requirement
246
268
  requirements:
247
269
  - - "~>"
248
270
  - !ruby/object:Gem::Version
249
- version: '3.0'
271
+ version: '1.28'
250
272
  type: :development
251
273
  prerelease: false
252
274
  version_requirements: !ruby/object:Gem::Requirement
253
275
  requirements:
254
276
  - - "~>"
255
277
  - !ruby/object:Gem::Version
256
- version: '3.0'
278
+ version: '1.28'
257
279
  - !ruby/object:Gem::Dependency
258
- name: rubocop
280
+ name: rubocop-rails
259
281
  requirement: !ruby/object:Gem::Requirement
260
282
  requirements:
261
283
  - - "~>"
262
284
  - !ruby/object:Gem::Version
263
- version: 0.63.1
285
+ version: '2.14'
264
286
  type: :development
265
287
  prerelease: false
266
288
  version_requirements: !ruby/object:Gem::Requirement
267
289
  requirements:
268
290
  - - "~>"
269
291
  - !ruby/object:Gem::Version
270
- version: 0.63.1
292
+ version: '2.14'
271
293
  - !ruby/object:Gem::Dependency
272
294
  name: rubocop-rspec
273
295
  requirement: !ruby/object:Gem::Requirement
274
296
  requirements:
275
297
  - - "~>"
276
298
  - !ruby/object:Gem::Version
277
- version: '1.31'
299
+ version: '2.10'
278
300
  type: :development
279
301
  prerelease: false
280
302
  version_requirements: !ruby/object:Gem::Requirement
281
303
  requirements:
282
304
  - - "~>"
283
305
  - !ruby/object:Gem::Version
284
- version: '1.31'
306
+ version: '2.10'
285
307
  - !ruby/object:Gem::Dependency
286
308
  name: simplecov
287
309
  requirement: !ruby/object:Gem::Requirement
288
310
  requirements:
289
- - - "~>"
311
+ - - ">="
290
312
  - !ruby/object:Gem::Version
291
- version: '0.15'
313
+ version: '0.22'
292
314
  type: :development
293
315
  prerelease: false
294
316
  version_requirements: !ruby/object:Gem::Requirement
295
317
  requirements:
296
- - - "~>"
318
+ - - ">="
297
319
  - !ruby/object:Gem::Version
298
- version: '0.15'
320
+ version: '0.22'
299
321
  - !ruby/object:Gem::Dependency
300
322
  name: timecop
301
323
  requirement: !ruby/object:Gem::Requirement
302
324
  requirements:
303
- - - "~>"
325
+ - - ">="
304
326
  - !ruby/object:Gem::Version
305
- version: 0.9.1
327
+ version: 0.9.6
306
328
  type: :development
307
329
  prerelease: false
308
330
  version_requirements: !ruby/object:Gem::Requirement
309
331
  requirements:
310
- - - "~>"
332
+ - - ">="
311
333
  - !ruby/object:Gem::Version
312
- version: 0.9.1
334
+ version: 0.9.6
313
335
  - !ruby/object:Gem::Dependency
314
336
  name: vcr
315
337
  requirement: !ruby/object:Gem::Requirement
316
338
  requirements:
317
339
  - - "~>"
318
340
  - !ruby/object:Gem::Version
319
- version: '3.0'
341
+ version: '6.0'
320
342
  type: :development
321
343
  prerelease: false
322
344
  version_requirements: !ruby/object:Gem::Requirement
323
345
  requirements:
324
346
  - - "~>"
325
347
  - !ruby/object:Gem::Version
326
- version: '3.0'
348
+ version: '6.0'
327
349
  - !ruby/object:Gem::Dependency
328
350
  name: yard
329
351
  requirement: !ruby/object:Gem::Requirement
330
352
  requirements:
331
- - - "~>"
353
+ - - ">="
332
354
  - !ruby/object:Gem::Version
333
- version: 0.9.18
355
+ version: 0.9.28
334
356
  type: :development
335
357
  prerelease: false
336
358
  version_requirements: !ruby/object:Gem::Requirement
337
359
  requirements:
338
- - - "~>"
360
+ - - ">="
339
361
  - !ruby/object:Gem::Version
340
- version: 0.9.18
362
+ version: 0.9.28
341
363
  - !ruby/object:Gem::Dependency
342
364
  name: yard-activesupport-concern
343
365
  requirement: !ruby/object:Gem::Requirement
344
366
  requirements:
345
- - - "~>"
367
+ - - ">="
346
368
  - !ruby/object:Gem::Version
347
369
  version: 0.0.1
348
370
  type: :development
349
371
  prerelease: false
350
372
  version_requirements: !ruby/object:Gem::Requirement
351
373
  requirements:
352
- - - "~>"
374
+ - - ">="
353
375
  - !ruby/object:Gem::Version
354
376
  version: 0.0.1
355
377
  description: A bundle of opinionated Apache Kafka / Confluent Schema Registry helpers.
@@ -360,17 +382,19 @@ extensions: []
360
382
  extra_rdoc_files: []
361
383
  files:
362
384
  - ".editorconfig"
385
+ - ".github/workflows/documentation.yml"
386
+ - ".github/workflows/test.yml"
363
387
  - ".gitignore"
364
388
  - ".rspec"
365
389
  - ".rubocop.yml"
366
390
  - ".simplecov"
367
- - ".travis.yml"
368
391
  - ".yardopts"
369
392
  - Appraisals
370
393
  - CHANGELOG.md
371
394
  - Dockerfile
372
395
  - Envfile
373
396
  - Gemfile
397
+ - Guardfile
374
398
  - LICENSE
375
399
  - Makefile
376
400
  - README.md
@@ -382,12 +406,32 @@ files:
382
406
  - config/docker/.bashrc
383
407
  - config/docker/.inputrc
384
408
  - doc/assets/project.svg
409
+ - doc/kafka-playground/.gitignore
410
+ - doc/kafka-playground/Dockerfile
411
+ - doc/kafka-playground/Gemfile
412
+ - doc/kafka-playground/Gemfile.lock
413
+ - doc/kafka-playground/Makefile
414
+ - doc/kafka-playground/README.md
415
+ - doc/kafka-playground/bin/consume-topic
416
+ - doc/kafka-playground/bin/create-topic
417
+ - doc/kafka-playground/bin/delete-topic
418
+ - doc/kafka-playground/bin/list-topics
419
+ - doc/kafka-playground/bin/produce-event
420
+ - doc/kafka-playground/config/avro_schemas/.gitignore
421
+ - doc/kafka-playground/config/avro_schemas/playground_app/item_v1.avsc.erb
422
+ - doc/kafka-playground/config/avro_schemas/playground_app/payment_v1.avsc.erb
423
+ - doc/kafka-playground/config/avro_schemas/playground_app/payment_v1_event.avsc.erb
424
+ - doc/kafka-playground/config/docker/shell/.bash_profile
425
+ - doc/kafka-playground/config/docker/shell/.bashrc
426
+ - doc/kafka-playground/config/docker/shell/.config/kcat.conf
427
+ - doc/kafka-playground/config/docker/shell/.gemrc
428
+ - doc/kafka-playground/config/docker/shell/.inputrc
429
+ - doc/kafka-playground/config/environment.rb
430
+ - doc/kafka-playground/doc/assets/project.svg
431
+ - doc/kafka-playground/docker-compose.yml
432
+ - doc/kafka-playground/examples/rimless-produce
385
433
  - docker-compose.yml
386
- - gemfiles/rails_4.2.gemfile
387
- - gemfiles/rails_5.0.gemfile
388
- - gemfiles/rails_5.1.gemfile
389
434
  - gemfiles/rails_5.2.gemfile
390
- - gemfiles/rails_6.0.gemfile
391
435
  - lib/rimless.rb
392
436
  - lib/rimless/avro_helpers.rb
393
437
  - lib/rimless/avro_utils.rb
@@ -415,9 +459,15 @@ files:
415
459
  - lib/rimless/version.rb
416
460
  - log/development.log
417
461
  - rimless.gemspec
418
- homepage: https://github.com/hausgold/rimless
419
- licenses: []
420
- metadata: {}
462
+ homepage:
463
+ licenses:
464
+ - MIT
465
+ metadata:
466
+ homepage_uri: https://github.com/hausgold/rimless
467
+ source_code_uri: https://github.com/hausgold/rimless
468
+ changelog_uri: https://github.com/hausgold/rimless/blob/master/CHANGELOG.md
469
+ bug_tracker_uri: https://github.com/hausgold/rimless/issues
470
+ documentation_uri: https://www.rubydoc.info/gems/rimless
421
471
  post_install_message:
422
472
  rdoc_options: []
423
473
  require_paths:
@@ -426,14 +476,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
426
476
  requirements:
427
477
  - - ">="
428
478
  - !ruby/object:Gem::Version
429
- version: '0'
479
+ version: '2.5'
430
480
  required_rubygems_version: !ruby/object:Gem::Requirement
431
481
  requirements:
432
482
  - - ">="
433
483
  - !ruby/object:Gem::Version
434
484
  version: '0'
435
485
  requirements: []
436
- rubygems_version: 3.2.16
486
+ rubygems_version: 3.3.8
437
487
  signing_key:
438
488
  specification_version: 4
439
489
  summary: A bundle of opinionated Apache Kafka / Confluent Schema Registry helpers.
data/.travis.yml DELETED
@@ -1,35 +0,0 @@
1
- env:
2
- global:
3
- - CC_TEST_REPORTER_ID=f926dbf2ed89c7918e7a47f4f14f7d8386cc102d4cfa0a4e84051c6c976975ea
4
-
5
- sudo: false
6
- language: ruby
7
- cache: bundler
8
- rvm:
9
- - 2.7
10
- - 2.6
11
- - 2.5
12
-
13
- gemfile:
14
- - gemfiles/rails_4.2.gemfile
15
- - gemfiles/rails_5.0.gemfile
16
- - gemfiles/rails_5.1.gemfile
17
- - gemfiles/rails_5.2.gemfile
18
- - gemfiles/rails_6.0.gemfile
19
-
20
- before_install: gem install bundler
21
- install:
22
- # Rails 4 is not Ruby 2.7 compatible, so we skip this build
23
- - |
24
- [[ "${BUNDLE_GEMFILE}" =~ rails_4 && \
25
- "${TRAVIS_RUBY_VERSION}" =~ 2.7 ]] && exit || true
26
- # Regular build
27
- - bundle install --jobs=3 --retry=3
28
-
29
- before_script:
30
- - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
31
- - chmod +x ./cc-test-reporter
32
- - ./cc-test-reporter before-build
33
- script: bundle exec rake
34
- after_script:
35
- - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 4.2.11"
6
- gem "railties", "~> 4.2.11"
7
-
8
- gemspec path: "../"
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 5.0.7"
6
- gem "railties", "~> 5.0.7"
7
-
8
- gemspec path: "../"
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 5.1.6"
6
- gem "railties", "~> 5.1.6"
7
-
8
- gemspec path: "../"
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "activesupport", "~> 6.0.0"
6
- gem "railties", "~> 6.0.0"
7
-
8
- gemspec path: "../"