Commit Graph

235 Commits

Author SHA1 Message Date
claudiob
5e9a3e1292 Silence callback deprecation warning if testing AJ
Currently the log returned by running ActiveJob tests is filled with:

> DEPRECATION WARNING: Returning `false` in a callback will not implicitly halt a callback chain in the next release of Rails. To explicitly halt a callback chain, please use `throw :abort` instead.

For instance, see https://travis-ci.org/rails/rails/builds/77978273

This happens because some setup and teardown methods [like these one](https://github.com/rails/rails/blob/master/activejob/test/cases/async_job_test.rb#L10-L17)
invoke other methods like `perform_asynchronously!` that can return `false`, but
not with the intention of halting the process if they do.

In my opinion, these deprecation warnings can be silenced to have
the log result cleaner (especially when browsing for errors).
2015-08-31 00:30:53 -07:00
Jerry D'Antonio
25a4155257 Initial implementation of ActiveJob AsyncAdapter. 2015-08-25 14:22:11 -04:00
Rafael Mendonça França
3f866cbdab Fix typo on method name
[Robin Dupret]
2015-08-16 19:28:32 -03:00
yuuji.yaginuma
e875273ebc use average_scheduled_poll_interval option instead of deprecated poll_interval
this removes the following warning:

```
DEPRECATION: `config.poll_interval = 0.5` will be removed in Sidekiq 4. Please update to `config.average_scheduled_poll_interval = 0.5`.
```
2015-08-15 22:41:46 +09:00
Yves Senn
68e3279163 implement provider_job_id for queue_classic.
The latest, currently unreleased, version of queue_classic is required
for this to work. See
https://github.com/QueueClassic/queue_classic/pull/262 for more details.
2015-08-13 10:00:19 +02:00
Yves Senn
48a183ecb9 use assert_not instead of refute as mentioned in our guides.
As described in the "Follow Coding Conventions" section in our
contribution guide (http://edgeguides.rubyonrails.org/contributing_to_ruby_on_rails.html#follow-the-coding-conventions)
we favor `assert_not` over `refute`.

While we don't usually make stylistic changes on it's own I opted to do
it in this case. The reason being that test cases are usually copied as
a starting point for new tests. This results in a spread of `refute` in
files that have been using it already.
2015-08-13 09:20:39 +02:00
Jean Boussier
b6d3a478fa Make assert_enqueued_with and assert_performed_with returns the matched job 2015-08-10 20:14:42 -04:00
Yves Senn
6586fdaf28 Merge pull request #21145 from toydestroyer/master
[ci skip]

Documentation: update queue_classic info in Active Job adapters list
2015-08-06 14:31:21 +02:00
Sergey Toy
84eeec5ee6 Documentation: update queue_classic info in Active Job adapters list 2015-08-06 14:24:57 +03:00
Kasper Timm Hansen
a7fcb0e50a Add missing HelloJob require.
This way JobSerializationTest runs in isolation without errors.
2015-08-05 21:55:42 +02:00
Kasper Timm Hansen
7a3ca69959 Merge pull request #20800 from xijo/make_active_job_locale_aware
Make ActiveJob locale aware
2015-08-04 11:56:57 +02:00
Johannes Opper
3860e6b2bf Fixes #20799
When `#perform_later` is called the locale isn't stored on the
queue, which results in a locale reset when the job is performed.

An example of the problem:

    I18n.locale = 'de'
    HelloJob.perform_now # german message, correct

but

    I18n.locale = 'de'
    HelloJob.perform_later # english message, incorrect

This PR attaches the current I18n.locale to every job during the
serialization process. It is then restored during deserialization
and used to perform the job with the correct locale.

It falls back to the default locale if no serialized locale is
found in order to provide backward compatibility with previously
stored jobs. It is not necessary to clear the queue for the update.
2015-08-04 00:38:18 +02:00
Robin Dupret
a74fbb2972 Add :nodoc: for internal testing methods [ci skip] 2015-07-28 12:22:37 +02:00
Faraz Yashar
fd8122a878 Improve error message when serializing unsaved records for jobs 2015-06-28 14:58:01 -04:00
yui-knk
c7644e9eb0 [ci skip] Add . 2015-06-10 13:29:19 +09:00
Anton Davydov
455e44cd68 [skip ci] Add documentation for QueueAdapter::queue_adapter 2015-06-02 00:24:04 +03:00
Yves Senn
2db8414102 Merge pull request #20371 from davydovanton/doc-adapter-lookup
Update documentation for QueueAdapters::lookup [ci skip]
2015-06-01 13:32:35 +02:00
Anton Davydov
528efcbbbe [skip ci] Update documentation for QueueAdapters::lookup 2015-06-01 14:21:28 +03:00
Yves Senn
b25436abc4 minor formatting changes in changelogs. [ci skip] 2015-05-31 11:24:36 +02:00
Arun Agrawal
21b6b68f63 Remove unused package tasks
We are using `all:build` now.
2015-05-28 09:06:10 +02:00
Yves Senn
852460852c Merge pull request #20262 from arunagw/aa-remove-broken-unused-release-task
Remove broken and unused release task
2015-05-27 09:14:19 +02:00
Yoong Kang Lim
f55fe55d5a Fix spelling mistakes 2015-05-25 23:26:15 +10:00
Arun Agrawal
4194d052d8 Remove broken and unused release task
- We do release with release.rb
- There is no `rake/gemcutter`
2015-05-22 14:30:30 +02:00
Gourav Tiwari
17c10038c5 doc changes for readability [ci skip] 2015-05-19 19:24:35 +00:00
Prathamesh Sonpatki
daba090dec Pass over CHANGELOGS [ci skip] 2015-05-16 11:00:17 +05:30
claudiob
0080a886b2 [ci skip] Don’t encourage sudo gem install
I think we are better off leaving `sudo` outside of the documented
way of installing gems (`activerecord`, `actionpack`, …).

We don’t want newbies to think that `sudo` is required or, even worse, than
they actually have to type `[sudo] gem install`.

In most scenarios, `sudo` is not needed to install gems, and people who do
need it, probably already know about it.

What do you think? 😁
2015-05-12 14:51:19 -07:00
Rafael Mendonça França
fca8a7a7ba Merge pull request #20064 from kddeisz/qu_provider_job_id
Provide provider_job_id to qu adapter.
2015-05-08 15:13:05 -03:00
Yves Senn
0b305bfe1a Merge pull request #20072 from vngrs/refactor_active_job_sidekiq_adapter
Refactor sidekiq adapter enqueue and enqueue_at methods
2015-05-08 16:29:04 +02:00
Mehmet Emin İNAÇ
73c70e88d3 Don't need to explicitly set test_order it's :random default 2015-05-08 17:10:28 +03:00
Mehmet Emin İNAÇ
e744cfee65 Refactor sidekiq adapter enqueue and enqueue_at methods 2015-05-08 16:45:04 +03:00
Kevin Deisz
221a411fd7 Provide provider_job_id to qu adapter.
Further work to provide provider_job_id for queue adapters.
2015-05-07 19:17:22 -04:00
Jeroen van Baarsen
29fcbc2ea0 Make que report back its job_id to provider_job_id
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-05-07 21:59:07 +02:00
Jeroen van Baarsen
52d131826e Let Sidekiq set provider_job_id
When a job is added to Sidekiq by ActiveJob, make sure we still can get the
original job_id provider by Sidekiq. We do this by adding the sidekiq jid to
provider_job_id field on the job object.

Partly fixes #18821

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-05-07 21:48:50 +02:00
Kevin Deisz
dd8e859829 Get provider_job_id from DelayedJob
When queueing with DelayedJob, get the id of the job instance and report
it back to ActiveJob as provider_job_id.
2015-05-05 10:30:16 -04:00
Rafael Mendonça França
5d83d111f5 Do not use named queues for que adapter
See #19498
2015-05-03 18:01:57 -03:00
Rafael Mendonça França
c2e30f8e45 Disable warnings on activejob tests
The implementations seems to not be interested to remove the warnings so
enabling them we are just making harder to read the outputs
2015-05-03 18:01:10 -03:00
Rafael Mendonça França
b4b29536e5 Merge pull request #19498 from chanks/activejob-que-remove-named-queues
ActiveJob: Stop using Que's named queues.
2015-05-03 17:39:50 -03:00
Yves Senn
4d4950fae9 Merge pull request #19969 from y-yagi/fix_job_helper_method
match a expected value with message of `assert_equal` in AJ helper methods
2015-05-01 08:59:58 +02:00
yuuji.yaginuma
9150866698 match a expected value with message of assert_equal in AJ helper methods 2015-05-01 07:34:37 +09:00
Zachary Scott
b66dcc1f86 Add doc for original_exception in ActiveJob::DeserializationError [ci skip] 2015-04-29 18:46:25 -07:00
Zachary Scott
785cb9fe75 Add initial doc for Core in AJ [ci skip] 2015-04-29 18:46:12 -07:00
Zachary Scott
56bcd69ade Add initial doc for Enqueuing module [ci skip] 2015-04-29 18:45:53 -07:00
Zachary Scott
80ee55f3b8 Rails should be nodoc'd here [ci skip] 2015-04-29 18:44:37 -07:00
Mehmet Emin İNAÇ
6528b01942 Add missing error messages for sucker_punch, sneakers and qu activejob adapters [ci skip]
fix error message

change raise to use rails conventions

fix misspells
2015-04-29 14:51:54 +03:00
Zachary Scott
ba35b4702e nodoc private internal constants from ActiveJob::Arguments 2015-04-26 21:54:08 -07:00
Rafael Mendonça França
f5ae2894c3 Remove nonexistent adapter
Closes #19866

[ci skip]
2015-04-23 15:45:21 -03:00
Matthew Draper
40ff5087ec Queue Classic runs a second earlier than scheduled
That seems to be a bug, but as we don't actually care about the
precision for our test, we'll just give it a bit longer.

[Matthew Draper & Cristian Bica]
2015-04-23 05:36:58 +09:30
Matthew Draper
8b09b45458 Only *configure* the queue in setup; DB creation must come later
setup gets called from the initializer, so it happens more than once in
a test run. Trying to drop the database again after the first process is
connected is.. ineffective. And entirely pointless.

Instead, defer creating the database to start_workers -- which only
happens once, right before we start doing anything real.
2015-04-20 09:14:19 +09:30
Matthew Draper
41ae432f49 Shuffle a few things in aid of easier debugging
* Don't swallow output -- if there is any, it's probably useful
* Wait for the process to finish
* Use IPC instead of a sleep
* No need for a pidfile
2015-04-20 08:50:24 +09:30
Matthew Draper
2ca8545e51 Fix sidekiq test order dependency
Requiring sidekiq/testing changes stuff, so we need to counteract that
after we do so.

And given its potential to confuse things, let's do it up front, at a
predictable point.
2015-04-20 08:21:15 +09:30