Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
3 contributors

Users who have contributed to this file

@mhenrixon @timoschilling @camallen
869 lines (581 sloc) 57.1 KB

Change Log

v6.0.13 (2019-04-14)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

  • Unique args in combination with sidekiq cron contains \_aj\_symbol\_keys #363
  • Low quality peace of shit #360
  • Passthrough has been deprecated and will be removed in redis-namespace 2.0 #338

v6.0.12 (2019-02-28)

Full Changelog

Fixed bugs:

  • we are receiving SidekiqUniqueJobs::ScriptError "Problem compiling convert_legacy_lock" after upgrading from 5.0.10 -> 6.0.11 #377
  • Fix converting legacy locks #378 (mhenrixon)

v6.0.11 (2019-02-24)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Prevent memory leaks (many locks stay in memory) #368
  • :until_and_while_executing not processing queued jobs after executing #355
  • Version 6: lets you schedule job with missing arguments #351
  • Version 6 Ignores Jobs Enqueued in Version 5 #345
  • Job will not enqueue even with no existing match #342
  • Convert v5 locks when needed #375 (mhenrixon)
  • Reduce leftover keys #374 (mhenrixon)

Closed issues:

  • Infinite lock using until_and_while_executing after sidekiq restart #361
  • getting a crash using lock_expiration on v6.0.6 #350
  • Problem when job failed and is retrying #332

Merged pull requests:

v6.0.10 (2019-02-23)

Full Changelog

Implemented enhancements:

Closed issues:

  • Unsure of sane defaults #372

v6.0.9 (2019-02-11)

Full Changelog

Implemented enhancements:

v6.0.8 (2019-01-10)

Full Changelog

Fixed bugs:

Closed issues:

  • Automatic unlock of jobs #362
  • (6.0.7) uniquejobs:{digest}:AVAILABLE keys never expire #359
  • Strange behavior using strategy "reject" with "until_executed" #358
  • Pinpointing issues with unique digests not being removed #353

Merged pull requests:

v6.0.7 (2018-11-29)

Full Changelog

Fixed bugs:

  • Version 5: Job ID Hash Entries Not Removed if Unique Key Expires #346
  • Move the lpush last #354 (mhenrixon)

Closed issues:

  • First job never unlocks the lock / Endless waiting #352
  • Version 5&6: uniqueness not respected for Job without params #349

v5.0.11 (2018-11-19)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

  • concurrent-ruby 1.1.1 is causing this gem to break #340
  • lock remains after job not properly finish #339
  • Using a different Redis instance #337
  • Using :until_and_while_executing not yielding expected results #336
  • "payload is not unique", but cannot find digest or scheduled job #335
  • Confused with UntilExecuted documenation #326
  • Job never requeued after raising unhandled error with until_and_while_executing? #322

Merged pull requests:

v6.0.6 (2018-08-09)

Full Changelog

Implemented enhancements:

Closed issues:

  • Unique UntilExecuted not working while the job is executing? #319

v6.0.5 (2018-08-07)

Full Changelog

Fixed bugs:

Closed issues:

  • Why is lock_timeout: nil VERY DANGEROUS? #313

v6.0.4 (2018-08-02)

Full Changelog

Fixed bugs:

Closed issues:

  • Question about until_timeout with 6.0.0 #303

v6.0.3 (2018-08-02)

Full Changelog

Fixed bugs:

Closed issues:

  • Sidekiq Web Pagination Broken #309

Merged pull requests:

v6.0.2 (2018-08-01)

Full Changelog

Fixed bugs:

v6.0.1 (2018-07-31)

Full Changelog

Fixed bugs:

  • :until_executed is throwing errors and not requeuing the job. #256
  • Remove unused method #307 (mhenrixon)

Closed issues:

  • ArgumentError: sidekiq_unique_jobs/web breaks sidekiq Retries page #306
  • If the job dies, it doesn't remove the lock #304

Merged pull requests:

v6.0.0 (2018-07-27)

Full Changelog

v6.0.0.rc8 (2018-07-24)

Full Changelog

Implemented enhancements:

  • Add RequeueWhileExecuting strategy #223
  • New feature: Replace original job if duplicate is added #177
  • Add a replace strategy for client locks #302 (mhenrixon)

Merged pull requests:

v6.0.0.rc7 (2018-07-23)

Full Changelog

Implemented enhancements:

Closed issues:

  • Unique Job not work while play with crontab #294
  • Making the GEM compatible with Ruby < 2.3 #291

Merged pull requests:

v6.0.0.rc6 (2018-07-15)

Full Changelog

Fixed bugs:

Closed issues:

  • Locking with retries #289

Merged pull requests:

v6.0.0.rc5 (2018-06-30)

Full Changelog

Fixed bugs:

  • bundle exec jobs console does not work #253
  • Rename command line binary #287 (mhenrixon)

v6.0.0.rc4 (2018-06-30)

Full Changelog

Implemented enhancements:

v6.0.0.rc3 (2018-06-29)

Full Changelog

Fixed bugs:

v6.0.0.rc2 (2018-06-26)

Full Changelog

Implemented enhancements:

  • Within tests: workers enqueued in the future don't clear their unique locks after being drained/executed #254
  • Unexpected behavior with until_executed #250

Fixed bugs:

  • Unique job needs to be unlocked manually? #261
  • Duplicate jobs getting created #257
  • Multiple non-unique jobs with until_executed? #255
  • :until_executing not unlocking when starting to run #245
  • Drop jobs hash #282 (mhenrixon)

Closed issues:

  • Difference between :until_and_while_executing vs :until_executed is not clear #249
  • Deprecated Documentation #246
  • Are we meant to manually expire the unique jobs hash? #234
  • How :until_executing works ? Run job only once and discard new jobs while another job is executing #226

Merged pull requests:

v6.0.0.rc1 (2018-06-26)

Full Changelog

Implemented enhancements:

Fixed bugs:

v6.0.0.beta2 (2018-06-25)

Full Changelog

Implemented enhancements:

v6.0.0.beta1 (2018-06-22)

Full Changelog

Implemented enhancements:

v6.0.0.beta (2018-06-17)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

  • Incomplete sentence in README #264
  • ActiveJob and Sidekiq::Worker #259
  • ActiveJob and Sidekiq::Worker #258
  • Non-unique jobs can be added even when sidekiq\_options unique: :until\_executed #251
  • Trouble with "inline" mode #243
  • Sidekiq::Worker.set not working with sidekiq-unique-jobs #242
  • sidekiq-unique-job with ActiveJob #238
  • Deadlock using :while_executing? #233

Merged pull requests:

v5.0.10 (2017-08-19)

Full Changelog

Closed issues:

  • Version v5.0.5 might have introduced a breaking change in while_executing and was not documented #230
  • String arguments not seen as unique #222
  • unique_args method suppresses all NameError exceptions #219

Merged pull requests:

v5.0.9 (2017-07-06)

Full Changelog

Closed issues:

  • The work of several unique sidekiq tasks within one queue #225
  • Missing documentation on activejob usage #221

Merged pull requests:

v5.0.8 (2017-05-03)

Full Changelog

Closed issues:

  • Using JSON.parse in delete_by_value_ext break compatiblity with other Sidekiq extensions #220
  • Is it possible to get the Job ID of original job? #217

v5.0.7 (2017-04-26)

Full Changelog

Closed issues:

  • Can't delete Sidekiq::Job after 5.0.1 #218
  • Uniqueness across workers #210

v5.0.6 (2017-04-23)

Full Changelog

Closed issues:

  • Different unique arguments depending on lock type #203
  • Strategy until_and_while_executing not working properly #199
  • while_executing working wrong #193

v5.0.5 (2017-04-23)

Full Changelog

Merged pull requests:

v5.0.4 (2017-04-18)

Full Changelog

v5.0.3 (2017-04-18)

Full Changelog

v5.0.2 (2017-04-17)

Full Changelog

Closed issues:

  • Uniqueness should not survive Class.jobs.clear #214
  • when arguments are empty then unique_args proc/method is not executed #201

v5.0.1 (2017-04-16)

Full Changelog

Closed issues:

  • Removing "uniquejobs" hash? #213
  • deprecation warnings with redis-namespace 2.0 #212
  • Unclear docs / examples for unique_args #211
  • Jobs Console fails to launch #208
  • Util.del Redis::CommandError: ERR syntax error #207
  • version 4.0.19 #206
  • Job.delete does not remove lock in all circumstances #205
  • disappearing jobs - known issue in conjunction with other extensions? #202
  • Broken pipe @ io_write - <STDERR> on sidekiq unique jobs #198
  • Doesn't play well with redis-namespace #196
  • SidekiqUniqueJobs::ScriptError #192

Merged pull requests:

v5.0.0 (2017-04-08)

Full Changelog

Fixed bugs:

  • Can't enable testing with newer versions of sidekiq #175
  • strange behaviour #172

Closed issues:

  • Could not find a valid gem 'sidekiq-unique-jobs' (= 3.0.15) in any repository #197
  • uniquejobs hash doesn't get cleaned up #195
  • Code block under "Finer Control over Uniqueness" in your documentation might have the wrong option specified #191
  • not able to run test without live Redis #186
  • unique while not sucessfully completed? #185
  • Duplicate jobs when using :until_and_while_executing #181
  • unique: :while_executing doesn't remove lock when the Sidekiq node running the job shuts down and terminates the job prematurely #170
  • :while_executing appears to be broken #159
  • Using ":until_executing, :until_executed, :until_timeout, :until_and_while_executing" all break Sidekiq::Testing #157
  • Way to remove lock in application code #147

Merged pull requests:

v4.0.18 (2016-07-24)

Full Changelog

Closed issues:

  • ArgumentError: wrong number of arguments (given 1, expected 2) #190
  • Should be note on document only works on production mode #189
  • SidekiqUniqueJobs::ScriptError: release_lock.lua NOSCRIPT No matching script. #187
  • sidekiq-unique-jobs kills sidekiq in production #183
  • Parameters turn into String #182
  • You really helped me today #180
  • 4.0.17 config #171
  • Problem with releasing uniquejobs locks after timeout expires #169
  • NOSCRIPT No matching script. Please use EVAL. #168
  • Broken compatibility with Sidekiq 3.4 #140

Merged pull requests:

v4.0.17 (2016-03-02)

Full Changelog

Closed issues:

  • No place where I can say "Thank you" for all contributors #165

v4.0.16 (2016-02-17)

Full Changelog

Merged pull requests:

v4.0.15 (2016-02-16)

Full Changelog

Closed issues:

  • Until timeout question #163
  • Error when run rspec #162
  • Unique job keys never dissapear #161
  • Uniqueness breaks jobs #160
  • Too many open files #155

Merged pull requests:

v4.0.13 (2015-12-16)

Full Changelog

Closed issues:

  • Seeing this error with latest version 4.0.12 #154
  • Unique job showing weird behavior #153

v4.0.12 (2015-12-15)

Full Changelog

Closed issues:

  • Can't schedule a job from another job #151
  • perform_in not working in version 4.0.9 #150
  • unique: until\_and\_while\_executing not working as expected #146
  • while_executing still runs duplicate tasks #136
  • Version 4 Upgrade #133

v4.0.11 (2015-12-12)

Full Changelog

Closed issues:

  • Release a new version for Ruby < 2.1 compatability #152

v4.0.10 (2015-12-12)

Full Changelog

Closed issues:

  • Until Executed is taking waiting for unique_expiration #149
  • Until Executed vs Unique Until And While Executing is confusing in README #148
  • sidekiq-unique-jobs not enabled from sidekiq workers #131

v4.0.9 (2015-11-14)

Full Changelog

Closed issues:

  • Error when using unique_args in 4.0.8 #145
  • Ignore lock when jobs spawned from another sidekiq worker #142
  • Two Rails apps on the same server, but only one Sidekiq instances is working correctly #141
  • ActiveRecord::RecordNotDestroyed: Failed to destroy the record #139

v4.0.8 (2015-10-31)

Full Changelog

Closed issues:

  • Jobs not getting queued in v4 #138
  • Unique args being considered? #137
  • No mention how to test in README #135
  • License Difference #132

Merged pull requests:

  • Calculate worker's unique args when a proc or a symbol is specified #143 (zeqfreed)
  • Fix markdown link formatting #134 (thbar)

v4.0.7 (2015-10-14)

Full Changelog

Closed issues:

  • docs clarification #130
  • 4.* is hurting background job workers performance #127

v4.0.6 (2015-10-14)

Full Changelog

Closed issues:

  • NameError: uninitialized constant SidekiqUniqueJobs::RunLockFailed #126

v4.0.5 (2015-10-13)

Full Changelog

Closed issues:

  • Rails + Sidekiq will go bezerk after sidekiq-unique-jobs testing check. #128
  • NoMethodError: undefined method `to_sym' for true:TrueClass #125
  • Redis::CommandError: ERR unknown command 'eval' #124

Merged pull requests:

  • Forces to look for testing namespace in Sidekiq and not his ancestors #129 (antek-drzewiecki)
  • Fix outdated phrasing and add test coverage to readme #123 (albertyw)

v4.0.4 (2015-10-09)

Full Changelog

Closed issues:

  • Active job with unique args doesn't work #120
  • 4.0.1 => job no longer unique #117
  • Update Changelog and Tags #115

v4.0.3 (2015-10-08)

Full Changelog

Closed issues:

  • unique_unlock_order - never option #122
  • Run 1 job and queue 1 #121
  • unique_lock vs unique_locks typo #119
  • 4.0.2 commited but not released to rubygems? #118

v4.0.2 (2015-10-06)

Full Changelog

4.0.1 (2015-10-06)

Full Changelog

Closed issues:

  • Don't work with perform_in #114
  • 3.0.15 apparently breaks inline testing #113
  • sidekiq_unique record in Redis is not cleaned when foreman process is killed #112
  • Can't ensure unique job simultaneously. #111
  • Job considered as duplicate after completion only in production #110
  • Gem requires Redis 2.6+? #109
  • unable to re-schedule job at specific time #108
  • Documentation Not Clear #78
  • Runtime uniqueness when using :before_yield as unlock order #72
  • Using with sidekiq delayed extensions #45

Merged pull requests:

v4.0.0 (2015-10-05)

Full Changelog

Implemented enhancements:

  • Duplicated Jobs With Nested Sidekiq Workers #10

Closed issues:

  • 3.0.14 Error: ERR wrong number of arguments for 'set' command (Redis::CommandError) #104
  • Testing #103
  • Active Job #102
  • Why is SidekiqUnique behaviour applied to regular Workers? #100
  • Confusing behavior when trying to \[1,2,3\].each { |n| SomeJob.perform\_in\(n.seconds.from\_now, n\) } never running, logging as duplicate value #98
  • Scheduled jobs are not unlocked when deleted #97
  • Testing functions should be moved out of production code #95
  • Jobs can unlock mutexes they don't own #94
  • Jobs scheduled in the future are never run #93
  • perform_at and perform_async do not unique if perform_at is in the future. #91
  • Latest release is breaking #90
  • Optimize Redis usage #89
  • Unique jobs sets Sidekiq testing to inline! mode #88
  • Test suite unclear on what happens when duplicate job is attempted #84
  • Change log level to info rather than warn #80
  • Jobs are unlocked if they fail and are retried #77
  • Usage of sidekiq-unique-jobs with activejob #76
  • If a job is deleted from the enqueued list, it's still unique and new jobs can't be added. #74
  • Incorrect README re: uniqueness time? #73
  • Sidekiq::Testing inline detection assumes you're always using inline testing #71
  • unique_args_enabled has been deprecated, nothing in readme #70
  • The second job does not run, even if it has different arguments #69
  • Jobs not being executed anymore?? #65
  • mock_redis and the mess #62
  • What is the exact behavior? #47
  • Throttling jobs #39
  • undefined method `get_sidekiq_options' for "MyScheduledWorker":String #27
  • Crash handling #14
  • Missing info from README #6

Merged pull requests:

  • Allow job with jid matching unique lock to pass unique check #105 (deltaroe)
  • Prevent Jobs from deleting mutexes they don't own #96 (pik)
  • Add after unlock hook #92 (HParker)
  • Do not unlock on sidekiq shutdown #87 (deltaroe)
  • Remove no-op code, protect global space from test code #86 (stevenjonescgm)
  • Remove unique lock when executing and clearing jobs in sidekiq fake mode #83 (crberube)
  • Fix tests. Tests with latest sidekiq versions and ruby versions #82 (simonoff)
  • Duplicate Payload logging configuration #81 (jprincipe)
  • output log if not unique #79 (sonots)
  • Checking Sidekiq::Testing.inline? on testing strategy and connector #75 (Draiken)

v3.0.11 (2014-12-15)

Full Changelog

Closed issues:

  • ConnectionPool used incorrectly - causes deadlocks #66
  • undefined configuration when using .configure #64

Merged pull requests:

  • Use ConnectionPool blocks to ensure exclusive connection. Closes #66. #67 (adstage-david)

v3.0.10 (2014-11-19)

Full Changelog

Closed issues:

  • LoadError: cannot load such file -- mock_redis #60
  • The deprecation message is unclear and unnecessary #59

Merged pull requests:

v3.0.9 (2014-11-05)

Full Changelog

Closed issues:

  • sidekiq-unique-jobs prevents not unique jobs creation event with sidekiq inline test mode #58
  • mock redis dependency #55
  • Unique key inconsistency between server and client #48
  • Example Test using Sidekiq::Testing.inline #44
  • Will a second job lose if the job is already queued, or is already scheduled? #43
  • Can you update the change log? #42

Merged pull requests:

  • Refactoring connectors to use them in client and server #56 (salrepe)
  • Fix dependency error in inline testing connector #54 (salrepe)
  • Add extension to Sidekiq API that is uniqueness-aware #52 (rickenharp)

v3.0.3 (2014-11-03)

Full Changelog

Closed issues:

  • is mock_redis really a runtime dependency? #46

Merged pull requests:

  • Unlock testing inline jobs like normal ones #53 (salrepe)
  • Declare mock_redis as development dependency instead of runtime one #51 (phuongnd08)

v3.0.2 (2014-06-08)

Full Changelog

Closed issues:

  • Add unique job key to the message json #40

Merged pull requests:

  • Add the unique hash to the message for use by the workers. #41 (sullimander)

v3.0.1 (2014-06-08)

Full Changelog

Closed issues:

  • Support for sidekiq 3? #34
  • Short jobs are not unique for the given time window #33
  • Not all sidekiq:sidekiq_unique keys are removed from Redis #31
  • What does uniqueness mean in case of this gem? #30
  • Server middleware removes payload hash key before expiration #26
  • Lock remains when running with Sidekiq::Testing.inline! #23
  • What is the use case for the uniqueness window? #22
  • clarification on unique_args #20
  • payload_hash staying around #13

Merged pull requests:

v2.7.0 (2013-11-24)

Full Changelog

Closed issues:

  • Sidekiq tests failed when sidekiq-unique-jobs is used #24
  • Redis not mocked in testing #18
  • Scheduled Unique Jobs Not Being Enqueued #15
  • Retries duplicates unique jobs #5
  • Middleware not added to chain? #2

Merged pull requests:

  • Make unlock/yield order configurable. #21 (endofunky)
  • Rely on Sidekiq's String#constantize extension instead of rolling our own #19 (disbelief)
  • Attempt to constantize String worker\_class arguments passed to client middleware #17 (disbelief)
  • Compatibility with Sidekiq 2.12.1 Scheduled Jobs #16 (lsimoneau)
  • Allow worker to specify which arguments to include in uniquing hash #12 (sax)
  • Add support for unique when using Sidekiq's delay function #11 (eduardosasso)
  • Adding the unique prefix option #8 (KensoDev)
  • Remove unnecessary log messages #7 (marclennox)

v2.3.2 (2012-09-27)

Full Changelog

Closed issues:

  • Scheduled workers #1

Merged pull requests:

  • Fix multiple bugs, cleaned up dependencies, and added a feature #4 (kemper-blinq)
  • Dependency on sidekiq 2.2.0 and up #3 (philostler)

v2.2.1 (2012-08-19)

Full Changelog

v2.2.0 (2012-08-19)

Full Changelog

v2.1.0 (2012-08-07)

* This Change Log was automatically generated by github_changelog_generator

You can’t perform that action at this time.