background_worker 0.4.0 → 0.7.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: 6e2f1d5ad9dc6f2f79dfcd55838f8b7d9ded9c7518fc77f90ecea89fe537539c
4
- data.tar.gz: 1e05a4e548ebdfea30e6bcf9ecc20dd7aaa3edc75966a2433f1f8ca016eb879c
3
+ metadata.gz: 37f371795b57bf7461a9f02c9f74195daf9d3cb61328fd0eca5f69a2c61447b6
4
+ data.tar.gz: 393896f93efac8a56c0806a8664ea381fff12ff31a2e0e31c210d6a3480694b8
5
5
  SHA512:
6
- metadata.gz: c98bc9599be6db3a4a5f5dd6b8dc699a9209dcf6889553ae786ee7c780198d4af3c37198fdf486477f5a150288c1ab818632eeefb655bf7453c5372806ba4871
7
- data.tar.gz: 19d317689204f81a81f782c6a8697087c13d5616341abd6258a0284249804fd216c389cf07e738993b522ec1346c517224a040531a574428233e0170502eb506
6
+ metadata.gz: dae022eecbd54ce73185739df605b3fa5ffd1efc12e411d86bd76f6bfac03f4e20616ac20ffdda04d7c3ef3c3d3d403dac69754a45b5ca9d6fb57daab2444acc
7
+ data.tar.gz: 0f9f04c606150a637744facdc4c9d9bb02ff1918d52b24fd92f5ebb47ec3606aab2e59567355422b485924352cc471f29e18d4be6438378e3ead11e0aeff3c96
@@ -5,8 +5,8 @@ jobs:
5
5
  strategy:
6
6
  fail-fast: false
7
7
  matrix:
8
- gemfile: [rails60, rails61]
9
- ruby: ["2.6", "2.7", "3.0"]
8
+ gemfile: [rails60, rails61, rails70]
9
+ ruby: ["2.7", "3.0", "3.1"]
10
10
  runs-on: ubuntu-latest
11
11
  env:
12
12
  BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
@@ -17,3 +17,8 @@ jobs:
17
17
  ruby-version: ${{ matrix.ruby }}
18
18
  bundler-cache: true
19
19
  - run: bundle exec rake
20
+ - name: Coveralls
21
+ uses: coverallsapp/github-action@master
22
+ with:
23
+ github-token: ${{ secrets.GITHUB_TOKEN }}
24
+ path-to-lcov: coverage/lcov.info
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.0.0
1
+ 3.1.0
data/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@ All notable changes to this project will be documented in this file.
3
3
  This project adheres to [Semantic Versioning](http://semver.org/).
4
4
  This changelog adheres to [Keep a CHANGELOG](http://keepachangelog.com/).
5
5
 
6
+ ## 0.7.0
7
+
8
+ - [PLAT-670] Add queue_as method
9
+
10
+ ## 0.6.0
11
+
12
+ - [PLAT-664] Align interface to ActiveJob
13
+
14
+ ## 0.5.0
15
+
16
+ - [PLAT-183] Ruby 3.1, Rails 7.0 and push coverage with github action
17
+
6
18
  ## 0.4.0
7
19
 
8
20
  - [TT-8623] Update to build with github actions / ruby 3.0 / rails 6.1
data/README.md CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/background_worker.svg)](http://badge.fury.io/rb/background_worker)
4
4
  [![Build Status](https://github.com/sealink/background_worker/workflows/Build%20and%20Test/badge.svg?branch=master)](https://github.com/sealink/background_worker/actions)
5
+ [![Coverage Status](https://coveralls.io/repos/sealink/background_worker/badge.png)](https://coveralls.io/r/sealink/background_worker)
5
6
 
6
7
  Provides a worker abstraction with an additional status channel.
7
8
 
@@ -19,15 +19,13 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(/^bin\//) { |f| File.basename(f) }
20
20
  spec.test_files = spec.files.grep(/^(test|spec|features)\//)
21
21
  spec.require_paths = ['lib']
22
- spec.required_ruby_version = '>= 2.6'
22
+ spec.required_ruby_version = '>= 2.7'
23
23
 
24
24
  spec.add_development_dependency 'activesupport'
25
25
  spec.add_development_dependency 'bundler'
26
26
  spec.add_development_dependency 'rake'
27
27
  spec.add_development_dependency 'rspec'
28
28
  spec.add_development_dependency 'coverage-kit'
29
- spec.add_development_dependency 'coveralls'
30
- spec.add_development_dependency 'simplecov-rcov'
31
29
  spec.add_development_dependency 'rubocop'
32
30
 
33
31
  spec.add_development_dependency 'activerecord'
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+ gemspec path: '../'
5
+
6
+ group :development, :test do
7
+ gem 'activerecord', '~> 7.0'
8
+ end
@@ -53,12 +53,13 @@ module BackgroundWorker
53
53
  end
54
54
 
55
55
  class << self
56
+ attr_reader :queue
56
57
  def get_state_of(worker_id)
57
58
  BackgroundWorker::PersistentState.get_state_of(worker_id)
58
59
  end
59
60
 
60
61
  # Public method to do in background...
61
- def perform_in_background(method_name, options = {})
62
+ def perform_later(method_name, options = {})
62
63
  opts = options.symbolize_keys
63
64
 
64
65
  method_name = method_name.to_sym
@@ -76,7 +77,7 @@ module BackgroundWorker
76
77
  # This method is called by the job runner
77
78
  #
78
79
  # It will just call your preferred method in the worker.
79
- def perform(method_name, options = {})
80
+ def perform_now(method_name, options = {})
80
81
  BackgroundWorker.verify_active_connections! if BackgroundWorker.config.backgrounded
81
82
 
82
83
  worker = new(options)
@@ -85,6 +86,10 @@ module BackgroundWorker
85
86
  ensure
86
87
  BackgroundWorker.release_connections! if BackgroundWorker.config.backgrounded
87
88
  end
89
+
90
+ def queue_as(queue = nil)
91
+ @queue = queue&.to_sym || :default
92
+ end
88
93
  end
89
94
  end
90
95
  end
@@ -28,7 +28,7 @@ module BackgroundWorker
28
28
  end
29
29
 
30
30
  def foreground_enqueue(klass, method_name, opts)
31
- klass.perform(method_name, opts)
31
+ klass.perform_now(method_name, opts)
32
32
  end
33
33
 
34
34
  def default_after_exception(e)
@@ -1,3 +1,3 @@
1
1
  module BackgroundWorker
2
- VERSION = '0.4.0'
2
+ VERSION = '0.7.0'
3
3
  end
data/spec/base_spec.rb CHANGED
@@ -32,8 +32,15 @@ describe BackgroundWorker::Base do
32
32
 
33
33
  it 'should perform action and handle transactions/connections appropriately' do
34
34
  Model.transaction do
35
- worker_class.perform_in_background(:store_in_cache, value: 42)
35
+ worker_class.perform_later(:store_in_cache, value: 42)
36
36
  end
37
37
  expect(cache).to have_received(:store).with(42)
38
38
  end
39
+
40
+ context '#queue_as' do
41
+ it 'should value queue correctly' do
42
+ worker_class.queue_as('low')
43
+ expect(worker_class.queue).to be :low
44
+ end
45
+ end
39
46
  end
data/spec/spec_helper.rb CHANGED
@@ -7,6 +7,7 @@
7
7
 
8
8
  require 'rubygems'
9
9
  require 'bundler/setup'
10
+ require 'active_support'
10
11
  require 'active_support/core_ext/string/inflections' #underscore
11
12
 
12
13
  require 'support/coverage_loader'
@@ -1,4 +1,3 @@
1
- require 'simplecov-rcov'
2
- require 'coveralls'
3
1
  require 'coverage/kit'
2
+
4
3
  Coverage::Kit.setup(minimum_coverage: 82.75)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: background_worker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Noack
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-01-06 00:00:00.000000000 Z
13
+ date: 2022-09-07 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -82,34 +82,6 @@ dependencies:
82
82
  - - ">="
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
- - !ruby/object:Gem::Dependency
86
- name: coveralls
87
- requirement: !ruby/object:Gem::Requirement
88
- requirements:
89
- - - ">="
90
- - !ruby/object:Gem::Version
91
- version: '0'
92
- type: :development
93
- prerelease: false
94
- version_requirements: !ruby/object:Gem::Requirement
95
- requirements:
96
- - - ">="
97
- - !ruby/object:Gem::Version
98
- version: '0'
99
- - !ruby/object:Gem::Dependency
100
- name: simplecov-rcov
101
- requirement: !ruby/object:Gem::Requirement
102
- requirements:
103
- - - ">="
104
- - !ruby/object:Gem::Version
105
- version: '0'
106
- type: :development
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- requirements:
110
- - - ">="
111
- - !ruby/object:Gem::Version
112
- version: '0'
113
85
  - !ruby/object:Gem::Dependency
114
86
  name: rubocop
115
87
  requirement: !ruby/object:Gem::Requirement
@@ -176,6 +148,7 @@ files:
176
148
  - background_worker.gemspec
177
149
  - gemfiles/rails60.gemfile
178
150
  - gemfiles/rails61.gemfile
151
+ - gemfiles/rails70.gemfile
179
152
  - lib/background_worker.rb
180
153
  - lib/background_worker/base.rb
181
154
  - lib/background_worker/config.rb
@@ -200,14 +173,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
200
173
  requirements:
201
174
  - - ">="
202
175
  - !ruby/object:Gem::Version
203
- version: '2.6'
176
+ version: '2.7'
204
177
  required_rubygems_version: !ruby/object:Gem::Requirement
205
178
  requirements:
206
179
  - - ">="
207
180
  - !ruby/object:Gem::Version
208
181
  version: '0'
209
182
  requirements: []
210
- rubygems_version: 3.2.3
183
+ rubygems_version: 3.3.3
211
184
  signing_key:
212
185
  specification_version: 4
213
186
  summary: Background worker abstraction with status updates