aboutsummaryrefslogtreecommitdiffstats
path: root/activejob/CHANGELOG.md
Commit message (Collapse)AuthorAgeFilesLines
* Add a way to check for subset of arguments when performing jobs:Edouard CHIN2018-09-261-0/+6
| | | | | | | | | | | | - When calling `assert_performed_with`/`assert_enqueued_with`, the +args+ needs to match exactly what the job get passed. Some jobs can have lot of arguments, or even a simple hash argument has many key. This is not convenient to test as most tests doesn't need to check if the arguments matches perfectly. This PR make it possible to only check if a subset of arguments were passed to the job.
* Add changelog entries for #33849 [ci skip]bogdanvlviv2018-09-131-0/+4
| | | | | | | Since these changes related to the public API, I think we should add changelog entries. Related to #33838, #33849
* Add hooks to ActiveJob around retries and discardsSteve S2018-08-291-0/+4
|
* Allow `assert_performed_with` to be called without a block.bogdanvlviv2018-08-201-0/+4
| | | | | | | | | | | | | | | Example: ``` def test_assert_performed_with MyJob.perform_later(1,2,3) perform_enqueued_jobs assert_performed_with(job: MyJob, args: [1,2,3], queue: 'high') end ``` Follow up #33626.
* Fix `assert_performed_jobs` and `assert_no_performed_jobs`bogdanvlviv2018-08-201-0/+5
| | | | | Execution of `assert_performed_jobs`, and `assert_no_performed_jobs` without a block should respect passed `:except`, `:only`, and `:queue` options.
* Add changelog entry about adding `:queue` option to job assertions and helpersbogdanvlviv2018-08-201-13/+4
| | | | | Note that it removes changelog entry of #33265 since the entry in this commits includes that too.
* Allow `perform_enqueued_jobs` to be called without a block.Kevin Deisz2018-08-151-0/+6
| | | | Performs all of the jobs that have been enqueued up to this point in the test.
* [ci skip] Fixup changelog. Trim title. Mention benefit.Kasper Timm Hansen2018-07-201-1/+4
|
* Wrap ActiveJob::Enqueue in evented ActiveSupport::Notificationzvkemp2018-07-171-0/+4
|
* Allow `queue` option to `assert_no_enqueued_jobs`bogdanvlviv2018-06-301-0/+13
| | | | | | | | | | | It can be asserted that no jobs are enqueued to a specific queue: ```ruby def test_no_logging assert_no_enqueued_jobs queue: 'default' do LoggingJob.set(queue: :some_queue).perform_later end end ```
* Allow call `assert_enqueued_with` and `assert_enqueued_email_with` with no blockbogdanvlviv2018-06-291-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Example of `assert_enqueued_with` with no block ```ruby def test_assert_enqueued_with MyJob.perform_later(1,2,3) assert_enqueued_with(job: MyJob, args: [1,2,3], queue: 'low') MyJob.set(wait_until: Date.tomorrow.noon).perform_later assert_enqueued_with(job: MyJob, at: Date.tomorrow.noon) end ``` Example of `assert_enqueued_email_with` with no block: ```ruby def test_email ContactMailer.welcome.deliver_later assert_enqueued_email_with ContactMailer, :welcome end def test_email_with_arguments ContactMailer.welcome("Hello", "Goodbye").deliver_later assert_enqueued_email_with ContactMailer, :welcome, args: ["Hello", "Goodbye"] end ``` Related to #33243
* Add changelog entry for 3110cae [ci skip]bogdanvlviv2018-06-271-0/+4
| | | | | | | Since it is changes of the public API, it seems valuable to add a mention about it to the changelog file. Follow up 3110caecbebdad7300daaf26bfdff39efda99e25
* Pass the error instance as the second parameter of block executed by ↵yuuji.yaginuma2018-05-121-0/+6
| | | | | | | | | | | `discard_on` I'm not sure what originally wanted to pass to the argument. However, as long as see the document added along with the commit, it seems just to be mistaken that trying to pass the error instance. https://github.com/rails/rails/pull/30622/files#diff-59beb0189c8c6bc862edf7fdb84ff5a7R64 Fixes #32853
* Remove support for Qu gem.Alberto Almagro2018-03-191-0/+8
| | | | | | Reasons are that the Qu gem wasn't compatible since Rails 5.1, gem development was stopped in 2014 and maintainers have confirmed its demise. See issue #32273
* Remove changelog header for unreleased versionRafael Mendonça França2018-03-131-2/+0
| | | | | | We only add the header when releasing to avoid some conflicts. [ci skip]
* Fix CHANGELOGs [ci skip]bogdanvlviv2018-03-121-1/+1
| | | | | | | | - Add missing dots. - Remove reference to itself on GitHub. Usually, we add references to fixed issues only in a changelog. Follow up #32223
* Add support for timezones to Active JobAndrew White2018-02-221-0/+8
| | | | | | Record what was the current timezone in effect when the job was enqueued and then restore when the job is executed in same way that the current locale is recorded and restored.
* Rails 6 requires Ruby 2.4.1+Jeremy Daer2018-02-171-0/+6
| | | | | | Skipping over 2.4.0 to sidestep the `"symbol_from_string".to_sym.dup` bug. References #32028
* Add CHANGELOG entryRafael Mendonça França2018-02-141-0/+3
|
* Start Rails 6.0 development!!!Rafael Mendonça França2018-01-301-27/+1
| | | | :tada::tada::tada:
* Fix CHANGELOG format [ci skip]Ryuta Kamizono2018-01-241-4/+5
| | | | | | * Add backticks * Expand tabs * Fix indentation
* Merge branch 'master' into custom-discarded-job-handlingAidan Haran2017-12-091-4/+8
|\
| * Preparing for 5.2.0.beta2 releaseRafael Mendonça França2017-11-281-0/+5
| |
| * Preparing for 5.2.0.beta1 releaseRafael Mendonça França2017-11-271-0/+2
| |
| * Remove CHANGELOT entry for the change that was backported to 5-1-stable [ci ↵Prathamesh Sonpatki2017-10-231-7/+0
| | | | | | | | | | | | | | | | skip] - It was backported in https://github.com/rails/rails/commit/0eae8dd4b859c109919e5da0d6e74ffc6dc8a258 and is present in Rails 5.1.3
| * redis-rb 4.0 supportJeremy Daer2017-10-081-0/+4
| | | | | | | | | | | | | | | | * Use `gem 'redis', '~> 4.0'` for new app Gemfiles * Loosen Action Cable redis-rb dep to `>= 3.3, < 5` * Bump redis-namespace for looser Redis version dep * Avoid using the underlying `redis.client` directly * Use `Redis.new` instead of `Redis.connect`
* | Allow for custom handling of exceptions that are discardedAidan Haran2017-09-161-0/+16
|/
* Cleanup CHANGELOGs [ci skip]Ryuta Kamizono2017-04-301-0/+1
| | | | | | * Remove trailing spaces. * Add backticks around method and command. * Fix indentation.
* Add error logging to Active JobSteven Bull2017-03-271-0/+6
| | | | | | | | | | | | | | | | | | | | Active Job logging instrumentation is changed to log errors (with backtrace) when a job raises an exception in #perform. This improves debugging during development and test with the default configuration. Prior to Rails 5, the default development configuration ran jobs with InlineAdapter, which would raise exceptions to the caller and be shown in the development log. In Rails 5, the default adapter was changed to AsyncAdapter, which would silently swallow exceptions and log a "Performed SomeJob from Async..." info message. This could be confusing to a developer, as it would seem that the job was performed successfully. This patch removes the "Performed..." info message from the log and adds an error-level "Error performing SomeJob..." log message which includes the exception backtrace for jobs that raise an exception within the #perform method. It provides this behavior for all adapters.
* Start Rails 5.2 developmentMatthew Draper2017-03-221-49/+1
|
* Revert #27850 following test breakage (#28427)David Heinemeier Hansson2017-03-151-4/+0
|
* Preparing for 5.1.0.beta1 releaseRafael Mendonça França2017-02-231-0/+2
|
* Remove extra spacesJon Moss2017-02-211-1/+1
| | | | [ci skip]
* correctly set test adapter when configure the queue adapter on a per job ↵Yuji Yaginuma2017-01-311-0/+6
| | | | | | | | | | | | (#26690) The `ActiveJob::TestHelper` replace the adapter to test adapter in `before_setup`. It gets the target class using the `descendants`, but if the test target job class is not loaded, will not be a replacement of the adapter. Therefore, instead of replacing with `before_setup`, modified to replace when setting adapter. Fixes #26360
* Append skipped jobs to enqueued_jobsAlexander Pauly2017-01-311-0/+4
| | | | | | | | | | Refactored ActiveJob TestAdapter Updated ActiveJob changelog Fixed typo in changelog Fixed formatting issue in changelog
* Removed deprecated support to passing the adapter class to .queue_adapterRafael Mendonça França2016-10-101-0/+4
|
* Removed deprecated #original_exception in ActiveJob::DeserializationErrorRafael Mendonça França2016-10-101-0/+4
|
* correct exception class in `retry_on` example [ci skip]yuuji.yaginuma2016-10-091-2/+2
| | | | | If the deadlock has occurred `ActiveRecord::Deadlocked` will raise. Ref: #25107, #26059
* Merge pull request #26205 from pedaling-corp/fix/active-job-resqueRafael Mendonça França2016-08-231-2/+8
|\ | | | | | | Add @queue variable to JobWrapper
| * Added instance variable `@queue` to JobWrapper.InJung Chung2016-08-191-0/+8
|/ | | | | 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.
* Yield the job instance so you have access to things like `job.arguments` on ↵David Heinemeier Hansson2016-08-161-0/+4
| | | | the custom logic after retries fail
* Pass over changelogs [ci skip]Vipul A M2016-08-101-1/+1
|
* Amend the CHANGELOGDavid Heinemeier Hansson2016-08-021-0/+21
|
* Start Rails 5.1 development :tada:Rafael Mendonça França2016-05-101-183/+1
|
* Preparing for 5.0.0.rc1 releaseRafael Mendonça França2016-05-061-0/+5
|
* Active Job: Add note about ability to configure adapters on per job basis in ↵Prathamesh Sonpatki2016-04-291-0/+17
| | | | | | CHANGELOG and release notes. [ci skip]
* Prep Rails 5 beta 4eileencodes2016-04-271-0/+2
|
* Use AS::Reloader to support reloading in ActiveJobMatthew Draper2016-03-021-0/+5
|
* Active Job: smaller footprint for the dev/test async adapterJeremy Daer2016-02-291-0/+7
| | | | | Use one shared worker pool for all queues with 0-#CPU workers rather than separate pools per queue with 2-10*#CPU workers each.
* Preparing for 5.0.0.beta3 releaseeileencodes2016-02-241-0/+2
| | | | Adds changelog headers for beta3 release