good_job 3.3.0 → 3.3.1

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: 2225caa419c57cd76c9acba358fa94e2fd2d29c914d25459093a5a65b785087d
4
- data.tar.gz: 2c6af031bb80859108ed847a7d891a2066b06004edb518fa8921b01b3c9b662a
3
+ metadata.gz: cabb124450eb5e88a460635fb4aa70f3e5a53406ded6554bb32018fa2aa890bc
4
+ data.tar.gz: 0d83085806f8a1f30eff6136df4995f7982064b90a497ee56a4f8b9d922f4fbb
5
5
  SHA512:
6
- metadata.gz: 00bfcfcf22a4f3e5138bc2d85a172bbf4c74515c38759af561567c42f5464825fd47aa3f5c369f91196ede2b73211c9e1b3422f5d555bcff439e7fd32fc9db1a
7
- data.tar.gz: cc28292dd555ddd951ab465534302f0775784074e456bb181eb2f5efc07f4281bcd49783fa38e4a205591fb05daa19f88ff013995fe06fe3761e675b1e84e0ba
6
+ metadata.gz: 7f17d4379517d9909ac771c9920b3472b1d5bbb18ce45bd78b160f76eba6b6a1169e6b89ec044cd8f3c5ad93a311be45174bd43b99468c5ff9a5c4bad088263f
7
+ data.tar.gz: 27f6aa3048d4035feb1e55b7cd4a3ba8410deb74ec9268fba23bac9a75c9db26bc3599d1f140bf68182b2f2307183013bc6601927a6eec19cab6051fcf03a927
data/CHANGELOG.md CHANGED
@@ -1,9 +1,40 @@
1
1
  # Changelog
2
2
 
3
+ ## [v3.3.1](https://github.com/bensheldon/good_job/tree/v3.3.1) (2022-07-26)
4
+
5
+ [Full Changelog](https://github.com/bensheldon/good_job/compare/v3.3.0...v3.3.1)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - Show basename of proctitle [\#679](https://github.com/bensheldon/good_job/pull/679) ([bkeepers](https://github.com/bkeepers))
10
+
11
+ **Fixed bugs:**
12
+
13
+ - Only count \_active\_ processes in the Navbar [\#680](https://github.com/bensheldon/good_job/pull/680) ([bensheldon](https://github.com/bensheldon))
14
+ - Remove Zeitwerk and use explicit requires to be more like an engine [\#677](https://github.com/bensheldon/good_job/pull/677) ([bensheldon](https://github.com/bensheldon))
15
+
16
+ **Closed issues:**
17
+
18
+ - Dashboard UI Invalid count of running process [\#678](https://github.com/bensheldon/good_job/issues/678)
19
+
20
+ **Merged pull requests:**
21
+
22
+ - Lock to dotenv 2.7.x for Ruby 2.5 compatibility [\#682](https://github.com/bensheldon/good_job/pull/682) ([bensheldon](https://github.com/bensheldon))
23
+ - Create global GoodJob.configuration object [\#681](https://github.com/bensheldon/good_job/pull/681) ([bensheldon](https://github.com/bensheldon))
24
+
3
25
  ## [v3.3.0](https://github.com/bensheldon/good_job/tree/v3.3.0) (2022-07-24)
4
26
 
5
27
  [Full Changelog](https://github.com/bensheldon/good_job/compare/v3.2.0...v3.3.0)
6
28
 
29
+ **Implemented enhancements:**
30
+
31
+ - Dashboard: Update cron and processes to match jobs listing [\#676](https://github.com/bensheldon/good_job/pull/676) ([bkeepers](https://github.com/bkeepers))
32
+ - Dashboard: improvements to jobs index and show pages [\#672](https://github.com/bensheldon/good_job/pull/672) ([bkeepers](https://github.com/bkeepers))
33
+
34
+ **Fixed bugs:**
35
+
36
+ - Replace "timestamp" column-type in migrations with "datetime" [\#671](https://github.com/bensheldon/good_job/pull/671) ([bensheldon](https://github.com/bensheldon))
37
+
7
38
  **Closed issues:**
8
39
 
9
40
  - Calculating database connections [\#669](https://github.com/bensheldon/good_job/issues/669)
@@ -14,9 +45,6 @@
14
45
 
15
46
  **Merged pull requests:**
16
47
 
17
- - Dashboard: Update cron and processes to match jobs listing [\#676](https://github.com/bensheldon/good_job/pull/676) ([bkeepers](https://github.com/bkeepers))
18
- - Dashboard: improvements to jobs index and show pages [\#672](https://github.com/bensheldon/good_job/pull/672) ([bkeepers](https://github.com/bkeepers))
19
- - Replace "timestamp" column-type in migrations with "datetime" [\#671](https://github.com/bensheldon/good_job/pull/671) ([bensheldon](https://github.com/bensheldon))
20
48
  - Improve Readme description of v3 job preservation defaults [\#670](https://github.com/bensheldon/good_job/pull/670) ([bensheldon](https://github.com/bensheldon))
21
49
  - update Gemfile.lock to latest dependencies [\#647](https://github.com/bensheldon/good_job/pull/647) ([jrochkind](https://github.com/jrochkind))
22
50
 
@@ -24,7 +52,7 @@
24
52
 
25
53
  [Full Changelog](https://github.com/bensheldon/good_job/compare/v3.1.0...v3.2.0)
26
54
 
27
- **Merged pull requests:**
55
+ **Implemented enhancements:**
28
56
 
29
57
  - Ordered queue handling by workers [\#665](https://github.com/bensheldon/good_job/pull/665) ([jrochkind](https://github.com/jrochkind))
30
58
 
@@ -34,7 +62,9 @@
34
62
 
35
63
  **Implemented enhancements:**
36
64
 
65
+ - Show job/cron/process counts in the Navbar [\#663](https://github.com/bensheldon/good_job/pull/663) ([bensheldon](https://github.com/bensheldon))
37
66
  - Improve Dashboard display of parameters \(CronEntry kwargs; Process configuration; Job and Execution database values\) [\#662](https://github.com/bensheldon/good_job/pull/662) ([bensheldon](https://github.com/bensheldon))
67
+ - Dequeing should be first-in first-out [\#651](https://github.com/bensheldon/good_job/pull/651) ([jrochkind](https://github.com/jrochkind))
38
68
 
39
69
  **Fixed bugs:**
40
70
 
@@ -47,11 +77,6 @@
47
77
  - Cron schedule page in dashboard not showing kwargs [\#608](https://github.com/bensheldon/good_job/issues/608)
48
78
  - Paralelism x database connections [\#569](https://github.com/bensheldon/good_job/issues/569)
49
79
 
50
- **Merged pull requests:**
51
-
52
- - Show job/cron/process counts in the Navbar [\#663](https://github.com/bensheldon/good_job/pull/663) ([bensheldon](https://github.com/bensheldon))
53
- - Dequeing should be first-in first-out [\#651](https://github.com/bensheldon/good_job/pull/651) ([jrochkind](https://github.com/jrochkind))
54
-
55
80
  ## [v3.0.2](https://github.com/bensheldon/good_job/tree/v3.0.2) (2022-07-10)
56
81
 
57
82
  [Full Changelog](https://github.com/bensheldon/good_job/compare/v3.0.1...v3.0.2)
@@ -81,13 +106,16 @@
81
106
 
82
107
  [Full Changelog](https://github.com/bensheldon/good_job/compare/v3.0.0...v3.0.1)
83
108
 
109
+ **Fixed bugs:**
110
+
111
+ - Fix `GoodJob.cleanup_preserved_jobs` to use `delete_all` instead of `destroy_all` [\#652](https://github.com/bensheldon/good_job/pull/652) ([bensheldon](https://github.com/bensheldon))
112
+
84
113
  **Closed issues:**
85
114
 
86
115
  - ERROR: relation "good\_jobs" does not exist at character 454 [\#308](https://github.com/bensheldon/good_job/issues/308)
87
116
 
88
117
  **Merged pull requests:**
89
118
 
90
- - Fix `GoodJob.cleanup_preserved_jobs` to use `delete_all` instead of `destroy_all` [\#652](https://github.com/bensheldon/good_job/pull/652) ([bensheldon](https://github.com/bensheldon))
91
119
  - Create codeql-analysis.yml [\#648](https://github.com/bensheldon/good_job/pull/648) ([bensheldon](https://github.com/bensheldon))
92
120
 
93
121
  ## [v3.0.0](https://github.com/bensheldon/good_job/tree/v3.0.0) (2022-06-26)
File without changes
File without changes
File without changes
@@ -13,7 +13,7 @@ module GoodJob # :nodoc:
13
13
  attr_reader :params
14
14
 
15
15
  def self.all(configuration: nil)
16
- configuration ||= GoodJob::Configuration.new({})
16
+ configuration ||= GoodJob.configuration
17
17
  configuration.cron_entries
18
18
  end
19
19
 
File without changes
File without changes
@@ -28,7 +28,7 @@ module GoodJob
28
28
  self.primary_key = 'active_job_id'
29
29
  self.advisory_lockable_column = 'active_job_id'
30
30
 
31
- has_many :executions, -> { order(created_at: :asc) }, class_name: 'GoodJob::Execution', foreign_key: 'active_job_id', inverse_of: :job
31
+ has_many :executions, -> { order(created_at: :asc) }, class_name: 'GoodJob::Execution', foreign_key: 'active_job_id', inverse_of: :job # rubocop:disable Rails/HasManyOrHasOneDependent
32
32
 
33
33
  # Only the most-recent unretried execution represents a "Job"
34
34
  default_scope { where(retried_good_job_id: nil) }
File without changes
@@ -71,5 +71,9 @@ module GoodJob # :nodoc:
71
71
  destroy!
72
72
  advisory_unlock
73
73
  end
74
+
75
+ def basename
76
+ File.basename(state["proctitle"])
77
+ end
74
78
  end
75
79
  end
@@ -25,10 +25,10 @@
25
25
  <div id="<%= dom_id(process) %>" class="<%= dom_class(process) %> list-group-item py-3" role="row">
26
26
  <div class="row align-items-center">
27
27
  <div class="col">
28
- <code class="font-monospace">
28
+ <%= tag.code title: process.state['proctitle'], class: "font-monospace" do %>
29
29
  <span class="text-muted opacity-50">$</span>
30
- <%= process.state["proctitle"] %>
31
- </code>
30
+ <%= process.basename %>
31
+ <% end %>
32
32
  <div>
33
33
  <span class="text-muted small">PID</span>
34
34
  <span class="badge rounded-pill bg-light text-dark"><%= process.state["pid"] %></span>
@@ -24,7 +24,7 @@
24
24
  <li class="nav-item">
25
25
  <%= link_to processes_path, class: ["nav-link", ("active" if controller_name == 'processes')] do %>
26
26
  <%= t(".processes") %>
27
- <% processes_count = GoodJob::Process.count %>
27
+ <% processes_count = GoodJob::Process.active.count %>
28
28
  <span class="badge bg-secondary rounded-pill <%= "bg-danger" if processes_count == 0 %>"><%= processes_count %></span>
29
29
  <% end %>
30
30
  </li>
@@ -10,6 +10,8 @@ module GoodJob
10
10
  # @return [Array<GoodJob::Adapter>, nil]
11
11
  cattr_reader :instances, default: [], instance_reader: false
12
12
 
13
+ attr_reader :execution_mode
14
+
13
15
  # @param execution_mode [Symbol, nil] specifies how and where jobs should be executed. You can also set this with the environment variable +GOOD_JOB_EXECUTION_MODE+.
14
16
  #
15
17
  # - +:inline+ executes jobs immediately in whatever process queued them (usually the web server process). This should only be used in test and development environments.
@@ -25,8 +27,8 @@ module GoodJob
25
27
  # - +production+ and all other environments: +:external+
26
28
  #
27
29
  def initialize(execution_mode: nil)
28
- @configuration = GoodJob::Configuration.new({ execution_mode: execution_mode })
29
- @configuration.validate!
30
+ @execution_mode = (execution_mode || GoodJob.configuration.execution_mode).to_sym
31
+ GoodJob::Configuration.validate_execution_mode(@execution_mode)
30
32
  self.class.instances << self
31
33
 
32
34
  start_async if GoodJob.async_ready?
@@ -82,7 +84,7 @@ module GoodJob
82
84
  # @return [void]
83
85
  def shutdown(timeout: :default)
84
86
  timeout = if timeout == :default
85
- @configuration.shutdown_timeout
87
+ GoodJob.configuration.shutdown_timeout
86
88
  else
87
89
  timeout
88
90
  end
@@ -95,21 +97,21 @@ module GoodJob
95
97
  # Whether in +:async+ execution mode.
96
98
  # @return [Boolean]
97
99
  def execute_async?
98
- @configuration.execution_mode == :async_all ||
99
- (@configuration.execution_mode.in?([:async, :async_server]) && in_server_process?)
100
+ execution_mode == :async_all ||
101
+ (execution_mode.in?([:async, :async_server]) && in_server_process?)
100
102
  end
101
103
 
102
104
  # Whether in +:external+ execution mode.
103
105
  # @return [Boolean]
104
106
  def execute_externally?
105
- @configuration.execution_mode == :external ||
106
- (@configuration.execution_mode.in?([:async, :async_server]) && !in_server_process?)
107
+ execution_mode == :external ||
108
+ (execution_mode.in?([:async, :async_server]) && !in_server_process?)
107
109
  end
108
110
 
109
111
  # Whether in +:inline+ execution mode.
110
112
  # @return [Boolean]
111
113
  def execute_inline?
112
- @configuration.execution_mode == :inline
114
+ execution_mode == :inline
113
115
  end
114
116
 
115
117
  # Start async executors
@@ -118,12 +120,12 @@ module GoodJob
118
120
  return unless execute_async?
119
121
 
120
122
  @notifier = GoodJob::Notifier.new
121
- @poller = GoodJob::Poller.new(poll_interval: @configuration.poll_interval)
122
- @scheduler = GoodJob::Scheduler.from_configuration(@configuration, warm_cache_on_initialize: true)
123
+ @poller = GoodJob::Poller.new(poll_interval: GoodJob.configuration.poll_interval)
124
+ @scheduler = GoodJob::Scheduler.from_configuration(GoodJob.configuration, warm_cache_on_initialize: true)
123
125
  @notifier.recipients << [@scheduler, :create_thread]
124
126
  @poller.recipients << [@scheduler, :create_thread]
125
127
 
126
- @cron_manager = GoodJob::CronManager.new(@configuration.cron_entries, start_on_initialize: true) if @configuration.enable_cron?
128
+ @cron_manager = GoodJob::CronManager.new(GoodJob.configuration.cron_entries, start_on_initialize: true) if GoodJob.configuration.enable_cron?
127
129
 
128
130
  @_async_started = true
129
131
  end
data/lib/good_job/cli.rb CHANGED
@@ -85,7 +85,8 @@ module GoodJob
85
85
 
86
86
  def start
87
87
  set_up_application!
88
- configuration = GoodJob::Configuration.new(options)
88
+ GoodJob.configuration.options.merge!(options.symbolize_keys)
89
+ configuration = GoodJob.configuration
89
90
 
90
91
  Daemon.new(pidfile: configuration.pidfile).daemonize if configuration.daemonize?
91
92
 
@@ -142,10 +143,9 @@ module GoodJob
142
143
 
143
144
  def cleanup_preserved_jobs
144
145
  set_up_application!
146
+ GoodJob.configuration.options.merge!(options.symbolize_keys)
145
147
 
146
- configuration = GoodJob::Configuration.new(options)
147
-
148
- GoodJob.cleanup_preserved_jobs(older_than: configuration.cleanup_preserved_jobs_before_seconds_ago)
148
+ GoodJob.cleanup_preserved_jobs(older_than: GoodJob.configuration.cleanup_preserved_jobs_before_seconds_ago)
149
149
  end
150
150
 
151
151
  no_commands do
@@ -27,7 +27,12 @@ module GoodJob
27
27
  # Default to not running cron
28
28
  DEFAULT_ENABLE_CRON = false
29
29
 
30
+ def self.validate_execution_mode(execution_mode)
31
+ raise ArgumentError, "GoodJob execution mode must be one of #{EXECUTION_MODES.join(', ')}. It was '#{execution_mode}' which is not valid." unless execution_mode.in?(EXECUTION_MODES)
32
+ end
33
+
30
34
  # The options that were explicitly set when initializing +Configuration+.
35
+ # It is safe to modify this hash in place; be sure to symbolize keys.
31
36
  # @return [Hash]
32
37
  attr_reader :options
33
38
 
@@ -47,7 +52,7 @@ module GoodJob
47
52
  end
48
53
 
49
54
  def validate!
50
- raise ArgumentError, "GoodJob execution mode must be one of #{EXECUTION_MODES.join(', ')}. It was '#{execution_mode}' which is not valid." unless execution_mode.in?(EXECUTION_MODES)
55
+ self.class.validate_execution_mode(execution_mode)
51
56
  end
52
57
 
53
58
  # Specifies how and where jobs should be executed. See {Adapter#initialize}
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
  require 'active_support/core_ext/module/attribute_accessors_per_thread'
3
3
  require 'concurrent/atomic/atomic_boolean'
4
+ require "good_job/notifier/process_registration"
4
5
 
5
6
  module GoodJob # :nodoc:
6
7
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module GoodJob
3
3
  # GoodJob gem version.
4
- VERSION = '3.3.0'
4
+ VERSION = '3.3.1'
5
5
  end
data/lib/good_job.rb CHANGED
@@ -2,19 +2,29 @@
2
2
  require "active_job"
3
3
  require "active_job/queue_adapters"
4
4
 
5
- require "zeitwerk"
6
- zeitwerk_options = Gem::Version.new(Zeitwerk::VERSION) >= Gem::Version.new("2.6.0") ? { warn_on_extra_files: false } : {}
7
- Zeitwerk::Loader.for_gem(**zeitwerk_options).tap do |loader|
8
- loader.inflector.inflect({
9
- "cli" => "CLI",
10
- })
11
- loader.push_dir("#{__dir__}/models")
12
- loader.ignore("#{__dir__}/generators")
13
- loader.setup
14
- end
15
-
5
+ require "good_job/version"
16
6
  require "good_job/engine"
17
7
 
8
+ require "good_job/adapter"
9
+ require "active_job/queue_adapters/good_job_adapter"
10
+ require "good_job/active_job_extensions/concurrency"
11
+
12
+ require "good_job/assignable_connection"
13
+ require "good_job/cleanup_tracker"
14
+ require "good_job/cli"
15
+ require "good_job/configuration"
16
+ require "good_job/cron_manager"
17
+ require 'good_job/current_thread'
18
+ require "good_job/daemon"
19
+ require "good_job/dependencies"
20
+ require "good_job/job_performer"
21
+ require "good_job/log_subscriber"
22
+ require "good_job/multi_scheduler"
23
+ require "good_job/notifier"
24
+ require "good_job/poller"
25
+ require "good_job/probe_server"
26
+ require "good_job/scheduler"
27
+
18
28
  # GoodJob is a multithreaded, Postgres-based, ActiveJob backend for Ruby on Rails.
19
29
  #
20
30
  # +GoodJob+ is the top-level namespace and exposes configuration attributes.
@@ -69,6 +79,12 @@ module GoodJob
69
79
  # @return [Proc, nil]
70
80
  mattr_accessor :on_thread_error, default: nil
71
81
 
82
+ # @!attribute [rw] configuration
83
+ # @!scope class
84
+ # Global configuration object for GoodJob.
85
+ # @return [GoodJob::Configuration, nil]
86
+ mattr_accessor :configuration, default: GoodJob::Configuration.new({})
87
+
72
88
  # Called with exception when a GoodJob thread raises an exception
73
89
  # @param exception [Exception] Exception that was raised
74
90
  # @return [void]
@@ -135,10 +151,9 @@ module GoodJob
135
151
  # @params older_than [nil,Numeric,ActiveSupport::Duration] Jobs older than this will be destroyed (default: +86400+).
136
152
  # @return [Integer] Number of jobs that were destroyed.
137
153
  def self.cleanup_preserved_jobs(older_than: nil)
138
- configuration = GoodJob::Configuration.new({})
139
- older_than ||= configuration.cleanup_preserved_jobs_before_seconds_ago
154
+ older_than ||= GoodJob.configuration.cleanup_preserved_jobs_before_seconds_ago
140
155
  timestamp = Time.current - older_than
141
- include_discarded = configuration.cleanup_discarded_jobs?
156
+ include_discarded = GoodJob.configuration.cleanup_discarded_jobs?
142
157
 
143
158
  ActiveSupport::Notifications.instrument("cleanup_preserved_jobs.good_job", { older_than: older_than, timestamp: timestamp }) do |payload|
144
159
  old_jobs = GoodJob::Job.where('finished_at <= ?', timestamp)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: good_job
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.0
4
+ version: 3.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Sheldon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-24 00:00:00.000000000 Z
11
+ date: 2022-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activejob
@@ -108,20 +108,6 @@ dependencies:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '1.3'
111
- - !ruby/object:Gem::Dependency
112
- name: zeitwerk
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '2.0'
118
- type: :runtime
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '2.0'
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: benchmark-ips
127
113
  requirement: !ruby/object:Gem::Requirement
@@ -168,16 +154,16 @@ dependencies:
168
154
  name: dotenv
169
155
  requirement: !ruby/object:Gem::Requirement
170
156
  requirements:
171
- - - ">="
157
+ - - "~>"
172
158
  - !ruby/object:Gem::Version
173
- version: '0'
159
+ version: 2.7.6
174
160
  type: :development
175
161
  prerelease: false
176
162
  version_requirements: !ruby/object:Gem::Requirement
177
163
  requirements:
178
- - - ">="
164
+ - - "~>"
179
165
  - !ruby/object:Gem::Version
180
- version: '0'
166
+ version: 2.7.6
181
167
  - !ruby/object:Gem::Dependency
182
168
  name: foreman
183
169
  requirement: !ruby/object:Gem::Requirement
@@ -383,6 +369,16 @@ files:
383
369
  - app/filters/good_job/base_filter.rb
384
370
  - app/filters/good_job/jobs_filter.rb
385
371
  - app/helpers/good_job/application_helper.rb
372
+ - app/models/concerns/good_job/filterable.rb
373
+ - app/models/concerns/good_job/reportable.rb
374
+ - app/models/good_job/active_job_job.rb
375
+ - app/models/good_job/base_record.rb
376
+ - app/models/good_job/cron_entry.rb
377
+ - app/models/good_job/execution.rb
378
+ - app/models/good_job/execution_result.rb
379
+ - app/models/good_job/job.rb
380
+ - app/models/good_job/lockable.rb
381
+ - app/models/good_job/process.rb
386
382
  - app/views/good_job/cron_entries/index.html.erb
387
383
  - app/views/good_job/cron_entries/show.html.erb
388
384
  - app/views/good_job/jobs/_executions.erb
@@ -419,7 +415,6 @@ files:
419
415
  - lib/generators/good_job/templates/update/migrations/01_create_good_jobs.rb.erb
420
416
  - lib/generators/good_job/update_generator.rb
421
417
  - lib/good_job.rb
422
- - lib/good_job/active_job_extensions.rb
423
418
  - lib/good_job/active_job_extensions/concurrency.rb
424
419
  - lib/good_job/adapter.rb
425
420
  - lib/good_job/assignable_connection.rb
@@ -431,8 +426,6 @@ files:
431
426
  - lib/good_job/daemon.rb
432
427
  - lib/good_job/dependencies.rb
433
428
  - lib/good_job/engine.rb
434
- - lib/good_job/execution_result.rb
435
- - lib/good_job/filterable.rb
436
429
  - lib/good_job/job_performer.rb
437
430
  - lib/good_job/log_subscriber.rb
438
431
  - lib/good_job/multi_scheduler.rb
@@ -442,14 +435,6 @@ files:
442
435
  - lib/good_job/probe_server.rb
443
436
  - lib/good_job/scheduler.rb
444
437
  - lib/good_job/version.rb
445
- - lib/models/good_job/active_job_job.rb
446
- - lib/models/good_job/base_record.rb
447
- - lib/models/good_job/cron_entry.rb
448
- - lib/models/good_job/execution.rb
449
- - lib/models/good_job/job.rb
450
- - lib/models/good_job/lockable.rb
451
- - lib/models/good_job/process.rb
452
- - lib/models/good_job/reportable.rb
453
438
  homepage: https://github.com/bensheldon/good_job
454
439
  licenses:
455
440
  - MIT
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
- module GoodJob
3
- module ActiveJobExtensions
4
- end
5
- end