- 17 8月, 2019 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 26 7月, 2019 1 次提交
-
-
由 Rafael França 提交于
Ability to test activejobs with relative delay
-
- 23 7月, 2019 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 25 4月, 2019 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 23 4月, 2019 1 次提交
-
-
由 John Hawthorn 提交于
Rails 6 introduces retries per-exception, instead of a global count of retries. Because ActiveJob 5.2 doesn't serialize the execution count per-exception, when ActiveJob 6.0 picks up an "old" job it can't know the exception count in the new format. This can also be an issue if AJ 6.0 serializes a new job with exception_executions which is later picked up by AJ 5.2, which would clear exception_executions (since it has no knowledge of it). Previously we handled this by resetting exception_executions, if it wasn't defined on a job, which could result in the worst case retrying the job 2x the times we should. This commit changes how we handle loading a legacy job: instead of resetting exception_executions, we instead will always use the global executions count. This way, jobs which only have one retry_on (and didn't have a behaviour change in AJ 6) are backwards-and-forwards-compatible with counts respected exactly. Jobs with multiple retry_on will revert to the AJ5.2 behaviour if they were ever run under AJ5.2.
-
- 12 4月, 2019 1 次提交
-
-
由 Patrik Bóna 提交于
Individual execution counters were introduced in #34352. However `#determine_delay` which is used to calculate retry delay still uses the global counter. This commit fixes it.
-
- 05 4月, 2019 2 次提交
-
-
由 प्रथमेश Sonpatki 提交于
-
由 Prathamesh Sonpatki 提交于
- It will return false in Rails 6.1 not 6.0. Also fixed the default value which is true for new applications.
-
- 04 4月, 2019 1 次提交
-
-
由 Fumiaki MATSUSHIMA 提交于
-
- 31 3月, 2019 1 次提交
-
-
由 Ryuta Kamizono 提交于
* use backticks instead of `+` * and more (e.g. missed replacing `Array#excluding` and `Enumerable#excluding` in b89a3e7e)
-
- 25 3月, 2019 1 次提交
-
-
由 Gannon McGibbon 提交于
-
- 23 3月, 2019 1 次提交
-
-
由 Gannon McGibbon 提交于
-
- 11 3月, 2019 1 次提交
-
-
由 eileencodes 提交于
* Update RAILS_VERSION * Bundle * rake update_versions * rake changelog:header
-
- 10 3月, 2019 1 次提交
-
-
由 ashishprajapati 提交于
-
- 09 3月, 2019 2 次提交
-
-
由 Abhay Nikam 提交于
-
由 Abhay Nikam 提交于
-
- 26 2月, 2019 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 25 2月, 2019 1 次提交
-
-
由 alkesh26 提交于
-
- 14 2月, 2019 1 次提交
-
-
由 Cory Gwin @gwincr11 提交于
Motivation: - Currently we have 2 seperate monkey patches in place for tracking enqueded time for 2 seperate workers. It seems that activejob could be a source of truth for how long an item has been enqued so that we can easily use it for consistent monitoring across workers/apps to ensure that jobs are running at an acceptable speed. Changes: - Add an enqueded at attribute and serilization tooling. - Add a method to get how long a job has been enqueded for. - Add a logging item to show how long a job was enqued prior to the perform method firing.
-
- 12 2月, 2019 1 次提交
-
-
由 Olivier Lacan 提交于
Currently, we only document the use case for ActiveJob's `queue_as` block arguments in [Rails Guides][1]. It seems necessary to document them in the API docs as well considering how useful and powerful this option is. [1]: https://edgeguides.rubyonrails.org/active_job_basics.html#queues [ci skip]
-
- 05 2月, 2019 1 次提交
-
-
由 Matthew Draper 提交于
If they're not set we'll still fall back to localhost, but this makes it possible to run the tests against a remote Postgres / Redis / whatever.
-
- 29 1月, 2019 1 次提交
-
-
由 alkesh26 提交于
-
- 19 1月, 2019 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 09 1月, 2019 2 次提交
-
-
由 Kasper Timm Hansen 提交于
I reverted the wrong commit. Damn it. This reverts commit f66a977f.
-
由 Kasper Timm Hansen 提交于
We had a discussion on the Core team and we don't want to expose this information as a JSON endpoint and not by default. It doesn't make sense to expose this JSON locally and this controller is only accessible in dev, so the proposed access from a production app seems off. This reverts commit 8eaffe7e, reversing changes made to b6e4305c.
-
- 08 1月, 2019 2 次提交
-
-
由 Rosa Gutierrez 提交于
Some adapters like Resque that use Redis, convert the Ruby hash with a default value, Hash.new(0), into a regular hash without a default value after serializing, storing and deserializing. This raises an error when we try to access a missing exception key. A simple solution is not to rely on the hash's default value, and provide a default as alternative when accessing it instead.
-
由 Rosa Gutierrez 提交于
Previously, by extending ActiveJob::TestCase, the test adapter provided for tests was being used always, in all executions where supposedly different adapters were being used. As a consequence, some bugs visible only for some adapters might have gone undetected. This commit changes that, skipping queue adapters for which we can't test scheduling jobs with a delay.
-
- 05 1月, 2019 1 次提交
-
-
由 Rosa Gutierrez 提交于
Also, make tests and examples for individual execution counters clearer, as it wasn't entierly clear what would happen in this case: ``` retry_on CustomException, OtherException, attempts: 3 ``` The job would be retried at most 3 times in total, for both CustomException and OtherException. To have the job retry 3 times at most for each exception individually, the following retry_on declarations are necessary: ``` retry_on CustomException, attempts: 3 retry_on OtherException, attempts: 3 ```
-
- 31 12月, 2018 1 次提交
-
-
由 Arun Agrawal 提交于
-
- 21 12月, 2018 1 次提交
-
-
由 Ryuta Kamizono 提交于
Currently we sometimes find a redundant begin block in code review (e.g. https://github.com/rails/rails/pull/33604#discussion_r209784205). I'd like to enable `Style/RedundantBegin` cop to avoid that, since rescue/else/ensure are allowed inside do/end blocks in Ruby 2.5 (https://bugs.ruby-lang.org/issues/12906), so we'd probably meets with that situation than before.
-
- 20 12月, 2018 2 次提交
-
-
由 Ryuta Kamizono 提交于
Since Rails 6 requires Ruby 2.5. https://github.com/ruby/ruby/blob/ruby_2_5/NEWS Follow up #34754.
-
由 Kasper Timm Hansen 提交于
Generally followed the pattern for https://github.com/rails/rails/pull/32034 * Removes needless CI configs for 2.4 * Targets 2.5 in rubocop * Updates existing CHANGELOG entries for fewer merge conflicts * Removes Hash#slice extension as that's inlined on Ruby 2.5. * Removes the need for send on define_method in MethodCallAssertions.
-
- 08 12月, 2018 1 次提交
-
-
由 yuuji.yaginuma 提交于
Because `skip-javascript` option is specified for the dummy application used in the integration tests. https://github.com/rails/rails/blob/bdc96802a7a4a8c6d183272e997430e8b9006498/activejob/test/support/integration/helper.rb#L14
-
- 06 12月, 2018 1 次提交
-
-
由 Rafael Mendonça França 提交于
And make sure new applications in Rails 6.0 has this config enabled. Also, improve test coverage and add a CHANGELOG entry.
-
- 28 11月, 2018 1 次提交
-
-
由 Rafael Mendonça França 提交于
Trusting any GlobaID object when deserializing jobs can allow attackers to access information that should not be accessible to them. Fix CVE-2018-16476.
-
- 24 11月, 2018 1 次提交
-
-
由 Alberto Almagro 提交于
* Keep executions for each specific declaration Fixes #34337 ActiveJob used the global executions counter to control the number of times a job should be retried. The problem with this approach was that in case a job raised different exceptions during its executions they weren't retried the number of times defined by their `attemps` number. **Example:** Having the following job: ```ruby class BuggyJob < ActiveJob::Base retry_on CustomException, attemps: 3 retry_on OtherException, attempts: 3 end ``` If the job raised `CustomException` in the first two executions and then it raised `OtherException`, the job wasn't retried anymore because the global executions counter was already indicating 3 attempts. With this patch each `retry_on` declaration has its specific counter so that the first two executions that raise `CustomException` don't affect the retries count that future exceptions may have. * Revert "clarifies documentation around the attempts arugment to retry_on" This reverts commit 86aa8f8c.
-
- 22 11月, 2018 1 次提交
-
-
由 Edouard CHIN 提交于
- That feature is useful to enqueue or assert that jobs got enqueued or performed based on dynamic conditions. We will be able to leverage that feature to fix all ActionMailer assertion helper issue when a Mailer define a custom delivery job (see next commit).
-
- 20 11月, 2018 1 次提交
-
-
由 Bernie Chiu 提交于
-
- 19 11月, 2018 1 次提交
-
-
由 jacobherrington 提交于
My spellchecker flagged this as an incorrect spelling, upon further research it appears to be a point of contention in English. Either way might work. After further examination queuing is much more common in the Rails codebase so making this change will serve to standardize the spelling.
-
- 13 11月, 2018 1 次提交
-
-
由 Alberto Almagro 提交于
The constant `PERMITTED_TYPES` is only used by the private method `serialize_argument` and it already has the `# :nodoc:` annotation as the other constants in the class. Complements e899e228
-