From 8a2fcdaff4697a60d58f6d07042b5f8a8556fd3e Mon Sep 17 00:00:00 2001 From: Marko Kajzer Date: Thu, 11 Dec 2025 01:28:49 +0900 Subject: [PATCH 1/4] replace deprecated rack_response with error! --- .../api/helpers/error_helpers.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb b/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb index 2f12606..537c656 100644 --- a/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb +++ b/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb @@ -10,42 +10,42 @@ module ErrorHelpers Middleware.logger.error "#{e.class.name}: #{e.message}\n #{backtrace}" error = { type: 'other_error', message: e.message } error[:backtrace] = backtrace - rack_response(error.to_json, 400) + error!(error, 400) end # rescue document validation errors into detail json if SlackRubyBotServer::Config.mongoid? rescue_from Mongoid::Errors::Validations do |e| backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" - rack_response({ + error!({ type: 'param_error', message: e.document.errors.full_messages.uniq.join(', ') + '.', detail: e.document.errors.messages.each_with_object({}) do |(k, v), h| h[k] = v.uniq end - }.to_json, 400) + }, 400) end end rescue_from Grape::Exceptions::Validation do |e| backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" - rack_response({ + error!({ type: 'param_error', message: 'Invalid parameters.', detail: { e.params.join(', ') => [e.message] } - }.to_json, 400) + }, 400) end rescue_from Grape::Exceptions::ValidationErrors do |e| backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" - rack_response({ + error!({ type: 'param_error', message: 'Invalid parameters.', detail: e.errors.each_with_object({}) do |(k, v), h| # JSON does not permit having a key of type Array h[k.count == 1 ? k.first : k.join(', ')] = v end - }.to_json, 400) + }, 400) end end end From 69d20e5691f1c4a64f8bfdc3343ccf4e6288c10d Mon Sep 17 00:00:00 2001 From: Marko Kajzer Date: Thu, 11 Dec 2025 02:09:45 +0900 Subject: [PATCH 2/4] rubocop --- .../api/helpers/error_helpers.rb | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb b/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb index 537c656..8732c0f 100644 --- a/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb +++ b/lib/slack-ruby-bot-server/api/helpers/error_helpers.rb @@ -18,34 +18,34 @@ module ErrorHelpers backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" error!({ - type: 'param_error', - message: e.document.errors.full_messages.uniq.join(', ') + '.', - detail: e.document.errors.messages.each_with_object({}) do |(k, v), h| - h[k] = v.uniq - end - }, 400) + type: 'param_error', + message: e.document.errors.full_messages.uniq.join(', ') + '.', + detail: e.document.errors.messages.each_with_object({}) do |(k, v), h| + h[k] = v.uniq + end + }, 400) end end rescue_from Grape::Exceptions::Validation do |e| backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" error!({ - type: 'param_error', - message: 'Invalid parameters.', - detail: { e.params.join(', ') => [e.message] } - }, 400) + type: 'param_error', + message: 'Invalid parameters.', + detail: { e.params.join(', ') => [e.message] } + }, 400) end rescue_from Grape::Exceptions::ValidationErrors do |e| backtrace = e.backtrace[0..5].join("\n ") Middleware.logger.warn "#{e.class.name}: #{e.message}\n #{backtrace}" error!({ - type: 'param_error', - message: 'Invalid parameters.', - detail: e.errors.each_with_object({}) do |(k, v), h| - # JSON does not permit having a key of type Array - h[k.count == 1 ? k.first : k.join(', ')] = v - end - }, 400) + type: 'param_error', + message: 'Invalid parameters.', + detail: e.errors.each_with_object({}) do |(k, v), h| + # JSON does not permit having a key of type Array + h[k.count == 1 ? k.first : k.join(', ')] = v + end + }, 400) end end end From eee5eef6f45c837f9cc23f6e2fa51f178e28cd0b Mon Sep 17 00:00:00 2001 From: Marko Kajzer Date: Thu, 11 Dec 2025 02:14:04 +0900 Subject: [PATCH 3/4] changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cffd304..21efb96 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ### 2.2.1 (Next) * Your contribution here. +* [#180](https://github.com/slack-ruby/slack-ruby-bot-server/pull/180): grape v3 compatibility - [@markokajzer](https://github.com/markokajzer). ### 2.2.0 (2025/09/22) From 543ae0e01e579b0cd391844a38252a69a3ed1f5e Mon Sep 17 00:00:00 2001 From: Marko Kajzer Date: Thu, 11 Dec 2025 17:14:37 +0900 Subject: [PATCH 4/4] Update CHANGELOG.md Co-authored-by: Daniel (dB.) Doubrovkine --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 21efb96..1bcabe7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ ### 2.2.1 (Next) * Your contribution here. -* [#180](https://github.com/slack-ruby/slack-ruby-bot-server/pull/180): grape v3 compatibility - [@markokajzer](https://github.com/markokajzer). +* [#180](https://github.com/slack-ruby/slack-ruby-bot-server/pull/180): Add support for Grape v3 - [@markokajzer](https://github.com/markokajzer). ### 2.2.0 (2025/09/22)