tag:github.com,2008:https://github.com/resque/resque-unique_in_queue/releasesRelease notes from resque-unique_in_queue2026-08-27T23:52:50Ztag:github.com,2008:Repository/101848882/v2.0.22026-08-27T23:52:58Zv2.0.2<h2><a href="https://github.com/resque/resque-unique_in_queue/compare/v2.0.1...v2.0.2">2.0.2</a> - 2026-08-27</h2>
<ul>
<li>TAG: <a href="https://github.com/resque/resque-unique_in_queue/releases/tag/v2.0.2">v2.0.2</a></li>
<li>COVERAGE: 93.26% -- 180/193 lines in 8 files</li>
<li>BRANCH COVERAGE: 78.57% -- 44/56 branches in 8 files</li>
<li>52.73% documented</li>
</ul>
<h3>Added</h3>
<ul>
<li>kettle-jem-template-20260720-005 - README Support & Community links now<br>
include RubyForum.</li>
<li>kettle-jem-template-20260726-001 - Projects now include YARD lint<br>
configuration and documentation dependencies so documentation issues fail<br>
before generated docs are refreshed.</li>
<li>kettle-jem-template-20260727-001 - Spec harness documentation now lists the<br>
RSpec helpers provided by <code>kettle-test</code>.</li>
</ul>
<h3>Changed</h3>
<ul>
<li>
<p>kettle-jem-template-20260716-002 - Gemspecs now ship fewer repository-only<br>
files, reducing package noise for downstream packagers.</p>
</li>
<li>
<p>kettle-jem-template-20260720-002 - Development Gemfiles now use the released<br>
<code>tree_sitter_language_pack</code> gem 1.13.3 or newer by default.</p>
</li>
<li>
<p>kettle-jem-template-20260725-002 - Version specs now use <code>anonymous_loader</code> to<br>
cover <code>version.rb</code> without redefining constants, or are removed when version<br>
specs are not managed for the project.</p>
</li>
<li>
<p>kettle-jem-template-20260728-001 - Generated Ruby workflows now use clearer<br>
setup-ruby-flash planning and can prepare appraisal-only jobs without<br>
installing the main Gemfile bundle.</p>
</li>
<li>
<p>Document the gem synopsis and configuration options.</p>
</li>
<li>
<p>kettle-jem-template-20260801-001 - Generated README gem dashboard links now<br>
use ClickGems instead of BestGems.</p>
</li>
<li>
<p>[kc] kettle-jem/prepare: updated 26 project files:</p>
<ul>
<li>dependencies (23)</li>
<li>other (3)</li>
</ul>
</li>
<li>
<p>[kc] kettle-jem/template: updated 38 project files:</p>
<ul>
<li>configuration (1)</li>
<li>dependencies (1)</li>
<li>documentation (2)</li>
<li>other (4)</li>
<li>workflows (30)</li>
</ul>
</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>
<p>kettle-jem-template-20260720-003 - StructuredMerge Git diff driver config now<br>
uses the installed <code>smorg-rb</code> driver command.</p>
</li>
<li>
<p>kettle-jem-template-20260725-001 - Release pull request branches beginning<br>
with <code>feature/release</code> now run JRuby and TruffleRuby workflows.</p>
</li>
<li>
<p>kettle-jem-template-20260726-002 - Generated version files now document their<br>
version namespace and constants, reducing warning-only YARD lint output.</p>
</li>
<li>
<p>kettle-jem-template-20260726-003 - Coverage upload steps now treat Coveralls,<br>
QLTY, and Codecov as optional, so provider outages do not fail CI when local<br>
coverage thresholds still pass.</p>
</li>
<li>
<p>kettle-jem-template-20260728-002 - Generated RuboCop configs now ignore the<br>
same <code>gemfiles/vendor/bundle</code> tree as <code>.gitignore</code>, so vendored dependency<br>
installs are not reported as project lint debt.</p>
</li>
<li>
<p>kettle-jem-template-20260728-003 - Generated dep-heads workflows now run<br>
TruffleRuby jobs with current RubyGems and Bundler, avoiding setup failures<br>
before the test suite starts.</p>
</li>
<li>
<p>kettle-jem-template-20260728-004 - Generated dep-heads workflows now use the<br>
setup-ruby Bundler install path for direct appraisal Gemfiles, avoiding rv<br>
lockfile parser failures on Git and path dependencies.</p>
</li>
<li>
<p>kettle-jem-template-20260728-005 - VersionGem bootstrap now creates the<br>
missing canonical version spec when a project only has shim namespace version<br>
specs.</p>
</li>
<li>
<p>kettle-jem-template-20260729-001 - Generated JRuby 9.4 workflows now use the<br>
legacy manual bundle install path, avoiding setup-time Bundler full-index<br>
failures against <code>gem.coop</code>.</p>
</li>
<li>
<p>kettle-jem-template-20260730-001 - Gemspec package file enumeration now runs<br>
relative to the gemspec directory, so release package contents stay correct<br>
even when the gemspec is loaded from another working directory.</p>
</li>
<li>
<p>kettle-jem-template-20260801-002 - Generated RSpec helpers now normalize<br>
managed configuration block bindings structurally, preventing mixed block<br>
parameter names from producing invalid configuration after a merge.</p>
</li>
<li>
<p>kettle-jem-template-20260801-003 - Generated project metadata and<br>
documentation now normalize configured underscore hostnames to valid<br>
hyphenated hostnames.</p>
</li>
<li>
<p>kettle-jem-template-20260801-004 - Generated organization README logos now<br>
use GitHub's stable organization avatar endpoint instead of assuming a<br>
matching Galtzo-hosted asset exists.</p>
</li>
<li>
<p>kettle-jem-template-20260802-001 - Devcontainer JSON files now merge as JSONC,<br>
preserving comments and trailing commas during template updates.</p>
</li>
<li>
<p>Fix default uniqueness configuration loading on Ruby 4.</p>
</li>
<li>
<p>Generated gemspec author metadata now includes all non-machine copyright holders.</p>
</li>
<li>
<p>Ruby 2.4 CI now provisions Redis for the legacy integration specs.</p>
</li>
<li>
<p>Alternate-engine appraisal gemfiles cap multi_json below 1.20 for Fiber API compatibility.</p>
</li>
<li>
<p>Keep optional development tools out of gemspec metadata so alternate-engine appraisals do not install incompatible native extensions.</p>
</li>
<li>
<p>Keep legacy exception-cleanup coverage independent of Resque's optional worker forking behavior across supported engines.</p>
</li>
</ul>
<p>Community support 👉️ <a href="https://www.rubyforum.org/tag/resque" rel="nofollow"><img src="https://camo.githubusercontent.com/46749fee06c5ca322c305ea3f5c0e52814d01ec4a579b101ec7245333abafc29/68747470733a2f2f696d672e736869656c64732e696f2f646973636f757273652f746f706963733f7365727665723d68747470732533412532462532467777772e72756279666f72756d2e6f7267267374796c653d666c6174266c6f676f3d646973636f75727365266c6162656c3d527562792532305573657273253230466f72756d" alt="Ruby Users Forum" data-canonical-src="https://img.shields.io/discourse/topics?server=https%3A%2F%2Fwww.rubyforum.org&style=flat&logo=discourse&label=Ruby%20Users%20Forum" style="max-width: 100%;"></a> <a href="https://discord.gg/3qme4XHNKN" rel="nofollow"><img src="https://camo.githubusercontent.com/81937f72c46cec51f4e2f533c12dee740e70ef31150a640f6dd464b4a897ce00/68747470733a2f2f696d672e736869656c64732e696f2f646973636f72642f313337333739373637393436393137303735383f7374796c653d666c6174" alt="Live Chat on Discord" data-canonical-src="https://img.shields.io/discord/1373797679469170758?style=flat" style="max-width: 100%;"></a></p>
<p>Many paths lead to being a sponsor or a backer of this project. Are you on such a path?</p>
<p><a href="https://opencollective.com/resque#backer" rel="nofollow"><img src="https://camo.githubusercontent.com/7e6b8803ef7003afb4da05fd75cd026f05d480197feec132fad1315c13d832f4/68747470733a2f2f6f70656e636f6c6c6563746976652e636f6d2f7265737175652f6261636b6572732f62616467652e7376673f7374796c653d666c6174" alt="OpenCollective Backers" data-canonical-src="https://opencollective.com/resque/backers/badge.svg?style=flat" style="max-width: 100%;"></a> <a href="https://opencollective.com/resque#sponsor" rel="nofollow"><img src="https://camo.githubusercontent.com/b8a4dbc948073a44735505c48504abcf9297d0a9b3071683e5b1417652c8dd4a/68747470733a2f2f6f70656e636f6c6c6563746976652e636f6d2f7265737175652f73706f6e736f72732f62616467652e7376673f7374796c653d666c6174" alt="OpenCollective Sponsors" data-canonical-src="https://opencollective.com/resque/sponsors/badge.svg?style=flat" style="max-width: 100%;"></a> <a href="https://github.com/sponsors/pboling"><img src="https://camo.githubusercontent.com/d37a1791d9a4132d637871e60467fa394f8b6e3e7aa69bc657e818531e937d48/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f53706f6e736f725f4d65212d70626f6c696e672e7376673f7374796c653d736f6369616c266c6f676f3d676974687562" alt="Sponsor Me on Github" data-canonical-src="https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github" style="max-width: 100%;"></a> <a href="https://liberapay.com/pboling/donate" rel="nofollow"><img src="https://camo.githubusercontent.com/e4b178129d5d019ba7048bd571814a089a3d20fb4d22e12aa259f1b0e50eed3c/68747470733a2f2f696d672e736869656c64732e696f2f6c69626572617061792f676f616c2f70626f6c696e672e7376673f6c6f676f3d6c696265726170617926636f6c6f723d613531363131267374796c653d666c6174" alt="Liberapay Goal Progress" data-canonical-src="https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat" style="max-width: 100%;"></a> <a href="https://www.paypal.com/paypalme/peterboling" rel="nofollow"><img src="https://camo.githubusercontent.com/ad5fbd1cb684ef5d84e41079f16eeba4b64c44bb7a2cf7934ab0754297d130d0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f646f6e6174652d70617970616c2d6135313631312e7376673f7374796c653d666c6174266c6f676f3d70617970616c" alt="Donate on PayPal" data-canonical-src="https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal" style="max-width: 100%;"></a></p>
<p><a href="https://www.buymeacoffee.com/pboling" rel="nofollow"><img src="https://camo.githubusercontent.com/cb2c519a9634163d83d2371b3f4eecbe94638a6edf1a0491c246c7e9f28b9852/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6275795f6d655f615f636f666665652d2545322539432539332d6135313631312e7376673f7374796c653d666c6174" alt="Buy me a coffee" data-canonical-src="https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat" style="max-width: 100%;"></a> <a href="https://ko-fi.com/pboling" rel="nofollow"><img src="https://camo.githubusercontent.com/51dc5598dba7200365327838db6b4a4cea6e50487fc88efb90abc721b02780c5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6b6f2d2d66692d2545322539432539332d6135313631312e7376673f7374796c653d666c6174" alt="Donate to my FLOSS efforts at ko-fi.com" data-canonical-src="https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat" style="max-width: 100%;"></a></p>pbolingtag:github.com,2008:Repository/101848882/v2.0.12026-08-01T08:04:58Zv2.0.1<h2><a href="https://github.com/resque/resque-unique_in_queue/compare/5768fc8b5e3b164bf740286ee1ddbec2ea96797e...v2.0.1">2.0.1</a> - 2018-11-15</h2>
<ul>
<li>TAG: <a href="https://github.com/resque/resque-unique_in_queue/releases/tag/v2.0.1">v2.0.1</a></li>
</ul>
<h3>Changed</h3>
<ul>
<li>Historical release notes are unavailable in this changelog.</li>
</ul>
<p>Community support 👉️ <a href="https://www.rubyforum.org/tag/resque" rel="nofollow"><img src="https://camo.githubusercontent.com/46749fee06c5ca322c305ea3f5c0e52814d01ec4a579b101ec7245333abafc29/68747470733a2f2f696d672e736869656c64732e696f2f646973636f757273652f746f706963733f7365727665723d68747470732533412532462532467777772e72756279666f72756d2e6f7267267374796c653d666c6174266c6f676f3d646973636f75727365266c6162656c3d527562792532305573657273253230466f72756d" alt="Ruby Users Forum" data-canonical-src="https://img.shields.io/discourse/topics?server=https%3A%2F%2Fwww.rubyforum.org&style=flat&logo=discourse&label=Ruby%20Users%20Forum" style="max-width: 100%;"></a> <a href="https://discord.gg/3qme4XHNKN" rel="nofollow"><img src="https://camo.githubusercontent.com/81937f72c46cec51f4e2f533c12dee740e70ef31150a640f6dd464b4a897ce00/68747470733a2f2f696d672e736869656c64732e696f2f646973636f72642f313337333739373637393436393137303735383f7374796c653d666c6174" alt="Live Chat on Discord" data-canonical-src="https://img.shields.io/discord/1373797679469170758?style=flat" style="max-width: 100%;"></a></p>
<p>Many paths lead to being a sponsor or a backer of this project. Are you on such a path?</p>
<p><a href="https://opencollective.com/resque#backer" rel="nofollow"><img src="https://camo.githubusercontent.com/7e6b8803ef7003afb4da05fd75cd026f05d480197feec132fad1315c13d832f4/68747470733a2f2f6f70656e636f6c6c6563746976652e636f6d2f7265737175652f6261636b6572732f62616467652e7376673f7374796c653d666c6174" alt="OpenCollective Backers" data-canonical-src="https://opencollective.com/resque/backers/badge.svg?style=flat" style="max-width: 100%;"></a> <a href="https://opencollective.com/resque#sponsor" rel="nofollow"><img src="https://camo.githubusercontent.com/b8a4dbc948073a44735505c48504abcf9297d0a9b3071683e5b1417652c8dd4a/68747470733a2f2f6f70656e636f6c6c6563746976652e636f6d2f7265737175652f73706f6e736f72732f62616467652e7376673f7374796c653d666c6174" alt="OpenCollective Sponsors" data-canonical-src="https://opencollective.com/resque/sponsors/badge.svg?style=flat" style="max-width: 100%;"></a> <a href="https://github.com/sponsors/pboling"><img src="https://camo.githubusercontent.com/d37a1791d9a4132d637871e60467fa394f8b6e3e7aa69bc657e818531e937d48/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f53706f6e736f725f4d65212d70626f6c696e672e7376673f7374796c653d736f6369616c266c6f676f3d676974687562" alt="Sponsor Me on Github" data-canonical-src="https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github" style="max-width: 100%;"></a> <a href="https://liberapay.com/pboling/donate" rel="nofollow"><img src="https://camo.githubusercontent.com/e4b178129d5d019ba7048bd571814a089a3d20fb4d22e12aa259f1b0e50eed3c/68747470733a2f2f696d672e736869656c64732e696f2f6c69626572617061792f676f616c2f70626f6c696e672e7376673f6c6f676f3d6c696265726170617926636f6c6f723d613531363131267374796c653d666c6174" alt="Liberapay Goal Progress" data-canonical-src="https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat" style="max-width: 100%;"></a> <a href="https://www.paypal.com/paypalme/peterboling" rel="nofollow"><img src="https://camo.githubusercontent.com/ad5fbd1cb684ef5d84e41079f16eeba4b64c44bb7a2cf7934ab0754297d130d0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f646f6e6174652d70617970616c2d6135313631312e7376673f7374796c653d666c6174266c6f676f3d70617970616c" alt="Donate on PayPal" data-canonical-src="https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal" style="max-width: 100%;"></a></p>
<p><a href="https://www.buymeacoffee.com/pboling" rel="nofollow"><img src="https://camo.githubusercontent.com/cb2c519a9634163d83d2371b3f4eecbe94638a6edf1a0491c246c7e9f28b9852/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6275795f6d655f615f636f666665652d2545322539432539332d6135313631312e7376673f7374796c653d666c6174" alt="Buy me a coffee" data-canonical-src="https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat" style="max-width: 100%;"></a> <a href="https://ko-fi.com/pboling" rel="nofollow"><img src="https://camo.githubusercontent.com/51dc5598dba7200365327838db6b4a4cea6e50487fc88efb90abc721b02780c5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6b6f2d2d66692d2545322539432539332d6135313631312e7376673f7374796c653d666c6174" alt="Donate to my FLOSS efforts at ko-fi.com" data-canonical-src="https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat" style="max-width: 100%;"></a></p>pbolingtag:github.com,2008:Repository/101848882/v2.0.02018-11-15T04:17:46Zv2.0.0<p>tag v2.0.0</p>pbolingtag:github.com,2008:Repository/101848882/v1.0.32018-11-10T13:51:13Zv1.0.3<p>tag v1.0.3</p>pbolingtag:github.com,2008:Repository/101848882/v1.0.22018-11-10T12:25:39Zv1.0.2<p>tag v1.0.2</p>pbolingtag:github.com,2008:Repository/101848882/v1.0.12018-11-08T14:38:32Zv1.0.1<p>tag v1.0.1</p>pbolingtag:github.com,2008:Repository/101848882/v1.0.02018-11-08T14:33:02Zv1.0.0<p>tag v1.0.0</p>pbolingtag:github.com,2008:Repository/101848882/v0.3.02016-08-19T03:59:18Zv0.3.0<p>Version 0.3.0</p>teeparhamtag:github.com,2008:Repository/101848882/v0.2.02016-04-22T22:30:13Zv0.2.0<p>Version 0.2.0</p>teeparhamtag:github.com,2008:Repository/101848882/v0.1.02014-03-05T17:55:06Zv0.1.0<p>Version 0.1.0</p>teeparham