119 lines
2.8 KiB
Markdown
119 lines
2.8 KiB
Markdown
## Rails 5.1.6.1 (November 27, 2018) ##
|
|
|
|
* Do not deserialize GlobalID objects that were not generated by Active Job.
|
|
|
|
Trusting any GlobaID object when deserializing jobs can allow attackers to access
|
|
information that should not be accessible to them.
|
|
|
|
Fix CVE-2018-16476.
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
|
|
## Rails 5.1.6 (March 29, 2018) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.5 (February 14, 2018) ##
|
|
|
|
* Support redis-rb 4.0.
|
|
|
|
*Jeremy Daer*
|
|
|
|
|
|
## Rails 5.1.4 (September 07, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.4.rc1 (August 24, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.3 (August 03, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.3.rc3 (July 31, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.3.rc2 (July 25, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.3.rc1 (July 19, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.2 (June 26, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.1 (May 12, 2017) ##
|
|
|
|
* No changes.
|
|
|
|
|
|
## Rails 5.1.0 (April 27, 2017) ##
|
|
|
|
* Change logging instrumentation to log errors when a job raises an exception.
|
|
|
|
Fixes #26848.
|
|
|
|
*Steven Bull*
|
|
|
|
* Correctly set test adapter when configure the queue adapter on a per job.
|
|
|
|
Fixes #26360.
|
|
|
|
*Yuji Yaginuma*
|
|
|
|
* Removed deprecated support to passing the adapter class to `.queue_adapter`.
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
* Removed deprecated `#original_exception` in `ActiveJob::DeserializationError`.
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
* Added instance variable `@queue` to JobWrapper.
|
|
|
|
This will fix issues in [resque-scheduler](https://github.com/resque/resque-scheduler) `#job_to_hash` method,
|
|
so we can use `#enqueue_delayed_selection`, `#remove_delayed` method in resque-scheduler smoothly.
|
|
|
|
*mu29*
|
|
|
|
* Yield the job instance so you have access to things like `job.arguments` on the custom logic after retries fail.
|
|
|
|
*DHH*
|
|
|
|
* Added declarative exception handling via `ActiveJob::Base.retry_on` and `ActiveJob::Base.discard_on`.
|
|
|
|
Examples:
|
|
|
|
class RemoteServiceJob < ActiveJob::Base
|
|
retry_on CustomAppException # defaults to 3s wait, 5 attempts
|
|
retry_on AnotherCustomAppException, wait: ->(executions) { executions * 2 }
|
|
retry_on ActiveRecord::Deadlocked, wait: 5.seconds, attempts: 3
|
|
retry_on Net::OpenTimeout, wait: :exponentially_longer, attempts: 10
|
|
discard_on ActiveJob::DeserializationError
|
|
|
|
def perform(*args)
|
|
# Might raise CustomAppException or AnotherCustomAppException for something domain specific
|
|
# Might raise ActiveRecord::Deadlocked when a local db deadlock is detected
|
|
# Might raise Net::OpenTimeout when the remote service is down
|
|
end
|
|
end
|
|
|
|
*DHH*
|
|
|
|
|
|
Please check [5-0-stable](https://github.com/rails/rails/blob/5-0-stable/activejob/CHANGELOG.md) for previous changes.
|