| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Active Job
|
|
|
|
|
|
| |
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..
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|\
| |
| | |
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
|
|/ |
|
|\
| |
| |
| | |
Fixed serializing `:at` option for `assert_eqnueued_with` and `assert_performed_with`
|
| |
| |
| |
| | |
`assert_performed_with`
|
|\ \
| |/
|/| |
ActiveJob - log enqueued message only after the job was successfully enqueued
|
| | |
|
| | |
|
| |
| |
| |
| | |
[CI skip]
|
|\ \
| | |
| | | |
Add job priorities to ActiveJob
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| | |
Refactor arguments logging method for Active Job
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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).
|
| | |
|
| |
| |
| |
| | |
[Robin Dupret]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`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`.
```
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | | |
[ci skip]
Documentation: update queue_classic info in Active Job adapters list
|
|/ / |
|
| |
| |
| |
| | |
This way JobSerializationTest runs in isolation without errors.
|
|\ \
| | |
| | | |
Make ActiveJob locale aware
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|/ / |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Update documentation for QueueAdapters::lookup [ci skip]
|
| | | |
|
| | | |
|
|/ /
| |
| |
| | |
We are using `all:build` now.
|
|\ \
| | |
| | | |
Remove broken and unused release task
|
| | |
| | |
| | |
| | |
| | | |
- We do release with release.rb
- There is no `rake/gemcutter`
|
|/ / |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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? :grin:
|