omniauth-identity 3.1.3 → 3.1.5
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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +136 -4
- data/CITATION.cff +20 -0
- data/CODE_OF_CONDUCT.md +3 -4
- data/CONTRIBUTING.md +129 -32
- data/FUNDING.md +66 -0
- data/README.md +290 -136
- data/REEK +0 -0
- data/RUBOCOP.md +71 -0
- data/SECURITY.md +6 -18
- data/lib/omniauth/identity/model.rb +29 -7
- data/lib/omniauth/identity/models/active_record.rb +46 -2
- data/lib/omniauth/identity/models/couch_potato.rb +56 -4
- data/lib/omniauth/identity/models/mongoid.rb +47 -2
- data/lib/omniauth/identity/models/nobrainer.rb +47 -3
- data/lib/omniauth/identity/models/rom.rb +151 -0
- data/lib/omniauth/identity/models/sequel.rb +71 -9
- data/lib/omniauth/identity/secure_password.rb +33 -0
- data/lib/omniauth/identity/version.rb +5 -1
- data/lib/omniauth/identity.rb +30 -0
- data/lib/omniauth/strategies/identity.rb +127 -6
- data.tar.gz.sig +0 -0
- metadata +164 -33
- metadata.gz.sig +0 -0
data/README.md
CHANGED
@@ -1,22 +1,39 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
1
|
+
| 📍 NOTE |
|
2
|
+
|-------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
3
|
+
| RubyGems.org was [recently compromised][draper-security] in a [hostile takeover][draper-takeover] about which [many lies][draper-lies] have been told. |
|
4
|
+
| I'm in the process of adding warnings to some important gems because I [don't condone the theft][draper-theft] of the bundler and rubygems-update projects. |
|
5
|
+
| Once publishing to [gem.coop][gem-coop] is available I will stop publishing to RubyGems.org. |
|
6
|
+
| Please see [here][gem-coop] and [here][martin-ann] for more info on what comes next. |
|
7
|
+
|
8
|
+
[draper-security]: https://joel.drapper.me/p/ruby-central-security-measures/
|
9
|
+
[draper-takeover]: https://joel.drapper.me/p/ruby-central-takeover/
|
10
|
+
[draper-lies]: https://joel.drapper.me/p/ruby-central-fact-check/
|
11
|
+
[draper-theft]: https://joel.drapper.me/p/ruby-central/
|
12
|
+
[gem-coop]: https://gem.coop
|
13
|
+
[martin-ann]: https://martinemde.com/2025/10/05/announcing-gem-coop.html
|
14
|
+
|
15
|
+
[![Galtzo FLOSS Logo by Aboling0, CC BY-SA 4.0][🖼️galtzo-i]][🖼️galtzo-discord] [![omniauth Logo by tomeara(?), MIT License][🖼️omniauth-i]][🖼️omniauth] [![ruby-lang Logo, Yukihiro Matsumoto, Ruby Visual Identity Team, CC BY-SA 2.5][🖼️ruby-lang-i]][🖼️ruby-lang]
|
16
|
+
|
17
|
+
[🖼️galtzo-i]: https://logos.galtzo.com/assets/images/galtzo-floss/avatar-192px.svg
|
18
|
+
[🖼️galtzo-discord]: https://discord.gg/3qme4XHNKN
|
19
|
+
[🖼️ruby-lang-i]: https://logos.galtzo.com/assets/images/ruby-lang/avatar-192px.svg
|
20
|
+
[🖼️ruby-lang]: https://www.ruby-lang.org/
|
21
|
+
[🖼️omniauth-i]: https://logos.galtzo.com/assets/images/omniauth/avatar-182px.png
|
22
|
+
[🖼️omniauth]: https://github.com/omniauth/omniauth-identity
|
12
23
|
|
13
24
|
# 🫵 OmniAuth::Identity
|
14
25
|
|
15
|
-
[![Version][👽versioni]][👽version] [![License: MIT][📄license-img]][📄license-ref] [![Downloads Rank][👽dl-ranki]][👽dl-rank] [![Open Source Helpers][👽oss-helpi]][👽oss-help] [![
|
26
|
+
[![Version][👽versioni]][👽version] [![GitHub tag (latest SemVer)][⛳️tag-img]][⛳️tag] [![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 Runtime Dependencies @ HEAD][🚎12-crh-wfi]][🚎12-crh-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] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Apache SkyWalking Eyes License Compatibility Check][🚎15-🪪-wfi]][🚎15-🪪-wf]
|
27
|
+
|
28
|
+
`if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][🖼️galtzo-discord], as I may have missed the [discord notification][🖼️galtzo-discord].
|
16
29
|
|
17
30
|
---
|
18
31
|
|
19
|
-
|
32
|
+
`if ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS maintenance is now my full-time job.
|
33
|
+
|
34
|
+
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
|
35
|
+
|
36
|
+
## 🌻 Synopsis
|
20
37
|
|
21
38
|
The `omniauth-identity` gem provides a way for applications to utilize a
|
22
39
|
traditional username/password based authentication system without the need
|
@@ -26,61 +43,117 @@ basic construct for user management and then gets out of the way.
|
|
26
43
|
|
27
44
|
## 💡 Info you can shake a stick at
|
28
45
|
|
29
|
-
| Tokens to Remember
|
30
|
-
|
31
|
-
| Works with JRuby
|
32
|
-
| Works with
|
33
|
-
| Works with MRI Ruby
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
| `...` 💖
|
46
|
+
| Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
|
47
|
+
|-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
48
|
+
| 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] |
|
49
|
+
| Works with Truffle Ruby | ![Truffle Ruby 22.3 Compat][💎truby-22.3i] ![Truffle Ruby 23.0 Compat][💎truby-23.0i] <br/> [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎9-t-wf] [![Truffle Ruby 24.1 Compat][💎truby-c-i]][🚎11-c-wf] |
|
50
|
+
| 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] |
|
51
|
+
| 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] |
|
52
|
+
| Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork] [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor] |
|
53
|
+
| 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] |
|
54
|
+
| 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] [![GitLab Wiki][📜gl-wiki-img]][📜gl-wiki] [![GitHub Wiki][📜gh-wiki-img]][📜gh-wiki] |
|
55
|
+
| Compliance | [![License: MIT][📄license-img]][📄license-ref] [![Compatible with Apache Software Projects: Verified by SkyWalking Eyes][📄license-compat-img]][📄license-compat] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
|
56
|
+
| 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] |
|
57
|
+
| 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] |
|
58
|
+
| `...` 💖 | [![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] |
|
59
|
+
|
60
|
+
### Compatibility
|
61
|
+
|
62
|
+
Compatible with MRI Ruby 2.4+, and concordant releases of JRuby, and TruffleRuby.
|
63
|
+
|
64
|
+
| 🚚 _Amazing_ test matrix was brought to you by | 🔎 appraisal2 🔎 and the color 💚 green 💚 |
|
65
|
+
|------------------------------------------------|--------------------------------------------------------|
|
66
|
+
| 👟 Check it out! | ✨ [github.com/appraisal-rb/appraisal2][💎appraisal2] ✨ |
|
67
|
+
|
68
|
+
### Federated DVCS
|
69
|
+
|
70
|
+
<details>
|
71
|
+
<summary>Find this repo on federated forges (Coming soon!)</summary>
|
72
|
+
|
73
|
+
| Federated [DVCS][💎d-in-dvcs] Repository | Status | Issues | PRs | Wiki | CI | Discussions |
|
74
|
+
|-------------------------------------------------|-----------------------------------------------------------------------|---------------------------|--------------------------|---------------------------|--------------------------|------------------------------|
|
75
|
+
| 🧪 [omniauth/omniauth-identity on GitLab][📜src-gl] | The Truth | [💚][🤝gl-issues] | [💚][🤝gl-pulls] | [💚][📜gl-wiki] | 🐭 Tiny Matrix | ➖ |
|
76
|
+
| 🧊 [omniauth/omniauth-identity on CodeBerg][📜src-cb] | An Ethical Mirror ([Donate][🤝cb-donate]) | [💚][🤝cb-issues] | [💚][🤝cb-pulls] | ➖ | ⭕️ No Matrix | ➖ |
|
77
|
+
| 🐙 [omniauth/omniauth-identity on GitHub][📜src-gh] | Another Mirror | [💚][🤝gh-issues] | [💚][🤝gh-pulls] | [💚][📜gh-wiki] | 💯 Full Matrix | [💚][gh-discussions] |
|
78
|
+
| 🎮️ [Discord Server][✉️discord-invite] | [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] | [Let's][✉️discord-invite] | [talk][✉️discord-invite] | [about][✉️discord-invite] | [this][✉️discord-invite] | [library!][✉️discord-invite] |
|
79
|
+
|
80
|
+
</details>
|
81
|
+
|
82
|
+
[gh-discussions]: https://github.com/omniauth/omniauth-identity/discussions
|
83
|
+
|
84
|
+
### Enterprise Support [](https://tidelift.com/subscription/pkg/rubygems-omniauth-identity?utm_source=rubygems-omniauth-identity&utm_medium=referral&utm_campaign=readme)
|
85
|
+
|
86
|
+
Available as part of the Tidelift Subscription.
|
87
|
+
|
88
|
+
<details>
|
89
|
+
<summary>Need enterprise-level guarantees?</summary>
|
90
|
+
|
91
|
+
The maintainers of this 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 of the exact packages you use.
|
92
|
+
|
93
|
+
[![Get help from me on Tidelift][🏙️entsup-tidelift-img]][🏙️entsup-tidelift]
|
94
|
+
|
95
|
+
- 💡Subscribe for support guarantees covering _all_ your FLOSS dependencies
|
96
|
+
- 💡Tidelift is part of [Sonar][🏙️entsup-tidelift-sonar]
|
97
|
+
- 💡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
|
98
|
+
|
99
|
+
Alternatively:
|
100
|
+
|
101
|
+
- [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
|
102
|
+
- [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork]
|
103
|
+
- [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor]
|
104
|
+
|
105
|
+
</details>
|
42
106
|
|
43
107
|
## ✨ Installation
|
44
108
|
|
45
109
|
Install the gem and add to the application's Gemfile by executing:
|
46
110
|
|
47
|
-
|
111
|
+
```console
|
112
|
+
bundle add omniauth-identity
|
113
|
+
```
|
48
114
|
|
49
115
|
If bundler is not being used to manage dependencies, install the gem by executing:
|
50
116
|
|
51
|
-
|
117
|
+
```console
|
118
|
+
gem install omniauth-identity
|
119
|
+
```
|
52
120
|
|
53
121
|
### 🔒 Secure Installation
|
54
122
|
|
55
|
-
|
123
|
+
<details>
|
124
|
+
<summary>For Medium or High Security Installations</summary>
|
125
|
+
|
126
|
+
This gem is cryptographically signed, and has verifiable [SHA-256 and SHA-512][💎SHA_checksums] checksums by
|
56
127
|
[stone_checksums][💎stone_checksums]. Be sure the gem you install hasn’t been tampered with
|
57
128
|
by following the instructions below.
|
58
129
|
|
59
130
|
Add my public key (if you haven’t already, expires 2045-04-29) as a trusted certificate:
|
60
131
|
|
61
|
-
```
|
62
|
-
gem cert --add <(curl -Ls https://raw.github.com/
|
132
|
+
```console
|
133
|
+
gem cert --add <(curl -Ls https://raw.github.com/galtzo-floss/certs/main/pboling.pem)
|
63
134
|
```
|
64
135
|
|
65
136
|
You only need to do that once. Then proceed to install with:
|
66
137
|
|
67
|
-
```
|
68
|
-
gem install omniauth-identity -P
|
138
|
+
```console
|
139
|
+
gem install omniauth-identity -P HighSecurity
|
69
140
|
```
|
70
141
|
|
71
|
-
The `
|
72
|
-
|
73
|
-
This is necessary because not all of `omniauth-identity`’s dependencies are signed, so we cannot use `HighSecurity`.
|
142
|
+
The `HighSecurity` trust profile will verify signed gems, and not allow the installation of unsigned dependencies.
|
74
143
|
|
75
144
|
If you want to up your security game full-time:
|
76
145
|
|
77
|
-
```
|
146
|
+
```console
|
78
147
|
bundle config set --global trust-policy MediumSecurity
|
79
148
|
```
|
80
149
|
|
150
|
+
`MediumSecurity` instead of `HighSecurity` is necessary if not all the gems you use are signed.
|
151
|
+
|
81
152
|
NOTE: Be prepared to track down certs for signed gems and add them the same way you added mine.
|
82
153
|
|
83
|
-
|
154
|
+
</details>
|
155
|
+
|
156
|
+
## ⚙️ Configuration
|
84
157
|
|
85
158
|
This gem is compatible with a wide range of Ruby versions and Ruby ORMs, as of May 2025, version 3.1.
|
86
159
|
|
@@ -94,14 +167,16 @@ This gem is compatible with a wide range of Ruby versions and Ruby ORMs, as of M
|
|
94
167
|
* mongoid 7.3, 7.4, 8.1, 9.0
|
95
168
|
* bson 4.12, 4.15, 5.0, HEAD
|
96
169
|
* sequel 5.86+
|
97
|
-
*
|
170
|
+
* rom-sql (Ruby Object Mapper) 3.7+
|
171
|
+
* At least 6 different database ORM adapters, which connect to 15 different database clients!
|
98
172
|
|
99
173
|
| Databases | Adapter Libraries |
|
100
|
-
|
174
|
+
|-----------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------|
|
101
175
|
| MySQL, MariaDB, PostgreSQL, SQLite | [ActiveRecord](https://guides.rubyonrails.org/active_record_basics.html) |
|
102
176
|
| CouchDB | [CouchPotato](https://github.com/langalex/couch_potato) |
|
103
177
|
| MongoDB | [Mongoid](https://github.com/mongodb/mongoid) |
|
104
178
|
| RethinkDB | [NoBrainer](http://nobrainer.io/) |
|
179
|
+
| ADO, Amalgalite, IBM_DB, JDBC, MySQL, MariaDB, ODBC, Oracle, PostgreSQL, SQLAnywhere, SQLite, and TinyTDS | [rom-sql](https://rom-rb.org/) |
|
105
180
|
| ADO, Amalgalite, IBM_DB, JDBC, MySQL, MariaDB, ODBC, Oracle, PostgreSQL, SQLAnywhere, SQLite, and TinyTDS | [Sequel](http://sequel.jeremyevans.net) |
|
106
181
|
|
107
182
|
## 🔧 Basic Usage
|
@@ -163,6 +238,7 @@ whatever else you will need.
|
|
163
238
|
```ruby
|
164
239
|
class SequelTestIdentity < Sequel::Model(:identities)
|
165
240
|
include ::OmniAuth::Identity::Models::Sequel
|
241
|
+
|
166
242
|
auth_key :email
|
167
243
|
# whatever else you want!
|
168
244
|
end
|
@@ -224,9 +300,25 @@ end
|
|
224
300
|
|
225
301
|
### Ruby Object Mapper
|
226
302
|
|
227
|
-
|
303
|
+
[ROM](https://rom-rb.org/) is an ORM for pretty much every database.
|
228
304
|
|
229
|
-
|
305
|
+
Include the `OmniAuth::Identity::Models::Rom` mixin and specify
|
306
|
+
the `rom_container`, everything else is optional.
|
307
|
+
|
308
|
+
```ruby
|
309
|
+
class Identity
|
310
|
+
include OmniAuth::Identity::Models::Rom
|
311
|
+
|
312
|
+
# Configure the ROM container and relation
|
313
|
+
rom_container -> { MyDatabase.rom } # See spec_orms/rom_spec.rb for example
|
314
|
+
rom_relation_name :identities # optional, defaults to :idneitities
|
315
|
+
owner_relation_name :owners # optional, for loading associated owner
|
316
|
+
auth_key :email # optional, defaults to :email
|
317
|
+
password_field :password_digest # optional, defaults to :password_digest
|
318
|
+
end
|
319
|
+
```
|
320
|
+
|
321
|
+
### Custom Auth Model
|
230
322
|
|
231
323
|
To use a class other than the default, specify the <tt>:model</tt> option to a
|
232
324
|
different class.
|
@@ -334,6 +426,43 @@ option :locate_conditions, ->(req) { {model.auth_key => req.params["auth_key"]}
|
|
334
426
|
|
335
427
|
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 the _this_ readme. 😭
|
336
428
|
|
429
|
+
## 🦷 FLOSS Funding
|
430
|
+
|
431
|
+
While omniauth tools are free software and will always be, the project would benefit immensely from some funding.
|
432
|
+
Raising a monthly budget of... "dollars" would make the project more sustainable.
|
433
|
+
|
434
|
+
We welcome both individual and corporate sponsors! We also offer a
|
435
|
+
wide array of funding channels to account for your preferences.
|
436
|
+
Currently, [GitHub Sponsors][🖇sponsor], and [Liberapay][⛳liberapay] are our preferred funding platforms.
|
437
|
+
|
438
|
+
**If you're working in a company that's making significant use of omniauth tools we'd
|
439
|
+
appreciate it if you suggest to your company to become a omniauth sponsor.**
|
440
|
+
|
441
|
+
You can support the development of omniauth tools via
|
442
|
+
[GitHub Sponsors][🖇sponsor],
|
443
|
+
[Liberapay][⛳liberapay],
|
444
|
+
[PayPal][🖇paypal],
|
445
|
+
and [Tidelift][🏙️entsup-tidelift].
|
446
|
+
|
447
|
+
| 📍 NOTE |
|
448
|
+
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
449
|
+
| 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. |
|
450
|
+
|
451
|
+
### Another way to support open-source
|
452
|
+
|
453
|
+
> How wonderful it is that nobody need wait a single moment before starting to improve the world.<br/>
|
454
|
+
>—Anne Frank
|
455
|
+
|
456
|
+
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).
|
457
|
+
|
458
|
+
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`.
|
459
|
+
|
460
|
+
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.
|
461
|
+
|
462
|
+
**[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
|
463
|
+
|
464
|
+
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![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]
|
465
|
+
|
337
466
|
## 🔐 Security
|
338
467
|
|
339
468
|
See [SECURITY.md][🔐security].
|
@@ -341,7 +470,7 @@ See [SECURITY.md][🔐security].
|
|
341
470
|
## 🤝 Contributing
|
342
471
|
|
343
472
|
If you need some ideas of where to help, you could work on adding more code coverage,
|
344
|
-
or if it is already 💯 (see [below](#code-coverage)) check [issues][🤝gh-issues], or [PRs][🤝gh-pulls],
|
473
|
+
or if it is already 💯 (see [below](#code-coverage)) check [reek](REEK), [issues][🤝gh-issues], or [PRs][🤝gh-pulls],
|
345
474
|
or use the gem and think about how it could be better.
|
346
475
|
|
347
476
|
We [![Keep A Changelog][📗keep-changelog-img]][📗keep-changelog] so if you make changes, remember to update it.
|
@@ -354,7 +483,11 @@ See [CONTRIBUTING.md][🤝contributing].
|
|
354
483
|
|
355
484
|
### Code Coverage
|
356
485
|
|
357
|
-
[![
|
486
|
+
[![Coverage Graph][🏀codecov-g]][🏀codecov]
|
487
|
+
|
488
|
+
[![Coveralls Test Coverage][🏀coveralls-img]][🏀coveralls]
|
489
|
+
|
490
|
+
[![QLTY Test Coverage][🏀qlty-covi]][🏀qlty-cov]
|
358
491
|
|
359
492
|
### 🪇 Code of Conduct
|
360
493
|
|
@@ -367,18 +500,21 @@ chat rooms and mailing lists agrees to follow the [![Contributor Covenant 2.1][
|
|
367
500
|
|
368
501
|
Made with [contributors-img][🖐contrib-rocks].
|
369
502
|
|
370
|
-
|
503
|
+
Also see GitLab Contributors: [https://gitlab.com/omniauth/omniauth-identity/-/graphs/main][🚎contributors-gl]
|
504
|
+
|
505
|
+
<details>
|
506
|
+
<summary>⭐️ Star History</summary>
|
371
507
|
|
372
508
|
<a href="https://star-history.com/#omniauth/omniauth-identity&Date">
|
373
509
|
<picture>
|
374
|
-
|
375
|
-
|
376
|
-
<source media="(prefers-color-scheme: light)"
|
377
|
-
srcset="https://api.star-history.com/svg?repos=omniauth/omniauth-identity&type=Date"/>
|
510
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=omniauth/omniauth-identity&type=Date&theme=dark" />
|
511
|
+
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=omniauth/omniauth-identity&type=Date" />
|
378
512
|
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=omniauth/omniauth-identity&type=Date" />
|
379
513
|
</picture>
|
380
514
|
</a>
|
381
515
|
|
516
|
+
</details>
|
517
|
+
|
382
518
|
## 📌 Versioning
|
383
519
|
|
384
520
|
This Library adheres to [![Semantic Versioning 2.0.0][📌semver-img]][📌semver].
|
@@ -387,32 +523,33 @@ Specifically, if a minor or patch version is released that breaks backward compa
|
|
387
523
|
a new version should be immediately released that restores compatibility.
|
388
524
|
Breaking changes to the public API will only be introduced with new major versions.
|
389
525
|
|
390
|
-
|
526
|
+
> dropping support for a platform is both obviously and objectively a breaking change <br/>
|
527
|
+
>—Jordan Harband ([@ljharb](https://github.com/ljharb), maintainer of SemVer) [in SemVer issue 716][📌semver-breaking]
|
528
|
+
|
529
|
+
I understand that policy doesn't work universally ("exceptions to every rule!"),
|
530
|
+
but it is the policy here.
|
531
|
+
As such, in many cases it is good to specify a dependency on this library using
|
532
|
+
the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
|
391
533
|
|
392
|
-
|
534
|
+
For example:
|
393
535
|
|
394
|
-
|
395
|
-
|
396
|
-
|
536
|
+
```ruby
|
537
|
+
spec.add_dependency("omniauth-identity", "~> 1.0")
|
538
|
+
```
|
397
539
|
|
398
|
-
>
|
540
|
+
<details>
|
541
|
+
<summary>📌 Is "Platform Support" part of the public API? More details inside.</summary>
|
399
542
|
|
400
|
-
|
543
|
+
SemVer should, IMO, but doesn't explicitly, say that dropping support for specific Platforms
|
544
|
+
is a *breaking change* to an API.
|
545
|
+
It is obvious to many, but not all, and since the spec is silent, the bike shedding is endless.
|
401
546
|
|
402
547
|
To get a better understanding of how SemVer is intended to work over a project's lifetime,
|
403
548
|
read this article from the creator of SemVer:
|
404
549
|
|
405
550
|
- ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
|
406
551
|
|
407
|
-
|
408
|
-
you can (and should) specify a dependency on these libraries using
|
409
|
-
the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
|
410
|
-
|
411
|
-
For example:
|
412
|
-
|
413
|
-
```ruby
|
414
|
-
spec.add_dependency("omniauth-identity", "~> 3.1")
|
415
|
-
```
|
552
|
+
</details>
|
416
553
|
|
417
554
|
See [CHANGELOG.md][📌changelog] for a list of releases.
|
418
555
|
|
@@ -430,9 +567,9 @@ See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright
|
|
430
567
|
<a href="https://discord.gg/3qme4XHNKN">
|
431
568
|
Galtzo.com
|
432
569
|
<picture>
|
433
|
-
<img src="https://
|
570
|
+
<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">
|
434
571
|
</picture>
|
435
|
-
</a>, and omniauth-identity contributors
|
572
|
+
</a>, and omniauth-identity contributors.
|
436
573
|
</li>
|
437
574
|
<li>
|
438
575
|
Copyright (c) 2020 Peter H. Boling, Andrew Roberts, and Jellybooks Ltd.
|
@@ -442,53 +579,71 @@ See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright
|
|
442
579
|
</li>
|
443
580
|
</ul>
|
444
581
|
|
445
|
-
## 🤑
|
582
|
+
## 🤑 A request for help
|
446
583
|
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
584
|
+
Maintainers have teeth and need to pay their dentists.
|
585
|
+
After getting laid off in an RIF in March and filled with many dozens of rejections,
|
586
|
+
I'm now spending ~60+ hours a week building open source tools.
|
587
|
+
I'm hoping to be able to pay for my kids' health insurance this month,
|
588
|
+
so if you value the work I am doing, I need your support.
|
589
|
+
Please consider sponsoring me or the project.
|
452
590
|
|
453
|
-
|
591
|
+
To join the community or get help 👇️ Join the Discord.
|
454
592
|
|
455
|
-
[![
|
593
|
+
[![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite]
|
456
594
|
|
457
|
-
|
595
|
+
To say "thanks!" ☝️ Join the Discord or 👇️ send money.
|
458
596
|
|
459
|
-
[![
|
597
|
+
[![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]
|
460
598
|
|
461
|
-
|
599
|
+
### Please give the project a star ⭐ ♥.
|
600
|
+
|
601
|
+
Thanks for RTFM. ☺️
|
602
|
+
|
603
|
+
[⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
|
604
|
+
[⛳liberapay-bottom-img]: https://img.shields.io/liberapay/goal/pboling.svg?style=for-the-badge&logo=liberapay&color=a51611
|
462
605
|
[⛳liberapay]: https://liberapay.com/pboling/donate
|
463
606
|
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
607
|
+
[🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
|
464
608
|
[🖇sponsor]: https://github.com/sponsors/pboling
|
465
|
-
[🖇polar-img]: https://img.shields.io/badge/polar-donate-
|
609
|
+
[🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
|
466
610
|
[🖇polar]: https://polar.sh/pboling
|
467
|
-
[🖇kofi-img]: https://img.shields.io/badge/
|
611
|
+
[🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
|
468
612
|
[🖇kofi]: https://ko-fi.com/O5O86SNP4
|
469
|
-
[🖇patreon-img]: https://img.shields.io/badge/patreon-donate-
|
613
|
+
[🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
|
470
614
|
[🖇patreon]: https://patreon.com/galtzo
|
471
|
-
[🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee
|
615
|
+
[🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
|
472
616
|
[🖇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
|
473
617
|
[🖇buyme]: https://www.buymeacoffee.com/pboling
|
618
|
+
[🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
|
619
|
+
[🖇paypal-bottom-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=for-the-badge&logo=paypal&color=0A0A0A
|
620
|
+
[🖇paypal]: https://www.paypal.com/paypalme/peterboling
|
621
|
+
[🖇floss-funding.dev]: https://floss-funding.dev
|
622
|
+
[🖇floss-funding-gem]: https://github.com/galtzo-floss/floss_funding
|
623
|
+
[✉️discord-invite]: https://discord.gg/3qme4XHNKN
|
624
|
+
[✉️discord-invite-img-ftb]: https://img.shields.io/discord/1373797679469170758?style=for-the-badge&logo=discord
|
625
|
+
[✉️ruby-friends-img]: https://img.shields.io/badge/daily.dev-%F0%9F%92%8E_Ruby_Friends-0A0A0A?style=for-the-badge&logo=dailydotdev&logoColor=white
|
626
|
+
[✉️ruby-friends]: https://app.daily.dev/squads/rubyfriends
|
474
627
|
|
475
628
|
[✇bundle-group-pattern]: https://gist.github.com/pboling/4564780
|
476
629
|
[⛳️gem-namespace]: https://github.com/omniauth/omniauth-identity
|
477
|
-
[⛳️namespace-img]: https://img.shields.io/badge/namespace-
|
478
|
-
[⛳️gem-name]: https://
|
479
|
-
[⛳️name-img]: https://img.shields.io/badge/name-omniauth--identity-
|
480
|
-
[
|
481
|
-
[
|
482
|
-
[🚂
|
483
|
-
[🚂
|
630
|
+
[⛳️namespace-img]: https://img.shields.io/badge/namespace-Omniauth::Identity-3C2D2D.svg?style=square&logo=ruby&logoColor=white
|
631
|
+
[⛳️gem-name]: https://bestgems.org/gems/omniauth-identity
|
632
|
+
[⛳️name-img]: https://img.shields.io/badge/name-omniauth--identity-3C2D2D.svg?style=square&logo=rubygems&logoColor=red
|
633
|
+
[⛳️tag-img]: https://img.shields.io/github/tag/omniauth/omniauth-identity.svg
|
634
|
+
[⛳️tag]: http://github.com/omniauth/omniauth-identity/releases
|
635
|
+
[🚂maint-blog]: http://www.railsbling.com/tags/omniauth-identity
|
636
|
+
[🚂maint-blog-img]: https://img.shields.io/badge/blog-railsbling-0093D0.svg?style=for-the-badge&logo=rubyonrails&logoColor=orange
|
637
|
+
[🚂maint-contact]: http://www.railsbling.com/contact
|
638
|
+
[🚂maint-contact-img]: https://img.shields.io/badge/Contact-Maintainer-0093D0.svg?style=flat&logo=rubyonrails&logoColor=red
|
484
639
|
[💖🖇linkedin]: http://www.linkedin.com/in/peterboling
|
485
640
|
[💖🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-LinkedIn-0B66C2?style=flat&logo=newjapanprowrestling
|
486
|
-
[💖✌️wellfound]: https://
|
641
|
+
[💖✌️wellfound]: https://wellfound.com/u/peter-boling
|
487
642
|
[💖✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=flat&logo=wellfound
|
488
643
|
[💖💲crunchbase]: https://www.crunchbase.com/person/peter-boling
|
489
644
|
[💖💲crunchbase-img]: https://img.shields.io/badge/peter--boling-purple?style=flat&logo=crunchbase
|
490
645
|
[💖🐘ruby-mast]: https://ruby.social/@galtzo
|
491
|
-
[💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https
|
646
|
+
[💖🐘ruby-mast-img]: https://img.shields.io/mastodon/follow/109447111526622197?domain=https://ruby.social&style=flat&logo=mastodon&label=Ruby%20@galtzo
|
492
647
|
[💖🦋bluesky]: https://bsky.app/profile/galtzo.com
|
493
648
|
[💖🦋bluesky-img]: https://img.shields.io/badge/@galtzo.com-0285FF?style=flat&logo=bluesky&logoColor=white
|
494
649
|
[💖🌳linktree]: https://linktr.ee/galtzo
|
@@ -505,7 +660,7 @@ P.S. Use the gem => Discord for help
|
|
505
660
|
[👨🏼🏫expsup-upwork-img]: https://img.shields.io/badge/UpWork-13544E?style=for-the-badge&logo=Upwork&logoColor=white
|
506
661
|
[👨🏼🏫expsup-codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
|
507
662
|
[👨🏼🏫expsup-codementor-img]: https://img.shields.io/badge/CodeMentor-Get_Help-1abc9c?style=for-the-badge&logo=CodeMentor&logoColor=white
|
508
|
-
[🏙️entsup-tidelift]: https://tidelift.com/subscription
|
663
|
+
[🏙️entsup-tidelift]: https://tidelift.com/subscription/pkg/rubygems-omniauth-identity?utm_source=rubygems-omniauth-identity&utm_medium=referral&utm_campaign=readme
|
509
664
|
[🏙️entsup-tidelift-img]: https://img.shields.io/badge/Tidelift_and_Sonar-Enterprise_Support-FD3456?style=for-the-badge&logo=sonar&logoColor=white
|
510
665
|
[🏙️entsup-tidelift-sonar]: https://blog.tidelift.com/tidelift-joins-sonar
|
511
666
|
[💁🏼♂️peterboling]: http://www.peterboling.com
|
@@ -518,24 +673,24 @@ P.S. Use the gem => Discord for help
|
|
518
673
|
[📜src-gh]: https://github.com/omniauth/omniauth-identity
|
519
674
|
[📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
520
675
|
[📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
521
|
-
[📜wiki]: https://
|
522
|
-
[📜wiki
|
523
|
-
[
|
676
|
+
[📜gl-wiki]: https://gitlab.com/omniauth/omniauth-identity/-/wikis/home
|
677
|
+
[📜gh-wiki]: https://github.com/omniauth/omniauth-identity/wiki
|
678
|
+
[📜gl-wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=gitlab&logoColor=white
|
679
|
+
[📜gh-wiki-img]: https://img.shields.io/badge/wiki-examples-943CD2.svg?style=for-the-badge&logo=github&logoColor=white
|
680
|
+
[👽dl-rank]: https://bestgems.org/gems/omniauth-identity
|
524
681
|
[👽dl-ranki]: https://img.shields.io/gem/rd/omniauth-identity.svg
|
525
682
|
[👽oss-help]: https://www.codetriage.com/omniauth/omniauth-identity
|
526
683
|
[👽oss-helpi]: https://www.codetriage.com/omniauth/omniauth-identity/badges/users.svg
|
527
|
-
[👽version]: https://
|
684
|
+
[👽version]: https://bestgems.org/gems/omniauth-identity
|
528
685
|
[👽versioni]: https://img.shields.io/gem/v/omniauth-identity.svg
|
529
|
-
[
|
530
|
-
[
|
531
|
-
[
|
532
|
-
[
|
533
|
-
[
|
534
|
-
[
|
535
|
-
[
|
536
|
-
[
|
537
|
-
[🔑depfu]: https://depfu.com/github/omniauth/omniauth-identity?project_id=22381
|
538
|
-
[🔑depfui♻️]: https://badges.depfu.com/badges/6c9b45362951b872127f9e46d39bed76/count.svg
|
686
|
+
[🏀qlty-mnt]: https://qlty.sh/gh/omniauth/projects/omniauth-identity
|
687
|
+
[🏀qlty-mnti]: https://qlty.sh/gh/omniauth/projects/omniauth-identity/maintainability.svg
|
688
|
+
[🏀qlty-cov]: https://qlty.sh/gh/omniauth/projects/omniauth-identity/metrics/code?sort=coverageRating
|
689
|
+
[🏀qlty-covi]: https://qlty.sh/gh/omniauth/projects/omniauth-identity/coverage.svg
|
690
|
+
[🏀codecov]: https://codecov.io/gh/omniauth/omniauth-identity
|
691
|
+
[🏀codecovi]: https://codecov.io/gh/omniauth/omniauth-identity/graph/badge.svg
|
692
|
+
[🏀coveralls]: https://coveralls.io/github/omniauth/omniauth-identity?branch=main
|
693
|
+
[🏀coveralls-img]: https://coveralls.io/repos/github/omniauth/omniauth-identity/badge.svg?branch=main
|
539
694
|
[🖐codeQL]: https://github.com/omniauth/omniauth-identity/security/code-scanning
|
540
695
|
[🖐codeQL-img]: https://github.com/omniauth/omniauth-identity/actions/workflows/codeql-analysis.yml/badge.svg
|
541
696
|
[🚎1-an-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/ancient.yml
|
@@ -560,9 +715,14 @@ P.S. Use the gem => Discord for help
|
|
560
715
|
[🚎10-j-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/jruby.yml/badge.svg
|
561
716
|
[🚎11-c-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/current.yml
|
562
717
|
[🚎11-c-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/current.yml/badge.svg
|
563
|
-
[🚎12-crh-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/
|
564
|
-
[🚎12-crh-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/
|
565
|
-
[
|
718
|
+
[🚎12-crh-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/dep-heads.yml
|
719
|
+
[🚎12-crh-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/dep-heads.yml/badge.svg
|
720
|
+
[🚎13-🔒️-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/locked_deps.yml
|
721
|
+
[🚎13-🔒️-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/locked_deps.yml/badge.svg
|
722
|
+
[🚎14-🔓️-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/unlocked_deps.yml
|
723
|
+
[🚎14-🔓️-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/unlocked_deps.yml/badge.svg
|
724
|
+
[🚎15-🪪-wf]: https://github.com/omniauth/omniauth-identity/actions/workflows/license-eye.yml
|
725
|
+
[🚎15-🪪-wfi]: https://github.com/omniauth/omniauth-identity/actions/workflows/license-eye.yml/badge.svg
|
566
726
|
[💎ruby-2.4i]: https://img.shields.io/badge/Ruby-2.4-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
567
727
|
[💎ruby-2.5i]: https://img.shields.io/badge/Ruby-2.5-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
568
728
|
[💎ruby-2.6i]: https://img.shields.io/badge/Ruby-2.6-DF00CA?style=for-the-badge&logo=ruby&logoColor=white
|
@@ -573,20 +733,26 @@ P.S. Use the gem => Discord for help
|
|
573
733
|
[💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
|
574
734
|
[💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
|
575
735
|
[💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
|
576
|
-
[💎truby-22.3i]: https://img.shields.io/badge/Truffle_Ruby-22.
|
577
|
-
[💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.
|
736
|
+
[💎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
|
737
|
+
[💎truby-23.0i]: https://img.shields.io/badge/Truffle_Ruby-23.0_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=pink
|
578
738
|
[💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
|
579
739
|
[💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
|
580
740
|
[💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
|
581
|
-
[💎jruby-9.
|
582
|
-
[💎jruby-9.
|
741
|
+
[💎jruby-9.1i]: https://img.shields.io/badge/JRuby-9.1_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
|
742
|
+
[💎jruby-9.2i]: https://img.shields.io/badge/JRuby-9.2_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
|
743
|
+
[💎jruby-9.3i]: https://img.shields.io/badge/JRuby-9.3_(%F0%9F%9A%ABCI)-AABBCC?style=for-the-badge&logo=ruby&logoColor=red
|
583
744
|
[💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
|
584
745
|
[💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
|
585
746
|
[💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
|
586
747
|
[🤝gh-issues]: https://github.com/omniauth/omniauth-identity/issues
|
587
748
|
[🤝gh-pulls]: https://github.com/omniauth/omniauth-identity/pulls
|
749
|
+
[🤝gl-issues]: https://gitlab.com/omniauth/omniauth-identity/-/issues
|
750
|
+
[🤝gl-pulls]: https://gitlab.com/omniauth/omniauth-identity/-/merge_requests
|
751
|
+
[🤝cb-issues]: https://codeberg.org/omniauth/omniauth-identity/issues
|
752
|
+
[🤝cb-pulls]: https://codeberg.org/omniauth/omniauth-identity/pulls
|
753
|
+
[🤝cb-donate]: https://donate.codeberg.org/
|
588
754
|
[🤝contributing]: CONTRIBUTING.md
|
589
|
-
[
|
755
|
+
[🏀codecov-g]: https://codecov.io/gh/omniauth/omniauth-identity/graphs/tree.svg
|
590
756
|
[🖐contrib-rocks]: https://contrib.rocks
|
591
757
|
[🖐contributors]: https://github.com/omniauth/omniauth-identity/graphs/contributors
|
592
758
|
[🖐contributors-img]: https://contrib.rocks/image?repo=omniauth/omniauth-identity
|
@@ -602,37 +768,25 @@ P.S. Use the gem => Discord for help
|
|
602
768
|
[📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
|
603
769
|
[📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-34495e.svg?style=flat
|
604
770
|
[📌gitmoji]:https://gitmoji.dev
|
605
|
-
[📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20
|
771
|
+
[📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
|
606
772
|
[🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
|
607
|
-
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.
|
773
|
+
[🧮kloc-img]: https://img.shields.io/badge/KLOC-0.467-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
|
608
774
|
[🔐security]: SECURITY.md
|
609
775
|
[🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
|
610
776
|
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
611
777
|
[📄license]: LICENSE.txt
|
612
778
|
[📄license-ref]: https://opensource.org/licenses/MIT
|
613
779
|
[📄license-img]: https://img.shields.io/badge/License-MIT-259D6C.svg
|
780
|
+
[📄license-compat]: https://dev.to/galtzo/how-to-check-license-compatibility-41h0
|
781
|
+
[📄license-compat-img]: https://img.shields.io/badge/Apache_Compatible:_Category_A-%E2%9C%93-259D6C.svg?style=flat&logo=Apache
|
614
782
|
[📄ilo-declaration]: https://www.ilo.org/declaration/lang--en/index.htm
|
615
783
|
[📄ilo-declaration-img]: https://img.shields.io/badge/ILO_Fundamental_Principles-✓-259D6C.svg?style=flat
|
616
784
|
[🚎yard-current]: http://rubydoc.info/gems/omniauth-identity
|
617
785
|
[🚎yard-head]: https://omniauth-identity.galtzo.com
|
618
|
-
[💎stone_checksums]: https://github.com/
|
619
|
-
[💎SHA_checksums]: https://
|
786
|
+
[💎stone_checksums]: https://github.com/galtzo-floss/stone_checksums
|
787
|
+
[💎SHA_checksums]: https://gitlab.com/omniauth/omniauth-identity/-/tree/main/checksums
|
620
788
|
[💎rlts]: https://github.com/rubocop-lts/rubocop-lts
|
621
|
-
[💎rlts-img]: https://img.shields.io/badge/code_style_
|
622
|
-
[
|
623
|
-
[
|
624
|
-
|
625
|
-
<details>
|
626
|
-
<summary>
|
627
|
-
Disabled Badges
|
628
|
-
</summary>
|
629
|
-
|
630
|
-
Badges for failing services.
|
631
|
-
Bug reports filed.
|
632
|
-
Once fixed, these should look much nicer.
|
633
|
-
|
634
|
-
[![QLTY Maintainability][🔑qlty-mnti♻️]][🔑qlty-mnt]
|
635
|
-
[![CodeCov Test Coverage][🔑codecovi♻️]][🔑codecov]
|
636
|
-
[![Coverage Graph][🔑codecov-g♻️]][🔑codecov]
|
637
|
-
|
638
|
-
</details>
|
789
|
+
[💎rlts-img]: https://img.shields.io/badge/code_style_&_linting-rubocop--lts-34495e.svg?plastic&logo=ruby&logoColor=white
|
790
|
+
[💎appraisal2]: https://github.com/appraisal-rb/appraisal2
|
791
|
+
[💎appraisal2-img]: https://img.shields.io/badge/appraised_by-appraisal2-34495e.svg?plastic&logo=ruby&logoColor=white
|
792
|
+
[💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/
|