rspec-pending_for 0.1.16 → 0.1.18

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.
data/README.md CHANGED
@@ -1,175 +1,610 @@
1
- # Rspec::PendingFor
1
+ [![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-i]][🖼️galtzo-discord] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang] [![rspec-pending_for Logo by Aboling0, CC BY-SA 4.0][🖼️rspec-pending_for-i]][🖼️rspec-pending_for]
2
2
 
3
- Easiest to just show you:
3
+ [🖼️galtzo-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
4
+ [🖼️galtzo-discord]: https://discord.gg/3qme4XHNKN
5
+ [🖼️ruby-lang-i]: https://logos.galtzo.com/assets/images/ruby-lang/avatar-192px.svg
6
+ [🖼️ruby-lang]: https://www.ruby-lang.org/
7
+ [🖼️rspec-pending_for-i]: https://logos.galtzo.com/assets/images/galtzo-floss/rspec-pending_for/avatar-192px.svg
8
+ [🖼️rspec-pending_for]: https://github.com/galtzo-floss/rspec-pending_for
9
+
10
+ # ⏳️ Rspec::PendingFor
11
+
12
+ [![Version][👽versioni]][👽version] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![CodeCov Test Coverage][🔑codecovi]][🔑codecov] [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls] [![QLTY Test Coverage][🔑qlty-covi]][🔑qlty-cov] [![QLTY Maintainability][🔑qlty-mnti]][🔑qlty-mnt] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf] [![Deps Locked][🚎13-🔒️-wfi]][🚎13-🔒️-wf] [![Deps Unlocked][🚎14-🔓️-wfi]][🚎14-🔓️-wf] [![CI Supported][🚎6-s-wfi]][🚎6-s-wf] [![CI Legacy][🚎4-lg-wfi]][🚎4-lg-wf] [![CI Unsupported][🚎7-us-wfi]][🚎7-us-wf] [![CI Ancient][🚎1-an-wfi]][🚎1-an-wf] [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf] [![CI Style][🚎5-st-wfi]][🚎5-st-wf]
13
+
14
+ If ☝️ `ci_badges.map(&:color).detect { it != "green"}` [let me know][🖼️galtzo-discord], as I may have missed the [discord notification][🖼️galtzo-discord].
15
+
16
+ ---
17
+
18
+ OTOH, if `ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS is now my full-time job.
19
+
20
+ [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS or refugee efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS or refugee efforts using Patreon][🖇patreon-img]][🖇patreon]
21
+
22
+ ## 🌻 Synopsis
23
+
24
+ You can do this:
4
25
 
5
26
  ```ruby
6
- it('blah is blah') do
7
- pending_for(:engine => 'rbx')
8
- pending_for(:engine => 'ruby', :versions => '2.1.5')
9
- pending_for(:engine => 'jruby', :versions => '2.2.2', :reason => 'due to a bug in Ruby')
10
- pending_for(:engine => 'ruby', :versions => '2.0.0', :reason => "because I don't have the time")
11
- expect('blah').to eq 'blah'
27
+ it("blah is blah") do
28
+ pending_for(:engine => "rbx")
29
+ pending_for(:engine => "truffleruby")
30
+ pending_for(:engine => "ruby", :versions => "2.1.5")
31
+ pending_for(:engine => "jruby", :versions => "2.2.2", :reason => "due to a bug in Ruby")
32
+ pending_for(:engine => "ruby", :versions => "2.0.0", :reason => "because I don't have the time")
33
+ expect("blah").to(eq("blah"))
12
34
  end
13
35
  ```
14
36
 
15
- Requires Ruby 1.8.7+ (same as RSPec, any engine)
37
+ I expect the current release of this gem to be compatible with Ruby 1.8.7+,
38
+ but it is only tested on CI against Ruby 2.3+,
39
+ due to the inherent limitations of GitHub Actions.
16
40
 
17
- | Project | Rspec::PendingFor |
18
- |------------------------ | ----------------------- |
19
- | gem name | [rspec-pending_for](https://rubygems.org/gems/rspec-pending_for) |
20
- | license | [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) |
21
- | download rank | [![Downloads Today](https://img.shields.io/gem/rd/rspec-pending_for.svg)](https://github.com/pboling/rspec-pending_for) |
22
- | version | [![Version](https://img.shields.io/gem/v/rspec-pending_for.svg)](https://rubygems.org/gems/rspec-pending_for) |
23
- | dependencies | [![Depfu](https://badges.depfu.com/badges/79867e590f063376f40b031a1447c215/count.svg)](https://depfu.com/github/pboling/rspec-pending_for?project_id=5865) |
24
- | CI > ruby 2.0.0 | [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fpboling%2Frspec-pending_for%2Fbadge&style=flat)](https://actions-badge.atrox.dev/pboling/rspec-pending_for/goto) |
25
- | CI <= ruby 2.0.0 | [![Build Status](https://travis-ci.com/pboling/rspec-pending_for.svg?branch=master)](https://travis-ci.com/pboling/rspec-pending_for) |
26
- | test coverage | [![Test Coverage](https://api.codeclimate.com/v1/badges/266bc0935f185153cce4/test_coverage)](https://codeclimate.com/github/pboling/rspec-pending_for/test_coverage) |
27
- | maintainability | [![Maintainability](https://api.codeclimate.com/v1/badges/266bc0935f185153cce4/maintainability)](https://codeclimate.com/github/pboling/rspec-pending_for/maintainability) |
28
- | code triage | [![Open Source Helpers](https://www.codetriage.com/pboling/rspec-pending_for/badges/users.svg)](https://www.codetriage.com/pboling/rspec-pending_for) |
29
- | homepage | [on Github.com][homepage], [on Railsbling.com][blogpage] |
30
- | documentation | [on RDoc.info][documentation] |
31
- | Spread ~♡ⓛⓞⓥⓔ♡~ | [🌏](https://about.me/peter.boling), [👼](https://angel.co/peter-boling), [:shipit:](http://coderwall.com/pboling), [![Tweet Peter](https://img.shields.io/twitter/follow/galtzo.svg?style=social&label=Follow)](http://twitter.com/galtzo), [🌹](https://nationalprogressiveparty.org) |
41
+ | 🚚 _Amazing_ test matrix was brought to you by | 🔎 appraisal2 🔎 |
42
+ |------------------------------------------------|--------------------------------------------------------------------------------------|
43
+ | 👟 Check it out! |[github.com/appraisal-rb/appraisal2](https://github.com/appraisal-rb/appraisal2) |
32
44
 
33
- ## Installation
45
+ ## 💡 Info you can shake a stick at
34
46
 
35
- Add this line to your application's Gemfile:
47
+ ### Federated DVCS
36
48
 
37
- ```ruby
38
- gem 'rspec-pending_for'
39
- ```
49
+ <details>
50
+ <summary>Find this repo on other forges (Coming soon!)</summary>
51
+
52
+ | Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
53
+ |-------------------------------------------------------|-------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
54
+ | 🧪 [galtzo-floss/rspec-pending_for on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜wiki] | 🏀 Tiny Matrix | ➖ |
55
+ | 🧊 [galtzo-floss/rspec-pending_for on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
56
+ | 🐙 [galtzo-floss/rspec-pending_for on GitHub][📜src-gh] | A Dirty Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | ➖ | 💯 Full Matrix | [💚][gh-discussions] |
57
+ | 🎮️ [Discord Server][✉️discord-invite] | [![Live Chat on Discord][✉️discord-invite-img]][✉️discord-invite] | [Let's][✉️discord-invite] | [talk][✉️discord-invite] | [about][✉️discord-invite] | [this][✉️discord-invite] | [library!][✉️discord-invite] |
58
+
59
+ </details>
60
+
61
+ [gh-discussions]: https://github.com/galtzo-floss/rspec-pending_for/discussions
62
+
63
+ ### Enterprise Support [![Tidelift](https://tidelift.com/badges/package/rubygems/rspec-pending_for)](https://tidelift.com/subscription/pkg/rubygems-rspec-pending_for?utm_source=rubygems-rspec-pending_for&utm_medium=referral&utm_campaign=readme)
64
+
65
+ <details>
66
+ <summary>Need enterprise-level guarantees?</summary>
67
+
68
+ [![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]
69
+
70
+ - 💡Subscribe for support guarantees covering _all_ FLOSS dependencies
71
+ - 💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]
72
+ - 💡Tidelift pays maintainers to maintain the software you depend on!<br/>📊`@`Pointy Haired Boss: An [enterprise support][🏙️entsup-tidelift] subscription is "[never gonna let you down][🧮kloc]", and *supports* open source maintainers
73
+
74
+ Alternatively:
75
+
76
+ - [![Live Chat on Discord][✉️discord-invite-img]][✉️discord-invite]
77
+ - [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork]
78
+ - [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor]
40
79
 
41
- And then execute:
80
+ </details>
42
81
 
43
- $ bundle
82
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
83
+ |-------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
84
+ | Works with JRuby | ![JRuby 9.1 Compat][💎jruby-9.1i] ![JRuby 9.2 Compat][💎jruby-9.2i] ![JRuby 9.3 Compat][💎jruby-9.3i] <br/> [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎10-j-wf] [![JRuby 10.0 Compat][💎jruby-c-i]][🚎11-c-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf] |
85
+ | Works with Truffle Ruby | ![Truffle Ruby 22.3 Compat][💎truby-22.3i] <br/> [![Truffle Ruby 23.0 Compat][💎truby-23.0i]][🚎9-t-wf] [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎9-t-wf] [![Truffle Ruby 24.1 Compat][💎truby-c-i]][🚎11-c-wf] |
86
+ | Works with MRI Ruby 3 | [![Ruby 3.0 Compat][💎ruby-3.0i]][🚎4-lg-wf] [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎6-s-wf] [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎6-s-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎6-s-wf] [![Ruby 3.4 Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf] |
87
+ | Works with MRI Ruby 2 | ![Ruby 2.0 Compat][💎ruby-2.0i] ![Ruby 2.1 Compat][💎ruby-2.1i] ![Ruby 2.2 Compat][💎ruby-2.2i] <br/> [![Ruby 2.3 Compat][💎ruby-2.3i]][🚎1-an-wf] [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎1-an-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎1-an-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎7-us-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎7-us-wf] |
88
+ | Works with MRI Ruby 1 | ![Ruby 1.9 Compat][💎ruby-1.9i] |
89
+ | Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
90
+ | Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![Wiki][📜wiki-img]][📜wiki] |
91
+ | Compliance | [![License: MIT][📄license-img]][📄license-ref] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
92
+ | Style | [![Enforced Code Style Linter][💎rlts-img]][💎rlts] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] [![Gitmoji Commits][📌gitmoji-img]][📌gitmoji] [![Compatibility appraised by: appraisal2][💎appraisal2-img]][💎appraisal2] |
93
+ | Support | [![Live Chat on Discord][✉️discord-invite-img]][✉️discord-invite] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
94
+ | Maintainer 🎖️ | [![Follow Me on LinkedIn][💖🖇linkedin-img]][💖🖇linkedin] [![Follow Me on Ruby.Social][💖🐘ruby-mast-img]][💖🐘ruby-mast] [![Follow Me on Bluesky][💖🦋bluesky-img]][💖🦋bluesky] [![Contact Maintainer][🚂maint-contact-img]][🚂maint-contact] [![My technical writing][💖💁🏼‍♂️devto-img]][💖💁🏼‍♂️devto] |
95
+ | `...` 💖 | [![Find Me on WellFound:][💖✌️wellfound-img]][💖✌️wellfound] [![Find Me on CrunchBase][💖💲crunchbase-img]][💖💲crunchbase] [![My LinkTree][💖🌳linktree-img]][💖🌳linktree] [![More About Me][💖💁🏼‍♂️aboutme-img]][💖💁🏼‍♂️aboutme] [🧊][💖🧊berg] [🐙][💖🐙hub] [🛖][💖🛖hut] [🧪][💖🧪lab] |
44
96
 
45
- Or install it yourself as:
97
+ ## Installation
98
+
99
+ Install the gem and add to the application's Gemfile by executing:
100
+
101
+ $ bundle add rspec-pending_for
102
+
103
+ If bundler is not being used to manage dependencies, install the gem by executing:
46
104
 
47
105
  $ gem install rspec-pending_for
48
106
 
49
- ## Usage
107
+ ### 🔒 Secure Installation
108
+
109
+ <details>
110
+ <summary>For Medium or High Security Installations</summary>
111
+
112
+ This gem is cryptographically signed, and has verifiable [SHA-256 and SHA-512][💎SHA_checksums] checksums by
113
+ [stone_checksums][💎stone_checksums]. Be sure the gem you install hasn’t been tampered with
114
+ by following the instructions below.
115
+
116
+ Add my public key (if you haven’t already, expires 2045-04-29) as a trusted certificate:
117
+
118
+ ```console
119
+ gem cert --add <(curl -Ls https://raw.github.com/galtzo-floss/certs/main/pboling.pem)
120
+ ```
121
+
122
+ You only need to do that once. Then proceed to install with:
123
+
124
+ ```console
125
+ gem install rspec-pending_for -P HighSecurity
126
+ ```
127
+
128
+ The `HighSecurity` trust profile will verify signed gems, and not allow the installation of unsigned dependencies.
129
+
130
+ If you want to up your security game full-time:
131
+
132
+ ```console
133
+ bundle config set --global trust-policy MediumSecurity
134
+ ```
135
+
136
+ `MediumSecurity` instead of `HighSecurity` is necessary if not all the gems you use are signed.
137
+
138
+ NOTE: Be prepared to track down certs for signed gems and add them the same way you added mine.
139
+
140
+ </details>
50
141
 
51
- The gem auto-configures itself for use in your Rspec suite. Just add this line to yous `spec_helper.rb`:
142
+ ## ⚙️ Configuration
143
+
144
+ The gem autoconfigures itself for use in your Rspec suite.
145
+ Just add this line to yous `spec_helper.rb`:
52
146
 
53
147
  ```ruby
54
- require 'rspec/pending_for'
148
+ require "rspec/pending_for"
55
149
  ```
56
150
 
151
+ ## 🔧 Basic Usage
152
+
57
153
  To mark a spec pending for a specific ruby engine, and/or versions:
58
154
 
59
155
  ```ruby
60
- it('blah is blah') do
61
- pending_for(:engine => 'ruby', :versions => '2.1.5')
62
- expect('blah').to eq 'blah'
156
+ it("blah is blah") do
157
+ pending_for(:engine => "ruby", :versions => "2.1.5")
158
+ expect("blah").to(eq("blah"))
63
159
  end
64
160
  ```
65
161
 
66
162
  To skip a spec for a specific ruby engine, and/or versions:
67
163
 
68
164
  ```ruby
69
- it('blah is blah') do
70
- skip_for(:engine => 'ruby', :versions => '2.1.5')
71
- expect('blah').to eq 'blah'
165
+ it("blah is blah") do
166
+ skip_for(:engine => "ruby", :versions => "2.1.5")
167
+ expect("blah").to(eq("blah"))
72
168
  end
73
169
  ```
74
170
 
75
171
  To mark a spec pending for all versions of a given engine:
76
172
 
77
173
  ```ruby
78
- it('blah is blah') do
79
- pending_for(:engine => 'jruby')
80
- expect('blah').to eq 'blah'
174
+ it("blah is blah") do
175
+ pending_for(:engine => "jruby")
176
+ expect("blah").to(eq("blah"))
81
177
  end
82
178
  ```
83
179
 
84
180
  To mark a spec pending for a custom reason (overriding the default message):
85
181
 
86
182
  ```ruby
87
- it('blah is blah') do
88
- pending_for(:engine => 'jruby', :reason => 'This does not work on JRuby')
89
- expect('blah').to eq 'blah'
183
+ it("blah is blah") do
184
+ pending_for(:engine => "jruby", :reason => "This does not work on JRuby")
185
+ expect("blah").to(eq("blah"))
90
186
  end
91
187
  ```
92
188
 
93
189
  To mark a spec pending or skipped for multiple engines and versions, just what you would expect:
94
190
 
95
191
  ```ruby
96
- it('blah is blah') do
97
- skip_for(:engine => 'jruby', :reason => 'This does not work on JRuby so skipping for now') # All JRuby versions will be skipped
98
- pending_for(:engine => 'rbx', :reason => 'This does not work on Rubinius so pending for now') # All rbx versions will be pending
99
- pending_for(:engine => 'ruby', :versions => %w(1.9.3 2.0.0 2.1.0)) # uses the default message
100
- expect('blah').to eq 'blah'
192
+ it("blah is blah") do
193
+ skip_for(:engine => "jruby", :reason => "This does not work on JRuby so skipping for now") # All JRuby versions will be skipped
194
+ pending_for(:engine => "rbx", :reason => "This does not work on Rubinius so pending for now") # All rbx versions will be pending
195
+ pending_for(:engine => "ruby", :versions => %w(1.9.3 2.0.0 2.1.0)) # uses the default message
196
+ expect("blah").to(eq("blah"))
101
197
  end
102
198
  ```
103
199
 
200
+ ### Environment Variables
104
201
 
105
- ## Development
202
+ Below are the primary environment variables recognized by rspec-pending_for (and its integrated tools). Unless otherwise noted, set boolean values to the string "true" to enable.
106
203
 
107
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
204
+ General/runtime
205
+ - DEBUG: Enable extra internal logging for this library (default: false)
206
+ - REQUIRE_BENCH: Enable `require_bench` to profile requires (default: false)
207
+ - CI: When set to true, adjusts default rake tasks toward CI behavior
108
208
 
109
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
209
+ Coverage (kettle-soup-cover / SimpleCov)
210
+ - K_SOUP_COV_DO: Enable coverage collection (default: true in .envrc)
211
+ - K_SOUP_COV_FORMATTERS: Comma-separated list of formatters (html, xml, rcov, lcov, json, tty)
212
+ - K_SOUP_COV_MIN_LINE: Minimum line coverage threshold (integer, e.g., 100)
213
+ - K_SOUP_COV_MIN_BRANCH: Minimum branch coverage threshold (integer, e.g., 100)
214
+ - K_SOUP_COV_MIN_HARD: Fail the run if thresholds are not met (true/false)
215
+ - K_SOUP_COV_MULTI_FORMATTERS: Enable multiple formatters at once (true/false)
216
+ - K_SOUP_COV_OPEN_BIN: Path to browser opener for HTML (empty disables auto-open)
217
+ - MAX_ROWS: Limit console output rows for simplecov-console (e.g., 1)
218
+ Tip: When running a single spec file locally, you may want `K_SOUP_COV_MIN_HARD=false` to avoid failing thresholds for a partial run.
110
219
 
220
+ GitHub API and CI helpers
221
+ - GITHUB_TOKEN or GH_TOKEN: Token used by `ci:act` and release workflow checks to query GitHub Actions status at higher rate limits
111
222
 
112
- ## Authors
223
+ Releasing and signing
224
+ - SKIP_GEM_SIGNING: If set, skip gem signing during build/release
225
+ - GEM_CERT_USER: Username for selecting your public cert in `certs/<USER>.pem` (defaults to $USER)
226
+ - SOURCE_DATE_EPOCH: Reproducible build timestamp. `kettle-release` will set this automatically for the session.
113
227
 
114
- [Peter H. Boling][peterboling] of [Rails Bling][railsbling] is the author.
228
+ Git hooks and commit message helpers (exe/kettle-commit-msg)
229
+ - GIT_HOOK_BRANCH_VALIDATE: Branch name validation mode (e.g., `jira`) or `false` to disable
230
+ - GIT_HOOK_FOOTER_APPEND: Append a footer to commit messages when goalie allows (true/false)
231
+ - GIT_HOOK_FOOTER_SENTINEL: Required when footer append is enabled — a unique first-line sentinel to prevent duplicates
232
+ - GIT_HOOK_FOOTER_APPEND_DEBUG: Extra debug output in the footer template (true/false)
115
233
 
116
- ## Contributors
234
+ For a quick starting point, this repository’s `.envrc` shows sane defaults, and `.env.local` can override them locally.
117
235
 
118
- See the [Network View](https://github.com/pboling/rspec-pending_for/network) and the [CHANGELOG](https://github.com/pboling/rspec-pending_for/blob/master/CHANGELOG.md)
236
+ ## 🦷 FLOSS Funding
119
237
 
120
- ## Contributing
238
+ While galtzo-floss tools are free software and will always be, the project would benefit immensely from some funding.
239
+ Raising a monthly budget of... "dollars" would make the project more sustainable.
121
240
 
122
- 1. Fork it
123
- 2. Create your feature branch (`git checkout -b my-new-feature`)
124
- 3. Commit your changes (`git commit -am 'Added some feature'`)
125
- 4. Push to the branch (`git push origin my-new-feature`)
126
- 5. Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
127
- 6. Create new Pull Request
241
+ We welcome both individual and corporate sponsors! We also offer a
242
+ wide array of funding channels to account for your preferences
243
+ (although currently [Open Collective][🖇osc] is our preferred funding platform).
128
244
 
129
- Bug reports and pull requests are welcome on GitHub at https://github.com/pboling/rspec-pending_for. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
245
+ **If you're working in a company that's making significant use of galtzo-floss tools we'd
246
+ appreciate it if you suggest to your company to become a galtzo-floss sponsor.**
130
247
 
131
- ## Code of Conduct
248
+ You can support the development of galtzo-floss tools via
249
+ [GitHub Sponsors][🖇sponsor],
250
+ [Liberapay][⛳liberapay],
251
+ [PayPal][🖇paypal],
252
+ [Open Collective][🖇osc]
253
+ and [Tidelift][🏙️entsup-tidelift].
132
254
 
133
- Everyone interacting in the Rspec::PendingFor project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/pboling/rspec-pending_for/blob/master/CODE_OF_CONDUCT.md).
255
+ | 📍 NOTE |
256
+ |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
257
+ | If doing a sponsorship in the form of donation is problematic for your company <br/> from an accounting standpoint, we'd recommend the use of Tidelift, <br/> where you can get a support-like subscription instead. |
134
258
 
135
- ## Versioning
259
+ ### Open Collective for Individuals
136
260
 
137
- This library aims to adhere to [Semantic Versioning 2.0.0][semver].
138
- Violations of this scheme should be reported as bugs. Specifically,
139
- if a minor or patch version is released that breaks backward
140
- compatibility, a new version should be immediately released that
141
- restores compatibility. Breaking changes to the public API will
142
- only be introduced with new major versions.
261
+ <!-- OPENCOLLECTIVE-INDIVIDUALS:START -->
262
+ No backers yet. Be the first!
263
+ <!-- OPENCOLLECTIVE-INDIVIDUALS:END -->
143
264
 
144
- As a result of this policy, you can (and should) specify a
145
- dependency on this gem using the [Pessimistic Version Constraint][pvc] with two digits of precision.
265
+ Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/galtzo-floss#backer)]
146
266
 
147
- For example:
267
+ ### Open Collective for Organizations
268
+
269
+ <!-- OPENCOLLECTIVE-ORGANIZATIONS:START -->
270
+ No sponsors yet. Be the first!
271
+ <!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
272
+
273
+ Become a sponsor and get your logo on our README on GitHub with a link to your site. [[Become a sponsor](https://opencollective.com/galtzo-floss#sponsor)]
274
+
275
+ ### Another way to support open-source
276
+
277
+ > How wonderful it is that nobody need wait a single moment before starting to improve the world.<br/>
278
+ >—Anne Frank
279
+
280
+ I’m driven by a passion to foster a thriving open-source community – a space where people can tackle complex problems, no matter how small. Revitalizing libraries that have fallen into disrepair, and building new libraries focused on solving real-world challenges, are my passions — totaling 79 hours of FLOSS coding over just the past seven days, a pretty regular week for me. I was recently affected by layoffs, and the tech jobs market is unwelcoming. I’m reaching out here because your support would significantly aid my efforts to provide for my family, and my farm (11 🐔 chickens, 2 🐶 dogs, 3 🐰 rabbits, 8 🐈‍ cats).
281
+
282
+ If you work at a company that uses my work, please encourage them to support me as a corporate sponsor. My work on gems you use might show up in `bundle fund`.
283
+
284
+ I’m developing a new library, [floss_funding][🖇floss-funding-gem], designed to empower open-source developers like myself to get paid for the work we do, in a sustainable way. Please give it a look.
285
+
286
+ **[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
287
+
288
+ [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS or refugee efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS or refugee efforts using Patreon][🖇patreon-img]][🖇patreon]
289
+
290
+ ## 🔐 Security
291
+
292
+ See [SECURITY.md][🔐security].
293
+
294
+ ## 🤝 Contributing
295
+
296
+ If you need some ideas of where to help, you could work on adding more code coverage,
297
+ or if it is already 💯 (see [below](#code-coverage)) check [reek](REEK), [issues][🤝gh-issues], or [PRs][🤝gh-pulls],
298
+ or use the gem and think about how it could be better.
299
+
300
+ We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
301
+
302
+ See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
148
303
 
149
- For example in a `Gemfile`:
304
+ ### 🚀 Release Instructions
150
305
 
151
- gem 'rspec-pending_for', '~> 0.1', group: :test
306
+ See [CONTRIBUTING.md][🤝contributing].
152
307
 
153
- or in a `gemspec`
308
+ ### Code Coverage
154
309
 
155
- spec.add_dependency 'rspec-pending_for', '~> 0.1'
310
+ [![Coverage Graph][🔑codecov-g]][🔑codecov]
156
311
 
157
- ## Legal
312
+ [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls]
158
313
 
159
- * MIT License - See [LICENSE][license] file in this project [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
160
- * Copyright (c) 2015 - 2018 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
314
+ [![QLTY Test Coverage][🔑qlty-covi]][🔑qlty-cov]
315
+
316
+ ### 🪇 Code of Conduct
317
+
318
+ Everyone interacting with this project's codebases, issue trackers,
319
+ chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct].
320
+
321
+ ## 🌈 Contributors
322
+
323
+ [![Contributors][🖐contributors-img]][🖐contributors]
324
+
325
+ Made with [contributors-img][🖐contrib-rocks].
326
+
327
+ Also see GitLab Contributors: [https://gitlab.com/galtzo-floss/rspec-pending_for/-/graphs/main][🚎contributors-gl]
328
+
329
+ <details>
330
+ <summary>⭐️ Star History</summary>
331
+
332
+ <a href="https://star-history.com/#galtzo-floss/rspec-pending_for&Date">
333
+ <picture>
334
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=galtzo-floss/rspec-pending_for&type=Date&theme=dark" />
335
+ <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=galtzo-floss/rspec-pending_for&type=Date" />
336
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=galtzo-floss/rspec-pending_for&type=Date" />
337
+ </picture>
338
+ </a>
339
+
340
+ </details>
341
+
342
+ ## 📌 Versioning
343
+
344
+ This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
345
+ Violations of this scheme should be reported as bugs.
346
+ Specifically, if a minor or patch version is released that breaks backward compatibility,
347
+ a new version should be immediately released that restores compatibility.
348
+ Breaking changes to the public API will only be introduced with new major versions.
349
+
350
+ > dropping support for a platform is both obviously and objectively a breaking change <br/>
351
+ >—Jordan Harband ([@ljharb](https://github.com/ljharb), maintainer of SemVer) [in SemVer issue 716][📌semver-breaking]
352
+
353
+ I understand that policy doesn't work universally ("exceptions to every rule!"),
354
+ but it is the policy here.
355
+ As such, in many cases it is good to specify a dependency on this library using
356
+ the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
357
+
358
+ For example:
359
+
360
+ ```ruby
361
+ spec.add_dependency("rspec-pending_for", "~> 1.0")
362
+ ```
161
363
 
162
- [semver]: http://semver.org/
163
- [pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
164
- [documentation]: http://rdoc.info/github/pboling/rspec-pending_for/frames
165
- [homepage]: https://github.com/pboling/rspec-pending_for
166
- [blogpage]: http://www.railsbling.com/tags/rspec-pending_for/
167
- [license]: LICENSE
168
- [railsbling]: http://www.railsbling.com
169
- [peterboling]: https://about.me/peter.boling
170
- [refugees]: https://www.crowdrise.com/helprefugeeswithhopefortomorrowliberia/fundraiser/peterboling
171
- [gplus]: https://plus.google.com/+PeterBoling/posts
172
- [topcoder]: https://www.topcoder.com/members/pboling/
173
- [angellist]: https://angel.co/peter-boling
174
- [coderwall]: http://coderwall.com/pboling
175
- [twitter]: http://twitter.com/galtzo
364
+ <details>
365
+ <summary>📌 Is "Platform Support" part of the public API? More details inside.</summary>
366
+
367
+ SemVer should, IMO, but doesn't explicitly, say that dropping support for specific Platforms
368
+ is a *breaking change* to an API.
369
+ It is obvious to many, but not all, and since the spec is silent, the bike shedding is endless.
370
+
371
+ To get a better understanding of how SemVer is intended to work over a project's lifetime,
372
+ read this article from the creator of SemVer:
373
+
374
+ - ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
375
+
376
+ </details>
377
+
378
+ See [CHANGELOG.md][📌changelog] for a list of releases.
379
+
380
+ ## 📄 License
381
+
382
+ The gem is available as open source under the terms of
383
+ the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
384
+ See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
385
+
386
+ ### © Copyright
387
+
388
+ <ul>
389
+ <li>
390
+ Copyright (c) 2023, 2025 Peter H. Boling, of
391
+ <a href="https://discord.gg/3qme4XHNKN">
392
+ Galtzo.com
393
+ <picture>
394
+ <img src="https://logos.galtzo.com/assets/images/galtzo-floss/avatar-128px-blank.svg" alt="Galtzo.com Logo (Wordless) by Aboling0, CC BY-SA 4.0" width="24">
395
+ </picture>
396
+ </a>, and rspec-pending_for contributors.
397
+ </li>
398
+ </ul>
399
+
400
+ ## 🤑 A request for help
401
+
402
+ Maintainers have teeth, and need to pay their dentists.
403
+ After getting laid off in an RIF in March, and filled with many dozens of rejections,
404
+ I'm now spending ~80 hours a week building open source tools.
405
+ I'm hoping to be able to pay for my kids' health insurance this month,
406
+ so if you value the work I am doing, I need your support.
407
+ Please consider sponsoring me or the project.
408
+
409
+ [![Sponsor galtzo-floss/rspec-pending_for on Open Source Collective][🖇osc-all-bottom-img]][🖇osc] 💌 [![Sponsor me on GitHub Sponsors][🖇sponsor-bottom-img]][🖇sponsor] 💌 [![Sponsor me on Liberapay][⛳liberapay-bottom-img]][⛳liberapay-img] 💌 [![Donate on PayPal][🖇paypal-bottom-img]][🖇paypal-img]
410
+
411
+ To say "thanks for maintaining such a great tool" 👇️ Join the Discord or ☝️ send money.
412
+
413
+ To join the community or get help 👇️ Join the Discord.
414
+
415
+ [![Live Chat on Discord][✉️discord-invite-img]][✉️discord-invite]
416
+
417
+ ### Please give the project a star ⭐ ♥.
418
+
419
+ Thanks for RTFM. ☺️
420
+
421
+ [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611
422
+ [⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
423
+ [⛳liberapay]: https://liberapay.com/pboling/donate
424
+ [🖇osc-all-img]: https://img.shields.io/opencollective/all/galtzo-floss
425
+ [🖇osc-sponsors-img]: https://img.shields.io/opencollective/sponsors/galtzo-floss
426
+ [🖇osc-backers-img]: https://img.shields.io/opencollective/backers/galtzo-floss
427
+ [🖇osc-all-bottom-img]: https://img.shields.io/opencollective/all/galtzo-floss?style=for-the-badge
428
+ [🖇osc-sponsors-bottom-img]: https://img.shields.io/opencollective/sponsors/galtzo-floss?style=for-the-badge
429
+ [🖇osc-backers-bottom-img]: https://img.shields.io/opencollective/backers/galtzo-floss?style=for-the-badge
430
+ [🖇osc]: https://opencollective.com/galtzo-floss
431
+ [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
432
+ [🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
433
+ [🖇sponsor]: https://github.com/sponsors/pboling
434
+ [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg
435
+ [🖇polar]: https://polar.sh/pboling
436
+ [🖇kofi-img]: https://img.shields.io/badge/ko--fi-✓-a51611.svg
437
+ [🖇kofi]: https://ko-fi.com/O5O86SNP4
438
+ [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg
439
+ [🖇patreon]: https://patreon.com/galtzo
440
+ [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-✓-a51611.svg?style=flat
441
+ [🖇buyme-img]: https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20latte&emoji=&slug=pboling&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff
442
+ [🖇buyme]: https://www.buymeacoffee.com/pboling
443
+ [🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
444
+ [🖇paypal-bottom-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=for-the-badge&logo=paypal&color=0A0A0A
445
+ [🖇paypal]: https://www.paypal.com/paypalme/peterboling
446
+ [🖇floss-funding.dev]: https://floss-funding.dev
447
+ [🖇floss-funding-gem]: https://github.com/galtzo-floss/floss_funding
448
+ [✉️discord-invite]: https://discord.gg/3qme4XHNKN
449
+ [✉️discord-invite-img]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge
450
+
451
+ [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
452
+ [⛳️gem-namespace]: https://github.com/galtzo-floss/rspec-pending_for
453
+ [⛳️namespace-img]: https://img.shields.io/badge/namespace-Rspec%3A%3APendingFor-3C2D2D.svg?style=square&logo=ruby&logoColor=white
454
+ [⛳️gem-name]: https://rubygems.org/gems/rspec-pending_for
455
+ [⛳️name-img]: https://img.shields.io/badge/name-rspec--pending__for-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
456
+ [🚂maint-blog]: http://www.railsbling.com/tags/rspec-pending_for
457
+ [🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
458
+ [🚂maint-contact]: http://www.railsbling.com/contact
459
+ [🚂maint-contact-img]: https://img.shields.io/badge/Contact-Maintainer-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
460
+ [💖🖇linkedin]: http://www.linkedin.com/in/peterboling
461
+ [💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
462
+ [💖✌️wellfound]: https://wellfound.com/u/peter-boling/u/peter-boling
463
+ [💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
464
+ [💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
465
+ [💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
466
+ [💖🐘ruby-mast]: https://ruby.social/@galtzo
467
+ [💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https%3A%2F%2Fruby.social&style=flat&logo=mastodon&label=Ruby%20%40galtzo
468
+ [💖🦋bluesky]: https://bsky.app/profile/galtzo.com
469
+ [💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.com-0285FF?style=flat&logo=bluesky&logoColor=white
470
+ [💖🌳linktree]: https://linktr.ee/galtzo
471
+ [💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
472
+ [💖💁🏼‍♂️devto]: https://dev.to/galtzo
473
+ [💖💁🏼‍♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
474
+ [💖💁🏼‍♂️aboutme]: https://about.me/peter.boling
475
+ [💖💁🏼‍♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
476
+ [💖🧊berg]: https://codeberg.org/pboling
477
+ [💖🐙hub]: https://github.org/pboling
478
+ [💖🛖hut]: https://sr.ht/~galtzo/
479
+ [💖🧪lab]: https://gitlab.com/pboling
480
+ [👨🏼‍🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
481
+ [👨🏼‍🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
482
+ [👨🏼‍🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
483
+ [👨🏼‍🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
484
+ [🏙️entsup-tidelift]: https://tidelift.com/subscription/pkg/rubygems-rspec-pending_for?utm_source=rubygems-rspec-pending_for&utm_medium=referral&utm_campaign=readme
485
+ [🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
486
+ [🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
487
+ [💁🏼‍♂️peterboling]: http://www.peterboling.com
488
+ [🚂railsbling]: http://www.railsbling.com
489
+ [📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
490
+ [📜src-gl]: https://gitlab.com/galtzo-floss/rspec-pending_for/
491
+ [📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
492
+ [📜src-cb]: https://codeberg.org/galtzo-floss/rspec-pending_for
493
+ [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
494
+ [📜src-gh]: https://github.com/galtzo-floss/rspec-pending_for
495
+ [📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
496
+ [📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
497
+ [📜wiki]: https://gitlab.com/galtzo-floss/rspec-pending_for/-/wikis/home
498
+ [📜wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=Wiki&logoColor=white
499
+ [👽dl-rank]: https://rubygems.org/gems/rspec-pending_for
500
+ [👽dl-ranki]: https://img.shields.io/gem/rd/rspec-pending_for.svg
501
+ [👽oss-help]: https://www.codetriage.com/galtzo-floss/rspec-pending_for
502
+ [👽oss-helpi]: https://www.codetriage.com/galtzo-floss/rspec-pending_for/badges/users.svg
503
+ [👽version]: https://rubygems.org/gems/rspec-pending_for
504
+ [👽versioni]: https://img.shields.io/gem/v/rspec-pending_for.svg
505
+ [🔑qlty-mnt]: https://qlty.sh/gh/galtzo-floss/projects/rspec-pending_for
506
+ [🔑qlty-mnti]: https://qlty.sh/gh/galtzo-floss/projects/rspec-pending_for/maintainability.svg
507
+ [🔑qlty-cov]: https://qlty.sh/gh/galtzo-floss/projects/rspec-pending_for/metrics/code?sort=coverageRating
508
+ [🔑qlty-covi]: https://qlty.sh/gh/galtzo-floss/projects/rspec-pending_for/coverage.svg
509
+ [🔑codecov]: https://codecov.io/gh/galtzo-floss/rspec-pending_for
510
+ [🔑codecovi]: https://codecov.io/gh/galtzo-floss/rspec-pending_for/graph/badge.svg
511
+ [🔑coveralls]: https://coveralls.io/github/galtzo-floss/rspec-pending_for?branch=main
512
+ [🔑coveralls-img]: https://coveralls.io/repos/github/galtzo-floss/rspec-pending_for/badge.svg?branch=main
513
+ [🖐codeQL]: https://github.com/galtzo-floss/rspec-pending_for/security/code-scanning
514
+ [🖐codeQL-img]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/codeql-analysis.yml/badge.svg
515
+ [🚎1-an-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/ancient.yml
516
+ [🚎1-an-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/ancient.yml/badge.svg
517
+ [🚎2-cov-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/coverage.yml
518
+ [🚎2-cov-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/coverage.yml/badge.svg
519
+ [🚎3-hd-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/heads.yml
520
+ [🚎3-hd-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/heads.yml/badge.svg
521
+ [🚎4-lg-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/legacy.yml
522
+ [🚎4-lg-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/legacy.yml/badge.svg
523
+ [🚎5-st-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/style.yml
524
+ [🚎5-st-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/style.yml/badge.svg
525
+ [🚎6-s-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/supported.yml
526
+ [🚎6-s-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/supported.yml/badge.svg
527
+ [🚎7-us-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/unsupported.yml
528
+ [🚎7-us-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/unsupported.yml/badge.svg
529
+ [🚎8-ho-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/hoary.yml
530
+ [🚎8-ho-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/hoary.yml/badge.svg
531
+ [🚎9-t-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/truffle.yml
532
+ [🚎9-t-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/truffle.yml/badge.svg
533
+ [🚎10-j-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/jruby.yml
534
+ [🚎10-j-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/jruby.yml/badge.svg
535
+ [🚎11-c-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/current.yml
536
+ [🚎11-c-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/current.yml/badge.svg
537
+ [🚎13-🔒️-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/locked_deps.yml
538
+ [🚎13-🔒️-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/locked_deps.yml/badge.svg
539
+ [🚎14-🔓️-wf]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/unlocked_deps.yml
540
+ [🚎14-🔓️-wfi]: https://github.com/galtzo-floss/rspec-pending_for/actions/workflows/unlocked_deps.yml/badge.svg
541
+ [💎ruby-1.9i]: https://img.shields.io/badge/Ruby-1.9_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=white
542
+ [💎ruby-2.0i]: https://img.shields.io/badge/Ruby-2.0_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=white
543
+ [💎ruby-2.1i]: https://img.shields.io/badge/Ruby-2.1_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=white
544
+ [💎ruby-2.2i]: https://img.shields.io/badge/Ruby-2.2_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=white
545
+ [💎ruby-2.3i]: https://img.shields.io/badge/Ruby-2.3-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
546
+ [💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
547
+ [💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
548
+ [💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
549
+ [💎ruby-2.7i]: https://img.shields.io/badge/Ruby-2.7-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
550
+ [💎ruby-3.0i]: https://img.shields.io/badge/Ruby-3.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
551
+ [💎ruby-3.1i]: https://img.shields.io/badge/Ruby-3.1-CC342D?style=for-the-badge&logo=ruby&logoColor=white
552
+ [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
553
+ [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
554
+ [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
555
+ [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
556
+ [💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.3_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=pink
557
+ [💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
558
+ [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
559
+ [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
560
+ [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
561
+ [💎jruby-9.1i]: https://img.shields.io/badge/JRuby-9.1_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
562
+ [💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
563
+ [💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
564
+ [💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
565
+ [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
566
+ [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
567
+ [🤝gh-issues]: https://github.com/galtzo-floss/rspec-pending_for/issues
568
+ [🤝gh-pulls]: https://github.com/galtzo-floss/rspec-pending_for/pulls
569
+ [🤝gl-issues]: https://gitlab.com/galtzo-floss/rspec-pending_for/-/issues
570
+ [🤝gl-pulls]: https://gitlab.com/galtzo-floss/rspec-pending_for/-/merge_requests
571
+ [🤝cb-issues]: https://codeberg.org/galtzo-floss/rspec-pending_for/issues
572
+ [🤝cb-pulls]: https://codeberg.org/galtzo-floss/rspec-pending_for/pulls
573
+ [🤝cb-donate]: https://donate.codeberg.org/
574
+ [🤝contributing]: CONTRIBUTING.md
575
+ [🔑codecov-g]: https://codecov.io/gh/galtzo-floss/rspec-pending_for/graphs/tree.svg
576
+ [🖐contrib-rocks]: https://contrib.rocks
577
+ [🖐contributors]: https://github.com/galtzo-floss/rspec-pending_for/graphs/contributors
578
+ [🖐contributors-img]: https://contrib.rocks/image?repo=galtzo-floss/rspec-pending_for
579
+ [🚎contributors-gl]: https://gitlab.com/galtzo-floss/rspec-pending_for/-/graphs/main
580
+ [🪇conduct]: CODE_OF_CONDUCT.md
581
+ [🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
582
+ [📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
583
+ [📌semver]: https://semver.org/spec/v2.0.0.html
584
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
585
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
586
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
587
+ [📌changelog]: CHANGELOG.md
588
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
589
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
590
+ [📌gitmoji]:https://gitmoji.dev
591
+ [📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20😜%20😍-34495e.svg?style=flat-square
592
+ [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
593
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.130-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
594
+ [🔐security]: SECURITY.md
595
+ [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
596
+ [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
597
+ [📄license]: LICENSE.txt
598
+ [📄license-ref]: https://opensource.org/licenses/MIT
599
+ [📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
600
+ [📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
601
+ [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
602
+ [🚎yard-current]: http://rubydoc.info/gems/rspec-pending_for
603
+ [🚎yard-head]: https://rspec-stubbed-env.galtzo.com
604
+ [💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
605
+ [💎SHA_checksums]: https://gitlab.com/galtzo-floss/rspec-pending_for/-/tree/main/checksums
606
+ [💎rlts]: https://github.com/rubocop-lts/rubocop-lts
607
+ [💎rlts-img]: https://img.shields.io/badge/code_style_%26_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
608
+ [💎appraisal2]: https://github.com/appraisal-rb/appraisal2
609
+ [💎appraisal2-img]: https://img.shields.io/badge/appraised_by-appraisal2-34495e.svg?plastic&logo=ruby&logoColor=white
610
+ [💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/