Skip to content

Commit bba5601

Browse files
author
Сатаров Юрий Сергеевич
committed
Merge branch 'fix/DEX-2915/update-http-health-check-req' into 'master'
[DEX-2915] fix: rack v3 support Closes DEX-2915 See merge request nstmrt/rubygems/outbox!119
2 parents ee29645 + e866b05 commit bba5601

File tree

6 files changed

+35
-12
lines changed

6 files changed

+35
-12
lines changed

Appraisals

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,23 @@ versions_map = {
1111
"8.0" => %w[3.3]
1212
}
1313

14+
rack_versions = %w[2.0 3.0]
15+
1416
current_ruby_version = RUBY_VERSION.split(".").first(2).join(".")
1517

1618
versions_map.each do |rails_version, ruby_versions|
17-
ruby_versions.each do |ruby_version|
18-
next if ruby_version != current_ruby_version
19+
rack_versions.each do |rack_version|
20+
ruby_versions.each do |ruby_version|
21+
next if ruby_version != current_ruby_version
22+
23+
# rack v3 supported in Rails starting from 7.1
24+
next if rails_version.to_f < 7.1 && rack_version.to_f > 2
1925

20-
appraise "rails-#{rails_version}" do
21-
gem "rails", "~> #{rails_version}.0"
22-
gem "concurrent-ruby", "1.3.4" if rails_version.to_f < 7.1
26+
appraise "rails-#{rails_version}-rack-#{rack_version}" do
27+
gem "rails", "~> #{rails_version}.0"
28+
gem "rack", "~> #{rack_version}"
29+
gem "concurrent-ruby", "1.3.4" if rails_version.to_f < 7.1
30+
end
2331
end
2432
end
2533
end

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
1313

1414
### Fixed
1515

16+
## [6.20.0] - 2025-03-31
17+
18+
### Fixed
19+
20+
- Upgrade `http_health_check` dep
21+
22+
### Added
23+
- Rack v3 support
24+
1625
## [6.19.2] - 2025-03-03
1726

1827
### Fixed

app/models/sbmt/outbox/base_item.rb

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ module Outbox
1010
class BaseItem < Outbox.active_record_base_class
1111
self.abstract_class = true
1212

13+
delegate :retriable?, to: :class
14+
1315
class << self
1416
delegate :owner, :strict_order, to: :config
1517

@@ -145,10 +147,6 @@ def touch_processed_at
145147
self.processed_at = Time.current
146148
end
147149

148-
def retriable?
149-
self.class.retriable?
150-
end
151-
152150
def max_retries_exceeded?
153151
self.class.max_retries_exceeded?(errors_count)
154152
end

lib/sbmt/outbox/probes/metrics.rb

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# frozen_string_literal: true
22

3+
require "rackup/handler/webrick" if Gem::Version.new(::Rack.release) >= Gem::Version.new("3")
4+
35
module Sbmt
46
module Outbox
57
module Probes
@@ -29,7 +31,7 @@ def yabeda_port
2931

3032
def start_webrick(app, middlewares:, port:)
3133
Thread.new do
32-
::Rack::Handler::WEBrick.run(
34+
webrick.run(
3335
::Rack::Builder.new do
3436
middlewares.each do |middleware, options|
3537
use middleware, **options
@@ -42,6 +44,12 @@ def start_webrick(app, middlewares:, port:)
4244
end
4345
end
4446

47+
def webrick
48+
return ::Rack::Handler::WEBrick if Gem::Version.new(::Rack.release) < Gem::Version.new("3")
49+
50+
::Rackup::Handler::WEBrick
51+
end
52+
4553
def autostart_yabeda_server?
4654
Sbmt::Outbox.yaml_config.dig(:metrics, :enabled) || false
4755
end

lib/sbmt/outbox/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22

33
module Sbmt
44
module Outbox
5-
VERSION = "6.19.2"
5+
VERSION = "6.20.0"
66
end
77
end

sbmt-outbox.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Gem::Specification.new do |s|
4040
s.add_dependency "thor", ">= 0.20", "< 2"
4141
s.add_dependency "redlock", "> 1.0", "< 3.0"
4242
s.add_dependency "redis-client", ">= 0.14.1", "< 1.0.0"
43-
s.add_dependency "http_health_check", "~> 0.5"
43+
s.add_dependency "http_health_check", ">= 0.5"
4444
s.add_dependency "ruby-limiter", "~> 2.3"
4545

4646
s.add_development_dependency "appraisal"

0 commit comments

Comments
 (0)