diff options
author | Benjamin Neff <benjamin@coding4coffee.ch> | 2022-06-29 00:55:40 +0300 |
---|---|---|
committer | Benjamin Neff <benjamin@coding4coffee.ch> | 2022-06-29 14:27:37 +0300 |
commit | 739fc780c3b4cff075311e200b3639ad586ddf30 (patch) | |
tree | 4f9a0e722368209e4c2e92909b78ccb59df41b4e | |
parent | 2d9f133d308bd7624f10e65e3e6df5f640c4f38e (diff) |
Manually stringify keys to fix sidekiq 7.0 deprecation warning
closes #8359
-rw-r--r-- | Changelog.md | 1 | ||||
-rw-r--r-- | app/workers/deferred_dispatch.rb | 3 | ||||
-rw-r--r-- | app/workers/deferred_retraction.rb | 3 | ||||
-rw-r--r-- | app/workers/delete_post_from_service.rb | 3 | ||||
-rw-r--r-- | lib/diaspora/federated/retraction.rb | 3 | ||||
-rw-r--r-- | lib/diaspora/federation/dispatcher.rb | 4 | ||||
-rw-r--r-- | spec/integration/receiving_spec.rb | 2 | ||||
-rw-r--r-- | spec/lib/diaspora/federated/contact_retraction_spec.rb | 2 | ||||
-rw-r--r-- | spec/lib/diaspora/federated/retraction_spec.rb | 14 | ||||
-rw-r--r-- | spec/lib/diaspora/federation/dispatcher_spec.rb | 3 | ||||
-rw-r--r-- | spec/shared_behaviors/dispatcher.rb | 2 | ||||
-rw-r--r-- | spec/support/user_methods.rb | 7 |
12 files changed, 22 insertions, 25 deletions
diff --git a/Changelog.md b/Changelog.md index 20ed84cd0..33ba0043f 100644 --- a/Changelog.md +++ b/Changelog.md @@ -3,6 +3,7 @@ ## Refactor * Fix order-dependent jasmine test failures and switch to random order [#8333](https://github.com/diaspora/diaspora/pull/8333) * Get rid of some uses of "execute_script" in feature specs [#8331](https://github.com/diaspora/diaspora/pull/8331) +* Fix deprecation warnings for sidekiq 7.0 [#8359](https://github.com/diaspora/diaspora/pull/8359) ## Bug fixes diff --git a/app/workers/deferred_dispatch.rb b/app/workers/deferred_dispatch.rb index 24d2eb108..c60ab11d1 100644 --- a/app/workers/deferred_dispatch.rb +++ b/app/workers/deferred_dispatch.rb @@ -11,9 +11,8 @@ module Workers def perform(user_id, object_class_name, object_id, opts) user = User.find(user_id) object = object_class_name.constantize.find(object_id) - opts = ActiveSupport::HashWithIndifferentAccess.new(opts) - Diaspora::Federation::Dispatcher.build(user, object, opts).dispatch + Diaspora::Federation::Dispatcher.build(user, object, opts.deep_symbolize_keys).dispatch rescue ActiveRecord::RecordNotFound # The target got deleted before the job was run end end diff --git a/app/workers/deferred_retraction.rb b/app/workers/deferred_retraction.rb index d8a3220fd..1593d49e0 100644 --- a/app/workers/deferred_retraction.rb +++ b/app/workers/deferred_retraction.rb @@ -12,9 +12,8 @@ module Workers user = User.find(user_id) subscribers = Person.where(id: recipient_ids) object = retraction_class.constantize.new(retraction_data.deep_symbolize_keys, subscribers) - opts = ActiveSupport::HashWithIndifferentAccess.new(opts) - Diaspora::Federation::Dispatcher.build(user, object, opts).dispatch + Diaspora::Federation::Dispatcher.build(user, object, opts.deep_symbolize_keys).dispatch end end end diff --git a/app/workers/delete_post_from_service.rb b/app/workers/delete_post_from_service.rb index c97a7c077..6eae7c43b 100644 --- a/app/workers/delete_post_from_service.rb +++ b/app/workers/delete_post_from_service.rb @@ -10,8 +10,7 @@ module Workers def perform(service_id, opts) service = Service.find_by_id(service_id) - opts = ActiveSupport::HashWithIndifferentAccess.new(opts) - service.delete_from_service(opts) + service.delete_from_service(opts.deep_symbolize_keys) end end end diff --git a/lib/diaspora/federated/retraction.rb b/lib/diaspora/federated/retraction.rb index b0ea20dbc..538ba7e9b 100644 --- a/lib/diaspora/federated/retraction.rb +++ b/lib/diaspora/federated/retraction.rb @@ -36,7 +36,8 @@ class Retraction def defer_dispatch(user, include_target_author=true) subscribers = dispatch_subscribers(include_target_author) - Workers::DeferredRetraction.perform_async(user.id, self.class.to_s, data, subscribers.map(&:id), service_opts(user)) + Workers::DeferredRetraction.perform_async(user.id, self.class.to_s, data.deep_stringify_keys, + subscribers.map(&:id), service_opts(user).deep_stringify_keys) end def perform diff --git a/lib/diaspora/federation/dispatcher.rb b/lib/diaspora/federation/dispatcher.rb index 4e03e725f..2ad441715 100644 --- a/lib/diaspora/federation/dispatcher.rb +++ b/lib/diaspora/federation/dispatcher.rb @@ -21,7 +21,7 @@ module Diaspora end def self.defer_dispatch(sender, object, opts={}) - Workers::DeferredDispatch.perform_async(sender.id, object.class.to_s, object.id, opts) + Workers::DeferredDispatch.perform_async(sender.id, object.class.to_s, object.id, opts.deep_stringify_keys) end def dispatch @@ -69,7 +69,7 @@ module Diaspora when StatusMessage each_service {|service| Workers::PostToService.perform_async(service.id, object.id, opts[:url]) } when Retraction - each_service {|service| Workers::DeletePostFromService.perform_async(service.id, opts) } + each_service {|service| Workers::DeletePostFromService.perform_async(service.id, opts.deep_stringify_keys) } end end diff --git a/spec/integration/receiving_spec.rb b/spec/integration/receiving_spec.rb index e7a44cfbc..6a16bd8da 100644 --- a/spec/integration/receiving_spec.rb +++ b/spec/integration/receiving_spec.rb @@ -28,7 +28,7 @@ describe 'a user receives a post', :type => :request do bob.aspects.reload bob.add_to_streams(sm, [@bobs_aspect]) queue.drain_all - bob.dispatch_post(sm, :to => @bobs_aspect) + bob.dispatch_post(sm) end expect(alice.visible_shareables(Post).count(:all)).to eq(1) diff --git a/spec/lib/diaspora/federated/contact_retraction_spec.rb b/spec/lib/diaspora/federated/contact_retraction_spec.rb index 04e19ea1c..efa6e4ec0 100644 --- a/spec/lib/diaspora/federated/contact_retraction_spec.rb +++ b/spec/lib/diaspora/federated/contact_retraction_spec.rb @@ -53,7 +53,7 @@ describe ContactRetraction do federation_retraction_data = Diaspora::Federation::Entities.contact(contact).to_h expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, "ContactRetraction", federation_retraction_data, [remote_raphael.id], {} + local_luke.id, "ContactRetraction", federation_retraction_data.deep_stringify_keys, [remote_raphael.id], {} ) retraction.defer_dispatch(local_luke) diff --git a/spec/lib/diaspora/federated/retraction_spec.rb b/spec/lib/diaspora/federated/retraction_spec.rb index ff1149064..841645ec7 100644 --- a/spec/lib/diaspora/federated/retraction_spec.rb +++ b/spec/lib/diaspora/federated/retraction_spec.rb @@ -70,7 +70,8 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, "Retraction", federation_retraction.to_h, [remote_raphael.id], service_types: [] + local_luke.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [remote_raphael.id], + "service_types" => [] ) retraction.defer_dispatch(local_luke) @@ -85,7 +86,8 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - alice.id, "Retraction", federation_retraction.to_h, [], service_types: ["Services::Twitter"], tweet_id: "123" + alice.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [], + "service_types" => ["Services::Twitter"], "tweet_id" => "123" ) retraction.defer_dispatch(alice) @@ -96,7 +98,7 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - alice.id, "Retraction", federation_retraction.to_h, [], service_types: [] + alice.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [], "service_types" => [] ) retraction.defer_dispatch(alice) @@ -109,7 +111,7 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, "Retraction", federation_retraction.to_h, [remote_raphael.id], {} + local_luke.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [remote_raphael.id], {} ) retraction.defer_dispatch(local_luke) @@ -124,7 +126,7 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, "Retraction", federation_retraction.to_h, [remote_raphael.id], {} + local_luke.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [remote_raphael.id], {} ) retraction.defer_dispatch(local_luke) @@ -135,7 +137,7 @@ describe Retraction do federation_retraction = Diaspora::Federation::Entities.retraction(retraction) expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, "Retraction", federation_retraction.to_h, [], {} + local_luke.id, "Retraction", federation_retraction.to_h.deep_stringify_keys, [], {} ) retraction.defer_dispatch(local_luke, false) diff --git a/spec/lib/diaspora/federation/dispatcher_spec.rb b/spec/lib/diaspora/federation/dispatcher_spec.rb index a4faa0ab9..723267e78 100644 --- a/spec/lib/diaspora/federation/dispatcher_spec.rb +++ b/spec/lib/diaspora/federation/dispatcher_spec.rb @@ -57,7 +57,8 @@ describe Diaspora::Federation::Dispatcher do describe ".defer_dispatch" do it "queues a job for dispatch" do - expect(Workers::DeferredDispatch).to receive(:perform_async).with(alice.id, "StatusMessage", post.id, opts) + expect(Workers::DeferredDispatch) + .to receive(:perform_async).with(alice.id, "StatusMessage", post.id, opts.deep_stringify_keys) described_class.defer_dispatch(alice, post, opts) end end diff --git a/spec/shared_behaviors/dispatcher.rb b/spec/shared_behaviors/dispatcher.rb index 2b42dec00..c99e66228 100644 --- a/spec/shared_behaviors/dispatcher.rb +++ b/spec/shared_behaviors/dispatcher.rb @@ -17,7 +17,7 @@ shared_examples "a dispatcher" do it "delivers a Retraction of a Post to specified services" do opts = {service_types: "Services::Twitter", tweet_id: "123"} - expect(Workers::DeletePostFromService).to receive(:perform_async).with(twitter.id, opts) + expect(Workers::DeletePostFromService).to receive(:perform_async).with(twitter.id, opts.deep_stringify_keys) retraction = Retraction.for(post) Diaspora::Federation::Dispatcher.build(alice, retraction, opts).dispatch diff --git a/spec/support/user_methods.rb b/spec/support/user_methods.rb index 7e37e1251..01802dcc8 100644 --- a/spec/support/user_methods.rb +++ b/spec/support/user_methods.rb @@ -26,12 +26,7 @@ class User p.aspects = aspects if p.save! self.aspects.reload - - dispatch_opts = { - url: Rails.application.routes.url_helpers.post_url(p, host: AppConfig.pod_uri.to_s), - to: opts[:to] - } - dispatch_post(p, dispatch_opts) + dispatch_post(p, url: Rails.application.routes.url_helpers.post_url(p, host: AppConfig.pod_uri.to_s)) end unless opts[:created_at] p.created_at = Time.now - 1 |