mini_scheduler 0.15.0 → 0.16.0

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: 6effd43f3f7ffcc5de91250409615a35ff593b5ac09e8d27be1cea78b26e990d
4
- data.tar.gz: 6c3a1c9ddff976b3f250457c0da6322d61e75f811979ec3a8137b7276dcffb87
3
+ metadata.gz: e4a38d3c8bcf38814218e73edefc423c504c8469b3c9e3c05a08bb6b0012dd47
4
+ data.tar.gz: 13a72f979b4007dd48910a5b03efafab049643e2944058be2a01602855e87393
5
5
  SHA512:
6
- metadata.gz: 04b7f4b88b7e09a0a28af0046de1a34a1028313394a13abb7bdf2430020105cc44f999a725097e614eed4b16e4b30f51c847680ea55e9b9bc4f0e0cec81954e4
7
- data.tar.gz: 496f8835eb262feb13c5c771a277431fd6a2aa11debbd74d7d18786a3a758b9b8d668e120f3d58f042b9fd86d5303317ba5fb4c281ac4463d362888557a8be45
6
+ metadata.gz: d748b674b67d3faf5e1507d5b51d2dfaa1585cf9315d93f8b634faaaf9d2942667f17b345ace2375cfa452412ddb59aac67ed98bb704de831f924f9f4545b700
7
+ data.tar.gz: 0cae809fb72df9043374a451cfa8e906e434a460201e3383bd54c60c2e4acc92147a83af8887377f3ba42bd661b104a9b7f1e500a80a1c249683fb72f406dbca
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 0.16.0 - 2023-05-17
2
+
3
+ - Support Redis gem version 5
4
+
1
5
  # 0.15.0 - 2022-11-17
2
6
 
3
7
  - Fix data inconsistencies when Redis fails during jobs (#19)
data/README.md CHANGED
@@ -1,17 +1,15 @@
1
1
  [![Build Status](https://github.com/discourse/mini_scheduler/workflows/CI/badge.svg)](https://github.com/discourse/mini_scheduler/actions)
2
2
  [![Gem Version](https://badge.fury.io/rb/mini_scheduler.svg)](https://rubygems.org/gems/mini_scheduler)
3
3
 
4
- # mini_scheduler
4
+ # MiniScheduler
5
5
 
6
6
  MiniScheduler adds recurring jobs to [Sidekiq](https://sidekiq.org/).
7
7
 
8
-
9
-
10
8
  ## Installation
11
9
 
12
10
  Add this line to your application's Gemfile:
13
11
 
14
- ```ruby
12
+ ```rb
15
13
  gem 'mini_scheduler'
16
14
  ```
17
15
 
@@ -25,8 +23,8 @@ Or install it yourself as:
25
23
 
26
24
  In a Rails application, create files needed in your application to configure mini_scheduler:
27
25
 
28
- bin/rails g mini_scheduler:install
29
- rake db:migrate
26
+ $ bin/rails g mini_scheduler:install
27
+ $ bin/rails db:migrate
30
28
 
31
29
  An initializer is created named `config/initializers/mini_scheduler.rb` which lists all the configuration options.
32
30
 
@@ -34,7 +32,7 @@ An initializer is created named `config/initializers/mini_scheduler.rb` which li
34
32
 
35
33
  By default each instance of MiniScheduler will run with a single worker. To amend this behavior:
36
34
 
37
- ```
35
+ ```rb
38
36
  if Sidekiq.server? && defined?(Rails)
39
37
  Rails.application.config.after_initialize do
40
38
  MiniScheduler.start(workers: 5)
@@ -48,7 +46,7 @@ This is useful for cases where you have extremely long running tasks that you wo
48
46
 
49
47
  Create jobs with a recurring schedule like this:
50
48
 
51
- ```ruby
49
+ ```rb
52
50
  class MyHourlyJob
53
51
  include Sidekiq::Worker
54
52
  extend MiniScheduler::Schedule
@@ -63,21 +61,23 @@ end
63
61
 
64
62
  Options for schedules:
65
63
 
66
- * **queue** followed by a queue name, like "queue :email", default queue is "default"
67
- * **every** followed by a duration in seconds, like "every 1.hour".
68
- * **daily at:** followed by a duration since midnight, like "daily at: 12.hours", to run only once per day at a specific time.
64
+ - **queue** followed by a queue name, like "queue :email", default queue is "default"
65
+ - **every** followed by a duration in seconds, like "every 1.hour".
66
+ - **daily at:** followed by a duration since midnight, like "daily at: 12.hours", to run only once per day at a specific time.
69
67
 
70
68
  To view the scheduled jobs, their history, and the schedule, go to sidekiq's web UI and look for the "Scheduler" tab at the top.
71
69
 
72
70
  To enable this view in Sidekiq, add `require "mini_scheduler/web"` to `routes.rb`:
73
-
74
- ```ruby
71
+
72
+ ```rb
75
73
  require "sidekiq/web"
76
74
  require "mini_scheduler/web"
75
+
77
76
  Rails.application.routes.draw do
78
- ...
79
-
77
+ ...
78
+ end
80
79
  ```
80
+
81
81
  ## How to reach us
82
82
 
83
83
  If you have questions about using mini_scheduler or found a problem, you can find us at https://meta.discourse.org.
@@ -37,7 +37,7 @@ module MiniScheduler
37
37
  def keep_alive(*ids)
38
38
  @manager.keep_alive(*ids)
39
39
  rescue => ex
40
- MiniScheduler.handle_job_exception(ex, message: "Error during MiniScheduler keep)alive")
40
+ MiniScheduler.handle_job_exception(ex, message: "Error during MiniScheduler keep_alive")
41
41
  end
42
42
 
43
43
  def repair_queue
@@ -104,7 +104,7 @@ module MiniScheduler
104
104
  current_owner: @current_owner
105
105
  }.to_json
106
106
 
107
- redis.zadd queue_key, @next_run, @klass if @next_run
107
+ redis.zadd queue_key, @next_run.to_s, @klass.to_s if @next_run
108
108
  end
109
109
 
110
110
  def del!
@@ -135,7 +135,7 @@ module MiniScheduler
135
135
  private
136
136
  def clear!
137
137
  redis.del key
138
- redis.zrem queue_key, @klass
138
+ redis.zrem queue_key, @klass.to_s
139
139
  end
140
140
 
141
141
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MiniScheduler
4
- VERSION = "0.15.0"
4
+ VERSION = "0.16.0"
5
5
  end
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
28
28
  spec.add_development_dependency "mocha", "~> 2.0"
29
29
  spec.add_development_dependency "guard", "~> 2.0"
30
30
  spec.add_development_dependency "guard-rspec", "~> 4.0"
31
- spec.add_development_dependency "redis", "~> 4.0"
31
+ spec.add_development_dependency "redis", ">= 4.0"
32
32
  spec.add_development_dependency "rake", "~> 13.0"
33
- spec.add_development_dependency "rubocop-discourse", "= 2.4.1"
33
+ spec.add_development_dependency "rubocop-discourse", "= 3.2.0"
34
34
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_scheduler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Saffron
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-11-17 00:00:00.000000000 Z
12
+ date: 2023-05-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sidekiq
@@ -119,14 +119,14 @@ dependencies:
119
119
  name: redis
120
120
  requirement: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '4.0'
125
125
  type: :development
126
126
  prerelease: false
127
127
  version_requirements: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - "~>"
129
+ - - ">="
130
130
  - !ruby/object:Gem::Version
131
131
  version: '4.0'
132
132
  - !ruby/object:Gem::Dependency
@@ -149,14 +149,14 @@ dependencies:
149
149
  requirements:
150
150
  - - '='
151
151
  - !ruby/object:Gem::Version
152
- version: 2.4.1
152
+ version: 3.2.0
153
153
  type: :development
154
154
  prerelease: false
155
155
  version_requirements: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 2.4.1
159
+ version: 3.2.0
160
160
  description: Adds recurring jobs for Sidekiq
161
161
  email:
162
162
  - neil.lalonde@discourse.org