rimless 1.5.1 → 1.7.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: c49d6db3a548187e76ca5ee01121a91543c13a2a98ed7afe0a22d299f1869b88
4
- data.tar.gz: ca412431753486b42b92c952c30bd24a2104cca1fc9ad2eb7e6672893bbedb93
3
+ metadata.gz: 15b76dcc6827cdc4422ab861345414ea7f9e8cb9023e3d490f711136ae3391d8
4
+ data.tar.gz: 7e832f6b36082968ee572f7bcdb0dfcb9cac5ebcd323a0fb1b7b4130dd28e414
5
5
  SHA512:
6
- metadata.gz: 664037e7791bed603c7426bf59f26f1164cb6e3344457e3956361e5bac5bfd58efc57272072e0dc2a20205827271e4c8eb5d17c83fe2dd59cde8423932c9ae30
7
- data.tar.gz: ae577c63363a7903509ee8d5428c2328c278b4a6dd6c6c9a061d4bbde60eb73b46f45986da0fa0651260435f01dbe201d64713ddf268111929abc2f196f4b1c9
6
+ metadata.gz: d3a57e252f7c6d347c7e95ec3de76f7c04d879db239106a731b28b130f4b51c924f70d409b5698f0f7c4fe85bf5d75ac0b415661593a77b74e55e3117fbb7549
7
+ data.tar.gz: be60110c71e4244981b3efb0d92faaeae7b3cc7fa0e95e7102fd25fb589f6a89be8af230a27693d3f0ed13e3dc5f558f149ebf01803318b25eeaa5507286a2af
@@ -17,9 +17,9 @@ jobs:
17
17
  - name: Install the correct Ruby version
18
18
  uses: ruby/setup-ruby@v1
19
19
  with:
20
- ruby-version: 2.5
20
+ ruby-version: 2.7
21
21
  bundler-cache: true
22
- rubygems: '3.3.26'
22
+ rubygems: '3.4.22'
23
23
 
24
24
  - name: Prepare the virtual environment
25
25
  uses: hausgold/actions/ci@master
@@ -20,12 +20,12 @@ jobs:
20
20
  steps:
21
21
  - uses: actions/checkout@v4
22
22
 
23
- - name: Install Ruby 2.5
23
+ - name: Install Ruby 2.7
24
24
  uses: ruby/setup-ruby@v1
25
25
  with:
26
- ruby-version: 2.5
26
+ ruby-version: 2.7
27
27
  bundler-cache: true
28
- rubygems: '3.3.26'
28
+ rubygems: '3.4.22'
29
29
 
30
30
  - name: Prepare the virtual environment
31
31
  uses: hausgold/actions/ci@master
@@ -18,8 +18,8 @@ jobs:
18
18
  strategy:
19
19
  fail-fast: false
20
20
  matrix:
21
- ruby: ['2.5', '2.7']
22
- rails: ['5.2']
21
+ ruby: ['2.7']
22
+ rails: ['5.2', '6.1', '7.1']
23
23
  env:
24
24
  BUNDLE_GEMFILE: 'gemfiles/rails_${{ matrix.rails }}.gemfile'
25
25
  steps:
@@ -30,7 +30,7 @@ jobs:
30
30
  with:
31
31
  ruby-version: ${{ matrix.ruby }}
32
32
  bundler-cache: true
33
- rubygems: '3.3.26'
33
+ rubygems: '3.4.22'
34
34
 
35
35
  - name: Prepare the virtual environment
36
36
  uses: hausgold/actions/ci@master
data/.gitignore CHANGED
@@ -6,6 +6,7 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /log/
9
10
  /vendor/
10
11
  /gemfiles/vendor/
11
12
  /Gemfile.lock
data/.rubocop.yml CHANGED
@@ -12,7 +12,7 @@ AllCops:
12
12
  NewCops: enable
13
13
  SuggestExtensions: false
14
14
  DisplayCopNames: true
15
- TargetRubyVersion: 2.5
15
+ TargetRubyVersion: 2.7
16
16
  TargetRailsVersion: 5.2
17
17
  Exclude:
18
18
  - bin/**/*
@@ -65,9 +65,3 @@ RSpec/FilePath:
65
65
  # Because we just implemented the ActiveRecord API.
66
66
  Rails/SkipsModelValidations:
67
67
  Enabled: false
68
-
69
- # Because Rubocop does not respect the `TargetRubyVersion: 2.5` for this cop,
70
- # so it converts to `then` which is not yet available on Ruby 2.5 which causes
71
- # `NoMethodError` errors. NOTE: Remove when Ruby 2.5 support is dropped.
72
- Style/ObjectThen:
73
- Enabled: false
data/Appraisals CHANGED
@@ -4,3 +4,13 @@ appraise 'rails-5.2' do
4
4
  gem 'activesupport', '~> 5.2.0'
5
5
  gem 'railties', '~> 5.2.0'
6
6
  end
7
+
8
+ appraise 'rails-6.1' do
9
+ gem 'activesupport', '~> 6.1.0'
10
+ gem 'railties', '~> 6.1.0'
11
+ end
12
+
13
+ appraise 'rails-7.1' do
14
+ gem 'activesupport', '~> 7.1.0'
15
+ gem 'railties', '~> 7.1.0'
16
+ end
data/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  * TODO: Replace this bullet point with an actual description of a change.
4
4
 
5
+ ### 1.7.0
6
+
7
+ * Added CI tests for Rails 6.1 and 7.1 (#39)
8
+
9
+ ### 1.6.0
10
+
11
+ * Dropped support for Ruby <2.7 (#38)
12
+ * Moved the schema file validation into the retry block for parallel execution
13
+ (#37)
14
+ * Updated the [Kafka Playground](./doc/kafka-playground) to the latest
15
+ Apache Kafka (3.7) and Schema Registry (7.6) versions (#35)
16
+
5
17
  ### 1.5.1
6
18
 
7
19
  * Added a retry to write compiled schema files as this may fail on parallel
data/Dockerfile CHANGED
@@ -1,8 +1,8 @@
1
- FROM hausgold/ruby:2.5
1
+ FROM hausgold/ruby:2.7
2
2
  MAINTAINER Hermann Mayer <hermann.mayer@hausgold.de>
3
3
 
4
4
  # Update system gem
5
- RUN gem update --system '3.3.26'
5
+ RUN gem update --system '3.4.22'
6
6
 
7
7
  # Install system packages and the latest bundler
8
8
  RUN apt-get update -yqqq && \
@@ -11,7 +11,7 @@ RUN apt-get update -yqqq && \
11
11
  ca-certificates \
12
12
  bash-completion inotify-tools && \
13
13
  echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen && /usr/sbin/locale-gen && \
14
- gem install bundler -v '~> 2.3.0' --no-document --no-prerelease
14
+ gem install bundler -v '~> 2.4.22' --no-document --no-prerelease
15
15
 
16
16
  # Add new web user
17
17
  RUN mkdir /app && \
data/Makefile CHANGED
@@ -116,7 +116,7 @@ test-style: \
116
116
  test-style-ruby:
117
117
  # Run the static code analyzer (rubocop)
118
118
  @$(call run-shell,$(BUNDLE) exec $(RUBOCOP) -a \
119
- || ($(TEST) $$($(RUBY_VERSION)) != '2.5' && true))
119
+ || ($(TEST) $$($(RUBY_VERSION)) != '2.7' && true))
120
120
 
121
121
  clean:
122
122
  # Clean the dependencies
@@ -15,7 +15,9 @@ sudo sed -i 's/autostart=.*/autostart=false/g' /etc/supervisor/conf.d/*
15
15
  sudo supervisord >/dev/null 2>&1 &
16
16
 
17
17
  # Wait for supervisord
18
- while ! supervisorctl status >/dev/null 2>&1; do sleep 1; done
18
+ while ! (sudo supervisorctl status | grep avahi) >/dev/null 2>&1; do
19
+ sleep 1
20
+ done
19
21
 
20
22
  # Boot the mDNS stack
21
23
  echo '# Start the mDNS stack'
@@ -1,8 +1,8 @@
1
- FROM hausgold/ruby:2.5
1
+ FROM hausgold/ruby:2.7
2
2
  MAINTAINER Hermann Mayer <hermann.mayer@hausgold.de>
3
3
 
4
4
  # Update system gem
5
- RUN gem update --system
5
+ RUN gem update --system '3.4.22'
6
6
 
7
7
  # Add backports repository
8
8
  RUN echo 'deb http://archive.debian.org/debian buster-backports main' \
@@ -18,7 +18,7 @@ RUN apt-get update -yqqq && \
18
18
  ca-certificates jq curl cmake \
19
19
  bash-completion inotify-tools && \
20
20
  echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen && /usr/sbin/locale-gen && \
21
- gem install bundler --no-document --no-prerelease
21
+ gem install bundler -v '~> 2.4.22' --no-document --no-prerelease
22
22
 
23
23
  # Install kcat (formerly known as kafkacat)
24
24
  RUN curl -sL https://github.com/edenhill/kcat/archive/refs/tags/1.7.0.tar.gz \
@@ -3,6 +3,6 @@
3
3
  source 'https://rubygems.org'
4
4
 
5
5
  # A bundle of opinionated Apache Kafka / Confluent Schema Registry helpers.
6
- gem 'rimless', '~> 1.2'
6
+ gem 'rimless', '~> 1.5'
7
7
  # Thor is a toolkit for building powerful command-line interfaces.
8
8
  gem 'thor', '~> 1.1'
@@ -1,27 +1,29 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- activesupport (6.1.4.1)
4
+ activesupport (6.1.7.7)
5
5
  concurrent-ruby (~> 1.0, >= 1.0.2)
6
6
  i18n (>= 1.6, < 2)
7
7
  minitest (>= 5.1)
8
8
  tzinfo (~> 2.0)
9
9
  zeitwerk (~> 2.3)
10
- addressable (2.8.0)
11
- public_suffix (>= 2.0.2, < 5.0)
10
+ addressable (2.8.6)
11
+ public_suffix (>= 2.0.2, < 6.0)
12
12
  avro (1.9.2)
13
13
  multi_json
14
14
  avro_turf (0.11.0)
15
15
  avro (>= 1.7.7, < 1.10)
16
16
  excon (~> 0.45)
17
- concurrent-ruby (1.1.9)
18
- connection_pool (2.2.5)
19
- crack (0.4.5)
17
+ bigdecimal (3.1.8)
18
+ concurrent-ruby (1.2.3)
19
+ connection_pool (2.4.1)
20
+ crack (1.0.0)
21
+ bigdecimal
20
22
  rexml
21
- delivery_boy (1.1.0)
23
+ delivery_boy (1.2.0)
22
24
  king_konf (~> 1.0)
23
- ruby-kafka (~> 1.0)
24
- digest-crc (0.6.4)
25
+ ruby-kafka (~> 1.5)
26
+ digest-crc (0.6.5)
25
27
  rake (>= 12.0.0, < 14.0.0)
26
28
  dry-configurable (0.12.1)
27
29
  concurrent-ruby (~> 1.0)
@@ -64,15 +66,15 @@ GEM
64
66
  dry-equalizer (~> 0.2)
65
67
  dry-initializer (~> 3.0)
66
68
  dry-schema (~> 1.5, >= 1.5.2)
67
- envlogic (1.1.3)
69
+ envlogic (1.1.4)
68
70
  dry-inflector (~> 0.1)
69
- excon (0.87.0)
70
- hashdiff (1.0.1)
71
- i18n (1.8.10)
71
+ excon (0.109.0)
72
+ hashdiff (1.1.0)
73
+ i18n (1.14.5)
72
74
  concurrent-ruby (~> 1.0)
73
75
  io-console (0.5.9)
74
- irb (1.3.7)
75
- reline (>= 0.2.7)
76
+ irb (1.4.2)
77
+ reline (>= 0.3.0)
76
78
  karafka (1.4.3)
77
79
  dry-configurable (~> 0.8)
78
80
  dry-inflector (~> 0.1)
@@ -90,46 +92,50 @@ GEM
90
92
  sidekiq (>= 4.2)
91
93
  karafka-testing (1.4.1)
92
94
  karafka (~> 1.4.0.rc2)
93
- king_konf (1.0.0)
94
- minitest (5.14.4)
95
+ king_konf (1.0.1)
96
+ minitest (5.15.0)
95
97
  multi_json (1.15.0)
96
- mustermann (1.1.1)
98
+ mustermann (2.0.2)
97
99
  ruby2_keywords (~> 0.0.1)
98
- public_suffix (4.0.6)
99
- rack (2.2.3)
100
- rack-protection (2.1.0)
100
+ public_suffix (4.0.7)
101
+ rack (2.2.9)
102
+ rack-protection (2.2.4)
101
103
  rack
102
- rake (13.0.6)
103
- redis (4.4.0)
104
- reline (0.2.7)
104
+ rake (13.2.1)
105
+ redis (4.8.1)
106
+ reline (0.3.1)
105
107
  io-console (~> 0.5)
106
- rexml (3.2.5)
107
- rimless (1.2.0)
108
- activesupport (>= 4.2.0)
108
+ retries (0.0.5)
109
+ rexml (3.2.8)
110
+ strscan (>= 3.0.9)
111
+ rimless (1.5.1)
112
+ activesupport (>= 5.2)
109
113
  avro_turf (~> 0.11.0)
110
- karafka (~> 1.4)
114
+ karafka (~> 1.4, < 1.4.15)
111
115
  karafka-sidekiq-backend (~> 1.4)
112
116
  karafka-testing (~> 1.4)
113
- sinatra
117
+ retries (>= 0.0.5)
118
+ sinatra (~> 2.2)
114
119
  sparsify (~> 1.1)
115
- waterdrop (~> 1.2)
116
- webmock
117
- ruby-kafka (1.4.0)
120
+ waterdrop (~> 1.4)
121
+ webmock (~> 3.18)
122
+ ruby-kafka (1.5.0)
118
123
  digest-crc
119
124
  ruby2_keywords (0.0.5)
120
- sidekiq (6.2.2)
121
- connection_pool (>= 2.2.2)
125
+ sidekiq (6.5.12)
126
+ connection_pool (>= 2.2.5, < 3)
122
127
  rack (~> 2.0)
123
- redis (>= 4.2.0)
124
- sinatra (2.1.0)
125
- mustermann (~> 1.0)
128
+ redis (>= 4.5.0, < 5)
129
+ sinatra (2.2.4)
130
+ mustermann (~> 2.0)
126
131
  rack (~> 2.2)
127
- rack-protection (= 2.1.0)
132
+ rack-protection (= 2.2.4)
128
133
  tilt (~> 2.0)
129
134
  sparsify (1.1.0)
130
- thor (1.1.0)
131
- tilt (2.0.10)
132
- tzinfo (2.0.4)
135
+ strscan (3.1.0)
136
+ thor (1.2.2)
137
+ tilt (2.3.0)
138
+ tzinfo (2.0.6)
133
139
  concurrent-ruby (~> 1.0)
134
140
  waterdrop (1.4.2)
135
141
  delivery_boy (>= 0.2, < 2.x)
@@ -138,17 +144,17 @@ GEM
138
144
  dry-validation (~> 1.2)
139
145
  ruby-kafka (>= 0.7.8)
140
146
  zeitwerk (~> 2.1)
141
- webmock (3.14.0)
147
+ webmock (3.23.0)
142
148
  addressable (>= 2.8.0)
143
149
  crack (>= 0.3.2)
144
150
  hashdiff (>= 0.4.0, < 2.0.0)
145
- zeitwerk (2.4.2)
151
+ zeitwerk (2.6.14)
146
152
 
147
153
  PLATFORMS
148
154
  x86_64-linux
149
155
 
150
156
  DEPENDENCIES
151
- rimless (~> 1.2)
157
+ rimless (~> 1.5)
152
158
  thor (~> 1.1)
153
159
 
154
160
  BUNDLED WITH
@@ -76,10 +76,15 @@ the creation of the `/etc/mdns.allow` file.
76
76
  After the installation and bootup processes are finished you should have a
77
77
  working Apache Kafka setup which includes the following:
78
78
 
79
- * A single node [Apache Kafka](https://kafka.apache.org/) broker via [Zookeeper](https://zookeeper.apache.org/)
80
- * [Confluent Schema Registry](https://docs.confluent.io/platform/current/schema-registry/index.html), used for [Apache Avro](https://avro.apache.org/docs/current/) schemas
81
- * [Lenses.io Schema Registry UI](https://github.com/lensesio/schema-registry-ui), you can access it via mDNS at http://schema-registry-ui.playground.local
82
- * A Ruby 2.5 enabled playground container with configured Rimless support
79
+ * A single node [Apache Kafka](https://kafka.apache.org/) (without Zookeeper,
80
+ KRaft) broker
81
+ * [Confluent Schema
82
+ Registry](https://docs.confluent.io/platform/current/schema-registry/index.html),
83
+ used for [Apache Avro](https://avro.apache.org/docs/current/) schemas
84
+ * [Lenses.io Schema Registry
85
+ UI](https://github.com/lensesio/schema-registry-ui), you can access it via
86
+ mDNS at http://schema-registry-ui.playground.local
87
+ * A Ruby 2.7 enabled playground container with configured Rimless support
83
88
 
84
89
  ## Examples
85
90
 
@@ -12,6 +12,7 @@ class CreateTopic < Thor
12
12
  desc: 'The number of replications'
13
13
  option :verbose, aliases: '-v', type: :boolean,
14
14
  desc: 'Enable verbose outputs'
15
+
15
16
  def create(name, *configs)
16
17
  debug! options
17
18
 
@@ -8,6 +8,7 @@ class DeleteTopic < Thor
8
8
  desc 'NAME', 'delete an existing Apache Kafka topic'
9
9
  option :verbose, aliases: '-v', type: :boolean,
10
10
  desc: 'Enable verbose outputs'
11
+
11
12
  def delete(name)
12
13
  debug! options
13
14
 
@@ -12,6 +12,7 @@ class ProduceTopic < Thor
12
12
  desc: 'The partition key to use to select the partition'
13
13
  option :verbose, aliases: '-v', type: :boolean,
14
14
  desc: 'Enable verbose outputs'
15
+
15
16
  def produce(topic, *files)
16
17
  debug! options
17
18
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
2
4
  require 'bundler/setup' # Set up gems listed in the Gemfile.
3
5
  require 'active_support'
@@ -30,7 +32,7 @@ KafkaClient = Kafka.new(Rimless.configuration.kafka_brokers, logger: AppLogger)
30
32
  # (Avahi, libnss[-mdns]). The default resolver of +Resolv+ does not include the
31
33
  # mDNS stack so we have to reconfigure it here for local usage only.
32
34
  #
33
- # See: https://docs.ruby-lang.org/en/2.5.0/Resolv.html
35
+ # See: https://docs.ruby-lang.org/en/2.7.0/Resolv.html
34
36
  require 'resolv'
35
37
  Resolv::DefaultResolver.replace_resolvers(
36
38
  [
@@ -1,35 +1,12 @@
1
1
  version: "3"
2
2
  services:
3
- zookeeper:
4
- image: zookeeper:3.7
5
- network_mode: bridge
6
- ports: ["2181"]
7
- ulimits:
8
- # Due to systemd/pam RLIMIT_NOFILE settings (max int inside the
9
- # container), the Java process seams to allocate huge limits which result
10
- # in a +unable to allocate file descriptor table - out of memory+ error.
11
- # Lowering this value fixes the issue for now.
12
- #
13
- # See: http://bit.ly/2U62A80
14
- # See: http://bit.ly/2T2Izit
15
- nofile:
16
- soft: 100000
17
- hard: 100000
18
-
19
3
  kafka:
20
- image: hausgold/kafka:2.1
4
+ image: hausgold/kafka:3.7
21
5
  network_mode: bridge
22
6
  environment:
23
7
  MDNS_HOSTNAME: kafka.playground.local
24
8
  # See: http://bit.ly/2UDzgqI for Kafka downscaling
25
9
  KAFKA_HEAP_OPTS: -Xmx256M -Xms32M
26
- links:
27
- - zookeeper
28
- extra_hosts:
29
- # Due to missing nss-mdns support on Alpine Linux
30
- # and the requirement to tell our self who we are
31
- # for Apache Kafka, we register ourself as hostent.
32
- - kafka.playground.local:127.0.0.1
33
10
  ulimits:
34
11
  # Due to systemd/pam RLIMIT_NOFILE settings (max int inside the
35
12
  # container), the Java process seams to allocate huge limits which result
@@ -43,17 +20,16 @@ services:
43
20
  hard: 100000
44
21
 
45
22
  schema-registry:
46
- image: hausgold/schema-registry:5.1.2
23
+ image: hausgold/schema-registry:7.6
47
24
  network_mode: bridge
48
25
  environment:
49
26
  MDNS_HOSTNAME: schema-registry.playground.local
27
+ SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: kafka.playground.local:9092
50
28
  # Set the default Apache Avro schema compatibility
51
29
  #
52
30
  # See: http://bit.ly/2TcpoY1
53
31
  # See: http://bit.ly/2Hfo4wj
54
32
  SCHEMA_REGISTRY_AVRO_COMPATIBILITY_LEVEL: full
55
- links:
56
- - zookeeper
57
33
  ulimits:
58
34
  # Due to systemd/pam RLIMIT_NOFILE settings (max int inside the
59
35
  # container), the Java process seams to allocate huge limits which result
@@ -0,0 +1,24 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "appraisal", "~> 2.4"
6
+ gem "bundler", "~> 2.3"
7
+ gem "countless", "~> 1.1"
8
+ gem "factory_bot", "~> 6.2", "< 6.4.5"
9
+ gem "guard-rspec", "~> 4.7"
10
+ gem "railties", "~> 6.1.0"
11
+ gem "rake", "~> 13.0"
12
+ gem "redcarpet", "~> 3.5"
13
+ gem "rspec", "~> 3.12"
14
+ gem "rubocop", "~> 1.28"
15
+ gem "rubocop-rails", "~> 2.14"
16
+ gem "rubocop-rspec", "~> 2.10"
17
+ gem "simplecov", ">= 0.22"
18
+ gem "timecop", ">= 0.9.6"
19
+ gem "vcr", "~> 6.0"
20
+ gem "yard", ">= 0.9.28"
21
+ gem "yard-activesupport-concern", ">= 0.0.1"
22
+ gem "activesupport", "~> 6.1.0"
23
+
24
+ gemspec path: "../"
@@ -0,0 +1,24 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "appraisal", "~> 2.4"
6
+ gem "bundler", "~> 2.3"
7
+ gem "countless", "~> 1.1"
8
+ gem "factory_bot", "~> 6.2", "< 6.4.5"
9
+ gem "guard-rspec", "~> 4.7"
10
+ gem "railties", "~> 7.1.0"
11
+ gem "rake", "~> 13.0"
12
+ gem "redcarpet", "~> 3.5"
13
+ gem "rspec", "~> 3.12"
14
+ gem "rubocop", "~> 1.28"
15
+ gem "rubocop-rails", "~> 2.14"
16
+ gem "rubocop-rspec", "~> 2.10"
17
+ gem "simplecov", ">= 0.22"
18
+ gem "timecop", ">= 0.9.6"
19
+ gem "vcr", "~> 6.0"
20
+ gem "yard", ">= 0.9.28"
21
+ gem "yard-activesupport-concern", ">= 0.0.1"
22
+ gem "activesupport", "~> 7.1.0"
23
+
24
+ gemspec path: "../"
@@ -41,10 +41,9 @@ module Rimless
41
41
  FileUtils.mkdir_p(File.dirname(dest))
42
42
  # Write the rendered file contents to the destination
43
43
  File.write(dest, ERB.new(File.read(src)).result(binding))
44
+ # Check the written file for correct JSON
45
+ validate_file(dest)
44
46
  end
45
-
46
- # Check the written file for correct JSON
47
- validate_file(dest)
48
47
  end
49
48
 
50
49
  # Check the given file for valid JSON.
@@ -19,9 +19,9 @@ module Rimless
19
19
  # occurence should be rare.
20
20
  Rimless
21
21
  .decode(params.raw_payload)
22
- .yield_self { |data| Sparsify(data, sparse_array: true) }
23
- .yield_self { |data| data.transform_keys { |key| key.delete('\\') } }
24
- .yield_self { |data| Unsparsify(data, sparse_array: true) }
22
+ .then { |data| Sparsify(data, sparse_array: true) }
23
+ .then { |data| data.transform_keys { |key| key.delete('\\') } }
24
+ .then { |data| Unsparsify(data, sparse_array: true) }
25
25
  .deep_symbolize_keys
26
26
  end
27
27
  end
data/lib/rimless/rspec.rb CHANGED
@@ -36,7 +36,7 @@ RSPEC_CONFIGURER.configure do |config|
36
36
  num = ENV.fetch('TEST_ENV_NUMBER', nil)
37
37
  num = '1' if num.empty?
38
38
 
39
- conf.compiled_avro_schema_path = \
39
+ conf.compiled_avro_schema_path =
40
40
  conf.compiled_avro_schema_path.join("test-worker-#{num}")
41
41
  end
42
42
  end
@@ -15,7 +15,7 @@ namespace :rimless do
15
15
 
16
16
  Rimless.consumer.consumer_groups.each do |consumer_group|
17
17
  consumer_group.topics.each do |topic|
18
- name = topic.name.split('.')[1..-1].join('.')
18
+ name = topic.name.split('.')[1..].join('.')
19
19
 
20
20
  puts "# Topic: #{name}"
21
21
  puts "# Consumer: #{topic.consumer}"
@@ -16,7 +16,7 @@ RSpec.describe CustomConsumer do
16
16
  end
17
17
 
18
18
  it 'returns the payload properties' do
19
- expect(action).to be_eql(['test', nil])
19
+ expect(action).to eql(['test', nil])
20
20
  end
21
21
  end
22
22
  end
@@ -3,7 +3,7 @@
3
3
  # The gem version details.
4
4
  module Rimless
5
5
  # The version of the +rimless+ gem
6
- VERSION = '1.5.1'
6
+ VERSION = '1.7.0'
7
7
 
8
8
  class << self
9
9
  # Returns the version of gem as a string.
data/rimless.gemspec CHANGED
@@ -33,7 +33,7 @@ Gem::Specification.new do |spec|
33
33
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
34
34
  spec.require_paths = ['lib']
35
35
 
36
- spec.required_ruby_version = '>= 2.5'
36
+ spec.required_ruby_version = '>= 2.7'
37
37
 
38
38
  spec.add_runtime_dependency 'activesupport', '>= 5.2'
39
39
  spec.add_runtime_dependency 'avro_turf', '~> 0.11.0'
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.5.1
4
+ version: 1.7.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: 2024-04-26 00:00:00.000000000 Z
11
+ date: 2024-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -216,6 +216,8 @@ files:
216
216
  - doc/kafka-playground/examples/rimless-produce
217
217
  - docker-compose.yml
218
218
  - gemfiles/rails_5.2.gemfile
219
+ - gemfiles/rails_6.1.gemfile
220
+ - gemfiles/rails_7.1.gemfile
219
221
  - lib/rimless.rb
220
222
  - lib/rimless/avro_helpers.rb
221
223
  - lib/rimless/avro_utils.rb
@@ -241,7 +243,6 @@ files:
241
243
  - lib/rimless/tasks/templates/custom_consumer_spec.rb
242
244
  - lib/rimless/tasks/templates/karafka.rb
243
245
  - lib/rimless/version.rb
244
- - log/development.log
245
246
  - rimless.gemspec
246
247
  homepage:
247
248
  licenses:
@@ -260,7 +261,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
260
261
  requirements:
261
262
  - - ">="
262
263
  - !ruby/object:Gem::Version
263
- version: '2.5'
264
+ version: '2.7'
264
265
  required_rubygems_version: !ruby/object:Gem::Requirement
265
266
  requirements:
266
267
  - - ">="
data/log/development.log DELETED
File without changes