omniauth-openid 2.0.1 → 2.0.2

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,52 +1,449 @@
1
- # OmniAuth::OpenID
1
+ <p align="center">
2
+ <a href="https://discord.gg/3qme4XHNKN" target="_blank" rel="noopener">
3
+ <img width="84px" src="https://github.com/omniauth/omniauth-openid/raw/master/docs/images/logo/galtzo-floss-logos-original.svg?raw=true" alt="Galtzo.com Logo by Aboling0, CC BY-SA 4.0">
4
+ </a>
5
+ <a href="https://github.com/omniauth" target="_blank" rel="noopener">
6
+ <img width="84px" src="https://github.com/omniauth/omniauth-openid/raw/master/docs/images/logo/omniauth-logo-182px.png?raw=true" alt="OmniAuth Logo possibly by Ted O'Meara, license unknown">
7
+ </a>
8
+ <a href="https://openid.net/specs/openid-authentication-2_0.html" target="_blank" rel="noopener">
9
+ <img width="192px" src="https://github.com/omniauth/omniauth-openid/raw/master/docs/images/logo/openid_rgb-300dpi.png?raw=true" alt="OmniAuth Logo possibly by Ted O'Meara, license unknown">
10
+ </a>
11
+ <a href="https://www.ruby-lang.org/" target="_blank" rel="noopener">
12
+ <img width="84px" src="https://github.com/omniauth/omniauth-openid/raw/master/docs/images/logo/ruby-logo-198px.svg?raw=true" alt="Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5">
13
+ </a>
14
+ </p>
2
15
 
3
- Provides strategies for authenticating to providers using the OpenID standard.
16
+ # 🫵 OmniAuth::OpenID
4
17
 
5
- ## Installation
18
+ [![Version][👽versioni]][👽version] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![Depfu][🔑depfui♻️]][🔑depfu] [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls] [![CI Heads][🚎3-hd-wfi]][🚎3-hd-wf] [![CI Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-wf] [![CI Current][🚎11-c-wfi]][🚎11-c-wf] [![CI JRuby][🚎10-j-wfi]][🚎10-j-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]
6
19
 
7
- gem install omniauth-openid
20
+ ---
8
21
 
9
- ## Stand-Alone Example
22
+ [![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]
10
23
 
11
- Use the strategy as a middleware in your application:
24
+ Provides strategies for authenticating to providers using the [OpenID v2 standard](https://openid.net/specs/openid-authentication-2_0.html), which was final in 2007, and predates OAuth, and OIDC. It is *not* for the modern OpenID Connect (OIDC) standard. For OpenID Connect (OIDC) check out: [omniauth/omniauth_openid_connect](https://github.com/omniauth/omniauth_openid_connect).
12
25
 
13
- require 'omniauth-openid'
14
- require 'openid/store/filesystem'
26
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
27
+ |-----------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
28
+ | Works with JRuby | [![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-9.4i]][🚎10-j-wf] [![JRuby 10.0 Compat][💎jruby-c-i]][🚎11-c-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf] |
29
+ | 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] |
30
+ | Works with MRI Ruby 2 | [![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] |
31
+ | Source | [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
32
+ | Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![BDFL Blog][🚂bdfl-blog-img]][🚂bdfl-blog] [![Wiki][📜wiki-img]][📜wiki] |
33
+ | 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] |
34
+ | Style | [![Enforced Code Style Linter][💎rlts-img]][💎rlts] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] [![Gitmoji Commits][📌gitmoji-img]][📌gitmoji] |
35
+ | 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] |
36
+ | 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! |
37
+ | 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] |
38
+ | `...` 💖 | [![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] |
15
39
 
16
- use Rack::Session::Cookie
17
- use OmniAuth::Strategies::OpenID, :store => OpenID::Store::Filesystem.new('/tmp')
40
+ ## ✨ Installation
41
+
42
+ Install the gem and add to the application's Gemfile by executing:
43
+
44
+ $ bundle add omniauth-openid
45
+
46
+ If bundler is not being used to manage dependencies, install the gem by executing:
47
+
48
+ $ gem install omniauth-openid
49
+
50
+ ### 🔒 Secure Installation
51
+
52
+ `omniauth-openid` is cryptographically signed, and has verifiable [SHA-256 and SHA-512][💎SHA_checksums] checksums by
53
+ [stone_checksums][💎stone_checksums]. Be sure the gem you install hasn’t been tampered with
54
+ by following the instructions below.
55
+
56
+ Add my public key (if you haven’t already, expires 2045-04-29) as a trusted certificate:
57
+
58
+ ```shell
59
+ gem cert --add <(curl -Ls https://raw.github.com/omniauth/omniauth-openid/master/certs/pboling.pem)
60
+ ```
61
+
62
+ You only need to do that once. Then proceed to install with:
63
+
64
+ ```shell
65
+ gem install omniauth-openid -P MediumSecurity
66
+ ```
67
+
68
+ The `MediumSecurity` trust profile will verify signed gems, but allow the installation of unsigned dependencies.
69
+
70
+ This is necessary because not all of `omniauth-openid`’s dependencies are signed, so we cannot use `HighSecurity`.
71
+
72
+ If you want to up your security game full-time:
73
+
74
+ ```shell
75
+ bundle config set --global trust-policy MediumSecurity
76
+ ```
77
+
78
+ NOTE: Be prepared to track down certs for signed gems and add them the same way you added mine.
79
+
80
+ ## 🔧 Compatibility
81
+
82
+ This gem is compatible with a wide range of Ruby Engines and OmniAuth versions, as of June 2025, version 2.0.2.
83
+
84
+ * Tested in CI against:
85
+ * Ruby 2.4, 2.5, 2.6, 2.7, 3.0, 3.1, 3.2, 3.3, 3.4, ruby-head
86
+ * JRuby 9.2, 9.3, 9.4, 10.0, jruby-head
87
+ * omniauth 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0, 2.1, HEAD
88
+
89
+ ## 🔧 Basic Usage
90
+
91
+ Use the strategy as application middleware:
92
+
93
+ ```ruby
94
+ require "omniauth-openid"
95
+ require "openid/store/filesystem"
96
+
97
+ use Rack::Session::Cookie
98
+ use OmniAuth::Strategies::OpenID, store: OpenID::Store::Filesystem.new("/tmp")
99
+ ```
18
100
 
19
101
  Then simply direct users to `/auth/open_id` to prompt them for their OpenID identifier. You may also pre-set the identifier by passing an `identifier` parameter to the URL (Example: `/auth/open_id?openid_url=yahoo.com`).
20
102
 
21
103
  A list of all OpenID stores is available at http://github.com/openid/ruby-openid/tree/master/lib/openid/store/
22
104
 
23
- ## OmniAuth Builder
105
+ ### OmniAuth Builder
24
106
 
25
107
  If OpenID is one of several authentication strategies, use the OmniAuth Builder:
26
108
 
27
- require 'omniauth-openid'
28
- require 'openid/store/filesystem'
109
+ ```ruby
110
+ require "omniauth-openid"
111
+ require "openid/store/filesystem"
29
112
 
30
- use OmniAuth::Builder do
31
- provider :open_id, :store => OpenID::Store::Filesystem.new('/tmp')
32
- end
113
+ use OmniAuth::Builder do
114
+ provider :open_id, store: OpenID::Store::Filesystem.new("/tmp")
115
+ end
116
+ ```
33
117
 
34
- ## Configured Identifiers
118
+ ### Configured Identifiers
35
119
 
36
120
  You may pre-configure an OpenID identifier. For example, to use Google's main OpenID endpoint:
37
121
 
38
122
  use OmniAuth::Builder do
39
- provider :open_id, :name => 'google', :identifier => 'https://www.google.com/accounts/o8/id'
123
+ provider :open_id, nil, :name => 'google', :identifier => 'https://www.google.com/accounts/o8/id'
40
124
  end
41
125
 
42
126
  Note the use of nil, which will trigger ruby-openid's default Memory Store.
43
127
 
44
- ## License
128
+ Please contribute some documentation if you have the gumption! The maintainer's time is limited, and sometimes the authors of PRs with new options don't update this readme. 😭
129
+
130
+ ## Example
131
+
132
+ A terribly basic example of an OpenID client/server is at `/examples`
133
+
134
+ In one shell run the [server][server]:
135
+
136
+ ```shell
137
+ cd examples
138
+ ./server.rb
139
+ ```
140
+
141
+ In another shell run the [client][client]:
142
+
143
+ ```shell
144
+ cd examples
145
+ ./client.rb
146
+ ```
147
+
148
+ [server]: examples/server.rb
149
+ [client]: examples/client.rb
150
+
151
+ ## 🔐 Security
152
+
153
+ See [SECURITY.md][🔐security].
154
+
155
+ ## 🤝 Contributing
156
+
157
+ If you need some ideas of where to help, you could work on adding more code coverage,
158
+ or if it is already 💯 (see [below](#code-coverage)) check [issues][🤝gh-issues], or [PRs][🤝gh-pulls],
159
+ or use the gem and think about how it could be better.
160
+
161
+ We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
162
+
163
+ See [CONTRIBUTING.md][🤝contributing] for more detailed instructions.
164
+
165
+ ### 🚀 Release Instructions
166
+
167
+ See [CONTRIBUTING.md][🤝contributing].
168
+
169
+ ### Code Coverage
170
+
171
+ [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls]
172
+
173
+ ### 🪇 Code of Conduct
174
+
175
+ Everyone interacting with this project's codebases, issue trackers,
176
+ chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct].
177
+
178
+ ## 🌈 Contributors
179
+
180
+ [![Contributors][🖐contributors-img]][🖐contributors]
181
+
182
+ Made with [contributors-img][🖐contrib-rocks].
183
+
184
+ ## ⭐️ Star History
185
+
186
+ <a href="https://star-history.com/#omniauth/omniauth-openid&Date">
187
+ <picture>
188
+ <source media="(prefers-color-scheme: dark)"
189
+ srcset="https://api.star-history.com/svg?repos=omniauth/omniauth-openid&type=Date&theme=dark"/>
190
+ <source media="(prefers-color-scheme: light)"
191
+ srcset="https://api.star-history.com/svg?repos=omniauth/omniauth-openid&type=Date"/>
192
+ <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=omniauth/omniauth-openid&type=Date" />
193
+ </picture>
194
+ </a>
195
+
196
+ ## 📌 Versioning
197
+
198
+ This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
199
+ Violations of this scheme should be reported as bugs.
200
+ Specifically, if a minor or patch version is released that breaks backward compatibility,
201
+ a new version should be immediately released that restores compatibility.
202
+ Breaking changes to the public API will only be introduced with new major versions.
203
+
204
+ ### 📌 Is "Platform Support" part of the public API?
205
+
206
+ Yes. But I'm obligated to include notes...
207
+
208
+ SemVer should, but doesn't explicitly, say that dropping support for specific Platforms
209
+ is a *breaking change* to an API.
210
+ It is obvious to many, but not all, and since the spec is silent, the bike shedding is endless.
211
+
212
+ > dropping support for a platform is both obviously and objectively a breaking change
213
+
214
+ - Jordan Harband (@ljharb, maintainer of SemVer) [in SemVer issue 716][📌semver-breaking]
215
+
216
+ To get a better understanding of how SemVer is intended to work over a project's lifetime,
217
+ read this article from the creator of SemVer:
218
+
219
+ - ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
220
+
221
+ As a result of this policy, and the interpretive lens used by the maintainer,
222
+ you can (and should) specify a dependency on these libraries using
223
+ the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
224
+
225
+ For example:
226
+
227
+ ```ruby
228
+ spec.add_dependency("omniauth-openid", "~> 3.1")
229
+ ```
230
+
231
+ See [CHANGELOG.md][📌changelog] for a list of releases.
232
+
233
+ ## 📄 License
234
+
235
+ The gem is available as open source under the terms of
236
+ the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
237
+ See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
238
+
239
+ ### © Copyright
240
+
241
+ <ul>
242
+ <li>
243
+ Copyright (c) 2025 Peter H. Boling, of
244
+ <a href="https://discord.gg/3qme4XHNKN">
245
+ Galtzo.com
246
+ <picture>
247
+ <img src="https://github.com/omniauth/omniauth-openid/raw/master/docs/images/logo/galtzo-floss-logos-wordless.svg?raw=true" alt="Galtzo.com Logo by Aboling0, CC BY-SA 4.0" width="24">
248
+ </picture>
249
+ </a>, and omniauth-openid contributors
250
+ </li>
251
+ <li>
252
+ Copyright (c) 2010-2011 Michael Bleigh, and Intridea, Inc.
253
+ </li>
254
+ </ul>
255
+
256
+ ## 🤑 One more thing
257
+
258
+ Having arrived at the bottom of the page, please endure a final supplication.
259
+ The primary maintainer of this gem, Peter Boling, wants
260
+ Ruby to be a great place for people to solve problems, big and small.
261
+ Please consider supporting his efforts via the giant yellow link below,
262
+ or one of smaller ones, depending on button size preference.
263
+
264
+ [![Buy me a latte][🖇buyme-img]][🖇buyme]
265
+
266
+ [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![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]
267
+
268
+ P.S. Use the gem => Discord for help
269
+
270
+ [![Live Chat on Discord][✉️discord-invite-img]][✉️discord-invite]
271
+
272
+ [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay
273
+ [⛳liberapay]: https://liberapay.com/pboling/donate
274
+ [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
275
+ [🖇sponsor]: https://github.com/sponsors/pboling
276
+ [🖇polar-img]: https://img.shields.io/badge/polar-donate-yellow.svg
277
+ [🖇polar]: https://polar.sh/pboling
278
+ [🖇kofi-img]: https://img.shields.io/badge/a_more_different_coffee-✓-yellow.svg
279
+ [🖇kofi]: https://ko-fi.com/O5O86SNP4
280
+ [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-yellow.svg
281
+ [🖇patreon]: https://patreon.com/galtzo
282
+ [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-✓-yellow.svg?style=flat
283
+ [🖇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
284
+ [🖇buyme]: https://www.buymeacoffee.com/pboling
285
+
286
+ [✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
287
+ [⛳️gem-namespace]: https://github.com/omniauth/omniauth-openid
288
+ [⛳️namespace-img]: https://img.shields.io/badge/namespace-OmniAuth%3A%3AOpenID-brightgreen.svg?style=flat&logo=ruby&logoColor=white
289
+ [⛳️gem-name]: https://rubygems.org/gems/omniauth-openid
290
+ [⛳️name-img]: https://img.shields.io/badge/name-omniauth--openid-brightgreen.svg?style=flat&logo=rubygems&logoColor=red
291
+ [🚂bdfl-blog]: http://www.railsbling.com/tags/omniauth-openid
292
+ [🚂bdfl-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
293
+ [🚂bdfl-contact]: http://www.railsbling.com/contact
294
+ [🚂bdfl-contact-img]: https://img.shields.io/badge/Contact-BDFL-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
295
+ [💖🖇linkedin]: http://www.linkedin.com/in/peterboling
296
+ [💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
297
+ [💖✌️wellfound]: https://angel.co/u/peter-boling
298
+ [💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
299
+ [💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
300
+ [💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
301
+ [💖🐘ruby-mast]: https://ruby.social/@galtzo
302
+ [💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https%3A%2F%2Fruby.social&style=flat&logo=mastodon&label=Ruby%20%40galtzo
303
+ [💖🦋bluesky]: https://bsky.app/profile/galtzo.com
304
+ [💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.com-0285FF?style=flat&logo=bluesky&logoColor=white
305
+ [💖🌳linktree]: https://linktr.ee/galtzo
306
+ [💖🌳linktree-img]: https://img.shields.io/badge/galtzo-purple?style=flat&logo=linktree
307
+ [💖💁🏼‍♂️devto]: https://dev.to/galtzo
308
+ [💖💁🏼‍♂️devto-img]: https://img.shields.io/badge/dev.to-0A0A0A?style=flat&logo=devdotto&logoColor=white
309
+ [💖💁🏼‍♂️aboutme]: https://about.me/peter.boling
310
+ [💖💁🏼‍♂️aboutme-img]: https://img.shields.io/badge/about.me-0A0A0A?style=flat&logo=aboutme&logoColor=white
311
+ [💖🧊berg]: https://codeberg.org/pboling
312
+ [💖🐙hub]: https://github.org/pboling
313
+ [💖🛖hut]: https://sr.ht/~galtzo/
314
+ [💖🧪lab]: https://gitlab.com/pboling
315
+ [👨🏼‍🏫expsup-upwork]: https://www.upwork.com/freelancers/~014942e9b056abdf86?mp_source=share
316
+ [👨🏼‍🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
317
+ [👨🏼‍🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
318
+ [👨🏼‍🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
319
+ [🏙️entsup-tidelift]: https://tidelift.com/subscription
320
+ [🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
321
+ [🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
322
+ [💁🏼‍♂️peterboling]: http://www.peterboling.com
323
+ [🚂railsbling]: http://www.railsbling.com
324
+ [📜src-gl-img]: https://img.shields.io/badge/GitLab-FBA326?style=for-the-badge&logo=Gitlab&logoColor=orange
325
+ [📜src-gl]: https://gitlab.com/omniauth/omniauth-openid/
326
+ [📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
327
+ [📜src-cb]: https://codeberg.org/omniauth/omniauth-openid
328
+ [📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=Github&logoColor=green
329
+ [📜src-gh]: https://github.com/omniauth/omniauth-openid
330
+ [📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
331
+ [📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
332
+ [📜wiki]: https://github.com/omniauth/omniauth-openid/wiki
333
+ [📜wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=Wiki&logoColor=white
334
+ [👽dl-rank]: https://rubygems.org/gems/omniauth-openid
335
+ [👽dl-ranki]: https://img.shields.io/gem/rd/omniauth-openid.svg
336
+ [👽oss-help]: https://www.codetriage.com/omniauth/omniauth-openid
337
+ [👽oss-helpi]: https://www.codetriage.com/omniauth/omniauth-openid/badges/users.svg
338
+ [👽version]: https://rubygems.org/gems/omniauth-openid
339
+ [👽versioni]: https://img.shields.io/gem/v/omniauth-openid.svg
340
+ [🔑qlty-mnt]: https://qlty.sh/gh/omniauth/projects/omniauth-openid
341
+ [🔑qlty-mnti♻️]: https://qlty.sh/badges/c2eb0211-c105-4fc6-9b36-650307c67e06/maintainability.svg
342
+ [🔑qlty-cov]: https://qlty.sh/gh/omniauth/projects/omniauth-openid
343
+ [🔑qlty-covi♻️]: https://qlty.sh/badges/c2eb0211-c105-4fc6-9b36-650307c67e06/test_coverage.svg
344
+ [🔑codecov]: https://codecov.io/gh/omniauth/omniauth-openid
345
+ [🔑codecovi♻️]: https://codecov.io/gh/omniauth/omniauth-openid/branch/master/graph/badge.svg?token=E1fzzcuB8f
346
+ [🔑coveralls]: https://coveralls.io/github/omniauth/omniauth-openid?branch=master
347
+ [🔑coveralls-img]: https://coveralls.io/repos/github/omniauth/omniauth-openid/badge.svg?branch=master
348
+ [🔑depfu]: https://depfu.com/github/omniauth/omniauth-openid?project_id=22381
349
+ [🔑depfui♻️]: https://badges.depfu.com/badges/6c9b45362951b872127f9e46d39bed76/count.svg
350
+ [🖐codeQL]: https://github.com/omniauth/omniauth-openid/security/code-scanning
351
+ [🖐codeQL-img]: https://github.com/omniauth/omniauth-openid/actions/workflows/codeql-analysis.yml/badge.svg
352
+ [🚎1-an-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/ancient.yml
353
+ [🚎1-an-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/ancient.yml/badge.svg
354
+ [🚎2-cov-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/coverage.yml
355
+ [🚎2-cov-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/coverage.yml/badge.svg
356
+ [🚎3-hd-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/heads.yml
357
+ [🚎3-hd-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/heads.yml/badge.svg
358
+ [🚎4-lg-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/legacy.yml
359
+ [🚎4-lg-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/legacy.yml/badge.svg
360
+ [🚎5-st-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/style.yml
361
+ [🚎5-st-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/style.yml/badge.svg
362
+ [🚎6-s-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/supported.yml
363
+ [🚎6-s-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/supported.yml/badge.svg
364
+ [🚎7-us-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/unsupported.yml
365
+ [🚎7-us-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/unsupported.yml/badge.svg
366
+ [🚎8-ho-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/hoary.yml
367
+ [🚎8-ho-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/hoary.yml/badge.svg
368
+ [🚎9-t-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/truffle.yml
369
+ [🚎9-t-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/truffle.yml/badge.svg
370
+ [🚎10-j-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/jruby.yml
371
+ [🚎10-j-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/jruby.yml/badge.svg
372
+ [🚎11-c-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/current.yml
373
+ [🚎11-c-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/current.yml/badge.svg
374
+ [🚎12-crh-wf]: https://github.com/omniauth/omniauth-openid/actions/workflows/current-runtime-heads.yml
375
+ [🚎12-crh-wfi]: https://github.com/omniauth/omniauth-openid/actions/workflows/current-runtime-heads.yml/badge.svg
376
+ [💎ruby-2.3i]: https://img.shields.io/badge/Ruby-2.3-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
377
+ [💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
378
+ [💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
379
+ [💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
380
+ [💎ruby-2.7i]: https://img.shields.io/badge/Ruby-2.7-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
381
+ [💎ruby-3.0i]: https://img.shields.io/badge/Ruby-3.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
382
+ [💎ruby-3.1i]: https://img.shields.io/badge/Ruby-3.1-CC342D?style=for-the-badge&logo=ruby&logoColor=white
383
+ [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
384
+ [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
385
+ [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
386
+ [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
387
+ [💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.3-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
388
+ [💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
389
+ [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
390
+ [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
391
+ [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
392
+ [💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2-FBE742?style=for-the-badge&logo=ruby&logoColor=red
393
+ [💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3-FBE742?style=for-the-badge&logo=ruby&logoColor=red
394
+ [💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
395
+ [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
396
+ [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
397
+ [🤝gh-issues]: https://github.com/omniauth/omniauth-openid/issues
398
+ [🤝gh-pulls]: https://github.com/omniauth/omniauth-openid/pulls
399
+ [🤝contributing]: CONTRIBUTING.md
400
+ [🔑codecov-g♻️]: https://codecov.io/gh/omniauth/omniauth-openid/graphs/tree.svg?token=E1fzzcuB8f
401
+ [🖐contrib-rocks]: https://contrib.rocks
402
+ [🖐contributors]: https://github.com/omniauth/omniauth-openid/graphs/contributors
403
+ [🖐contributors-img]: https://contrib.rocks/image?repo=omniauth/omniauth-openid
404
+ [🚎contributors-gl]: https://gitlab.com/omniauth/omniauth-openid/-/graphs/main
405
+ [🪇conduct]: CODE_OF_CONDUCT.md
406
+ [🪇conduct-img]: https://img.shields.io/badge/Contributor_Covenant-2.1-259D6C.svg
407
+ [📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
408
+ [📌semver]: https://semver.org/spec/v2.0.0.html
409
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-259D6C.svg?style=flat
410
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
411
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
412
+ [📌changelog]: CHANGELOG.md
413
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
414
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
415
+ [📌gitmoji]:https://gitmoji.dev
416
+ [📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20😜%20😍-34495e.svg?style=flat-square
417
+ [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
418
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.080-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
419
+ [🔐security]: SECURITY.md
420
+ [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
421
+ [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
422
+ [📄license]: LICENSE.txt
423
+ [📄license-ref]: https://opensource.org/licenses/MIT
424
+ [📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
425
+ [📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
426
+ [📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
427
+ [🚎yard-current]: http://rubydoc.info/gems/omniauth-openid
428
+ [🚎yard-head]: https://omniauth-openid.galtzo.com
429
+ [💎stone_checksums]: https://github.com/pboling/stone_checksums
430
+ [💎SHA_checksums]: https://github.com/omniauth/omniauth-openid/tree/master/checksums
431
+ [💎rlts]: https://github.com/rubocop-lts/rubocop-lts
432
+ [💎rlts-img]: https://img.shields.io/badge/code_style_%26_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
433
+ [✉️discord-invite]: https://discord.gg/3qme4XHNKN
434
+ [✉️discord-invite-img]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge
45
435
 
46
- Copyright (c) 2011 Michael Bleigh and Intridea, Inc.
436
+ <details>
437
+ <summary>
438
+ Disabled Badges
439
+ </summary>
47
440
 
48
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
441
+ Badges for failing services.
442
+ Bug reports filed.
443
+ Once fixed, these should look much nicer.
49
444
 
50
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
445
+ [![QLTY Maintainability][🔑qlty-mnti♻️]][🔑qlty-mnt]
446
+ [![CodeCov Test Coverage][🔑codecovi♻️]][🔑codecov]
447
+ [![Coverage Graph][🔑codecov-g♻️]][🔑codecov]
51
448
 
52
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
449
+ </details>
data/SECURITY.md ADDED
@@ -0,0 +1,42 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ | Version | Supported |
6
+ |---------|-----------|
7
+ | 2.x | ✅ |
8
+ | 1.x | ❌ |
9
+
10
+ ## Security contact information
11
+
12
+ To report a security vulnerability, please use the
13
+ [Tidelift security contact](https://tidelift.com/security).
14
+ Tidelift will coordinate the fix and disclosure.
15
+
16
+ ## Additional Support
17
+
18
+ Interested in support for versions older than the latest release?
19
+ Consider sponsoring the project / maintainer.
20
+
21
+ [![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]
22
+
23
+ [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay
24
+ [⛳liberapay]: https://liberapay.com/pboling/donate
25
+ [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
26
+ [🖇sponsor]: https://github.com/sponsors/pboling
27
+ [🖇polar-img]: https://img.shields.io/badge/polar-donate-yellow.svg
28
+ [🖇polar]: https://polar.sh/pboling
29
+ [🖇kofi-img]: https://img.shields.io/badge/a_more_different_coffee-✓-yellow.svg
30
+ [🖇kofi]: https://ko-fi.com/O5O86SNP4
31
+ [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-yellow.svg
32
+ [🖇patreon]: https://patreon.com/galtzo
33
+ [🖇buyme]: https://www.buymeacoffee.com/pboling
34
+ [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-✓-yellow.svg?style=flat
35
+
36
+ ## Enterprise Support
37
+
38
+ Available as part of the Tidelift Subscription.
39
+
40
+ The maintainers of this library and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source packages you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers for the exact packages you use. [Learn more.][tidelift-ref]
41
+
42
+ [tidelift-ref]: https://tidelift.com/subscription/pkg/rubygems-omniauth-openid?utm_source=rubygems-omniauth-openid&utm_medium=referral&utm_campaign=enterprise&utm_term=repo
@@ -0,0 +1,8 @@
1
+ module OmniAuth
2
+ module OpenID
3
+ module Version
4
+ VERSION = "2.0.2"
5
+ end
6
+ include Version # => Makes VERSION available at the usual spot
7
+ end
8
+ end