delayed 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 56e1fb1ba1756335d42efb26a1469fecab4eb40817fb1783c5bd010db6aa799f
4
- data.tar.gz: 003ee0881213a406571b19d293b145a48eee377f6aef1282f701d76429816e9e
3
+ metadata.gz: 223856c2ccfb73e2f42eed3da86e70b0a819a575028ca1d0ddbebe0fc757c1d6
4
+ data.tar.gz: b8d496dbd42774fcb7a5528cb4969b15a87cebd2c59899ad8dafa86438279874
5
5
  SHA512:
6
- metadata.gz: a2cccc74e3a2ecbb2459008fe9d399ebf2572dba782cd660bdd69bf4aafbab421a545952206fe1767edd03b9b38655f1e4a4209d9dd30060631499d3d949fba0
7
- data.tar.gz: f92d61ae2788cc3fa6e5a1d84150571516caf7d8e520057efc90f80de24bf1d402a5e01243c18eae903d46e48849ab044809e466fc687a02ab4f07c179118ec1
6
+ metadata.gz: 5770b2945b0ff2e2a5f80a5cad81c8dd506c41519897e19ad29f973b57250891f3aa31c2d57135f69c960de12ea0724ad4bfa2bc68f445be6699851177a67b5e
7
+ data.tar.gz: 89dbae3fb440d8cef88ed57131131ca7d3081b8039f772b6d88ebbd09332f7ffa9a2cfe09e5505d5c422ce69b82ae8344bf79d475022aa454594e87ef559e1d6
@@ -17,7 +17,7 @@ module Delayed
17
17
  private
18
18
 
19
19
  def _enqueue(job, opts = {})
20
- if job.class.respond_to?(:enqueue_after_transaction_commit) && job.class.enqueue_after_transaction_commit == :always
20
+ if enqueue_after_transaction_commit_enabled?(job)
21
21
  raise UnsafeEnqueueError, "The ':delayed' ActiveJob adapter is not compatible with enqueue_after_transaction_commit"
22
22
  end
23
23
 
@@ -29,6 +29,11 @@ module Delayed
29
29
  end
30
30
  end
31
31
 
32
+ def enqueue_after_transaction_commit_enabled?(job)
33
+ job.class.respond_to?(:enqueue_after_transaction_commit) &&
34
+ [true, :always].include?(job.class.enqueue_after_transaction_commit)
35
+ end
36
+
32
37
  module EnqueuingPatch
33
38
  def self.included(klass)
34
39
  klass.prepend PrependedMethods
@@ -295,7 +295,9 @@ RSpec.describe Delayed::ActiveJobAdapter do
295
295
  end
296
296
 
297
297
  it 'raises an exception on enqueue' do
298
- expect { JobClass.perform_later }.to raise_error(Delayed::ActiveJobAdapter::UnsafeEnqueueError)
298
+ ActiveJob.deprecator.silence do
299
+ expect { JobClass.perform_later }.to raise_error(Delayed::ActiveJobAdapter::UnsafeEnqueueError)
300
+ end
299
301
  end
300
302
  end
301
303
 
@@ -306,7 +308,33 @@ RSpec.describe Delayed::ActiveJobAdapter do
306
308
  end
307
309
 
308
310
  it 'does not raises an exception on enqueue' do
309
- expect { JobClass.perform_later }.not_to raise_error(Delayed::ActiveJobAdapter::UnsafeEnqueueError)
311
+ ActiveJob.deprecator.silence do
312
+ expect { JobClass.perform_later }.not_to raise_error
313
+ end
314
+ end
315
+ end
316
+ end
317
+
318
+ if ActiveJob.gem_version.release >= Gem::Version.new('8.0')
319
+ context 'when the given job sets enqueue_after_transaction_commit to true' do
320
+ before do
321
+ JobClass.include ActiveJob::EnqueueAfterTransactionCommit # normally run in an ActiveJob railtie
322
+ JobClass.enqueue_after_transaction_commit = true
323
+ end
324
+
325
+ it 'raises an exception on enqueue' do
326
+ expect { JobClass.perform_later }.to raise_error(Delayed::ActiveJobAdapter::UnsafeEnqueueError)
327
+ end
328
+ end
329
+
330
+ context 'when the given job sets enqueue_after_transaction_commit to false' do
331
+ before do
332
+ JobClass.include ActiveJob::EnqueueAfterTransactionCommit # normally run in an ActiveJob railtie
333
+ JobClass.enqueue_after_transaction_commit = false
334
+ end
335
+
336
+ it 'does not raises an exception on enqueue' do
337
+ expect { JobClass.perform_later }.not_to raise_error
310
338
  end
311
339
  end
312
340
  end
data/spec/helper.rb CHANGED
@@ -10,6 +10,13 @@ require 'sample_jobs'
10
10
 
11
11
  require 'rake'
12
12
 
13
+ if ActiveSupport.gem_version >= Gem::Version.new('7.1')
14
+ frameworks = [ActiveModel, ActiveRecord, ActionMailer, ActiveJob, ActiveSupport]
15
+ frameworks.each { |framework| framework.deprecator.behavior = :raise }
16
+ else
17
+ ActiveSupport::Deprecation.behavior = :raise
18
+ end
19
+
13
20
  if ENV['DEBUG_LOGS']
14
21
  Delayed.logger = Logger.new($stdout)
15
22
  else
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: delayed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Griffith
@@ -18,7 +18,7 @@ authors:
18
18
  - Tobias Lütke
19
19
  bindir: bin
20
20
  cert_chain: []
21
- date: 2025-01-15 00:00:00.000000000 Z
21
+ date: 2025-01-24 00:00:00.000000000 Z
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency
24
24
  name: activerecord