Commit Graph

364 Commits

Author SHA1 Message Date
Yves Senn
95714bb2b2 release notes, extract notable changes from Active Job CHANGELOG.
[ci skip]
2015-12-23 10:05:11 +01:00
Genadi Samokovarov
c5b6ec7b0f No more no changes entries in the CHANGELOGs
During the `5.0.0.beta1` release, the CHANGELOGs got an entry like the
following:

```
* No changes.
```

It is kinda confusing as there are indeed changes after it. Not a
biggie, just a small pass over the CHANGELOGs.

[ci skip]
2015-12-21 11:46:38 +02:00
eileencodes
099ddfdefd Add CHANGELOG headers for Rails 5.0.0.beta1 2015-12-18 15:58:25 -05:00
eileencodes
7eae0bb88e Change alpha to beta1 to prep for release of Rails 5
🎉 🍻
2015-12-18 12:14:09 -05:00
Jeremy Daer
7a6772c0e7 Use released GlobalID now that it provides URI::GID::MissingModelIdError for Active Job 2015-12-17 17:20:19 -07:00
Elektron1c97
6bd417df50 [ci skip] Add a dollar sign to each command in the READMEs
According to pr #22443 in the guides there's always a dollar sign before every command, so why is in the main README a `$` and in every submodule a `%`?

Just eye candy..
2015-12-06 19:18:52 +01:00
Siva Gollapalli
135258af0b Added support for bigdecimals in perform later 2015-12-03 18:45:55 +05:30
Will Jessop
171e788ccd Fix race condition testing for job execution order
On most filesystems file ctime is limited to 1 second granularity, which means that on
faster computers multiple simple jobs (for instance dummy TestJob) can finish within the
same second.

The execution order test in ActiveJob integration tests relies on multiple TestJobs
writing files then comparing the ctime. As a result integration tests would sometimes
fail as the ctime of the files written by these TestJobs could have coincidental ctimes
making the comparison for job order fail.

This commit adds a far more precise execution time (to the extent that the Ruby Time
class allows) to the file created by TestJob, and updates the execution order assertion
to use it, removing the race condition.
2015-11-23 14:24:49 +00:00
Mike Boone
ece366be07 Fixed wording. 2015-11-08 20:38:13 -05:00
Jerry D'Antonio
23b6f65fd1 Require only necessary concurrent-ruby classes. 2015-11-04 21:12:28 -05:00
Yuki Nishijima
266455cf25 Deprecate exception#original_exception in favor of exception#cause 2015-11-03 06:54:34 -08:00
Matthew Draper
30bacc26f8 Merge pull request #21878 from Gaurav2728/require_monitor
monitor is require for SneakersAdapter
2015-10-10 02:42:11 +10:30
Wojciech Wnętrzak
c2854af747 Added missing specs for not modifying queues when using AJ test helpers 2015-10-07 20:02:15 +02:00
Gaurav Sharma
b0a3a68889 monitor is require for SneakersAdapter
we are using `@monitor = Monitor.new` that inherit from Monitor class, we leave behind this commit https://github.com/rails/rails/commit/cbfc8b36
2015-10-06 10:34:56 +05:30
Yves Senn
c468d7fedd Merge pull request #21854 from morgoth/fix-serializing-at-option-in-aj-matchers
Fixed serializing `:at` option for `assert_eqnueued_with` and `assert_performed_with`
2015-10-05 09:04:13 +02:00
Arthur Nogueira Neves
d2ef471b84 Merge pull request #20116 from cristianbica/activejob-enqueue-logging
ActiveJob - log enqueued message only after the job was successfully enqueued
2015-10-04 20:38:44 -04:00
Wojciech Wnętrzak
6e0254e8d3 Fixed serializing :at option for assert_enqueued_with and assert_performed_with 2015-10-03 15:23:05 +02:00
Wojciech Wnętrzak
8a67c56efb Support passing array to assert_enqueued_jobs in :only option 2015-10-03 13:25:16 +02:00
Wojciech Wnętrzak
3d63e1c155 Do not document private methods in AJ::TestHelper
[CI skip]
2015-10-02 18:19:00 +02:00
Rafael Mendonça França
0f89e15e80 Merge pull request #19425 from wvengen/feature/activejob-priority-master
Add job priorities to ActiveJob
2015-09-25 23:50:33 -03:00
Andrew White
a22523abcd Use Sidekiq.options to set initial wait
The INITIAL_WAIT constant has moved to the Sidekiq::Poller class but
rather than setting the constant directly we can override it via the
`:poll_interval_average` option.

This was causing random build failures because the test was waiting
for 10 seconds for the job to execute but the initial wait was a
random value between 10 and 15 seconds.
2015-09-21 14:02:41 +01:00
Andrew White
2e501ac9c4 Run rake db:migrate for all Active Job integration tests
If db/schema.rb doesn't exist then we get warnings from the dummy Rails
application so run it for all adapters even if they're not using the
database to store jobs.
2015-09-21 14:02:41 +01:00
Andrew White
78d9e1699f Silence logging in Active Job unit tests 2015-09-21 14:02:41 +01:00
Akira Matsuda
64766e82d6 🔪 Typos 2015-09-21 03:17:39 +09:00
hiren mistry
4e2c43b082 Added new lines to run title for easy log reading 2015-09-19 15:10:14 -07:00
Jerry D'Antonio
56ac6e4768 Replaced ThreadSafe::Map with successor Concurrent::Map.
The thread_safe gem is being deprecated and all its code has been merged
into the concurrent-ruby gem. The new class, Concurrent::Map, is exactly
the same as its predecessor except for fixes to two bugs discovered
during the merge.
2015-09-19 09:56:26 -04:00
wvengen
7059ab35f7 Add job priorities to ActiveJob 2015-09-17 22:17:39 +02:00
Marek Pieczyk
26f37f7c40 Properly log nested parameters to Active Job
Refactor arguments logging method for Active Job
2015-09-08 23:28:12 +02:00
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
Cristian Bica
30b640045f ActiveJob - log enqueued message only after the job was successfully enqueued 2015-05-11 21:19:46 +03: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
Takumi IINO
b126e7aaaa avoid double initialization error caused to sidekiq
Sidekiq::CLI#boot_system require "#{dummy_app_path}/config/environment.rb".
But this file has already been required in'test/support/integration/helper.rb'.
This patch will change to use Sidekiq::Launcher directly.
2015-04-14 13:06:20 -04:00
Guillermo Iguaran
33ea933d7b Merge pull request #19753 from jonatack/use-ruby-2-2-2
Upgrade to Ruby 2.2.2
2015-04-13 22:56:47 -05:00
Jon Atack
32f7491808 Upgrade to Ruby 2.2.2
and fix the grammar in the ruby_version_check.rb user message.
2015-04-14 08:41:56 +05:30
Robin Dupret
5493e9c7f8 Fix a few typos and wrap some lines [ci skip] 2015-04-12 15:34:28 +02:00
Zachary Scott
b0b8a6b0e4 Copy edits for QueueAdapters docs to fix #17765 [ci skip] 2015-04-10 16:37:25 -07:00
KingsleyKelly
7d4f5264b5 [ci skip] Adds documentation explaining table labels for Active Job QueueAdapters table in docs. 2015-04-09 22:06:52 +01:00
KingsleyKelly
94b1aff2a4 [ci skip] Adds rdoc for priority explaining what the labels in the table means. 2015-04-06 22:50:06 +01:00
Matthew Draper
cb01246721 Merge pull request #19034 from jvanbaarsen/explicit-job-base-class
Add explicit base class for ActiveJob jobs
2015-03-30 23:04:25 +10:30
Chris Hanks
fdfca02c30 Stop using Que's named queues in its ActiveJob adapter. 2015-03-24 09:25:49 -04:00
Mike Perham
8d2b1406bc Pass wrapped class name to Sidekiq for logging purposes
Sidekiq logs the name of the job class being performed.  Because
ActiveJob wraps the class, this means every job logs as an AJ::JobWrapper
instead of the actual class name.

Will help fix mperham/sidekiq#2248
2015-03-23 15:16:07 -07:00
Jeroen van Baarsen
929a794a31 Add explicit base class for ActiveJob jobs
* Jobs generated now inherent from ApplicationJob
* ApplicationJob inherents from ActiveJob::Base
* Added entry to changelog

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-03-23 22:37:11 +01:00
Brandon Weiss
0965863564 Closes rails/rails#18864: Renaming transactional fixtures to transactional tests
I’m renaming all instances of `use_transcational_fixtures` to
`use_transactional_tests` and “transactional fixtures” to
“transactional tests”.

I’m deprecating `use_transactional_fixtures=`. So anyone who is
explicitly setting this will get a warning telling them to use
`use_transactional_tests=` instead.

I’m maintaining backwards compatibility—both forms will work.
`use_transactional_tests` will check to see if
`use_transactional_fixtures` is set and use that, otherwise it will use
itself. But because `use_transactional_tests` is a class attribute
(created with `class_attribute`) this requires a little bit of hoop
jumping. The writer method that `class_attribute` generates defines a
new reader method that return the value being set. Which means we can’t
set the default of `true` using `use_transactional_tests=` as was done
previously because that won’t take into account anyone using
`use_transactional_fixtures`. Instead I defined the reader method
manually and it checks `use_transactional_fixtures`. If it was set then
it should be used, otherwise it should return the default, which is
`true`. If someone uses `use_transactional_tests=` then it will
overwrite the backwards-compatible method with whatever they set.
2015-03-16 11:35:44 -07:00
Semyon Pupkov
607b0069b3 Move Adapter to private constant 2015-03-16 17:30:37 +05:00
Tamir Duberstein
9832e17c3c QueueAdapters does the lookup 2015-03-12 21:55:19 -07:00
Tamir Duberstein
7e36841981 Use a more conservative const_get over constantize 2015-03-12 08:40:41 -07:00
Tamir Duberstein
1f8558fa27 ActiveJob::Base#queue_adapter is now a class_attribute
This allows different `queue_adapters` to be used in each `ActiveJob`
class heirarchy. Previously, all subclasses used a single global queue
adapter.
2015-03-11 22:45:59 -07:00
Tamir Duberstein
fb26645c1e ActiveJob::QueueAdapters::* are no longer singletons 2015-03-11 15:58:41 -07:00
Tamir Duberstein
c696cffcf6 Fix naming collision 2015-03-11 15:40:48 -07:00
Peter Suschlik
f0768eba28 Target Ruby 2.2.1 in gemspecs
This is a follow-up to #19257
2015-03-09 09:56:26 +01:00
Jeremy Kemper
a3e490419a Fix leaky only: … option for Active Job assertions
The filter was set on the pseudo-global TestAdapter but not restored to
its original value.

See e818f65770fe115ab1cc7fbacc0e7e94d92af6a4
2015-03-06 10:42:49 -07:00
Cristian Bica
cb786219f4 Fixed ActiveJob integration tests 2015-03-05 23:57:57 +02:00
Darío Hereñú
4826ec9039 Minor fixes (proposal) 2015-02-28 22:19:23 -03:00
Carlos Antonio da Silva
8adfd4fea7 Avoid creating an extra hash on the job test adapter 2015-02-24 07:23:05 -03:00
Tamir Duberstein
802f855ecf ActiveJob::QueueAdapters::TestAdapter is now a singleton
Since `ActiveJob::TestHelper` globally sets
`ActiveJob::Base.queue_adapter` on setup, there is no benefit in
instantiating a new `TestAdapter` per tests. The original rationale was
to allow parallel tests to run without interference, but since they'd
all mutate the global `ActiveJob::Base.queue_adapter`, that was never
realized.
2015-02-23 17:31:36 -08:00
Jeroen van Baarsen
e380ac685b Changed the AJADAPTER to AJ_ADAPTER
* This allows for easier reading, since those are two words, so they should be
  split by _

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
2015-02-22 16:11:21 +01:00
Carlos Antonio da Silva
de9a3748c4 Move #18833 changelog to the top [ci skip] 2015-02-08 11:52:47 -02:00
Michael Ryan
e818f65770 Add an :only option to perform_enqueued_jobs to filter jobs based on
type.

This allows specific jobs to be tested, while preventing others from
being performed unnecessarily.

Example:

    def test_hello_job
      assert_performed_jobs 1, only: HelloJob do
        HelloJob.perform_later('jeremy')
        LoggingJob.perform_later
      end
    end

An array may also be specified, to support testing multiple jobs.

Example:

    def test_hello_and_logging_jobs
      assert_nothing_raised do
        assert_performed_jobs 2, only: [HelloJob, LoggingJob] do
          HelloJob.perform_later('jeremy')
          LoggingJob.perform_later('stewie')
          RescueJob.perform_later('david')
        end
      end
    end

Fixes #18802.

Trim space and document :only option.
2015-02-06 14:11:42 -05:00
robertomiranda
ce8efcf296 Use public Module#include, in favor of https://bugs.ruby-lang.org/issues/8846
ref: https://github.com/rails/rails/pull/18763#issuecomment-72349769
2015-01-31 23:12:41 -05:00
Sean Griffin
31085a5cd4 Allow keyword arguments to work with ActiveJob
Unfortunately, the HashWithIndifferent access approach is insufficient
for our needs. It's perfectly reasonable to want to use keyword
arguments with Active Job, which we will see as a symbol keyed hash. For
Ruby to convert this back to keyword arguments, it must deserialize to a
symbol keyed hash.

There are two primary changes to the serialization behavior. We first
treat a HWIA separately, and mark it as such so we can convert it back
into a HWIA during deserialization.

For normal hashes, we keep a list of all symbol keys, and convert them
back to symbol keys after deserialization.

Fixes #18741.
2015-01-30 13:43:39 -07:00
Richard Manyanza
9d3042d05e Fix ActiveJob assertions with a GlobalID object argument 2015-01-23 17:46:16 +03:00
Yves Senn
a7621d7d53 formatting pass over CHANGELOGs. [ci skip] 2015-01-10 12:17:57 +01:00
George Claghorn
91e31e82fe Add :only option to assert_no_enqueued_jobs 2015-01-08 09:39:01 -05:00
Carlos Antonio da Silva
a22a653c29 Fix Active Job changelog formatting and reword a bit [ci skip] 2015-01-08 07:40:00 -02:00
George Claghorn
b5e88317cc Add :only option to assert_enqueued_jobs
With the option, assert_enqueued_jobs will check the number of times a specific kind of job is enqueued.
2015-01-07 23:44:08 -05:00
Rafael Mendonça França
4ab0320fb4 No need to disable sidikiq tests with 1.9.3 anymore 2015-01-04 15:54:22 -03:00
Rafael Mendonça França
8a1c3476a6 Do not run integration tests for the test adapter 2015-01-02 00:09:10 -03:00
Robin Dupret
24637e577c Merge pull request #18271 from arunagw/change-copyright-year
Update copyright notices to 2015 [ci skip]
2015-01-01 00:08:17 +01:00
Robin Dupret
f2b31cd6d1 Tiny follow-up to #18260 [ci skip]
Indent the list content by 4 spaces instead of 2 to match the other
changelog files. Also wrap the lines around 80 chars.

Finally update the documentation example with nit-picky things.
2014-12-31 17:35:41 +01:00
Arun Agrawal
c7a1f70fdd Merge pull request #18277 from prathamesh-sonpatki/typo-aj-changelog
Fixed typo in ActiveJob CHANGELOG [ci skip]
2014-12-31 17:32:44 +01:00
Prathamesh Sonpatki
c8e4d0a0a1 Fixed typo in ActiveJob CHANGELOG [ci skip] 2014-12-31 21:59:37 +05:30
Robin Dupret
7d1718f49e Merge pull request #18274 from rajcybage/spell_fix
Fix spell life cycle on activejob docs [ci skip]
2014-12-31 11:26:23 +01:00
Rajarshi Das
0f80b9f997 Fix spell life cycle on activejob docs [ ci skip] 2014-12-31 15:51:37 +05:30
Arun Agrawal
4de18d0ead Update copyright notices to 2015 [ci skip] 2014-12-31 08:34:14 +01:00
Prathamesh Sonpatki
2ecee1034d ActiveJob is not ActionJob [ci skip] 😄 2014-12-31 11:27:32 +05:30
Rafael Mendonça França
0d1ab34915 Merge pull request #18266 from cristianbica/ajfixes
ActiveJob testing improvements
2014-12-30 21:05:29 -03:00
Isaac Seymour
65542e2797 ActiveJob: delegate full deserialization to class 2014-12-30 23:33:09 +00:00
Cristian Bica
8a73f4b5b9 ActiveJob testing improvements
1. The :test adapter wasn't going through a full cycle of
serialize/deserialize when performing jobs. Now it does
2. Regular AJ tests were not run for the :test adapter. Now they are
3. ActiveJob::TestHelper uses assert_valid_keys but doesn’t requires
the file that implements that method. Now it does
2014-12-30 17:53:42 +02:00
Yukio Mizuta
8a1d1d4e14 Expectation comes first 2014-12-28 17:55:40 -08:00
claudiob
d3b098b828 Require Ruby 2.2 for Rails 5.0
Stems from [this comment](https://github.com/rails/rails/pull/18203#issuecomment-68138096) by @robin850
and by the blog post http://weblog.rubyonrails.org/2014/12/19/Rails-4-2-final
2014-12-26 13:53:09 +01:00
joker1007
7b76f05cd1 Add 'require' for Hash#with_indifferent_access
ActiveJob::Arguments uses Hash#with_indifferent_access.
But, activejob gem does not require Hash extension library.
When we use activejob as standalone,
we need extra require statement. This is unhandy.

This commit fixes it.
2014-12-21 21:03:16 +09:00
claudiob
902da271f5 Replace guides.ror.org/v4.2.0 with guides.ror.org
No need to point links to http://guides.rubyonrails.org/v4.2.0/... now
that the Ruby on Rails guides point to 4.2.0.
2014-12-20 05:37:09 -08:00
Rafael Mendonça França
aab670b430 redis 3.2.0 doesn't allow tcp protocol anymore
Use redis protocol
2014-12-13 00:06:31 -02:00
David Heinemeier Hansson
4419294eaa Include missing require 2014-12-05 15:16:10 +01:00
David Heinemeier Hansson
ad4935f127 Merge pull request #17817 from aripollak/hide-activejob-args
GlobalID objects are logged by their URI, not #inspect on the object, to prevent logging private data
2014-12-05 11:05:15 -02:00
Ari Pollak
e2fffbff98 Inline to_global_id conversion 2014-12-04 18:25:05 -05:00
Ari Pollak
e5e44ba8db Use try instead of checking for GlobalID::Identification 2014-12-04 16:51:59 -05:00
Rafael Mendonça França
191ea4b85b Merge pull request #17825 from aripollak/fix-activejob-sidekiq-integration
Fix Sidekiq ActiveJob integration setup

Conflicts:
	activejob/test/support/integration/adapters/sidekiq.rb
2014-12-04 18:24:23 -02:00
Ari Pollak
25c8ea264e Only filter GIDable objects; remove cosmetic changes 2014-12-01 11:16:30 -05:00
Erik Michaels-Ober
d1374f99bf Pass symbol as an argument instead of a block 2014-11-29 11:53:24 +01:00
claudiob
96d0f751f9 Bump required Ruby version to 2.1.0
[This article](http://weblog.rubyonrails.org/2014/8/20/Rails-4-2-beta1/#maintenance-consequences-and-rails-5-0) states that:

> Rails 5.0 is in most likelihood going to target Ruby 2.2.

Before the exact minimum version is fully decided, @arthurnn [suggests](https://github.com/rails/rails/pull/17830#issuecomment-64940383)
that **at least** version 2.1.0 **must** be required by the `gemspec` files.
2014-11-28 22:59:51 -08:00
Ari Pollak
802630378e Hide potentially sensitive ActiveJob params from logs
* Show GlobalID instead of full object .inspect output
2014-11-28 22:20:50 -05:00
Ari Pollak
2fa4cbeebd Fix Sidekiq ActiveJob integration setup
* .connect on a Redis connection wasn't valid
* Reset logger after we're done testing for redis connection to avoid
  "closed stream" error when starting server for real from a fork
2014-11-28 17:18:32 -05:00
Rafael Mendonça França
f25ad07f5a Start Rails 5 development 🎉
We will support only Ruby >= 2.1.

But right now we don't accept pull requests with syntax changes to drop
support to Ruby 1.9.
2014-11-28 15:00:06 -02:00
Fábio Luiz Nery de Miranda
4f8eb78b1a Add perform_enqueued_jobs
It will set proper queue_adapter state required by assert_performed_jobs assertions.

Also the block version of assert_performed_jobs will make sure this
state is respected.

Fixes #17684
2014-11-25 00:24:36 -02:00
yuuji.yaginuma
3e296e7a3a [ci skip] add "Qu" to Backends Features list 2014-11-15 13:48:52 +09:00
Yves Senn
2a843b3538 docs, minor changes in Active Job documentation. [ci skip] 2014-11-10 14:56:07 +01:00
Zachary Scott
77c0256409 Correct fixed-width doc syntax, thanks to @sikachu for pointing it out!
From dc5854f and c07c0b2 [ci skip]
2014-11-03 19:31:31 -08:00
Zachary Scott
b049d792bd Document included ability of AJ::QueueName module for class methods [ci skip] 2014-11-03 19:26:04 -08:00
Zachary Scott
7ea0f26801 Add documentation of AJ::QueueAdapter class methods module [ci skip] 2014-11-03 19:25:44 -08:00
Zachary Scott
60fcf60c7b Document AJ::Execution class methods module [ci skip] 2014-11-03 19:23:36 -08:00
Zachary Scott
c07c0b268e Document the module which includes perform_later for AJ::Enqueuing [ci skip] 2014-11-03 19:22:57 -08:00