rspec-pending_for 0.1.15 → 0.1.17

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,391 @@
1
1
  # Rspec::PendingFor
2
2
 
3
+ [![Version][👽versioni]][👽version]
4
+ [![License: MIT][📄license-img]][📄license-ref]
5
+ [![Downloads Rank][👽dl-ranki]][👽dl-rank]
6
+ [![Open Source Helpers][👽oss-helpi]][👽oss-help]
7
+ [![Depfu][🔑depfui♻️]][🔑depfu]
8
+ [![CodeCov Test Coverage][🔑codecovi♻️]][🔑codecov]
9
+ [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls]
10
+ [![CodeClimate Test Coverage][🔑cc-covi♻️]][🔑cc-cov]
11
+ [![Maintainability][🔑cc-mnti♻️]][🔑cc-mnt]
12
+ [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf]
13
+ [![CI Current][🚎11-c-wfi]][🚎11-c-wf]
14
+ [![CI Truffle Ruby][🚎9-t-wfi]][🚎9-t-wf]
15
+ [![CI JRuby][🚎10-j-wfi]][🚎10-j-wf]
16
+ [![CI Supported][🚎6-s-wfi]][🚎6-s-wf]
17
+ [![CI Legacy][🚎4-lg-wfi]][🚎4-lg-wf]
18
+ [![CI Unsupported][🚎7-us-wfi]][🚎7-us-wf]
19
+ [![CI Ancient][🚎1-an-wfi]][🚎1-an-wf]
20
+ [![CI Hoary][🚎8-ho-wfi]][🚎8-ho-wf]
21
+ [![CI Fusty][🚎12-fu-wfi]][🚎12-fu-wf]
22
+ [![CI Test Coverage][🚎2-cov-wfi]][🚎2-cov-wf]
23
+ [![CI Style][🚎5-st-wfi]][🚎5-st-wf]
24
+
25
+ ---
26
+
27
+ [![Liberapay Patrons][⛳liberapay-img]][⛳liberapay]
28
+ [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor]
29
+ [![Buy me a coffee][🖇buyme-small-img]][🖇buyme]
30
+ [![Polar Shield][🖇polar-img]][🖇polar]
31
+ [![Donate to my FLOSS or refugee efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
32
+ [![Donate to my FLOSS or refugee efforts using Patreon][🖇patreon-img]][🖇patreon]
33
+
3
34
  Easiest to just show you:
4
35
 
5
36
  ```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'
37
+ it("blah is blah") do
38
+ pending_for(:engine => "rbx")
39
+ pending_for(:engine => "truffleruby")
40
+ pending_for(:engine => "ruby", :versions => "2.1.5")
41
+ pending_for(:engine => "jruby", :versions => "2.2.2", :reason => "due to a bug in Ruby")
42
+ pending_for(:engine => "ruby", :versions => "2.0.0", :reason => "because I don't have the time")
43
+ expect("blah").to(eq("blah"))
12
44
  end
13
45
  ```
14
46
 
15
- Requires Ruby 1.9+ (any engine)
16
-
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) |
47
+ I expect the current release of this gem to be compatible with Ruby 1.8.7+,
48
+ but it is only tested on CI against Ruby 1.9.3+,
49
+ due to the inherent limitations of GitHub Actions.
50
+
51
+ ## Info you can shake a stick at
52
+
53
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
54
+ |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
55
+ | Works with JRuby | [![JRuby 9.1 Compat][💎jruby-9.1i]][🚎10-j-wf] [![JRuby 9.2 Compat][💎jruby-9.2i]][🚎10-j-wf] [![JRuby 9.3 Compat][💎jruby-9.3i]][🚎10-j-wf] [![JRuby 9.4 Compat][💎jruby-c-i]][🚎11-c-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf] |
56
+ | Works with Truffle Ruby | [![Truffle Ruby 22.3 Compat][💎truby-22.3i]][🚎9-t-wf] [![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] [![Truffle Ruby HEAD Compat][💎truby-headi]][🚎3-hd-wf] |
57
+ | 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] |
58
+ | Works with MRI Ruby 2 | [![Ruby 2.0 Compat][💎ruby-2.0i]][🚎8-ho-wf] [![Ruby 2.1 Compat][💎ruby-2.1i]][🚎8-ho-wf] [![Ruby 2.2 Compat][💎ruby-2.2i]][🚎8-ho-wf] [![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] |
59
+ | Works with MRI Ruby 1 | [![Ruby 1.9 Compat][💎ruby-1.9i]][🚎12-fu-wf] |
60
+ | Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
61
+ | Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![HEAD on RubyDoc.info][📜docs-head-rd-img]][🚎yard-head] [![BDFL Blog][🚂bdfl-blog-img]][🚂bdfl-blog] [![Wiki][📜wiki-img]][📜wiki] |
62
+ | Compliance | [![License: MIT][📄license-img]][📄license-ref] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] |
63
+ | Expert 1:1 Support | [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] `or` [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
64
+ | Enterprise Support | [![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]<br/>💡Subscribe for support guarantees covering _all_ FLOSS dependencies!<br/>💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]!<br/>💡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! |
65
+ | Comrade BDFL 🎖️ | [![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 BDFL][🚂bdfl-contact-img]][🚂bdfl-contact] [![My technical writing][💖💁🏼‍♂️devto-img]][💖💁🏼‍♂️devto] |
66
+ | `...` 💖 | [![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] |
32
67
 
33
68
  ## Installation
34
69
 
35
- Add this line to your application's Gemfile:
36
-
37
- ```ruby
38
- gem 'rspec-pending_for'
39
- ```
70
+ Install the gem and add to the application's Gemfile by executing:
40
71
 
41
- And then execute:
72
+ $ bundle add rspec-pending_for
42
73
 
43
- $ bundle
44
-
45
- Or install it yourself as:
74
+ If bundler is not being used to manage dependencies, install the gem by executing:
46
75
 
47
76
  $ gem install rspec-pending_for
48
77
 
49
78
  ## Usage
50
79
 
51
- The gem auto-configures itself for use in your Rspec suite. Just add this line to yous `spec_helper.rb`:
80
+ The gem autoconfigures itself for use in your Rspec suite. Just add this line to yous `spec_helper.rb`:
52
81
 
53
82
  ```ruby
54
- require 'rspec/pending_for'
83
+ require "rspec/pending_for"
55
84
  ```
56
85
 
57
86
  To mark a spec pending for a specific ruby engine, and/or versions:
58
87
 
59
88
  ```ruby
60
- it('blah is blah') do
61
- pending_for(:engine => 'ruby', :versions => '2.1.5')
62
- expect('blah').to eq 'blah'
89
+ it("blah is blah") do
90
+ pending_for(:engine => "ruby", :versions => "2.1.5")
91
+ expect("blah").to(eq("blah"))
63
92
  end
64
93
  ```
65
94
 
66
95
  To skip a spec for a specific ruby engine, and/or versions:
67
96
 
68
97
  ```ruby
69
- it('blah is blah') do
70
- skip_for(:engine => 'ruby', :versions => '2.1.5')
71
- expect('blah').to eq 'blah'
98
+ it("blah is blah") do
99
+ skip_for(:engine => "ruby", :versions => "2.1.5")
100
+ expect("blah").to(eq("blah"))
72
101
  end
73
102
  ```
74
103
 
75
104
  To mark a spec pending for all versions of a given engine:
76
105
 
77
106
  ```ruby
78
- it('blah is blah') do
79
- pending_for(:engine => 'jruby')
80
- expect('blah').to eq 'blah'
107
+ it("blah is blah") do
108
+ pending_for(:engine => "jruby")
109
+ expect("blah").to(eq("blah"))
81
110
  end
82
111
  ```
83
112
 
84
113
  To mark a spec pending for a custom reason (overriding the default message):
85
114
 
86
115
  ```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'
116
+ it("blah is blah") do
117
+ pending_for(:engine => "jruby", :reason => "This does not work on JRuby")
118
+ expect("blah").to(eq("blah"))
90
119
  end
91
120
  ```
92
121
 
93
122
  To mark a spec pending or skipped for multiple engines and versions, just what you would expect:
94
123
 
95
124
  ```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'
125
+ it("blah is blah") do
126
+ skip_for(:engine => "jruby", :reason => "This does not work on JRuby so skipping for now") # All JRuby versions will be skipped
127
+ pending_for(:engine => "rbx", :reason => "This does not work on Rubinius so pending for now") # All rbx versions will be pending
128
+ pending_for(:engine => "ruby", :versions => %w(1.9.3 2.0.0 2.1.0)) # uses the default message
129
+ expect("blah").to(eq("blah"))
101
130
  end
102
131
  ```
103
132
 
133
+ ## 🔐 Security
104
134
 
105
- ## Development
135
+ See [SECURITY.md][🔐security].
106
136
 
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.
137
+ ## 🤝 Contributing
108
138
 
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).
139
+ If you need some ideas of where to help, you could work on adding more code coverage,
140
+ or if it is already 💯 (see [below](#code-coverage)) then check [issues][🤝issues], or [PRs][🤝pulls],
141
+ or use the gem and think about how it could be better.
110
142
 
143
+ We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
111
144
 
112
- ## Authors
145
+ See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
113
146
 
114
- [Peter H. Boling][peterboling] of [Rails Bling][railsbling] is the author.
147
+ ### Code Coverage
115
148
 
116
- ## Contributors
149
+ [![Coverage Graph][🔑codecov-g♻️]][🔑codecov]
117
150
 
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)
151
+ ### 🪇 Code of Conduct
119
152
 
120
- ## Contributing
153
+ Everyone interacting in this project's codebases, issue trackers,
154
+ chat rooms and mailing lists is expected to follow the [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct].
121
155
 
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
156
+ ## 🌈 Contributors
128
157
 
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.
158
+ [![Contributors][🖐contributors-img]][🖐contributors]
130
159
 
131
- ## Code of Conduct
160
+ Made with [contributors-img][🖐contrib-rocks].
132
161
 
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).
162
+ Also see GitLab Contributors: [https://gitlab.com/pboling/rspec-pending_for/-/graphs/main][🚎contributors-gl]
134
163
 
135
- ## Versioning
164
+ ## ⭐️ Star History
136
165
 
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.
166
+ <a href="https://star-history.com/#pboling/rspec-pending_for&Date">
167
+ <picture>
168
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=pboling/rspec-pending_for&type=Date&theme=dark" />
169
+ <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=pboling/rspec-pending_for&type=Date" />
170
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=pboling/rspec-pending_for&type=Date" />
171
+ </picture>
172
+ </a>
143
173
 
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.
174
+ ## 📌 Versioning
146
175
 
147
- For example:
176
+ This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
177
+ Violations of this scheme should be reported as bugs.
178
+ Specifically, if a minor or patch version is released that breaks backward compatibility,
179
+ a new version should be immediately released that restores compatibility.
180
+ Breaking changes to the public API will only be introduced with new major versions.
181
+
182
+ ### 📌 Is "Platform Support" part of the public API?
148
183
 
149
- For example in a `Gemfile`:
184
+ Yes. But I'm obligated to include notes...
150
185
 
151
- gem 'rspec-pending_for', '~> 0.1', group: :test
186
+ SemVer should, but doesn't explicitly, say that dropping support for specific Platforms
187
+ is a *breaking change* to an API.
188
+ It is obvious to many, but not all, and since the spec is silent, the bike shedding is endless.
152
189
 
153
- or in a `gemspec`
190
+ > dropping support for a platform is both obviously and objectively a breaking change
154
191
 
155
- spec.add_dependency 'rspec-pending_for', '~> 0.1'
192
+ - Jordan Harband (@ljharb) [in SemVer issue 716][📌semver-breaking]
156
193
 
157
- ## Legal
194
+ To get a better understanding of how SemVer is intended to work over a project's lifetime,
195
+ read this article from the creator of SemVer:
158
196
 
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]
197
+ - ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
198
+
199
+ As a result of this policy, and the interpretive lens used by the maintainer,
200
+ you can (and should) specify a dependency on these libraries using
201
+ the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
202
+
203
+ For example:
204
+
205
+ ```ruby
206
+ spec.add_dependency("rspec-pending_for", "~> 0.1")
207
+ ```
161
208
 
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
209
+ See [CHANGELOG.md][📌changelog] for list of releases.
210
+
211
+ ## 📄 License
212
+
213
+ The gem is available as open source under the terms of
214
+ the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
215
+ See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
216
+
217
+ ### © Copyright
218
+
219
+ <p>
220
+ Copyright (c) 2015 - 2018, 2020 - 2022, 2025 Peter H. Boling,
221
+ <a href="https://railsbling.com">
222
+ RailsBling.com
223
+ <picture>
224
+ <img alt="Rails Bling" height="20" src="https://railsbling.com/images/logos/RailsBling-TrainLogo.svg" />
225
+ </picture>
226
+ </a>
227
+ </p>
228
+
229
+ ## 🤑 One more thing
230
+
231
+ You made it to the bottom of the page,
232
+ so perhaps you'll indulge me for another 20 seconds.
233
+ I maintain many dozens of gems, including this one,
234
+ because I want Ruby to be a great place for people to solve problems, big and small.
235
+ Please consider supporting my efforts via the giant yellow link below,
236
+ or one of the others at the head of this README.
237
+
238
+ [![Buy me a latte][🖇buyme-img]][🖇buyme]
239
+
240
+ [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
241
+ [⛳️gem-namespace]: https://github.com/pboling/rspec-pending_for/blob/main/lib/rspec-pending_for.rb
242
+ [⛳️namespace-img]: https://img.shields.io/badge/namespace-Rspec::PendingFor-brightgreen.svg?style=flat&logo=ruby&logoColor=white
243
+ [⛳️gem-name]: https://rubygems.org/gems/rspec-pending_for
244
+ [⛳️name-img]: https://img.shields.io/badge/name-rspec--pending__for-brightgreen.svg?style=flat&logo=rubygems&logoColor=red
245
+ [🚂bdfl-blog]: http://www.railsbling.com/tags/rspec-pending_for
246
+ [🚂bdfl-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
247
+ [🚂bdfl-contact]: http://www.railsbling.com/contact
248
+ [🚂bdfl-contact-img]: https://img.shields.io/badge/Contact-BDFL-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
249
+ [💖🖇linkedin]: http://www.linkedin.com/in/peterboling
250
+ [💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
251
+ [💖✌️wellfound]: https://angel.co/u/peter-boling
252
+ [💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
253
+ [💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
254
+ [💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
255
+ [💖🐘ruby-mast]: https://ruby.social/@galtzo
256
+ [💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https%3A%2F%2Fruby.social&style=flat&logo=mastodon&label=Ruby%20%40galtzo
257
+ [💖🦋bluesky]: https://galtzo.bsky.social
258
+ [💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.bsky.social-0285FF?style=flat&logo=bluesky&logoColor=white
259
+ [💖🌳linktree]: https://linktr.ee/galtzo
260
+ [💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
261
+ [💖💁🏼‍♂️devto]: https://dev.to/galtzo
262
+ [💖💁🏼‍♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
263
+ [💖💁🏼‍♂️aboutme]: https://about.me/peter.boling
264
+ [💖💁🏼‍♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
265
+ [👨🏼‍🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
266
+ [👨🏼‍🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
267
+ [👨🏼‍🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
268
+ [👨🏼‍🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
269
+ [🏙️entsup-tidelift]: https://tidelift.com/subscription
270
+ [🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
271
+ [🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
272
+ [💁🏼‍♂️peterboling]: http://www.peterboling.com
273
+ [🚂railsbling]: http://www.railsbling.com
274
+ [📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
275
+ [📜src-gl]: https://gitlab.com/pboling/rspec-pending_for/
276
+ [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
277
+ [📜src-gh]: https://github.com/pboling/rspec-pending_for
278
+ [📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
279
+ [📜docs-head-rd-img]: https://img.shields.io/badge/RubyDoc-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
280
+ [📜wiki]: https://gitlab.com/pboling/rspec-pending_for/-/wikis/home
281
+ [📜wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=Wiki&logoColor=white
282
+ [👽dl-rank]: https://rubygems.org/gems/rspec-pending_for
283
+ [👽dl-ranki]: https://img.shields.io/gem/rd/rspec-pending_for.svg
284
+ [👽oss-help]: https://www.codetriage.com/pboling/rspec-pending_for
285
+ [👽oss-helpi]: https://www.codetriage.com/pboling/rspec-pending_for/badges/users.svg
286
+ [👽version]: https://rubygems.org/gems/rspec-pending_for
287
+ [👽versioni]: https://img.shields.io/gem/v/rspec-pending_for.svg
288
+ [🔑cc-mnt]: https://codeclimate.com/github/pboling/rspec-pending_for/maintainability
289
+ [🔑cc-mnti♻️]: https://api.codeclimate.com/v1/badges/266bc0935f185153cce4/maintainability
290
+ [🔑cc-cov]: https://codeclimate.com/github/pboling/rspec-pending_for/test_coverage
291
+ [🔑cc-covi♻️]: https://api.codeclimate.com/v1/badges/266bc0935f185153cce4/test_coverage
292
+ [🔑codecov]: https://codecov.io/gh/pboling/rspec-pending_for
293
+ [🔑codecovi♻️]: https://codecov.io/gh/pboling/rspec-pending_for/branch/main/graph/badge.svg?token=cc6UdZCpAL
294
+ [🔑coveralls]: https://coveralls.io/github/pboling/rspec-pending_for?branch=main
295
+ [🔑coveralls-img]: https://coveralls.io/repos/github/pboling/rspec-pending_for/badge.svg?branch=main
296
+ [🔑depfu]: https://depfu.com/github/pboling/rspec-pending_for
297
+ [🔑depfui♻️]: https://badges.depfu.com/badges/79867e590f063376f40b031a1447c215/count.svg
298
+ [🖐codeQL]: https://github.com/pboling/rspec-pending_for/security/code-scanning
299
+ [🖐codeQL-img]: https://github.com/pboling/rspec-pending_for/actions/workflows/codeql-analysis.yml/badge.svg
300
+ [🚎1-an-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/ancient.yml
301
+ [🚎1-an-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/ancient.yml/badge.svg
302
+ [🚎2-cov-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/coverage.yml
303
+ [🚎2-cov-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/coverage.yml/badge.svg
304
+ [🚎3-hd-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/heads.yml
305
+ [🚎3-hd-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/heads.yml/badge.svg
306
+ [🚎4-lg-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/legacy.yml
307
+ [🚎4-lg-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/legacy.yml/badge.svg
308
+ [🚎5-st-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/style.yml
309
+ [🚎5-st-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/style.yml/badge.svg
310
+ [🚎6-s-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/supported.yml
311
+ [🚎6-s-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/supported.yml/badge.svg
312
+ [🚎7-us-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/unsupported.yml
313
+ [🚎7-us-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/unsupported.yml/badge.svg
314
+ [🚎8-ho-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/hoary.yml
315
+ [🚎8-ho-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/hoary.yml/badge.svg
316
+ [🚎9-t-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/truffle.yml
317
+ [🚎9-t-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/truffle.yml/badge.svg
318
+ [🚎10-j-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/jruby.yml
319
+ [🚎10-j-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/jruby.yml/badge.svg
320
+ [🚎11-c-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/current.yml
321
+ [🚎11-c-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/current.yml/badge.svg
322
+ [🚎12-fu-wf]: https://github.com/pboling/rspec-pending_for/actions/workflows/fusty.yml
323
+ [🚎12-fu-wfi]: https://github.com/pboling/rspec-pending_for/actions/workflows/fusty.yml/badge.svg
324
+ [⛳liberapay-img]: https://img.shields.io/liberapay/patrons/pboling.svg?logo=liberapay
325
+ [⛳liberapay]: https://liberapay.com/pboling/donate
326
+ [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
327
+ [🖇sponsor]: https://github.com/sponsors/pboling
328
+ [🖇polar-img]: https://polar.sh/embed/seeks-funding-shield.svg?org=pboling
329
+ [🖇polar]: https://polar.sh/pboling
330
+ [🖇kofi-img]: https://img.shields.io/badge/buy_me_coffee-donate-yellow.svg
331
+ [🖇kofi]: https://ko-fi.com/O5O86SNP4
332
+ [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-yellow.svg
333
+ [🖇patreon]: https://patreon.com/galtzo
334
+ [💎ruby-1.9i]: https://img.shields.io/badge/Ruby-1.9-412BD3?style=for-the-badge&logo=ruby&logoColor=white
335
+ [💎ruby-2.0i]: https://img.shields.io/badge/Ruby-2.0-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
336
+ [💎ruby-2.1i]: https://img.shields.io/badge/Ruby-2.1-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
337
+ [💎ruby-2.2i]: https://img.shields.io/badge/Ruby-2.2-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
338
+ [💎ruby-2.3i]: https://img.shields.io/badge/Ruby-2.3-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
339
+ [💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
340
+ [💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
341
+ [💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
342
+ [💎ruby-2.7i]: https://img.shields.io/badge/Ruby-2.7-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
343
+ [💎ruby-3.0i]: https://img.shields.io/badge/Ruby-3.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
344
+ [💎ruby-3.1i]: https://img.shields.io/badge/Ruby-3.1-CC342D?style=for-the-badge&logo=ruby&logoColor=white
345
+ [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
346
+ [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
347
+ [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
348
+ [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
349
+ [💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.3-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
350
+ [💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
351
+ [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
352
+ [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
353
+ [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
354
+ [💎jruby-9.1i]: https://img.shields.io/badge/JRuby-9.1-FBE742?style=for-the-badge&logo=ruby&logoColor=red
355
+ [💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2-FBE742?style=for-the-badge&logo=ruby&logoColor=red
356
+ [💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3-FBE742?style=for-the-badge&logo=ruby&logoColor=red
357
+ [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
358
+ [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
359
+ [🤝issues]: https://github.com/pboling/rspec-pending_for/issues
360
+ [🤝pulls]: https://github.com/pboling/rspec-pending_for/pulls
361
+ [🤝contributing]: CONTRIBUTING.md
362
+ [🔑codecov-g♻️]: https://codecov.io/gh/pboling/rspec-pending_for/graphs/tree.svg?token=cc6UdZCpAL
363
+ [🖐contrib-rocks]: https://contrib.rocks
364
+ [🖐contributors]: https://github.com/pboling/rspec-pending_for/graphs/contributors
365
+ [🖐contributors-img]: https://contrib.rocks/image?repo=pboling/rspec-pending_for
366
+ [🚎contributors-gl]: https://gitlab.com/pboling/rspec-pending_for/-/graphs/main
367
+ [🪇conduct]: CODE_OF_CONDUCT.md
368
+ [🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-4baaaa.svg
369
+ [📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
370
+ [📌semver]: https://semver.org/spec/v2.0.0.html
371
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat
372
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
373
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
374
+ [📌changelog]: CHANGELOG.md
375
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
376
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
377
+ [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
378
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.064-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
379
+ [🔐security]: SECURITY.md
380
+ [🔐security-img]: https://img.shields.io/badge/security-policy-brightgreen.svg?style=flat
381
+ [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
382
+ [📄license]: LICENSE.txt
383
+ [📄license-ref]: https://opensource.org/licenses/MIT
384
+ [📄license-img]: https://img.shields.io/badge/License-MIT-green.svg
385
+ [📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
386
+ [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-brightgreen.svg?style=flat
387
+ [🚎yard-current]: http://rubydoc.info/gems/rspec-pending_for
388
+ [🚎yard-head]: https://rubydoc.info/github/pboling/rspec-pending_for/main
389
+ [🖇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
390
+ [🖇buyme]: https://www.buymeacoffee.com/pboling
391
+ [🖇buyme-small-img]: https://img.shields.io/badge/Buy--Me--A--Coffee-✓-brightgreen.svg?style=flat
data/SECURITY.md ADDED
@@ -0,0 +1,21 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ | Version | Supported |
6
+ |------------|-----------|
7
+ | 0.1.latest | ✅ |
8
+
9
+ ## Security contact information
10
+
11
+ To report a security vulnerability, please use the
12
+ [Tidelift security contact](https://tidelift.com/security).
13
+ Tidelift will coordinate the fix and disclosure.
14
+
15
+ ## Additional Support
16
+
17
+ If you are interested in support for versions older than the latest release,
18
+ please consider sponsoring the project / maintainer @ https://liberapay.com/pboling/donate,
19
+ or find other sponsorship links in the [README].
20
+
21
+ [README]: README.md
@@ -5,35 +5,37 @@ module Rspec
5
5
  # SRP: Describe the RubyEngine and/or RubyVersion(s) that will be pended or skipped and with what message
6
6
  class Build
7
7
  #
8
- # | RUBY_ENGINE | Implementation |
9
- # |:-----------:|:------------------------:|
10
- # | "unknown" | MRI < 1.9 (probably) |
11
- # | "ruby" | MRI >= 1.9 |
12
- # | "ree" | Ruby Enterprise Edition |
13
- # | "jruby" | JRuby |
14
- # | "macruby" | MacRuby |
15
- # | "rbx" | Rubinius |
16
- # | "maglev" | MagLev |
17
- # | "ironruby" | IronRuby |
18
- # | "cardinal" | Cardinal |
8
+ # | RUBY_ENGINE | Implementation |
9
+ # |:--------------:|:------------------------:|
10
+ # | "unknown" | MRI < 1.9 (probably) |
11
+ # | "ruby" | MRI >= 1.9 |
12
+ # | "ree" | Ruby Enterprise Edition |
13
+ # | "jruby" | JRuby |
14
+ # | "macruby" | MacRuby |
15
+ # | "rbx" | Rubinius |
16
+ # | "maglev" | MagLev |
17
+ # | "ironruby" | IronRuby |
18
+ # | "cardinal" | Cardinal |
19
+ # | "truffletuby" | Truffle Ruby |
19
20
  #
20
21
 
21
22
  # Keys are the
22
23
  INTERPRETER_MATRIX = {
23
- 'unknown' => 'MRI < 1.9 (probably)',
24
- 'ruby' => 'MRI >= 1.9',
25
- 'ree' => 'Ruby Enterprise Edition',
26
- 'jruby' => 'JRuby',
27
- 'macruby' => 'MacRuby',
28
- 'rbx' => 'Rubinius',
29
- 'maglev' => 'MagLev',
30
- 'ironruby' => 'IronRuby',
31
- 'cardinal' => 'Cardinal'
24
+ "unknown" => "MRI < 1.9 (probably)",
25
+ "ruby" => "MRI >= 1.9",
26
+ "ree" => "Ruby Enterprise Edition",
27
+ "jruby" => "JRuby",
28
+ "macruby" => "MacRuby",
29
+ "rbx" => "Rubinius",
30
+ "maglev" => "MagLev",
31
+ "ironruby" => "IronRuby",
32
+ "cardinal" => "Cardinal",
33
+ "truffletuby" => "Truffle Ruby",
32
34
  }.freeze
33
- BROKEN_STRING = 'Behavior is broken'
34
- BUG_STRING = 'due to a bug in the Ruby engine'
35
- VERSIONS_STRING = 'in Ruby versions'
36
- ISSUES_LINK = 'https://github.com/pboling/rspec-pending_for/issues'
35
+ BROKEN_STRING = "Behavior is broken"
36
+ BUG_STRING = "due to a bug in the Ruby engine"
37
+ VERSIONS_STRING = "in Ruby versions"
38
+ ISSUES_LINK = "https://github.com/pboling/rspec-pending_for/issues"
37
39
  RELEVANT_VERSIONS_PROC = lambda { |rv| "#{BROKEN_STRING} #{VERSIONS_STRING} #{rv} #{BUG_STRING}" }
38
40
 
39
41
  attr_reader :message, :relevant_versions, :relevant_engine, :reason
@@ -45,10 +47,10 @@ module Rspec
45
47
  warn_about_unrecognized_engine
46
48
  # If engine is nil, then any matching versions should be pended
47
49
  @message = if @relevant_engine.nil?
48
- no_engine_specified
49
- elsif RubyEngine.is? @relevant_engine
50
- engine_specified_and_relevant
51
- end
50
+ no_engine_specified
51
+ elsif RubyEngine.is?(@relevant_engine)
52
+ engine_specified_and_relevant
53
+ end
52
54
  end
53
55
 
54
56
  def current_matches_specified?
@@ -60,10 +62,10 @@ module Rspec
60
62
  def warn_about_unrecognized_engine
61
63
  return false if relevant_engine.nil? || !INTERPRETER_MATRIX[relevant_engine].nil?
62
64
 
63
- warn %[
65
+ warn(%[
64
66
  Engine specified (#{relevant_engine}) is not known to rspec-pending_for.
65
67
  If it is a real RUBY_ENGINE, please report as a bug to #{ISSUES_LINK}
66
- ]
68
+ ])
67
69
  end
68
70
 
69
71
  def no_engine_specified