delayed_job_heartbeat_plugin 0.4.0 → 0.5.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d1be4392005e897fdb23c9ee24ba53926bec7b0db85732127b7a88ebc570cdc8
4
- data.tar.gz: aaf73ae4a764f1ad1b17f419388b9ed950ef5c5d828af252988117a95c34c56a
3
+ metadata.gz: 5ba564b35f94921f30c324a5597705a743fd443946492b131f382282d2650c91
4
+ data.tar.gz: 63947153fbcf5b303d47981cee2a21eb8f4d76298ad6bc4e8fefe18da9cabe26
5
5
  SHA512:
6
- metadata.gz: 46ac706430681a541a6c4c4fe91222183357c0c4cf1fe33db2ebcf422560080a95761e1f1646d376c12c1d4e01c3f4b531aaa4932cdc56940b591a05171ddc3f
7
- data.tar.gz: 46bacc4d2ee52f933763625f16ffece66cb24e427a708dcaa89a241ba65e4102b86512e85884ea343762ad092d04bd5e595032289bbc1c38402bba34b5a99f0f
6
+ metadata.gz: 25f9c2a073c041070f6f25d0b5c20a03fe60a598880a95f25478e62fca3d1c2cd046e312e4d7da4355254b86f3fc2b5551a8d35d287baff015dcde5a767dc727
7
+ data.tar.gz: 6abadd87e0918dc4f0cb9f501455444b8ea81e30473913d229967d95909682d1673402267fe47c20c4d134136e09592f6607648b70320fa1f6b508dc78e70bda
data/.circleci/config.yml CHANGED
@@ -1,77 +1,81 @@
1
1
  version: 2.1
2
2
  jobs:
3
3
  lint:
4
- docker:
5
- - image: salsify/ruby_ci:2.5.8
6
- working_directory: ~/delayed_job_heartbeat_plugin
7
- steps:
8
- - checkout
9
- - restore_cache:
10
- keys:
11
- - v1-gems-ruby-2.5.8-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "Gemfile" }}
12
- - v1-gems-ruby-2.5.8-
13
- - run:
14
- name: Install Gems
15
- command: |
16
- if ! bundle check --path=vendor/bundle; then
17
- bundle install --path=vendor/bundle --jobs=4 --retry=3
18
- bundle clean
19
- fi
20
- - save_cache:
21
- key: v1-gems-ruby-2.5.8-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "Gemfile" }}
22
- paths:
23
- - "vendor/bundle"
24
- - "gemfiles/vendor/bundle"
25
- - run:
26
- name: Run Rubocop
27
- command: bundle exec rubocop --config .rubocop.yml
4
+ docker:
5
+ - image: salsify/ruby_ci:2.7.6
6
+ working_directory: ~/delayed_job_heartbeat_plugin
7
+ steps:
8
+ - checkout
9
+ - restore_cache:
10
+ keys:
11
+ - v1-gems-ruby-2.7.6-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "Gemfile" }}
12
+ - v1-gems-ruby-2.7.6-
13
+ - run:
14
+ name: Install Gems
15
+ command: |
16
+ if ! bundle check --path=vendor/bundle; then
17
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
18
+ bundle clean
19
+ fi
20
+ - save_cache:
21
+ key: v1-gems-ruby-2.7.6-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "Gemfile" }}
22
+ paths:
23
+ - "vendor/bundle"
24
+ - "gemfiles/vendor/bundle"
25
+ - run:
26
+ name: Run Rubocop
27
+ command: bundle exec rubocop --config .rubocop.yml
28
28
  test:
29
- parameters:
30
- gemfile:
31
- type: string
32
- ruby_version:
33
- type: string
34
- docker:
35
- - image: salsify/ruby_ci:<< parameters.ruby_version >>
36
- - image: circleci/postgres:9.6
37
- environment:
38
- POSTGRES_USER: "circleci"
39
- POSTGRES_DB: "circle_test"
40
- POSTGRES_HOST_AUTH_METHOD: "trust"
41
- environment:
42
- CIRCLE_TEST_REPORTS: "test-results"
43
- BUNDLE_GEMFILE: << parameters.gemfile >>
44
- working_directory: ~/delayed_job_heartbeat_plugin
45
- steps:
46
- - checkout
47
- - restore_cache:
48
- keys:
49
- - v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
50
- - v1-gems-ruby-<< parameters.ruby_version >>-
51
- - run:
52
- name: Install Gems
53
- command: |
54
- if ! bundle check --path=vendor/bundle; then
55
- bundle install --path=vendor/bundle --jobs=4 --retry=3
56
- bundle clean
57
- fi
58
- - save_cache:
59
- key: v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
60
- paths:
61
- - "vendor/bundle"
62
- - "gemfiles/vendor/bundle"
63
- - run:
64
- name: Wait for Database
65
- command: dockerize -wait tcp://localhost:5432 -timeout 60s
66
- - run:
67
- name: Wait for Database User
68
- command: t=60; for i in `seq $t`; do psql -h localhost -p 5432 -U circleci -d circle_test -c '\q' && break; [ $i -eq $t ] && return 2; sleep 1; done;
69
- - run:
70
- name: Run Tests
71
- command: |
72
- bundle exec rspec --format RspecJunitFormatter --out $CIRCLE_TEST_REPORTS/rspec/junit.xml --format progress spec
73
- - store_test_results:
74
- path: "test-results"
29
+ parameters:
30
+ gemfile:
31
+ type: string
32
+ ruby_version:
33
+ type: string
34
+ docker:
35
+ - image: salsify/ruby_ci:<< parameters.ruby_version >>
36
+ environment:
37
+ DB_USER: "circleci"
38
+ - image: cimg/postgres:12.7
39
+ environment:
40
+ POSTGRES_USER: "circleci"
41
+ POSTGRES_DB: "circle_test"
42
+ POSTGRES_HOST_AUTH_METHOD: "trust"
43
+ environment:
44
+ RACK_ENV: "test"
45
+ RAILS_ENV: "test"
46
+ CIRCLE_TEST_REPORTS: "test-results"
47
+ BUNDLE_GEMFILE: << parameters.gemfile >>
48
+ working_directory: ~/delayed_job_heartbeat_plugin
49
+ steps:
50
+ - checkout
51
+ - restore_cache:
52
+ keys:
53
+ - v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
54
+ - v1-gems-ruby-<< parameters.ruby_version >>-
55
+ - run:
56
+ name: Install Gems
57
+ command: |
58
+ if ! bundle check --path=vendor/bundle; then
59
+ bundle install --path=vendor/bundle --jobs=4 --retry=3
60
+ bundle clean
61
+ fi
62
+ - save_cache:
63
+ key: v1-gems-ruby-<< parameters.ruby_version >>-{{ checksum "delayed_job_heartbeat_plugin.gemspec" }}-{{ checksum "<< parameters.gemfile >>" }}
64
+ paths:
65
+ - "vendor/bundle"
66
+ - "gemfiles/vendor/bundle"
67
+ - run:
68
+ name: Wait for Database
69
+ command: dockerize -wait tcp://localhost:5432 -timeout 60s
70
+ - run:
71
+ name: Wait for Database User
72
+ command: t=30; for i in `seq $t`; do psql -h localhost -p 5432 -U circleci -d circle_test -c '\q' && break; [ $i -eq $t ] && return 2; sleep 1; done;
73
+ - run:
74
+ name: Run Tests
75
+ command: |
76
+ bundle exec rspec --format RspecJunitFormatter --out $CIRCLE_TEST_REPORTS/rspec/junit.xml --format progress spec
77
+ - store_test_results:
78
+ path: "test-results"
75
79
  workflows:
76
80
  build:
77
81
  jobs:
@@ -79,15 +83,11 @@ workflows:
79
83
  - test:
80
84
  matrix:
81
85
  parameters:
82
- ruby_version:
83
- - "2.5.8"
84
- - "2.6.5"
85
- - "2.7.2"
86
- - "3.0.0"
87
86
  gemfile:
88
- - "gemfiles/rails_5.2.gemfile"
89
87
  - "gemfiles/rails_6.0.gemfile"
90
88
  - "gemfiles/rails_6.1.gemfile"
91
- exclude:
92
- - ruby_version: "3.0.0"
93
- gemfile: "gemfiles/rails_5.2.gemfile"
89
+ - "gemfiles/rails_7.0.gemfile"
90
+ ruby_version:
91
+ - "2.7.6"
92
+ - "3.0.4"
93
+ - "3.1.2"
@@ -0,0 +1 @@
1
+ * @jturkel @will89
data/.rubocop.yml CHANGED
@@ -2,7 +2,7 @@ inherit_gem:
2
2
  salsify_rubocop: conf/rubocop.yml
3
3
 
4
4
  AllCops:
5
- TargetRubyVersion: 2.5
5
+ TargetRubyVersion: 2.7
6
6
  Exclude:
7
7
  - 'vendor/**/*'
8
- - 'gemfiles/vendor/**/*'
8
+ - 'gemfiles/**/*'
data/Appraisals CHANGED
@@ -1,16 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- appraise 'rails-5.2' do
4
- gem 'activerecord', '5.2.5'
5
- gem 'activesupport', '5.2.5'
6
- end
7
-
8
3
  appraise 'rails-6.0' do
9
- gem 'activerecord', '6.0.3.6'
10
- gem 'activesupport', '6.0.3.6'
4
+ gem 'activerecord', '~> 6.0.4'
5
+ gem 'activesupport', '~> 6.0.4'
11
6
  end
12
7
 
13
8
  appraise 'rails-6.1' do
14
- gem 'activerecord', '6.1.3.1'
15
- gem 'activesupport', '6.1.3.1'
9
+ gem 'activerecord', '~> 6.1.5'
10
+ gem 'activesupport', '~> 6.1.5'
11
+ end
12
+
13
+ appraise 'rails-7.0' do
14
+ gem 'activerecord', '~> 7.0.2'
15
+ gem 'activesupport', '~> 7.0.2'
16
16
  end
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ### 0.5.0
4
+ - Drop support for ruby < 2.7
5
+ - Add support for ruby 3.1
6
+ - Drop Rails 5.2
7
+ - Add Rails 7.0
8
+
3
9
  ### 0.4.0
4
10
  - Use frozen string literals.
5
11
 
@@ -14,16 +14,23 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = 'https://github.com/salsify/delayed_job_heartbeat_plugin'
15
15
  spec.license = 'MIT'
16
16
 
17
+ if spec.respond_to?(:metadata)
18
+ spec.metadata['allowed_push_host'] = 'https://rubygems.org'
19
+ spec.metadata['rubygems_mfa_required'] = 'true'
20
+ else
21
+ raise 'RubyGems 2.0 or newer is required to set allowed_push_host.'
22
+ end
23
+
17
24
  spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
18
25
  spec.test_files = Dir.glob('spec/**/*')
19
26
  spec.require_paths = ['lib']
20
27
 
21
- spec.required_ruby_version = '>= 2.5'
28
+ spec.required_ruby_version = '>= 2.7'
22
29
 
23
30
  spec.add_dependency 'delayed_job', '>= 4.1.0'
24
31
  spec.add_dependency 'delayed_job_active_record', '>= 4.1.0'
25
32
 
26
- spec.add_development_dependency 'activerecord', ['>= 5.2', '< 7']
33
+ spec.add_development_dependency 'activerecord', ['>= 5.2', '< 7.1']
27
34
  spec.add_development_dependency 'appraisal'
28
35
  spec.add_development_dependency 'bundler'
29
36
  spec.add_development_dependency 'coveralls_reborn', '>= 0.18.0'
@@ -1,10 +1,8 @@
1
- # frozen_string_literal: true
2
-
3
1
  # This file was generated by Appraisal
4
2
 
5
- source 'https://rubygems.org'
3
+ source "https://rubygems.org"
6
4
 
7
- gem 'activerecord', '6.0.3.6'
8
- gem 'activesupport', '6.0.3.6'
5
+ gem "activerecord", "~> 6.0.4"
6
+ gem "activesupport", "~> 6.0.4"
9
7
 
10
- gemspec path: '../'
8
+ gemspec path: "../"
@@ -1,10 +1,8 @@
1
- # frozen_string_literal: true
2
-
3
1
  # This file was generated by Appraisal
4
2
 
5
- source 'https://rubygems.org'
3
+ source "https://rubygems.org"
6
4
 
7
- gem 'activerecord', '6.1.3.1'
8
- gem 'activesupport', '6.1.3.1'
5
+ gem "activerecord", "~> 6.1.5"
6
+ gem "activesupport", "~> 6.1.5"
9
7
 
10
- gemspec path: '../'
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activerecord", "~> 7.0.2"
6
+ gem "activesupport", "~> 7.0.2"
7
+
8
+ gemspec path: "../"
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Delayed
4
4
  module Heartbeat
5
- VERSION = '0.4.0'
5
+ VERSION = '0.5.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: delayed_job_heartbeat_plugin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Turkel
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-31 00:00:00.000000000 Z
11
+ date: 2022-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: delayed_job
@@ -47,7 +47,7 @@ dependencies:
47
47
  version: '5.2'
48
48
  - - "<"
49
49
  - !ruby/object:Gem::Version
50
- version: '7'
50
+ version: '7.1'
51
51
  type: :development
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,7 +57,7 @@ dependencies:
57
57
  version: '5.2'
58
58
  - - "<"
59
59
  - !ruby/object:Gem::Version
60
- version: '7'
60
+ version: '7.1'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: appraisal
63
63
  requirement: !ruby/object:Gem::Requirement
@@ -212,7 +212,7 @@ dependencies:
212
212
  - - ">="
213
213
  - !ruby/object:Gem::Version
214
214
  version: '0'
215
- description:
215
+ description:
216
216
  email:
217
217
  - jturkel@salsify.com
218
218
  executables: []
@@ -220,6 +220,7 @@ extensions: []
220
220
  extra_rdoc_files: []
221
221
  files:
222
222
  - ".circleci/config.yml"
223
+ - ".github/CODEOWNERS"
223
224
  - ".gitignore"
224
225
  - ".rspec"
225
226
  - ".rubocop.yml"
@@ -231,9 +232,9 @@ files:
231
232
  - Rakefile
232
233
  - bin/setup
233
234
  - delayed_job_heartbeat_plugin.gemspec
234
- - gemfiles/rails_5.2.gemfile
235
235
  - gemfiles/rails_6.0.gemfile
236
236
  - gemfiles/rails_6.1.gemfile
237
+ - gemfiles/rails_7.0.gemfile
237
238
  - lib/delayed/heartbeat.rb
238
239
  - lib/delayed/heartbeat/compatibility.rb
239
240
  - lib/delayed/heartbeat/configuration.rb
@@ -259,8 +260,10 @@ files:
259
260
  homepage: https://github.com/salsify/delayed_job_heartbeat_plugin
260
261
  licenses:
261
262
  - MIT
262
- metadata: {}
263
- post_install_message:
263
+ metadata:
264
+ allowed_push_host: https://rubygems.org
265
+ rubygems_mfa_required: 'true'
266
+ post_install_message:
264
267
  rdoc_options: []
265
268
  require_paths:
266
269
  - lib
@@ -268,24 +271,24 @@ required_ruby_version: !ruby/object:Gem::Requirement
268
271
  requirements:
269
272
  - - ">="
270
273
  - !ruby/object:Gem::Version
271
- version: '2.5'
274
+ version: '2.7'
272
275
  required_rubygems_version: !ruby/object:Gem::Requirement
273
276
  requirements:
274
277
  - - ">="
275
278
  - !ruby/object:Gem::Version
276
279
  version: '0'
277
280
  requirements: []
278
- rubygems_version: 3.1.4
279
- signing_key:
281
+ rubygems_version: 3.2.33
282
+ signing_key:
280
283
  specification_version: 4
281
284
  summary: Delayed::Job plugin to unlock jobs from dead workers
282
285
  test_files:
286
+ - spec/db/schema.rb
287
+ - spec/delayed/heartbeat/delete_worker_results_spec.rb
288
+ - spec/delayed/heartbeat/worker_heartbeat_spec.rb
289
+ - spec/delayed/heartbeat_spec.rb
283
290
  - spec/spec_helper.rb
284
291
  - spec/support/destroyed_model.rb
292
+ - spec/support/test_job.rb
285
293
  - spec/support/test_job_with_callbacks.rb
286
294
  - spec/support/wait.rb
287
- - spec/support/test_job.rb
288
- - spec/delayed/heartbeat_spec.rb
289
- - spec/delayed/heartbeat/worker_heartbeat_spec.rb
290
- - spec/delayed/heartbeat/delete_worker_results_spec.rb
291
- - spec/db/schema.rb
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # This file was generated by Appraisal
4
-
5
- source 'https://rubygems.org'
6
-
7
- gem 'activerecord', '5.2.5'
8
- gem 'activesupport', '5.2.5'
9
-
10
- gemspec path: '../'