sidekiq-unique-jobs 6.0.20 → 7.0.10

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sidekiq-unique-jobs might be problematic. Click here for more details.

Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +742 -41
  3. data/README.md +529 -110
  4. data/lib/sidekiq_unique_jobs.rb +48 -7
  5. data/lib/sidekiq_unique_jobs/batch_delete.rb +123 -0
  6. data/lib/sidekiq_unique_jobs/changelog.rb +78 -0
  7. data/lib/sidekiq_unique_jobs/cli.rb +34 -31
  8. data/lib/sidekiq_unique_jobs/config.rb +263 -0
  9. data/lib/sidekiq_unique_jobs/connection.rb +6 -5
  10. data/lib/sidekiq_unique_jobs/constants.rb +46 -24
  11. data/lib/sidekiq_unique_jobs/core_ext.rb +80 -0
  12. data/lib/sidekiq_unique_jobs/digests.rb +71 -100
  13. data/lib/sidekiq_unique_jobs/exceptions.rb +78 -12
  14. data/lib/sidekiq_unique_jobs/job.rb +41 -12
  15. data/lib/sidekiq_unique_jobs/json.rb +40 -0
  16. data/lib/sidekiq_unique_jobs/key.rb +93 -0
  17. data/lib/sidekiq_unique_jobs/lock.rb +325 -0
  18. data/lib/sidekiq_unique_jobs/lock/base_lock.rb +68 -52
  19. data/lib/sidekiq_unique_jobs/lock/client_validator.rb +28 -0
  20. data/lib/sidekiq_unique_jobs/lock/server_validator.rb +27 -0
  21. data/lib/sidekiq_unique_jobs/lock/until_and_while_executing.rb +7 -10
  22. data/lib/sidekiq_unique_jobs/lock/until_executed.rb +6 -6
  23. data/lib/sidekiq_unique_jobs/lock/until_executing.rb +1 -1
  24. data/lib/sidekiq_unique_jobs/lock/until_expired.rb +4 -21
  25. data/lib/sidekiq_unique_jobs/lock/validator.rb +96 -0
  26. data/lib/sidekiq_unique_jobs/lock/while_executing.rb +13 -9
  27. data/lib/sidekiq_unique_jobs/lock/while_executing_reject.rb +3 -3
  28. data/lib/sidekiq_unique_jobs/lock_args.rb +123 -0
  29. data/lib/sidekiq_unique_jobs/lock_config.rb +126 -0
  30. data/lib/sidekiq_unique_jobs/lock_digest.rb +79 -0
  31. data/lib/sidekiq_unique_jobs/lock_info.rb +68 -0
  32. data/lib/sidekiq_unique_jobs/lock_timeout.rb +62 -0
  33. data/lib/sidekiq_unique_jobs/lock_ttl.rb +77 -0
  34. data/lib/sidekiq_unique_jobs/locksmith.rb +267 -101
  35. data/lib/sidekiq_unique_jobs/logging.rb +179 -33
  36. data/lib/sidekiq_unique_jobs/logging/middleware_context.rb +44 -0
  37. data/lib/sidekiq_unique_jobs/lua/delete.lua +51 -0
  38. data/lib/sidekiq_unique_jobs/lua/delete_by_digest.lua +42 -0
  39. data/lib/sidekiq_unique_jobs/lua/delete_job_by_digest.lua +38 -0
  40. data/lib/sidekiq_unique_jobs/lua/find_digest_in_queues.lua +26 -0
  41. data/lib/sidekiq_unique_jobs/lua/lock.lua +93 -0
  42. data/lib/sidekiq_unique_jobs/lua/locked.lua +35 -0
  43. data/lib/sidekiq_unique_jobs/lua/queue.lua +87 -0
  44. data/lib/sidekiq_unique_jobs/lua/reap_orphans.lua +94 -0
  45. data/lib/sidekiq_unique_jobs/lua/shared/_common.lua +40 -0
  46. data/lib/sidekiq_unique_jobs/lua/shared/_current_time.lua +8 -0
  47. data/lib/sidekiq_unique_jobs/lua/shared/_delete_from_queue.lua +22 -0
  48. data/lib/sidekiq_unique_jobs/lua/shared/_delete_from_sorted_set.lua +18 -0
  49. data/lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_process_set.lua +53 -0
  50. data/lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_queues.lua +43 -0
  51. data/lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_sorted_set.lua +24 -0
  52. data/lib/sidekiq_unique_jobs/lua/shared/_hgetall.lua +13 -0
  53. data/lib/sidekiq_unique_jobs/lua/shared/_upgrades.lua +3 -0
  54. data/lib/sidekiq_unique_jobs/lua/unlock.lua +95 -0
  55. data/lib/sidekiq_unique_jobs/lua/update_version.lua +40 -0
  56. data/lib/sidekiq_unique_jobs/lua/upgrade.lua +68 -0
  57. data/lib/sidekiq_unique_jobs/middleware.rb +29 -31
  58. data/lib/sidekiq_unique_jobs/middleware/client.rb +42 -0
  59. data/lib/sidekiq_unique_jobs/middleware/server.rb +27 -0
  60. data/lib/sidekiq_unique_jobs/normalizer.rb +4 -4
  61. data/lib/sidekiq_unique_jobs/on_conflict.rb +23 -10
  62. data/lib/sidekiq_unique_jobs/on_conflict/log.rb +9 -5
  63. data/lib/sidekiq_unique_jobs/on_conflict/null_strategy.rb +1 -1
  64. data/lib/sidekiq_unique_jobs/on_conflict/raise.rb +1 -1
  65. data/lib/sidekiq_unique_jobs/on_conflict/reject.rb +61 -15
  66. data/lib/sidekiq_unique_jobs/on_conflict/replace.rb +54 -14
  67. data/lib/sidekiq_unique_jobs/on_conflict/reschedule.rb +12 -5
  68. data/lib/sidekiq_unique_jobs/on_conflict/strategy.rb +25 -6
  69. data/lib/sidekiq_unique_jobs/options_with_fallback.rb +41 -27
  70. data/lib/sidekiq_unique_jobs/orphans/lua_reaper.rb +29 -0
  71. data/lib/sidekiq_unique_jobs/orphans/manager.rb +212 -0
  72. data/lib/sidekiq_unique_jobs/orphans/null_reaper.rb +24 -0
  73. data/lib/sidekiq_unique_jobs/orphans/observer.rb +42 -0
  74. data/lib/sidekiq_unique_jobs/orphans/reaper.rb +114 -0
  75. data/lib/sidekiq_unique_jobs/orphans/ruby_reaper.rb +213 -0
  76. data/lib/sidekiq_unique_jobs/redis.rb +11 -0
  77. data/lib/sidekiq_unique_jobs/redis/entity.rb +112 -0
  78. data/lib/sidekiq_unique_jobs/redis/hash.rb +56 -0
  79. data/lib/sidekiq_unique_jobs/redis/list.rb +32 -0
  80. data/lib/sidekiq_unique_jobs/redis/set.rb +32 -0
  81. data/lib/sidekiq_unique_jobs/redis/sorted_set.rb +86 -0
  82. data/lib/sidekiq_unique_jobs/redis/string.rb +49 -0
  83. data/lib/sidekiq_unique_jobs/rspec/matchers.rb +26 -0
  84. data/lib/sidekiq_unique_jobs/rspec/matchers/have_valid_sidekiq_options.rb +51 -0
  85. data/lib/sidekiq_unique_jobs/script.rb +15 -0
  86. data/lib/sidekiq_unique_jobs/script/caller.rb +125 -0
  87. data/lib/sidekiq_unique_jobs/server.rb +48 -0
  88. data/lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb +92 -65
  89. data/lib/sidekiq_unique_jobs/sidekiq_unique_jobs.rb +204 -34
  90. data/lib/sidekiq_unique_jobs/sidekiq_worker_methods.rb +18 -9
  91. data/lib/sidekiq_unique_jobs/testing.rb +62 -21
  92. data/lib/sidekiq_unique_jobs/timer_task.rb +78 -0
  93. data/lib/sidekiq_unique_jobs/timing.rb +58 -0
  94. data/lib/sidekiq_unique_jobs/unlockable.rb +20 -4
  95. data/lib/sidekiq_unique_jobs/update_version.rb +25 -0
  96. data/lib/sidekiq_unique_jobs/upgrade_locks.rb +155 -0
  97. data/lib/sidekiq_unique_jobs/version.rb +3 -1
  98. data/lib/sidekiq_unique_jobs/version_check.rb +23 -4
  99. data/lib/sidekiq_unique_jobs/web.rb +57 -27
  100. data/lib/sidekiq_unique_jobs/web/helpers.rb +128 -13
  101. data/lib/sidekiq_unique_jobs/web/views/_paging.erb +4 -4
  102. data/lib/sidekiq_unique_jobs/web/views/changelogs.erb +54 -0
  103. data/lib/sidekiq_unique_jobs/web/views/lock.erb +108 -0
  104. data/lib/sidekiq_unique_jobs/web/views/locks.erb +54 -0
  105. data/lib/tasks/changelog.rake +5 -5
  106. metadata +122 -176
  107. data/lib/sidekiq_unique_jobs/client/middleware.rb +0 -56
  108. data/lib/sidekiq_unique_jobs/scripts.rb +0 -118
  109. data/lib/sidekiq_unique_jobs/server/middleware.rb +0 -46
  110. data/lib/sidekiq_unique_jobs/timeout.rb +0 -8
  111. data/lib/sidekiq_unique_jobs/timeout/calculator.rb +0 -63
  112. data/lib/sidekiq_unique_jobs/unique_args.rb +0 -149
  113. data/lib/sidekiq_unique_jobs/util.rb +0 -103
  114. data/lib/sidekiq_unique_jobs/web/views/unique_digest.erb +0 -28
  115. data/lib/sidekiq_unique_jobs/web/views/unique_digests.erb +0 -46
  116. data/redis/acquire_lock.lua +0 -21
  117. data/redis/convert_legacy_lock.lua +0 -13
  118. data/redis/delete.lua +0 -14
  119. data/redis/delete_by_digest.lua +0 -23
  120. data/redis/delete_job_by_digest.lua +0 -60
  121. data/redis/lock.lua +0 -62
  122. data/redis/release_stale_locks.lua +0 -90
  123. data/redis/unlock.lua +0 -35
@@ -0,0 +1,54 @@
1
+ <header class="row">
2
+ <div class="col-sm-5">
3
+ <h3>
4
+ <%= t('Locks') %>
5
+ </h3>
6
+ </div>
7
+ <form action="<%= root_path %>locks" class="form form-inline" method="get">
8
+ <%= csrf_tag %>
9
+ <input name="filter" class="form-control" type="text" value="<%= @filter %>" />
10
+ <button class="btn btn-default" type="submit">
11
+ <%= t('Filter') %>
12
+ </button>
13
+ </form>
14
+ <% if @locks.any? && @total_size > @count %>
15
+ <div class="col-sm-4">
16
+ <%= erb unique_template(:_paging), locals: { url: "#{root_path}locks" } %>
17
+ </div>
18
+ <% end %>
19
+ </header>
20
+ <% if @locks.any? %>
21
+ <div class="table_container">
22
+ <table class="table table-striped table-bordered table-hover">
23
+ <thead>
24
+ <tr>
25
+ <th><%= t('Delete') %></th>
26
+ <th><%= t('Digest') %></th>
27
+ <th><%= t('Lock') %></th>
28
+ <th><%= t('Locks') %></th>
29
+ <th><%= t('Since') %></th>
30
+ </tr>
31
+ </thead>
32
+ <% @locks.each do |lock| %>
33
+ <tbody>
34
+ <tr class="lock-row">
35
+ <td>
36
+ <form action="<%= root_path %>locks/<%= lock.key %>/delete" method="get">
37
+ <%= csrf_tag %>
38
+ <input name="lock" value="<%= h lock.key %>" type="hidden" />
39
+ <input class="btn btn-danger btn-xs" type="submit" name="delete" value="<%= t('Delete') %>" data-confirm="<%= t('AreYouSure') %>" />
40
+ </form>
41
+ </td>
42
+ <td><a href="<%= root_path %>locks/<%= lock.key %>"><%= lock.key %></a></td>
43
+ <td><%= lock.info["lock"] %></td>
44
+ <td><%= lock.locked.count %></td>
45
+ <td><%= safe_relative_time(lock.created_at) %></td>
46
+ </tr>
47
+ </tbody>
48
+ <% end %>
49
+ </table>
50
+ <form action="<%= root_path %>locks/delete_all" method="get">
51
+ <input class="btn btn-danger btn-xs" type="submit" name="delete_all" value="<%= t('DeleteAll') %>" data-confirm="<%= t('AreYouSure') %>" />
52
+ </form>
53
+ </div>
54
+ <% end %>
@@ -5,15 +5,15 @@ task :changelog do
5
5
  # rubocop:disable Style/MutableConstant
6
6
  CHANGELOG_CMD ||= %w[
7
7
  github_changelog_generator
8
- -u
8
+ --no-verbose
9
+ --user
9
10
  mhenrixon
10
- -p
11
+ --project
11
12
  sidekiq-unique-jobs
12
- --no-verbose
13
13
  --token
14
14
  ]
15
- ADD_CHANGELOG_CMD ||= "git add --all"
16
- COMMIT_CHANGELOG_CMD ||= "git commit -a -m 'Update changelog'"
15
+ ADD_CHANGELOG_CMD ||= "git add --all"
16
+ COMMIT_CHANGELOG_CMD ||= "git commit -a -m 'Update changelog'"
17
17
  # rubocop:enable Style/MutableConstant
18
18
 
19
19
  sh("git checkout master")
metadata CHANGED
@@ -1,15 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-unique-jobs
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.20
4
+ version: 7.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mikael Henriksson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-22 00:00:00.000000000 Z
11
+ date: 2021-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: brpoplpush-redis_script
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.1.1
20
+ - - "<="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.0.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">"
28
+ - !ruby/object:Gem::Version
29
+ version: 0.1.1
30
+ - - "<="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.0.0
13
33
  - !ruby/object:Gem::Dependency
14
34
  name: concurrent-ruby
15
35
  requirement: !ruby/object:Gem::Requirement
@@ -36,7 +56,7 @@ dependencies:
36
56
  requirements:
37
57
  - - ">="
38
58
  - !ruby/object:Gem::Version
39
- version: '4.0'
59
+ version: '5.0'
40
60
  - - "<"
41
61
  - !ruby/object:Gem::Version
42
62
  version: '7.0'
@@ -46,174 +66,28 @@ dependencies:
46
66
  requirements:
47
67
  - - ">="
48
68
  - !ruby/object:Gem::Version
49
- version: '4.0'
69
+ version: '5.0'
50
70
  - - "<"
51
71
  - !ruby/object:Gem::Version
52
72
  version: '7.0'
53
73
  - !ruby/object:Gem::Dependency
54
74
  name: thor
55
75
  requirement: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - "~>"
58
- - !ruby/object:Gem::Version
59
- version: '0'
60
- type: :runtime
61
- prerelease: false
62
- version_requirements: !ruby/object:Gem::Requirement
63
- requirements:
64
- - - "~>"
65
- - !ruby/object:Gem::Version
66
- version: '0'
67
- - !ruby/object:Gem::Dependency
68
- name: bundler
69
- requirement: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - "~>"
72
- - !ruby/object:Gem::Version
73
- version: '2.0'
74
- type: :development
75
- prerelease: false
76
- version_requirements: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - "~>"
79
- - !ruby/object:Gem::Version
80
- version: '2.0'
81
- - !ruby/object:Gem::Dependency
82
- name: rack-test
83
- requirement: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - ">="
86
- - !ruby/object:Gem::Version
87
- version: '1.0'
88
- - - "<"
89
- - !ruby/object:Gem::Version
90
- version: '2.0'
91
- type: :development
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
76
  requirements:
95
77
  - - ">="
96
78
  - !ruby/object:Gem::Version
97
- version: '1.0'
79
+ version: '0.20'
98
80
  - - "<"
99
81
  - !ruby/object:Gem::Version
100
82
  version: '2.0'
101
- - !ruby/object:Gem::Dependency
102
- name: rake
103
- requirement: !ruby/object:Gem::Requirement
104
- requirements:
105
- - - "~>"
106
- - !ruby/object:Gem::Version
107
- version: '12.3'
108
- type: :development
109
- prerelease: false
110
- version_requirements: !ruby/object:Gem::Requirement
111
- requirements:
112
- - - "~>"
113
- - !ruby/object:Gem::Version
114
- version: '12.3'
115
- - !ruby/object:Gem::Dependency
116
- name: rspec
117
- requirement: !ruby/object:Gem::Requirement
118
- requirements:
119
- - - "~>"
120
- - !ruby/object:Gem::Version
121
- version: '3.7'
122
- type: :development
123
- prerelease: false
124
- version_requirements: !ruby/object:Gem::Requirement
125
- requirements:
126
- - - "~>"
127
- - !ruby/object:Gem::Version
128
- version: '3.7'
129
- - !ruby/object:Gem::Dependency
130
- name: sinatra
131
- requirement: !ruby/object:Gem::Requirement
132
- requirements:
133
- - - ">="
134
- - !ruby/object:Gem::Version
135
- version: '2.0'
136
- - - "<"
137
- - !ruby/object:Gem::Version
138
- version: '3.0'
139
- type: :development
83
+ type: :runtime
140
84
  prerelease: false
141
85
  version_requirements: !ruby/object:Gem::Requirement
142
86
  requirements:
143
87
  - - ">="
144
88
  - !ruby/object:Gem::Version
145
- version: '2.0'
89
+ version: '0.20'
146
90
  - - "<"
147
- - !ruby/object:Gem::Version
148
- version: '3.0'
149
- - !ruby/object:Gem::Dependency
150
- name: timecop
151
- requirement: !ruby/object:Gem::Requirement
152
- requirements:
153
- - - "~>"
154
- - !ruby/object:Gem::Version
155
- version: '0.9'
156
- type: :development
157
- prerelease: false
158
- version_requirements: !ruby/object:Gem::Requirement
159
- requirements:
160
- - - "~>"
161
- - !ruby/object:Gem::Version
162
- version: '0.9'
163
- - !ruby/object:Gem::Dependency
164
- name: github-markup
165
- requirement: !ruby/object:Gem::Requirement
166
- requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: '3.0'
170
- type: :development
171
- prerelease: false
172
- version_requirements: !ruby/object:Gem::Requirement
173
- requirements:
174
- - - "~>"
175
- - !ruby/object:Gem::Version
176
- version: '3.0'
177
- - !ruby/object:Gem::Dependency
178
- name: github_changelog_generator
179
- requirement: !ruby/object:Gem::Requirement
180
- requirements:
181
- - - "~>"
182
- - !ruby/object:Gem::Version
183
- version: '1.14'
184
- type: :development
185
- prerelease: false
186
- version_requirements: !ruby/object:Gem::Requirement
187
- requirements:
188
- - - "~>"
189
- - !ruby/object:Gem::Version
190
- version: '1.14'
191
- - !ruby/object:Gem::Dependency
192
- name: yard
193
- requirement: !ruby/object:Gem::Requirement
194
- requirements:
195
- - - "~>"
196
- - !ruby/object:Gem::Version
197
- version: 0.9.18
198
- type: :development
199
- prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- requirements:
202
- - - "~>"
203
- - !ruby/object:Gem::Version
204
- version: 0.9.18
205
- - !ruby/object:Gem::Dependency
206
- name: gem-release
207
- requirement: !ruby/object:Gem::Requirement
208
- requirements:
209
- - - "~>"
210
- - !ruby/object:Gem::Version
211
- version: '2.0'
212
- type: :development
213
- prerelease: false
214
- version_requirements: !ruby/object:Gem::Requirement
215
- requirements:
216
- - - "~>"
217
91
  - !ruby/object:Gem::Version
218
92
  version: '2.0'
219
93
  description: |
@@ -232,24 +106,61 @@ files:
232
106
  - bin/uniquejobs
233
107
  - lib/sidekiq-unique-jobs.rb
234
108
  - lib/sidekiq_unique_jobs.rb
109
+ - lib/sidekiq_unique_jobs/batch_delete.rb
110
+ - lib/sidekiq_unique_jobs/changelog.rb
235
111
  - lib/sidekiq_unique_jobs/cli.rb
236
- - lib/sidekiq_unique_jobs/client/middleware.rb
112
+ - lib/sidekiq_unique_jobs/config.rb
237
113
  - lib/sidekiq_unique_jobs/connection.rb
238
114
  - lib/sidekiq_unique_jobs/constants.rb
239
115
  - lib/sidekiq_unique_jobs/core_ext.rb
240
116
  - lib/sidekiq_unique_jobs/digests.rb
241
117
  - lib/sidekiq_unique_jobs/exceptions.rb
242
118
  - lib/sidekiq_unique_jobs/job.rb
119
+ - lib/sidekiq_unique_jobs/json.rb
120
+ - lib/sidekiq_unique_jobs/key.rb
121
+ - lib/sidekiq_unique_jobs/lock.rb
243
122
  - lib/sidekiq_unique_jobs/lock/base_lock.rb
123
+ - lib/sidekiq_unique_jobs/lock/client_validator.rb
124
+ - lib/sidekiq_unique_jobs/lock/server_validator.rb
244
125
  - lib/sidekiq_unique_jobs/lock/until_and_while_executing.rb
245
126
  - lib/sidekiq_unique_jobs/lock/until_executed.rb
246
127
  - lib/sidekiq_unique_jobs/lock/until_executing.rb
247
128
  - lib/sidekiq_unique_jobs/lock/until_expired.rb
129
+ - lib/sidekiq_unique_jobs/lock/validator.rb
248
130
  - lib/sidekiq_unique_jobs/lock/while_executing.rb
249
131
  - lib/sidekiq_unique_jobs/lock/while_executing_reject.rb
132
+ - lib/sidekiq_unique_jobs/lock_args.rb
133
+ - lib/sidekiq_unique_jobs/lock_config.rb
134
+ - lib/sidekiq_unique_jobs/lock_digest.rb
135
+ - lib/sidekiq_unique_jobs/lock_info.rb
136
+ - lib/sidekiq_unique_jobs/lock_timeout.rb
137
+ - lib/sidekiq_unique_jobs/lock_ttl.rb
250
138
  - lib/sidekiq_unique_jobs/locksmith.rb
251
139
  - lib/sidekiq_unique_jobs/logging.rb
140
+ - lib/sidekiq_unique_jobs/logging/middleware_context.rb
141
+ - lib/sidekiq_unique_jobs/lua/delete.lua
142
+ - lib/sidekiq_unique_jobs/lua/delete_by_digest.lua
143
+ - lib/sidekiq_unique_jobs/lua/delete_job_by_digest.lua
144
+ - lib/sidekiq_unique_jobs/lua/find_digest_in_queues.lua
145
+ - lib/sidekiq_unique_jobs/lua/lock.lua
146
+ - lib/sidekiq_unique_jobs/lua/locked.lua
147
+ - lib/sidekiq_unique_jobs/lua/queue.lua
148
+ - lib/sidekiq_unique_jobs/lua/reap_orphans.lua
149
+ - lib/sidekiq_unique_jobs/lua/shared/_common.lua
150
+ - lib/sidekiq_unique_jobs/lua/shared/_current_time.lua
151
+ - lib/sidekiq_unique_jobs/lua/shared/_delete_from_queue.lua
152
+ - lib/sidekiq_unique_jobs/lua/shared/_delete_from_sorted_set.lua
153
+ - lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_process_set.lua
154
+ - lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_queues.lua
155
+ - lib/sidekiq_unique_jobs/lua/shared/_find_digest_in_sorted_set.lua
156
+ - lib/sidekiq_unique_jobs/lua/shared/_hgetall.lua
157
+ - lib/sidekiq_unique_jobs/lua/shared/_upgrades.lua
158
+ - lib/sidekiq_unique_jobs/lua/unlock.lua
159
+ - lib/sidekiq_unique_jobs/lua/update_version.lua
160
+ - lib/sidekiq_unique_jobs/lua/upgrade.lua
252
161
  - lib/sidekiq_unique_jobs/middleware.rb
162
+ - lib/sidekiq_unique_jobs/middleware/client.rb
163
+ - lib/sidekiq_unique_jobs/middleware/server.rb
253
164
  - lib/sidekiq_unique_jobs/normalizer.rb
254
165
  - lib/sidekiq_unique_jobs/on_conflict.rb
255
166
  - lib/sidekiq_unique_jobs/on_conflict/log.rb
@@ -260,33 +171,42 @@ files:
260
171
  - lib/sidekiq_unique_jobs/on_conflict/reschedule.rb
261
172
  - lib/sidekiq_unique_jobs/on_conflict/strategy.rb
262
173
  - lib/sidekiq_unique_jobs/options_with_fallback.rb
263
- - lib/sidekiq_unique_jobs/scripts.rb
264
- - lib/sidekiq_unique_jobs/server/middleware.rb
174
+ - lib/sidekiq_unique_jobs/orphans/lua_reaper.rb
175
+ - lib/sidekiq_unique_jobs/orphans/manager.rb
176
+ - lib/sidekiq_unique_jobs/orphans/null_reaper.rb
177
+ - lib/sidekiq_unique_jobs/orphans/observer.rb
178
+ - lib/sidekiq_unique_jobs/orphans/reaper.rb
179
+ - lib/sidekiq_unique_jobs/orphans/ruby_reaper.rb
180
+ - lib/sidekiq_unique_jobs/redis.rb
181
+ - lib/sidekiq_unique_jobs/redis/entity.rb
182
+ - lib/sidekiq_unique_jobs/redis/hash.rb
183
+ - lib/sidekiq_unique_jobs/redis/list.rb
184
+ - lib/sidekiq_unique_jobs/redis/set.rb
185
+ - lib/sidekiq_unique_jobs/redis/sorted_set.rb
186
+ - lib/sidekiq_unique_jobs/redis/string.rb
187
+ - lib/sidekiq_unique_jobs/rspec/matchers.rb
188
+ - lib/sidekiq_unique_jobs/rspec/matchers/have_valid_sidekiq_options.rb
189
+ - lib/sidekiq_unique_jobs/script.rb
190
+ - lib/sidekiq_unique_jobs/script/caller.rb
191
+ - lib/sidekiq_unique_jobs/server.rb
265
192
  - lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb
266
193
  - lib/sidekiq_unique_jobs/sidekiq_unique_jobs.rb
267
194
  - lib/sidekiq_unique_jobs/sidekiq_worker_methods.rb
268
195
  - lib/sidekiq_unique_jobs/testing.rb
269
- - lib/sidekiq_unique_jobs/timeout.rb
270
- - lib/sidekiq_unique_jobs/timeout/calculator.rb
271
- - lib/sidekiq_unique_jobs/unique_args.rb
196
+ - lib/sidekiq_unique_jobs/timer_task.rb
197
+ - lib/sidekiq_unique_jobs/timing.rb
272
198
  - lib/sidekiq_unique_jobs/unlockable.rb
273
- - lib/sidekiq_unique_jobs/util.rb
199
+ - lib/sidekiq_unique_jobs/update_version.rb
200
+ - lib/sidekiq_unique_jobs/upgrade_locks.rb
274
201
  - lib/sidekiq_unique_jobs/version.rb
275
202
  - lib/sidekiq_unique_jobs/version_check.rb
276
203
  - lib/sidekiq_unique_jobs/web.rb
277
204
  - lib/sidekiq_unique_jobs/web/helpers.rb
278
205
  - lib/sidekiq_unique_jobs/web/views/_paging.erb
279
- - lib/sidekiq_unique_jobs/web/views/unique_digest.erb
280
- - lib/sidekiq_unique_jobs/web/views/unique_digests.erb
206
+ - lib/sidekiq_unique_jobs/web/views/changelogs.erb
207
+ - lib/sidekiq_unique_jobs/web/views/lock.erb
208
+ - lib/sidekiq_unique_jobs/web/views/locks.erb
281
209
  - lib/tasks/changelog.rake
282
- - redis/acquire_lock.lua
283
- - redis/convert_legacy_lock.lua
284
- - redis/delete.lua
285
- - redis/delete_by_digest.lua
286
- - redis/delete_job_by_digest.lua
287
- - redis/lock.lua
288
- - redis/release_stale_locks.lua
289
- - redis/unlock.lua
290
210
  homepage: https://mhenrixon.github.io/sidekiq-unique-jobs
291
211
  licenses:
292
212
  - MIT
@@ -295,8 +215,34 @@ metadata:
295
215
  bug_tracker_uri: https://github.com/mhenrixon/sidekiq-unique-jobs/issues
296
216
  documentation_uri: https://mhenrixon.github.io/sidekiq-unique-jobs
297
217
  source_code_uri: https://github.com/mhenrixon/sidekiq-unique-jobs
298
- changelog_uri: https://github.com/mhenrixon/sidekiq-unique-jobs/CHANGELOG.md
299
- post_install_message:
218
+ changelog_uri: https://github.com/mhenrixon/sidekiq-unique-jobs/blob/master/CHANGELOG.md
219
+ post_install_message: |
220
+ IMPORTANT!
221
+
222
+ Automatic configuration of the sidekiq middelware is no longer done.
223
+ Please see: https://github.com/mhenrixon/sidekiq-unique-jobs/blob/master/README.md#add-the-middleware
224
+
225
+ This version deprecated the following sidekiq_options
226
+
227
+ - sidekiq_options lock_args: :method_name
228
+
229
+ It is now configured with:
230
+
231
+ - sidekiq_options lock_args_method: :method_name
232
+
233
+ This is also true for `Sidekiq.default_worker_options`
234
+
235
+ We also deprecated the global configuration options:
236
+ - default_lock_ttl
237
+ - default_lock_ttl=
238
+ - default_lock_timeout
239
+ - default_lock_timeout=
240
+
241
+ The new methods to use are:
242
+ - lock_ttl
243
+ - lock_ttl=
244
+ - lock_timeout
245
+ - lock_timeout=
300
246
  rdoc_options: []
301
247
  require_paths:
302
248
  - lib
@@ -304,15 +250,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
304
250
  requirements:
305
251
  - - ">="
306
252
  - !ruby/object:Gem::Version
307
- version: '0'
253
+ version: 2.5.0
308
254
  required_rubygems_version: !ruby/object:Gem::Requirement
309
255
  requirements:
310
256
  - - ">="
311
257
  - !ruby/object:Gem::Version
312
258
  version: '0'
313
259
  requirements: []
314
- rubygems_version: 3.1.2
315
- signing_key:
260
+ rubygems_version: 3.2.16
261
+ signing_key:
316
262
  specification_version: 4
317
263
  summary: Sidekiq middleware that prevents duplicates jobs
318
264
  test_files: []