activejob 7.0.0 → 7.0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +49 -0
- data/MIT-LICENSE +1 -1
- data/lib/active_job/gem_version.rb +2 -2
- data/lib/active_job/test_helper.rb +3 -3
- data/lib/active_job.rb +1 -1
- metadata +11 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cf8e77a851870c5a26f00f6a9b4e37b35ce4fa3f7037f1c7994d67e0866d0ab3
|
4
|
+
data.tar.gz: 6715aa72093dc9d7e4fc59a8f36cad29f2abc78c6b9d971cd80edf8037d0b381
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 072cdf37dc4e8c6f4b3a9d8d21cfcdeafa0b4c8dd76b6c4d81fda996ade90d456317be8c2eafb5dcf98712d66eba0b3da70ffa8cfd1a6d8b2234e5c6d25b6784
|
7
|
+
data.tar.gz: 0dc660789c71d5df7df7208e4123083672a4a326521cc9ecc07b4f8fbc60f3ae1ed7e3e75ee75874b4ba5e5cb2a799d65f7ae0e07006e1ecfc6fd45c19976c1f
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,52 @@
|
|
1
|
+
## Rails 7.0.2.2 (February 11, 2022) ##
|
2
|
+
|
3
|
+
* No changes.
|
4
|
+
|
5
|
+
|
6
|
+
## Rails 7.0.2.1 (February 11, 2022) ##
|
7
|
+
|
8
|
+
* No changes.
|
9
|
+
|
10
|
+
|
11
|
+
## Rails 7.0.2 (February 08, 2022) ##
|
12
|
+
|
13
|
+
* No changes.
|
14
|
+
|
15
|
+
|
16
|
+
## Rails 7.0.1 (January 06, 2022) ##
|
17
|
+
|
18
|
+
* Allow testing `discard_on/retry_on ActiveJob::DeserializationError`
|
19
|
+
|
20
|
+
Previously in `perform_enqueued_jobs`, `deserialize_arguments_if_needed`
|
21
|
+
was called before calling `perform_now`. When a record no longer exists
|
22
|
+
and is serialized using GlobalID this led to raising
|
23
|
+
an `ActiveJob::DeserializationError` before reaching `perform_now` call.
|
24
|
+
This behaviour makes difficult testing the job `discard_on/retry_on` logic.
|
25
|
+
|
26
|
+
Now `deserialize_arguments_if_needed` call is postponed to when `perform_now`
|
27
|
+
is called.
|
28
|
+
|
29
|
+
Example:
|
30
|
+
|
31
|
+
```ruby
|
32
|
+
class UpdateUserJob < ActiveJob::Base
|
33
|
+
discard_on ActiveJob::DeserializationError
|
34
|
+
|
35
|
+
def perform(user)
|
36
|
+
# ...
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
# In the test
|
41
|
+
User.destroy_all
|
42
|
+
assert_nothing_raised do
|
43
|
+
perform_enqueued_jobs only: UpdateUserJob
|
44
|
+
end
|
45
|
+
```
|
46
|
+
|
47
|
+
*Jacopo Beschi*
|
48
|
+
|
49
|
+
|
1
50
|
## Rails 7.0.0 (December 15, 2021) ##
|
2
51
|
|
3
52
|
* No changes.
|
data/MIT-LICENSE
CHANGED
@@ -688,7 +688,7 @@ module ActiveJob
|
|
688
688
|
enqueued_jobs_with(only: only, except: except, queue: queue, at: at) do |payload|
|
689
689
|
queue_adapter.enqueued_jobs.delete(payload)
|
690
690
|
queue_adapter.performed_jobs << payload
|
691
|
-
instantiate_job(payload).perform_now
|
691
|
+
instantiate_job(payload, skip_deserialize_arguments: true).perform_now
|
692
692
|
end.count
|
693
693
|
end
|
694
694
|
|
@@ -708,10 +708,10 @@ module ActiveJob
|
|
708
708
|
end
|
709
709
|
end
|
710
710
|
|
711
|
-
def instantiate_job(payload)
|
711
|
+
def instantiate_job(payload, skip_deserialize_arguments: false)
|
712
712
|
job = payload[:job].deserialize(payload)
|
713
713
|
job.scheduled_at = Time.at(payload[:at]) if payload.key?(:at)
|
714
|
-
job.send(:deserialize_arguments_if_needed)
|
714
|
+
job.send(:deserialize_arguments_if_needed) unless skip_deserialize_arguments
|
715
715
|
job
|
716
716
|
end
|
717
717
|
|
data/lib/active_job.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
#--
|
4
|
-
# Copyright (c) 2014-
|
4
|
+
# Copyright (c) 2014-2022 David Heinemeier Hansson
|
5
5
|
#
|
6
6
|
# Permission is hereby granted, free of charge, to any person obtaining
|
7
7
|
# a copy of this software and associated documentation files (the
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activejob
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.0.
|
4
|
+
version: 7.0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 7.0.
|
19
|
+
version: 7.0.2.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 7.0.
|
26
|
+
version: 7.0.2.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: globalid
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,12 +100,12 @@ licenses:
|
|
100
100
|
- MIT
|
101
101
|
metadata:
|
102
102
|
bug_tracker_uri: https://github.com/rails/rails/issues
|
103
|
-
changelog_uri: https://github.com/rails/rails/blob/v7.0.
|
104
|
-
documentation_uri: https://api.rubyonrails.org/v7.0.
|
103
|
+
changelog_uri: https://github.com/rails/rails/blob/v7.0.2.2/activejob/CHANGELOG.md
|
104
|
+
documentation_uri: https://api.rubyonrails.org/v7.0.2.2/
|
105
105
|
mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
|
106
|
-
source_code_uri: https://github.com/rails/rails/tree/v7.0.
|
106
|
+
source_code_uri: https://github.com/rails/rails/tree/v7.0.2.2/activejob
|
107
107
|
rubygems_mfa_required: 'true'
|
108
|
-
post_install_message:
|
108
|
+
post_install_message:
|
109
109
|
rdoc_options: []
|
110
110
|
require_paths:
|
111
111
|
- lib
|
@@ -120,8 +120,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
120
120
|
- !ruby/object:Gem::Version
|
121
121
|
version: '0'
|
122
122
|
requirements: []
|
123
|
-
rubygems_version: 3.2.
|
124
|
-
signing_key:
|
123
|
+
rubygems_version: 3.2.22
|
124
|
+
signing_key:
|
125
125
|
specification_version: 4
|
126
126
|
summary: Job framework with pluggable queues.
|
127
127
|
test_files: []
|