Skip to content

Bump redis and sidekiq

libautomation requested to merge dependabot/bundler/redis-and-sidekiq-4.4.0 into main

Bumps redis and sidekiq. These dependencies needed to be updated together. Updates redis from 4.1.4 to 4.4.0

Changelog

Sourced from redis's changelog.

4.4.0

  • Redis cluster: fix cross-slot validation in pipelines. Fix ##1019.
  • Add support for XAUTOCLAIM. See #1018.
  • Properly issue READONLY when reconnecting to replicas. Fix #1017.
  • Make del a noop if passed an empty list of keys. See #998.
  • Add support for ZINTER. See #995.

4.3.1

  • Fix password authentication against redis server 5 and older.

4.3.0

  • Add the TYPE argument to scan and scan_each. See #985.
  • Support AUTH command for ACL. See #967.

4.2.5

  • Optimize the ruby connector write buffering. See #964.

4.2.4

  • Fix bytesize calculations in the ruby connector, and work on a copy of the buffer. Fix #961, #962.

4.2.3

  • Use io/wait instead of IO.select in the ruby connector. See #960.
  • Use exception free non blocking IOs in the ruby connector. See #926.
  • Prevent corruption of the client when an interrupt happen during inside a pipeline block. See #945.

4.2.2

  • Fix WATCH support for Redis::Distributed. See #941.
  • Fix handling of empty stream responses. See #905, #929.

4.2.1

  • Fix exists? returning an actual boolean when called with multiple keys. See #918.
  • Setting Redis.exists_returns_integer = false disables warning message about new behaviour. See #920.

4.2.0

  • Convert commands to accept keyword arguments rather than option hashes. This both help catching typos, and reduce needless allocations.
  • Deprecate the synchrony driver. It will be removed in 5.0 and hopefully maintained as a separate gem. See #915.
  • Make Redis#exists variadic, will return an Integer if called with multiple keys.
  • Add Redis#exists? to get a Boolean if any of the keys exists.
  • Redis#exists when called with a single key will warn that future versions will return an Integer. Set Redis.exists_returns_integer = true to opt-in to the new behavior.
  • Support keepttl ooption in set. See #913.

... (truncated)

Commits
  • 5dd7df9 Release 4.4.0
  • a200ee3 Merge pull request #1020 from supercaracal/fix-a-validation-bug-for-pipelinin...
  • 691aef7 Update test/cluster_client_pipelining_test.rb
  • 25715d5 Fix a bug for cross-slot validation for pipelining
  • baf5706 Merge pull request #1018 from vavato-be/add-xautoclaim
  • 73870ec add XAUTOCLAIM command, added to Redis in 6.2
  • ae80708 Issue READONLY as part of the client connection
  • 01768da Handle delete of empty list of keys (#998)
  • 7bb6b63 Merge pull request #995 from SkipKayhil/add-zinter
  • 68fe7b5 add ZINTER command, added to Redis in 6.2
  • Additional commits viewable in compare view

Updates `sidekiq` from 5.2.9 to 6.2.2
Changelog

Sourced from sidekiq's changelog.

6.2.2

  • Reduce retry jitter, add jitter to sidekiq_retry_in values #4957
  • Minimize scheduler load on Redis at scale #4882
  • Improve logging of delay jobs [#4904, BuonOno]
  • Minor CSS improvements for buttons and tables, design PRs always welcome!
  • Tweak Web UI Cache-Control header #4966
  • Rename internal API class Sidekiq::Job to Sidekiq::JobRecord #4955

6.2.1

  • Update RTT warning logic to handle transient RTT spikes #4851
  • Fix very low priority CVE on unescaped queue name #4852
  • Add note about sessions and Rails apps in API mode

6.2.0

  • Store Redis RTT and log if poor #4824
  • Add process/thread stats to Busy page #4806
  • Improve Web UI on mobile devices #4840
  • Refactor Web UI session usage #4804 Numerous people have hit "Forbidden" errors and struggled with Sidekiq's Web UI session requirement. If you have code in your initializer for Web sessions, it's quite possible it will need to be removed. Here's an overview:
Sidekiq::Web needs a valid Rack session for CSRF protection. If this is a Rails app,
make sure you mount Sidekiq::Web *inside* your routes in `config/routes.rb` so
Sidekiq can reuse the Rails session:

  Rails.application.routes.draw do
    mount Sidekiq::Web => "/sidekiq"
    ....
  end

If this is a bare Rack app, use a session middleware before Sidekiq::Web:

  # first, use IRB to create a shared secret key for sessions and commit it
  require 'securerandom'; File.open(".session.key", "w") {|f| f.write(SecureRandom.hex(32)) }

  # now, update your Rack app to include the secret with a session cookie middleware
  use Rack::Session::Cookie, secret: File.read(".session.key"), same_site: true, max_age: 86400
  run Sidekiq::Web

If this is a Rails app in API mode, you need to enable sessions.

  https://guides.rubyonrails.org/api_app.html#using-session-middlewares
</tr></table> 

... (truncated)

Commits
  • 8e36432 Add optional Sidekiq::Job alias, see #4955
  • f1b24da Rename Sidekiq::Job, reserve for future use
  • 69b2aec Use TIMEOUT constant instead of hardcoded 2 second sleep (#4952)
  • d69e3c6 Bump, prepare for release
  • 13e2b56 Add private to Sidekiq Web UI Cache-Control to prevent request collapsing (#4...
  • 20f4bab Use no-store for web UI to prevent intermediate caching (#4966)
  • 3575ccb Reduce retry jitter, add jitter to sidekiq_retry_in, closes #4957
  • e8df351 Add missing Arabic translations (#4945)
  • 9a44071 Update Sidekiq.service as a user service (#4938)
  • 465c5c6 refactor stat method
  • Additional commits viewable in compare view

Merge request reports