action_subscriber 5.3.3-java → 5.4.0-java

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: fa97fd626af0fc640175fb24134710f56720d59423c6202257ea0ae430cf184d
4
- data.tar.gz: d6afd3be203fdb1674ee5e5ffe5b9827525072a76839347f909e60a4ad3e2477
3
+ metadata.gz: b0846d5d31b7bcb08df14fd2750ed8bb87439fd1500bed6ac7f51a67affb427a
4
+ data.tar.gz: 3dddf19b531a4ca7a98755625522e45668be95fce609320411f2cef94a3c6afa
5
5
  SHA512:
6
- metadata.gz: 5cb3e64190f4f5c25c652d8f239d10d88db283637e8ec19793ee714a53192d009a5b0305bf46f451fd784f845300e50804b7ccf77fac912b88f2e8d47daaa03b
7
- data.tar.gz: ca9e016b271a01e0dec7110fcea6a84a3c75f85b6a0d8f5fbca7488f5eda07354cb72691f01465c28889aa15b12d323efadd0b4022863626d8677f05a4123f9c
6
+ metadata.gz: 280841ac453b4a1ea915ecee41f61be8a1d3c34d915b6e6c453c70ad39d5b313244d9ee247028bf5c343e78e394dd11879a35cee2378a5e0a98d9fb037cedd3d
7
+ data.tar.gz: d52d886b80a40adc9ecf055e47b286fdc13532688c2c2d5297b11c86442b096c1efd52596661b16a79b92cf75bae8ee25e18989b8001821aa4e7abb7917d52df
data/.circleci/config.yml CHANGED
@@ -1,63 +1,90 @@
1
- # Inspired by: http://mikebian.co/running-tests-against-multiple-ruby-versions-using-circleci/
2
-
3
1
  version: 2.1
4
2
 
5
- orbs:
6
- ruby: circleci/ruby@1.1
7
-
8
-
9
- # If you want to work on `action_subscriber` you will need to have a rabbitmq instance running locally on port 5672 with a management plugin enabled on port 15672. Usually the easiest way to accomplish this is to use docker and run the command:
10
-
11
- # ```
12
-
13
3
  jobs:
14
- test:
15
- parallelism: 1
4
+ build_and_test:
16
5
  parameters:
17
- ruby-image:
6
+ docker_image:
18
7
  type: string
8
+ description: "The Ruby or JRuby Docker image to test against"
9
+
19
10
  docker:
20
- - image: << parameters.ruby-image >>
21
- - image: rabbitmq:3.6.6-management
11
+ # 1. The Primary Container (where your code actually runs)
12
+ - image: << parameters.docker_image >>
13
+ environment:
14
+ JRUBY_OPTS: "-J-Xmx1024m"
15
+ RAILS_ENV: test
16
+ # Tell your app where to find RabbitMQ (if your app uses this ENV var)
17
+ RABBITMQ_URL: "amqp://guest:guest@localhost:5672"
18
+
19
+ # 2. The Service Container (runs in the background)
20
+ - image: rabbitmq:3.12-management
21
+ # If you need the management UI for debugging, use `rabbitmq:3-management` instead
22
+ # environment:
23
+ # RABBITMQ_DEFAULT_USER: guest
24
+ # RABBITMQ_DEFAULT_PASS: guest
25
+
26
+ working_directory: ~/project
22
27
 
23
28
  steps:
24
- - checkout
25
- - run:
26
- name: install dockerize
27
- command: wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz && sudo tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
28
- environment:
29
- DOCKERIZE_VERSION: v0.3.0
30
- # - run:
31
- # name: Wait for rabbitmq
32
- # command: dockerize -wait tcp://localhost:5672 -timeout 1m
33
29
  - run:
34
- name: Install bundler
35
- command: gem install bundler
30
+ name: Install System Dependencies
31
+ command: |
32
+ if [ "$(id -u)" = "0" ]; then
33
+ apt-get update && apt-get install -y build-essential git
34
+ else
35
+ sudo apt-get update && sudo apt-get install -y build-essential git
36
+ fi
37
+ - checkout
38
+ # Note: We added the docker_image parameter to the cache key
39
+ # so MRI and JRuby gems don't conflict.
40
+ - restore_cache:
41
+ keys:
42
+ - v1-gems-<< parameters.docker_image >>-{{ checksum "Gemfile.lock" }}
43
+ - v1-gems-<< parameters.docker_image >>-
44
+
36
45
  - run:
37
- name: Which bundler?
38
- command: bundle -v
46
+ name: Install Ruby Dependencies
47
+ command: |
48
+ gem install bundler
49
+ bundle config set --local path 'vendor/bundle'
50
+ bundle install --jobs=4 --retry=3
51
+
52
+ - save_cache:
53
+ paths:
54
+ - ./vendor/bundle
55
+ key: v1-gems-<< parameters.docker_image >>-{{ checksum "Gemfile.lock" }}
56
+
57
+ # Wait for RabbitMQ to be ready before running tests.
58
+ # Service containers can sometimes take a few seconds to boot up.
39
59
  - run:
40
- name: bundle install
41
- command: bundle install
60
+ name: Wait for RabbitMQ
61
+ command: |
62
+ if [ "$(id -u)" = "0" ]; then
63
+ apt-get install -y netcat-openbsd
64
+ else
65
+ sudo apt-get install -y netcat-openbsd
66
+ fi
67
+
68
+ echo "Waiting for RabbitMQ to start..."
69
+ while ! nc -z localhost 5672; do
70
+ sleep 1
71
+ done
72
+ echo "RabbitMQ is ready!"
73
+
42
74
  - run:
43
- name: rspec
75
+ name: Run Tests
44
76
  command: bundle exec rspec
45
77
 
46
- # strangely, there seems to be very little documentation about exactly how martix builds work.
47
- # By defining a param inside your job definition, Circle CI will automatically spawn a job for
48
- # unique param value passed via `matrix`. Neat!
49
- # https://circleci.com/blog/circleci-matrix-jobs/
50
78
  workflows:
51
- build_and_test:
79
+ version: 2
80
+ ruby_compatibility_matrix:
52
81
  jobs:
53
- - test:
82
+ - build_and_test:
83
+ name: test-<< matrix.docker_image >>
54
84
  matrix:
55
85
  parameters:
56
- ruby-image:
57
- - circleci/ruby:2.6
58
- - circleci/ruby:2.7
59
- - cimg/ruby:3.0
60
- - cimg/ruby:3.1
61
- - circleci/jruby:9.2
62
- - circleci/jruby:9.3
63
- - circleci/jruby:9.4
86
+ docker_image:
87
+ - "cimg/ruby:3.1"
88
+ - "cimg/ruby:3.4"
89
+ - "jruby:9.4"
90
+ - "jruby:10.0"
@@ -18,7 +18,9 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "activesupport", ">= 3.2"
21
+ spec.required_ruby_version = '>= 3.1.0'
22
+
23
+ spec.add_dependency "activesupport", ">= 6.0"
22
24
 
23
25
  if ENV["PLATFORM"] == "java" || ::RUBY_PLATFORM == "java"
24
26
  spec.platform = "java"
@@ -30,11 +32,11 @@ Gem::Specification.new do |spec|
30
32
  spec.add_dependency "middleware"
31
33
  spec.add_dependency "thor"
32
34
 
33
- spec.add_development_dependency "active_publisher", "~> 0.1.5"
34
- spec.add_development_dependency "activerecord", ">= 3.2"
35
- spec.add_development_dependency "bundler", ">= 1.6"
35
+ spec.add_development_dependency "active_publisher", "1.6.0.pre1"
36
+ spec.add_development_dependency "activerecord", ">= 6.0"
37
+ spec.add_development_dependency "bundler"
36
38
  spec.add_development_dependency "pry-nav"
37
- spec.add_development_dependency "rabbitmq_http_api_client", "~> 1.2.0"
39
+ spec.add_development_dependency "rabbitmq_http_api_client", "~> 1.15.0"
38
40
  spec.add_development_dependency "rspec", "~> 3.0"
39
41
  spec.add_development_dependency "rake"
40
42
  spec.add_development_dependency "simplecov"
data/changelog.md ADDED
@@ -0,0 +1,5 @@
1
+ ### Changelog
2
+
3
+
4
+ ### 5.4.0 - April 10, 2026
5
+ Added Ruby 3.4 / JRuby 10 support.
@@ -67,7 +67,7 @@ module ActionSubscriber
67
67
 
68
68
  yaml_config = {}
69
69
  absolute_config_path = ::File.expand_path(::File.join("config", "action_subscriber.yml"))
70
- if ::File.exists?(absolute_config_path)
70
+ if ::File.exist?(absolute_config_path)
71
71
  erb_yaml = ::ERB.new(::File.read(absolute_config_path)).result
72
72
  # Defined in Psych 3.2+ and the new canonical way to load trusted documents:
73
73
  # https://github.com/ruby/psych/issues/533#issuecomment-1019363688
@@ -16,7 +16,7 @@ module ActionSubscriber
16
16
  :execution_interval => ::ActionSubscriber.config.connection_reaping_interval,
17
17
  :timeout_interval => ::ActionSubscriber.config.connection_reaping_timeout_interval) do
18
18
 
19
- ::ActiveRecord::Base.clear_active_connections!
19
+ ::ActiveRecord::Base.connection_handler.clear_active_connections!
20
20
  end
21
21
 
22
22
  timed_task.execute
@@ -1,3 +1,3 @@
1
1
  module ActionSubscriber
2
- VERSION = "5.3.3"
2
+ VERSION = "5.4.0"
3
3
  end
@@ -6,7 +6,7 @@ describe ActionSubscriber::Middleware::ActiveRecord::ConnectionManagement do
6
6
  before {
7
7
  pool = double("pool")
8
8
  allow(pool).to receive(:with_connection).and_yield
9
- allow(ActiveRecord::Base).to receive(:clear_active_connections!)
9
+ allow(ActiveRecord::Base.connection_handler).to receive(:clear_active_connections!)
10
10
  allow(ActiveRecord::Base).to receive(:connection_pool).and_return(pool)
11
11
  }
12
12
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: action_subscriber
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.3.3
4
+ version: 5.4.0
5
5
  platform: java
6
6
  authors:
7
7
  - Brian Stien
@@ -9,188 +9,187 @@ authors:
9
9
  - Brandon Dewitt
10
10
  - Devin Christensen
11
11
  - Michael Ries
12
- autorequire:
13
12
  bindir: bin
14
13
  cert_chain: []
15
- date: 2022-12-13 00:00:00.000000000 Z
14
+ date: 1980-01-02 00:00:00.000000000 Z
16
15
  dependencies:
17
16
  - !ruby/object:Gem::Dependency
17
+ name: activesupport
18
18
  requirement: !ruby/object:Gem::Requirement
19
19
  requirements:
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: '3.2'
23
- name: activesupport
24
- prerelease: false
22
+ version: '6.0'
25
23
  type: :runtime
24
+ prerelease: false
26
25
  version_requirements: !ruby/object:Gem::Requirement
27
26
  requirements:
28
27
  - - ">="
29
28
  - !ruby/object:Gem::Version
30
- version: '3.2'
29
+ version: '6.0'
31
30
  - !ruby/object:Gem::Dependency
31
+ name: march_hare
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
34
  - - "~>"
35
35
  - !ruby/object:Gem::Version
36
36
  version: '4.4'
37
- name: march_hare
38
- prerelease: false
39
37
  type: :runtime
38
+ prerelease: false
40
39
  version_requirements: !ruby/object:Gem::Requirement
41
40
  requirements:
42
41
  - - "~>"
43
42
  - !ruby/object:Gem::Version
44
43
  version: '4.4'
45
44
  - !ruby/object:Gem::Dependency
45
+ name: concurrent-ruby
46
46
  requirement: !ruby/object:Gem::Requirement
47
47
  requirements:
48
48
  - - ">="
49
49
  - !ruby/object:Gem::Version
50
50
  version: '0'
51
- name: concurrent-ruby
52
- prerelease: false
53
51
  type: :runtime
52
+ prerelease: false
54
53
  version_requirements: !ruby/object:Gem::Requirement
55
54
  requirements:
56
55
  - - ">="
57
56
  - !ruby/object:Gem::Version
58
57
  version: '0'
59
58
  - !ruby/object:Gem::Dependency
59
+ name: middleware
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
62
  - - ">="
63
63
  - !ruby/object:Gem::Version
64
64
  version: '0'
65
- name: middleware
66
- prerelease: false
67
65
  type: :runtime
66
+ prerelease: false
68
67
  version_requirements: !ruby/object:Gem::Requirement
69
68
  requirements:
70
69
  - - ">="
71
70
  - !ruby/object:Gem::Version
72
71
  version: '0'
73
72
  - !ruby/object:Gem::Dependency
73
+ name: thor
74
74
  requirement: !ruby/object:Gem::Requirement
75
75
  requirements:
76
76
  - - ">="
77
77
  - !ruby/object:Gem::Version
78
78
  version: '0'
79
- name: thor
80
- prerelease: false
81
79
  type: :runtime
80
+ prerelease: false
82
81
  version_requirements: !ruby/object:Gem::Requirement
83
82
  requirements:
84
83
  - - ">="
85
84
  - !ruby/object:Gem::Version
86
85
  version: '0'
87
86
  - !ruby/object:Gem::Dependency
87
+ name: active_publisher
88
88
  requirement: !ruby/object:Gem::Requirement
89
89
  requirements:
90
- - - "~>"
90
+ - - '='
91
91
  - !ruby/object:Gem::Version
92
- version: 0.1.5
93
- name: active_publisher
94
- prerelease: false
92
+ version: 1.6.0.pre1
95
93
  type: :development
94
+ prerelease: false
96
95
  version_requirements: !ruby/object:Gem::Requirement
97
96
  requirements:
98
- - - "~>"
97
+ - - '='
99
98
  - !ruby/object:Gem::Version
100
- version: 0.1.5
99
+ version: 1.6.0.pre1
101
100
  - !ruby/object:Gem::Dependency
101
+ name: activerecord
102
102
  requirement: !ruby/object:Gem::Requirement
103
103
  requirements:
104
104
  - - ">="
105
105
  - !ruby/object:Gem::Version
106
- version: '3.2'
107
- name: activerecord
108
- prerelease: false
106
+ version: '6.0'
109
107
  type: :development
108
+ prerelease: false
110
109
  version_requirements: !ruby/object:Gem::Requirement
111
110
  requirements:
112
111
  - - ">="
113
112
  - !ruby/object:Gem::Version
114
- version: '3.2'
113
+ version: '6.0'
115
114
  - !ruby/object:Gem::Dependency
115
+ name: bundler
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
118
  - - ">="
119
119
  - !ruby/object:Gem::Version
120
- version: '1.6'
121
- name: bundler
122
- prerelease: false
120
+ version: '0'
123
121
  type: :development
122
+ prerelease: false
124
123
  version_requirements: !ruby/object:Gem::Requirement
125
124
  requirements:
126
125
  - - ">="
127
126
  - !ruby/object:Gem::Version
128
- version: '1.6'
127
+ version: '0'
129
128
  - !ruby/object:Gem::Dependency
129
+ name: pry-nav
130
130
  requirement: !ruby/object:Gem::Requirement
131
131
  requirements:
132
132
  - - ">="
133
133
  - !ruby/object:Gem::Version
134
134
  version: '0'
135
- name: pry-nav
136
- prerelease: false
137
135
  type: :development
136
+ prerelease: false
138
137
  version_requirements: !ruby/object:Gem::Requirement
139
138
  requirements:
140
139
  - - ">="
141
140
  - !ruby/object:Gem::Version
142
141
  version: '0'
143
142
  - !ruby/object:Gem::Dependency
143
+ name: rabbitmq_http_api_client
144
144
  requirement: !ruby/object:Gem::Requirement
145
145
  requirements:
146
146
  - - "~>"
147
147
  - !ruby/object:Gem::Version
148
- version: 1.2.0
149
- name: rabbitmq_http_api_client
150
- prerelease: false
148
+ version: 1.15.0
151
149
  type: :development
150
+ prerelease: false
152
151
  version_requirements: !ruby/object:Gem::Requirement
153
152
  requirements:
154
153
  - - "~>"
155
154
  - !ruby/object:Gem::Version
156
- version: 1.2.0
155
+ version: 1.15.0
157
156
  - !ruby/object:Gem::Dependency
157
+ name: rspec
158
158
  requirement: !ruby/object:Gem::Requirement
159
159
  requirements:
160
160
  - - "~>"
161
161
  - !ruby/object:Gem::Version
162
162
  version: '3.0'
163
- name: rspec
164
- prerelease: false
165
163
  type: :development
164
+ prerelease: false
166
165
  version_requirements: !ruby/object:Gem::Requirement
167
166
  requirements:
168
167
  - - "~>"
169
168
  - !ruby/object:Gem::Version
170
169
  version: '3.0'
171
170
  - !ruby/object:Gem::Dependency
171
+ name: rake
172
172
  requirement: !ruby/object:Gem::Requirement
173
173
  requirements:
174
174
  - - ">="
175
175
  - !ruby/object:Gem::Version
176
176
  version: '0'
177
- name: rake
178
- prerelease: false
179
177
  type: :development
178
+ prerelease: false
180
179
  version_requirements: !ruby/object:Gem::Requirement
181
180
  requirements:
182
181
  - - ">="
183
182
  - !ruby/object:Gem::Version
184
183
  version: '0'
185
184
  - !ruby/object:Gem::Dependency
185
+ name: simplecov
186
186
  requirement: !ruby/object:Gem::Requirement
187
187
  requirements:
188
188
  - - ">="
189
189
  - !ruby/object:Gem::Version
190
190
  version: '0'
191
- name: simplecov
192
- prerelease: false
193
191
  type: :development
192
+ prerelease: false
194
193
  version_requirements: !ruby/object:Gem::Requirement
195
194
  requirements:
196
195
  - - ">="
@@ -220,6 +219,7 @@ files:
220
219
  - Rakefile
221
220
  - action_subscriber.gemspec
222
221
  - bin/action_subscriber
222
+ - changelog.md
223
223
  - examples/at_least_once.rb
224
224
  - examples/at_most_once.rb
225
225
  - examples/basic_subscriber.rb
@@ -285,7 +285,6 @@ homepage: https://github.com/mxenabled/action_subscriber
285
285
  licenses:
286
286
  - MIT
287
287
  metadata: {}
288
- post_install_message:
289
288
  rdoc_options: []
290
289
  require_paths:
291
290
  - lib
@@ -293,15 +292,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
293
292
  requirements:
294
293
  - - ">="
295
294
  - !ruby/object:Gem::Version
296
- version: '0'
295
+ version: 3.1.0
297
296
  required_rubygems_version: !ruby/object:Gem::Requirement
298
297
  requirements:
299
298
  - - ">="
300
299
  - !ruby/object:Gem::Version
301
300
  version: '0'
302
301
  requirements: []
303
- rubygems_version: 3.2.29
304
- signing_key:
302
+ rubygems_version: 4.0.9
305
303
  specification_version: 4
306
304
  summary: ActionSubscriber is a DSL that allows a rails app to consume messages from
307
305
  a RabbitMQ broker.