c685d6928c
has introduced an exception that is raised on an attempt to include
Sidekiq::Worker to an ActiveJob::Base descendant.
That was done in order to prevent options not supported by ActiveJob,
specifically `queue`. See https://github.com/mperham/sidekiq/issues/2424
Support for `set` was added later on, including the setting of `retry`
from ActiveJob.
d6538b0b4f
This change bridges the gap by allowing ActiveJob::Base descendants to
include `Sidekiq::Options` and use `retry` option of
`sidekiq_options`, and also `sidekiq_retry_in`, and
`sidekiq_retries_exhausted`.
* Rescue standard errors raised from exception's message
* Set a default message value if it raises an error
* Update default message value
* Add comments for exception_message
* logger_formatter -> log_format
* avoid touching global Sidekiq.logger in JobLogger
* rewrite tests for compactness and coverage
* hide banner in JSON
* Check Config File Existence (#4054)
* Check config file existence
* Eager config file check
* Parse expanded path to default sidekiq.yml config file in Rails app
* Cleanup
* Add minitest-around
* Extract context from formatter
* Add JSON logger formatter
* Adjust job logger to handle elapsed time within context
* Add tid test
* Rename processor logger
* Enforce global state reset in logging tests
* Add warning about upcoming refactoring to Sidekiq::Logging
* Replace around hook with explicit stub inside test
It's implemented with fibers, which means Thread.current returns different values in JRuby.
* Fix typo
* Concise JSON formatter keys
* Add logger_formatter option
* Shift context from array of strings to hash
Allows more flexibly format context in the different formatters.
* Adjust warning message regarding context type change
* Add "Formatter" suffix to classes
* Fix CLI specs
* Replace Sidekiq::Logging with Sidekiq::Logger
* Namespace logger formatters
* Remove rails 4 appraisal
* Add appraisal
* Test CLI run (write pid, system boot, print banner)
* Cleanup test helper
* Set REDIS_URL to use non-default host in test env
* Move mintiest-focus to test bundle group
* Refactor CLI test
Extracted 3 main parts:
- parse
- run
- signal handling
* Move demonization and pid write from parse to run phase
* Move queues default from validate to setup options phase
* Add pry-byebug gem
* Drop Sidekiq::Test
* Require launcher in CLI
* Remove TODOs
* Add status output for sidekiqctl
* A little cleanup
* Refactor to Sidekiqctl::Status
* Error handling for section argument
* Rename workers to processes
* Clean up how the queue table is printed
* Refactoring, added tests
* Improve error handling
* Comma-separate values in overview
* Add changelog entry
Redis stores its loaded drivers in `Redis::Connection.drivers` and uses the
last one of them when initializing a new client. Sidekiq always uses `'ruby'`
(or `Redis::Connection::Ruby`) per default, though.
With this commit we are following redis' default by passing the last
loaded driver per default (or a given `:driver`).