good_job 2.17.1 → 2.99.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: 869350074426db7d14fdf229402edf5f86be6eccb0403c160f464e36844586dd
4
- data.tar.gz: 972188f8afb342c260b3c5417988ece4a0d2a42dfcaf42da18b72a8a472f24a4
3
+ metadata.gz: 2a19a18e7245448f7f44c99a492f4ca08f311cc96da9a50f4ba4d7b704685017
4
+ data.tar.gz: 07330c1a31b873b172066d9e7946b0184b250f7276fe041617c378b35ce8beca
5
5
  SHA512:
6
- metadata.gz: e25f2531c4e6310304e3152a9e93291f0daa158ae78c2937a59d0a680abe705ba063b510cc1680cf1c856f45112789365fed8ddf9d15cf46eabb62afd5c9770d
7
- data.tar.gz: d35c3de5c5bdb857af39e17376500792e017ba66dea78ab0da21c37635cf37ea1af1af36af3d6dd0bd19328d2a8fea0ff01765d841fce9c3b5ed1b9b8090a74f
6
+ metadata.gz: 7a38a4a1bc73cf7378f24850b1e58b9b7cf6fbf83ef7aff8fcdba7d2c77ce782e273a3bc946efcf21d98157523b68183bb36efcbd570d253eab73cc7e8542c99
7
+ data.tar.gz: c97a8235d5b0041237909d6bb551bcccf2de5a4e2fa07bbbb12496a245aa6c4408896baa2a752b0a9f3eb6a1eb037189baa68e6d9979b57ef640e08750609d27
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [v2.99.0](https://github.com/bensheldon/good_job/tree/v2.99.0) (2022-06-26)
4
+
5
+ [Full Changelog](https://github.com/bensheldon/good_job/compare/v2.17.1...v2.99.0)
6
+
7
+ **Closed issues:**
8
+
9
+ - How to accomplish user controlled recurring jobs? [\#640](https://github.com/bensheldon/good_job/issues/640)
10
+ - "uninitialized constant GoodJob::Execution" in development env [\#634](https://github.com/bensheldon/good_job/issues/634)
11
+
12
+ **Merged pull requests:**
13
+
14
+ - Create upgrade instructions for v2.99 -\> v3.0.0 [\#641](https://github.com/bensheldon/good_job/pull/641) ([bensheldon](https://github.com/bensheldon))
15
+ - Update development dependencies; delete Gemfile.lock in CI to avoid Ruby version dependency mismatches [\#639](https://github.com/bensheldon/good_job/pull/639) ([bensheldon](https://github.com/bensheldon))
16
+ - Put more model files in `lib/models` and align specs too [\#638](https://github.com/bensheldon/good_job/pull/638) ([bensheldon](https://github.com/bensheldon))
17
+ - Generate sha256 checksums on gem release too [\#636](https://github.com/bensheldon/good_job/pull/636) ([bensheldon](https://github.com/bensheldon))
18
+
3
19
  ## [v2.17.1](https://github.com/bensheldon/good_job/tree/v2.17.1) (2022-06-24)
4
20
 
5
21
  [Full Changelog](https://github.com/bensheldon/good_job/compare/v2.17.0...v2.17.1)
data/README.md CHANGED
@@ -46,6 +46,7 @@ For more of the story of GoodJob, read the [introductory blog post](https://isla
46
46
  - [Cron-style repeating/recurring jobs](#cron-style-repeatingrecurring-jobs)
47
47
  - [Updating](#updating)
48
48
  - [Upgrading minor versions](#upgrading-minor-versions)
49
+ - [Upgrading v2 to v3](#upgrading-v2-to-v3)
49
50
  - [Upgrading v1 to v2](#upgrading-v1-to-v2)
50
51
  - [Go deeper](#go-deeper)
51
52
  - [Exceptions, retries, and reliability](#exceptions-retries-and-reliability)
@@ -509,9 +510,25 @@ To perform upgrades to the GoodJob database tables:
509
510
  1. Commit the migration files and resulting `db/schema.rb` changes.
510
511
  1. Deploy the code, run the migrations against the production database, and restart server/worker processes.
511
512
 
513
+ #### Upgrading v2 to v3
514
+
515
+ GoodJob v3 is operationally identical to v2; upgrading to GoodJob v3 should be simple. If you are already using `>= v2.9+` no other changes are necessary.
516
+
517
+ 1. Upgrade to `v2.99.x`, following the minor version upgrade process, running any remaining database migrations (`rails g good_job:update`) and addressing deprecation warnings.
518
+ 1. Upgrade from `v2.99.x` to `v3.x`
519
+
520
+ Notable changes:
521
+
522
+ - Defaults to preserve job records, and automatically delete them after 14 days.
523
+ - Defaults to discarding failed jobs, instead of immediately retrying them.
524
+ - `:inline` execution mode respects job schedules. Tests can invoke `GoodJob.perform_inline` to execute jobs.
525
+ - `GoodJob::Adapter` can no longer can be initialized with custom execution options (`queues:`, `max_threads:`, `poll_interval:`).
526
+ - Renames `GoodJob::ActiveJobJob` to `GoodJob::Job`.
527
+ - Removes support for Rails 5.2.
528
+
512
529
  #### Upgrading v1 to v2
513
530
 
514
- GoodJob v2 introduces a new Advisory Lock key format that is different than the v1 advisory lock key format; it's therefore necessary to perform a simple, but staged production upgrade. If you are already using `>= v1.12+` no other changes are necessary.
531
+ GoodJob v2 introduces a new Advisory Lock key format that is operationally different than the v1 advisory lock key format; it's therefore necessary to perform a simple, but staged production upgrade. If you are already using `>= v1.12+` no other changes are necessary.
515
532
 
516
533
  1. Upgrade your production environment to `v1.99.x` following the minor version upgrade process, including database migrations. `v1.99` is a transitional release that is safely compatible with both `v1.x` and `v2.0.0` because it uses both `v1`- and `v2`-formatted advisory locks.
517
534
  1. Address any deprecation warnings generated by `v1.99`.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module GoodJob
3
3
  # GoodJob gem version.
4
- VERSION = '2.17.1'
4
+ VERSION = '2.99.0'
5
5
  end
File without changes
File without changes
File without changes
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: 2.17.1
4
+ version: 2.99.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Sheldon
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-24 00:00:00.000000000 Z
11
+ date: 2022-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activejob
@@ -140,16 +140,16 @@ dependencies:
140
140
  name: capybara
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - "~>"
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: 3.35.0
145
+ version: '0'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - "~>"
150
+ - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: 3.35.0
152
+ version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: database_cleaner
155
155
  requirement: !ruby/object:Gem::Requirement
@@ -294,16 +294,16 @@ dependencies:
294
294
  name: selenium-webdriver
295
295
  requirement: !ruby/object:Gem::Requirement
296
296
  requirements:
297
- - - "~>"
297
+ - - ">="
298
298
  - !ruby/object:Gem::Version
299
- version: '3.142'
299
+ version: '0'
300
300
  type: :development
301
301
  prerelease: false
302
302
  version_requirements: !ruby/object:Gem::Requirement
303
303
  requirements:
304
- - - "~>"
304
+ - - ">="
305
305
  - !ruby/object:Gem::Version
306
- version: '3.142'
306
+ version: '0'
307
307
  - !ruby/object:Gem::Dependency
308
308
  name: sigdump
309
309
  requirement: !ruby/object:Gem::Requirement
@@ -427,7 +427,6 @@ files:
427
427
  - lib/good_job/cleanup_tracker.rb
428
428
  - lib/good_job/cli.rb
429
429
  - lib/good_job/configuration.rb
430
- - lib/good_job/cron_entry.rb
431
430
  - lib/good_job/cron_manager.rb
432
431
  - lib/good_job/current_thread.rb
433
432
  - lib/good_job/daemon.rb
@@ -435,9 +434,7 @@ files:
435
434
  - lib/good_job/engine.rb
436
435
  - lib/good_job/execution_result.rb
437
436
  - lib/good_job/filterable.rb
438
- - lib/good_job/job.rb
439
437
  - lib/good_job/job_performer.rb
440
- - lib/good_job/lockable.rb
441
438
  - lib/good_job/log_subscriber.rb
442
439
  - lib/good_job/multi_scheduler.rb
443
440
  - lib/good_job/notifier.rb
@@ -448,7 +445,10 @@ files:
448
445
  - lib/good_job/version.rb
449
446
  - lib/models/good_job/active_job_job.rb
450
447
  - lib/models/good_job/base_record.rb
448
+ - lib/models/good_job/cron_entry.rb
451
449
  - lib/models/good_job/execution.rb
450
+ - lib/models/good_job/job.rb
451
+ - lib/models/good_job/lockable.rb
452
452
  - lib/models/good_job/process.rb
453
453
  homepage: https://github.com/bensheldon/good_job
454
454
  licenses:
@@ -460,7 +460,7 @@ metadata:
460
460
  homepage_uri: https://github.com/bensheldon/good_job
461
461
  source_code_uri: https://github.com/bensheldon/good_job
462
462
  rubygems_mfa_required: 'true'
463
- post_install_message:
463
+ post_install_message:
464
464
  rdoc_options:
465
465
  - "--title"
466
466
  - GoodJob - a multithreaded, Postgres-based ActiveJob backend for Ruby on Rails
@@ -482,8 +482,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
482
482
  - !ruby/object:Gem::Version
483
483
  version: '0'
484
484
  requirements: []
485
- rubygems_version: 3.3.16
486
- signing_key:
485
+ rubygems_version: 3.1.6
486
+ signing_key:
487
487
  specification_version: 4
488
488
  summary: A multithreaded, Postgres-based ActiveJob backend for Ruby on Rails
489
489
  test_files: []