Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented May 23, 2025

This PR contains the following updates:

Package Change Age Confidence
sidekiq (source, changelog) '~> 7.0''~> 8.0' age confidence

Release Notes

sidekiq/sidekiq (sidekiq)

v8.0.9

Compare Source

  • Implement idle Redis connection reaping, will be activated in 8.1 [#​6663]
  • Updated Sidekiq::Process API to provide capsule data. The queues and weights
    data will be removed from Redis in Sidekiq 8.1, as this data can now be found in the
    capsules element. [#​6295]
  • Restore bulk action buttons on Scheduled, Retry and Dead tabs [#​6833, deve1212]
  • Support logging additional job attributes [#​6846, bschrag620]
  • Fix display of long job args [#​6836]
  • Create development lifecycle (docs/sdlc.md) and security (docs/SECURITY.md) policy
    documentation for Sidekiq's current workflows

v8.0.8

Compare Source

  • Allow an optional global iteration max runtime. After executing for this length of time,
    Sidekiq will re-queue the job to continue execution at a later time [#​6819, fatkodima]
Sidekiq.configure_server do |cfg|
  cfg[:max_iteration_runtime] = 600 # ten minutes
end
  • Add discarded_at attribute when discarding a job so death handlers can distinguish between
    a job which was killed and one that was discarded. [#​6820, gstokkink]
  • perform_bulk now accepts an :at array of times to schedule each job at the corresponding time.
    perform_bulk(args: [[1], [2]], at: [Time.now, Time.now + 1]) [#​6790, fatkodima]
  • perform_bulk now accepts a :spread_interval value to schedule jobs over
    the next N seconds. perform_bulk(..., spread_interval: 60) [#​6792, fatkodima]
  • Fix unintended display of flash messages in the Web UI due to session key collision
  • Add support for lazy load hooks [#​6825]

v8.0.7

Compare Source

  • The :discard option for sidekiq_retries_exhausted and sidekiq_retry_in
    now calls death handlers, otherwise it could break other Sidekiq
    functionality. [#​6741]
  • Provide a Plain log formatter which does not colorize output [#​6778]
  • Job iteration now exposes current_object for easy access within the around_iteration callback [#​6774]
  • Fix JS race condition which could skip confirmation dialogs when Live Polling [#​6768]
  • Fix edge case which could lose CurrentAttributes [#​6767]
  • Update UK locale [#​6776]

v8.0.6

Compare Source

  • Adjust transactional client to use ActiveRecord 7.2's support for
    after_all_transactions_commit when available. [#​6765, rewritten]
  • Fix Rails 7.0 and 7.1 compatibility [#​6746, mlarraz]
  • Flush metrics at :exit [#​6764]

v8.0.5

Compare Source

  • Add stopping? method to AJ adapter for compatibility with the new AJ::Continuations feature [#​6732]
  • Further improvements to Rails boot compatibility [#​6710]
  • Add ability to disable CSRF middleware. SameSite cookies prevent
    CSRF in a cleaner manner and are default in most browsers now.
    CSRF code will be removed in Sidekiq 9.0. [#​6739]

v8.0.4

Compare Source

  • Adjust Rails integration for various edge cases [6713]
  • Flush job iteration state when an error is raised [#​6704]
  • Update Accept-Language parsing in Web UI [#​6721]
  • Remove fixed-width in Web UI [#​6686]
  • Adjust CSRF middleware ordering [#​6688]
  • Support proxies when POSTing profiles to profiler.firefox.com [#​6687]
  • Dont swallow NoMethodErrors in CurrentAttributes [#​6685]

v8.0.3

Compare Source

  • Configure Vernier output directory [#​6674]
  • Rework Rails integration [#​6669]
  • Implement flash messages for the Web UI [#​6675]

v8.0.2

Compare Source

  • Add on(:exit) event to run code right before the Sidekiq process exits [#​6637]
  • Metrics page crashes with Rack 3.1+ [#​6646]

v8.0.1

Compare Source

  • Relax Redis requirement to 7.0 for compatibility with AWS and Ubuntu 24.04 LTS. [#​6630]

v8.0.0

Compare Source

  • WARNING The underlying class name for Active Jobs has changed from ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper to Sidekiq::ActiveJob::Wrapper.
    The old name will still work in 8.x.
  • WARNING The created_at, enqueued_at, failed_at and retried_at attributes are now stored as epoch milliseconds, rather than epoch floats.
    This is meant to avoid precision issues with JSON and JavaScript's 53-bit Floats.
    Example: "created_at" => 1234567890.123456 -> "created_at" => 1234567890123.
  • NEW FEATURE Job Profiling is now supported with Vernier
    which makes it really easy to performance tune your slow jobs.
    The Web UI contains a new Profiles tab to view any collected profile data.
    Please read the new Profiling wiki page for details.
  • NEW FEATURE Job Metrics now store up to 72 hours of data and the Web UI allows display of 24/48/72 hours. [#​6614]
  • CurrentAttribute support now uses ActiveJob::Arguments to serialize the context object, supporting Symbols and GlobalID.
    The change should be backwards compatible. [#​6510]
  • Freshen up Sidekiq::Web to simplify the code and improve security [#​6532]
    The CSS has been rewritten from scratch to remove the Bootstrap framework.
  • Add on_cancel callback for iterable jobs [#​6607]
  • Add cursor reader to get the current cursor inside iterable jobs [#​6606]
  • Default error logging has been modified to use Ruby's Exception#detailed_message and #full_message APIs.
  • CI now runs against Redis, Dragonfly and Valkey.
  • Job tags now allow custom CSS display [#​6595]
  • The Web UI's language picker now shows options in the native language
  • Remove global variable usage within the codebase
  • Colorize and adjust logging for easier reading
  • Adjust Sidekiq's default thread priority to -1 for a 50ms timeslice.
    This can help avoid TimeoutErrors when Sidekiq is overloaded. [#​6543]
  • Use Logger#with_level, remove Sidekiq's custom impl
  • Remove base64 gem dependency
  • Support: (Dragonfly 1.27+, Valkey 7.2+, Redis 7.2+), Ruby 3.2+, Rails 7.0+

v7.3.10

Compare Source

  • Deprecate Redis :password as a String to avoid log disclosure. [#​6625]
    Use a Proc instead: config.redis = { password: ->(username) { "password" } }

v7.3.9

Compare Source

  • Only require activejob if necessary [#​6584]
    You might get uninitialized constant Sidekiq::ActiveJob if you
    require 'sidekiq' before require 'rails'.
  • Fix iterable job cancellation [#​6589]
  • Web UI accessibility improvements [#​6604]

v7.3.8

Compare Source

  • Fix dead tag links [#​6554]
  • Massive Web UI performance improvement, some pages up to 15x faster [#​6555]

v7.3.7

Compare Source

  • Backport Sidekiq::Web.configure for compatibility with 8.0 [#​6532]
  • Backport url_params(key) and route_params(key) for compatibility with 8.0 [#​6532]
  • Various fixes for UI filtering [#​6508]
  • Tune inspect for internal S::Components to keep size managable [#​6553]

v7.3.6

Compare Source

  • Forward compatibility fixes for Ruby 3.4
  • Filtering in the Web UI now works via GET so you can bookmark a filtered view. [#​6497]

v7.3.5

  • Reimplement retry_all and kill_all API methods to use ZPOPMIN,
    approximately 30-60% faster. [#​6481]
  • Add preload testing binary at examples/testing/sidekiq_boot to verify your Rails app boots correctly with Sidekiq Enterprise's app preloading.
  • Fix circular require with ActiveJob adapter [#​6477]
  • Fix potential race condition leading to incorrect serialized values for CurrentAttributes [#​6475]
  • Restore missing elapsed time when default job logging is disabled

v7.3.4

  • Fix FrozenError when starting Sidekiq [#​6470]

v7.3.3

Compare Source

  • Freeze global configuration once boot is complete, to avoid configuration race conditions [#​6466, #​6465]
  • Sidekiq now warns if a job iteration takes longer than the -t timeout setting (defaults to 25 seconds)
  • Iteration callbacks now have easy access to job arguments via the arguments method:
def on_stop
  p arguments # => `[123, "string", {"key" => "value"}]`
  id, str, hash = arguments
end
  • Iterable jobs can be cancelled via Sidekiq::Client#cancel!:
c = Sidekiq::Client.new
jid = c.push("class" => SomeJob, "args" => [123])
c.cancel!(jid) # => true
  • Take over support for ActiveJob's :sidekiq adapter [#​6430, fatkodima]
  • Ensure CurrentAttributes are in scope when creating batch callbacks [#​6455]
  • Add Sidekiq.gem_version API.
  • Update Ukranian translations

v7.3.2

Compare Source

  • Adjust ActiveRecord batch iteration to restart an interrupted batch from the beginning.
    Each batch should be processed as a single transaction in order to be idempotent. [#​6405]
  • Fix typo in Sidekiq::DeadSet#kill [#​6397]
  • Fix CSS issue with bottom bar in Web UI [#​6414]

v7.3.1

Compare Source

  • Deprecate Redis :password as a String to avoid log disclosure. [#​6625]
    Use a Proc instead: config.redis = { password: ->(username) { "password" } }

v7.3.0

Compare Source

  • NEW FEATURE Add Sidekiq::IterableJob, iteration support for long-running jobs. [#​6286, fatkodima]
    Iterable jobs are interruptible and can restart quickly if
    running during a deploy. You must ensure that each_iteration
    doesn't take more than Sidekiq's -t timeout (default: 25 seconds). Iterable jobs must not implement perform.
class ProcessArrayJob
  include Sidekiq::IterableJob
  def build_enumerator(*args, **kwargs)
    array_enumerator(args, **kwargs)
  end
  def each_iteration(arg)
    puts arg
  end
end
ProcessArrayJob.perform_async(1, 2, 3)

See the Iteration wiki page and the RDoc in Sidekiq::IterableJob.
This feature should be considered BETA until the next minor release.

  • SECURITY The Web UI no longer allows extensions to use <script>.
    Adjust CSP to disallow inline scripts within the Web UI. Please see
    examples/webui-ext for how to register Web UI extensions and use
    dynamic CSS and JS. This will make Sidekiq immune to XSS attacks. [#​6270]
  • Add config option, :skip_default_job_logging to disable Sidekiq's default
    start/finish job logging. [#​6200]
  • Allow Sidekiq::Limiter.redis to use Redis Cluster [#​6288]
  • Retain CurrentAttributeѕ after inline execution [#​6307]
  • Ignore non-existent CurrentAttributes attributes when restoring [#​6341]
  • Raise default Redis {read,write,connect} timeouts from 1 to 3 seconds
    to minimize ReadTimeoutErrors [#​6162]
  • Add logger as a dependency since it will become bundled in Ruby 3.5 [#​6320]
  • Ignore unsupported locales in the Web UI [#​6313]

v7.2.4

Compare Source

v7.2.3

Compare Source

  • Support Dragonfly.io as an alternative Redis implementation
  • Fix error unpacking some compressed error backtraces [#​6241]
  • Fix potential heartbeat data leak [#​6227]
  • Add ability to find a currently running work by jid [#​6212, fatkodima]

v7.2.2

Compare Source

  • Add Process.warmup call in Ruby 3.3+
  • Batch jobs now skip transactional push [#​6160]

v7.2.1

Compare Source

  • Add Sidekiq::Work type which replaces the raw Hash as the third parameter in
    Sidekiq::WorkSet#each { |pid, tid, hash| ... } [#​6145]
  • DEPRECATED: direct access to the attributes within the hash block parameter above.
    The Sidekiq::Work instance contains accessor methods to get at the same data, e.g.
work["queue"] # Old
work.queue # New
  • Fix Ruby 3.3 warnings around base64 gem [#​6151, earlopain]

v7.2.0

Compare Source

  • sidekiq_retries_exhausted can return :discard to avoid the deadset
    and all death handlers [#​6091]
  • Metrics filtering by job class in Web UI [#​5974]
  • Better readability and formatting for numbers within the Web UI [#​6080]
  • Add explicit error if user code tries to nest test modes [#​6078]
Sidekiq::Testing.inline! # global setting
Sidekiq::Testing.fake! do # override within block

v7.1.6

Compare Source

  • The block forms of testing modes (inline, fake) are now thread-safe so you can have
    a multithreaded test suite which uses different modes for different tests. [#​6069]
  • Fix breakage with non-Proc error handlers [#​6065]

v7.1.5

Compare Source

  • FEATURE: Job filtering within the Web UI. This feature has been open
    sourced from Sidekiq Pro. [#​6052]
  • API CHANGE Error handlers now take three arguments ->(ex, context, config).
    The previous calling convention will work until Sidekiq 8.0 but will print
    out a deprecation warning. [#​6051]
  • Fix issue with the batch_size and at options in S::Client.push_bulk [#​6040]
  • Fix inline testing firing batch callbacks early [#​6057]
  • Use new log broadcast API in Rails 7.1 [#​6054]
  • Crash if user tries to use RESP2 protocol: 2 [#​6061]

Configuration

📅 Schedule: Branch creation - "before 2am" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label May 23, 2025
@renovate
Copy link
Contributor Author

renovate bot commented May 23, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Gemfile.lock
/usr/local/containerbase/tools/v2/ruby.sh: line 80: /etc/gemrc: Permission denied
{"level":50,"time":1767400274043,"pid":891,"hostname":"jr-microvm","msg":"Command failed with exit code 1: bash /usr/local/containerbase/bin/v2-install-tool.sh install ruby 3.0.3"}
{"level":60,"time":1767400274044,"pid":891,"hostname":"jr-microvm","msg":"Install tool ruby failed in 646ms."}


@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 3 times, most recently from eed3816 to 02d038e Compare May 30, 2025 18:44
@renovate renovate bot changed the title chore(deps): update dependency sidekiq to v8 Update dependency sidekiq to v8 May 30, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 5 times, most recently from 6c3cb14 to 4dea794 Compare June 6, 2025 23:56
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 4dea794 to f14c3f4 Compare June 20, 2025 12:05
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from f14c3f4 to 7b96ce6 Compare July 1, 2025 13:40
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 4 times, most recently from adf3acb to 7ddf0e4 Compare July 18, 2025 17:08
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 9 times, most recently from 2ace12f to 47c9441 Compare July 31, 2025 14:05
@renovate renovate bot changed the title Update dependency sidekiq to v8 chore(deps): update dependency sidekiq to v8 Jul 31, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 3 times, most recently from 3b047b8 to cee0ae0 Compare August 6, 2025 10:22
@renovate renovate bot changed the title chore(deps): update dependency sidekiq to v8 Update dependency sidekiq to v8 Aug 8, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 2 times, most recently from c942626 to c2a3307 Compare August 18, 2025 07:12
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 3 times, most recently from 107f150 to 3d5d7d7 Compare September 5, 2025 14:00
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 3 times, most recently from 20980e6 to 373f6cf Compare September 13, 2025 05:48
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 373f6cf to 68b902b Compare September 15, 2025 12:25
@renovate renovate bot added the major label Sep 15, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 6 times, most recently from ba2c363 to 3a9fc7f Compare September 19, 2025 18:44
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 3a9fc7f to c201d92 Compare October 21, 2025 11:27
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from c201d92 to 7ece542 Compare November 14, 2025 12:06
@renovate renovate bot changed the title Update dependency sidekiq to v8 chore(deps): update dependency sidekiq to v8 Nov 14, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 7ece542 to 4d4d0fc Compare November 14, 2025 12:08
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch 3 times, most recently from 6471ca4 to a96f864 Compare December 11, 2025 16:14
@renovate renovate bot changed the title chore(deps): update dependency sidekiq to v8 Update dependency sidekiq to v8 Dec 11, 2025
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from a96f864 to 28ff503 Compare December 11, 2025 16:16
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 28ff503 to 011d4fe Compare December 31, 2025 08:42
@renovate renovate bot force-pushed the renovate/sidekiq-8.x branch from 011d4fe to 2c08dd3 Compare December 31, 2025 10:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file major

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant