oauth2 2.0.16 → 2.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: da97472c8338b07cf3f6022363d67d76766eaf2a321de6371d3549580115a636
4
- data.tar.gz: 9fd1a0061596425903a1e820b3db93ea80e1b60fce9a5e3f0fc7fdbf3b075631
3
+ metadata.gz: 658392d3b9b32646f33f3e35ac1b72a2a70e59ea9191064dd62efe36ba427cba
4
+ data.tar.gz: 135eb537e72639a92f68af58a953e8e2b6d9d204b8f5d34259e91021b47deba0
5
5
  SHA512:
6
- metadata.gz: 36ee9469a338201a06e52ef7a6d3a7390bc6f72e4362a7a14e604e53550b35a3d2fe6f27f15ee66e6e6500a56da3963e009b005ba4ccf28db42ff98b0302f23b
7
- data.tar.gz: ea6734018d8a32ce265a33f39d2151cb42dc8d2b76282e3788fdd4806dc719aa82c7052ffd5653e855e9a105004fa3cc6a7dc02fdf6265bd45cd12412b6cbbec
6
+ metadata.gz: 9459b77a1c8f828a844b8884eb9ccaddf8cb6a3ba76840c3ea8a49eeb0c5f57b7b2f4ffd48f4cda50b645d0461b0eb24d433327d18a49560cf1f45e0c3db08a9
7
+ data.tar.gz: d3fdc9f9748c3e1249de2fd5c17336e663abed93d93db25dcd8e81e04241d749cb5c765c5653d08e94f53ff7f1cf9de5dd0cd65f6cf03af851d9f74c0d7fe845
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -17,20 +17,40 @@ Please file a bug if you notice a violation of semantic versioning.
17
17
  [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
18
18
 
19
19
  ## [Unreleased]
20
+
20
21
  ### Added
22
+
21
23
  ### Changed
24
+
22
25
  ### Deprecated
26
+
23
27
  ### Removed
28
+
24
29
  ### Fixed
30
+
25
31
  ### Security
26
32
 
33
+ ## [2.0.17] - 2025-09-15
34
+
35
+ - TAG: [v2.0.17][2.0.17t]
36
+ - COVERAGE: 100.00% -- 526/526 lines in 14 files
37
+ - BRANCH COVERAGE: 100.00% -- 178/178 branches in 14 files
38
+ - 90.48% documented
39
+
40
+ ### Added
41
+
42
+ - [gh!682][gh!682] - AccessToken: support Hash-based verb-dependent token transmission mode (e.g., {get: :query, post: :header})
43
+
27
44
  ## [2.0.16] - 2025-09-14
45
+
28
46
  - TAG: [v2.0.16][2.0.16t]
29
- - COVERAGE: 96.33% -- 394/409 lines in 14 files
30
- - BRANCH COVERAGE: 86.49% -- 64/74 branches in 14 files
47
+ - COVERAGE: 100.00% -- 520/520 lines in 14 files
48
+ - BRANCH COVERAGE: 100.00% -- 176/176 branches in 14 files
31
49
  - 90.48% documented
50
+
32
51
  ### Added
33
- - [gh!680—][gh!680]E2E example using mock test server added in v2.0.11 by @pboling
52
+
53
+ - [gh!680][gh!680] - E2E example using mock test server added in v2.0.11 by @pboling
34
54
  - mock-oauth2-server upgraded to v2.3.0
35
55
  - https://github.com/navikt/mock-oauth2-server
36
56
  - `docker compose -f docker-compose-ssl.yml up -d --wait`
@@ -39,10 +59,12 @@ Please file a bug if you notice a violation of semantic versioning.
39
59
  - mock server readiness wait is 90s
40
60
  - override via E2E_WAIT_TIMEOUT
41
61
  - [gh!676][gh!676], [gh!679][gh!679] - Apache SkyWalking Eyes dependency license check by @pboling
62
+
42
63
  ### Changed
64
+
43
65
  - [gh!678][gh!678] - Many improvements to make CI more resilient (past/future proof) by @pboling
44
66
  - [gh!681][gh!681] - Upgrade to kettle-dev v1.1.19
45
- ### Security
67
+
46
68
  [gh!676]: https://github.com/ruby-oauth/oauth2/pull/676
47
69
  [gh!678]: https://github.com/ruby-oauth/oauth2/pull/678
48
70
  [gh!679]: https://github.com/ruby-oauth/oauth2/pull/679
@@ -50,11 +72,14 @@ Please file a bug if you notice a violation of semantic versioning.
50
72
  [gh!681]: https://github.com/ruby-oauth/oauth2/pull/681
51
73
 
52
74
  ## [2.0.15] - 2025-09-08
75
+
53
76
  - TAG: [v2.0.15][2.0.15t]
54
77
  - COVERAGE: 100.00% -- 519/519 lines in 14 files
55
78
  - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
56
79
  - 90.48% documented
80
+
57
81
  ### Added
82
+
58
83
  - [gh!671][gh!671] - Complete documentation example for Instagram by @pboling
59
84
  - .env.local.example for contributor happiness
60
85
  - note lack of builds for JRuby 9.2, 9.3 & Truffleruby 22.3, 23.0
@@ -62,12 +87,15 @@ Please file a bug if you notice a violation of semantic versioning.
62
87
  - [community/discussions/15452][GHA-allow-failure]
63
88
  - [gh!670][gh!670] - AccessToken: verb-dependent token transmission mode by @mrj
64
89
  - e.g., Instagram GET=:query, POST/DELETE=:header
90
+
65
91
  ### Changed
92
+
66
93
  - [gh!669][gh!669] - Upgrade to kettle-dev v1.1.9 by @pboling
94
+
67
95
  ### Fixed
96
+
68
97
  - Remove accidentally duplicated lines, and fix typos in CHANGELOG.md
69
98
  - point badge to the correct workflow for Ruby 2.3 (caboose.yml)
70
- ### Security
71
99
 
72
100
  [gh!669]: https://github.com/ruby-oauth/oauth2/pull/669
73
101
  [gh!670]: https://github.com/ruby-oauth/oauth2/pull/670
@@ -76,11 +104,14 @@ Please file a bug if you notice a violation of semantic versioning.
76
104
  [GHA-allow-failure]: https://github.com/orgs/community/discussions/15452
77
105
 
78
106
  ## [2.0.14] - 2025-08-31
107
+
79
108
  - TAG: [v2.0.14][2.0.14t]
80
109
  - COVERAGE: 100.00% -- 519/519 lines in 14 files
81
110
  - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
82
111
  - 90.48% documented
112
+
83
113
  ### Added
114
+
84
115
  - improved documentation by @pboling
85
116
  - [gh!665][gh!665] - Document Mutual TLS (mTLS) usage with example in README (connection_opts.ssl client_cert/client_key and auth_scheme: :tls_client_auth) by @pboling
86
117
  - [gh!666][gh!666] - Document usage of flat query params using Faraday::FlatParamsEncoder, with example URI, in README by @pboling
@@ -103,11 +134,14 @@ Please file a bug if you notice a violation of semantic versioning.
103
134
  [gh!666]: https://github.com/ruby-oauth/oauth2/pull/666
104
135
 
105
136
  ## [2.0.13] - 2025-08-30
137
+
106
138
  - TAG: [v2.0.13][2.0.13t]
107
139
  - COVERAGE: 100.00% -- 519/519 lines in 14 files
108
140
  - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
109
141
  - 90.48% documented
142
+
110
143
  ### Added
144
+
111
145
  - [gh!656][gh!656] - Support revocation with URL-encoded parameters
112
146
  - [gh!660][gh!660] - Inline yard documentation by @pboling
113
147
  - [gh!660][gh!660] - Complete RBS types documentation by @pboling
@@ -115,11 +149,16 @@ Please file a bug if you notice a violation of semantic versioning.
115
149
  - [gh!657][gh!657] - Updated documentation for org-rename by @pboling
116
150
  - More funding links by @Aboling0
117
151
  - Documentation: Added docs/OIDC.md with OIDC 1.0 overview, example, and references
152
+
118
153
  ### Changed
154
+
119
155
  - Upgrade Code of Conduct to Contributor Covenant 2.1 by @pboling
120
156
  - [gh!660][gh!660] - Shrink post-install message by 4 lines by @pboling
157
+
121
158
  ### Fixed
159
+
122
160
  - [gh!660][gh!660] - Links in README (including link to HEAD documentation) by @pboling
161
+
123
162
  ### Security
124
163
 
125
164
  [gh!660]: https://github.com/ruby-oauth/oauth2/pull/660
@@ -127,31 +166,40 @@ Please file a bug if you notice a violation of semantic versioning.
127
166
  [gh!656]: https://github.com/ruby-oauth/oauth2/pull/656
128
167
 
129
168
  ## [2.0.12] - 2025-05-31
169
+
130
170
  - TAG: [v2.0.12][2.0.12t]
131
171
  - Line Coverage: 100.0% (520 / 520)
132
172
  - Branch Coverage: 100.0% (174 / 174)
133
173
  - 80.00% documented
174
+
134
175
  ### Added
176
+
135
177
  - [gh!652][gh!652] - Support IETF rfc7515 JSON Web Signature - JWS by @mridang
136
178
  - Support JWT `kid` for key discovery and management
137
179
  - More Documentation by @pboling
138
180
  - Documented Serialization Extensions
139
181
  - Added Gatzo.com FLOSS logo by @Aboling0, CC BY-SA 4.0
140
182
  - Documentation site @ https://oauth2.galtzo.com now complete
183
+
141
184
  ### Changed
185
+
142
186
  - Updates to gemspec (email, funding url, post install message)
187
+
143
188
  ### Fixed
144
- - Documentation Typos by @pboling
145
189
 
190
+ - Documentation Typos by @pboling
146
191
 
147
192
  [gh!652]: https://github.com/ruby-oauth/oauth2/pull/652
148
193
 
149
194
  ## [2.0.11] - 2025-05-23
195
+
150
196
  - TAG: [v2.0.11][2.0.11t]
151
197
  - COVERAGE: 100.00% -- 518/518 lines in 14 files
152
198
  - BRANCH COVERAGE: 100.00% -- 172/172 branches in 14 files
153
199
  - 80.00% documented
200
+
154
201
  ### Added
202
+
155
203
  - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - `:snaky_hash_klass` option (@pboling)
156
204
  - More documentation
157
205
  - Codeberg as ethical mirror (@pboling)
@@ -165,20 +213,27 @@ Please file a bug if you notice a violation of semantic versioning.
165
213
  - [!649](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/649) - Test compatibility with all key minor versions of Hashie v0, v1, v2, v3, v4, v5, HEAD (@pboling)
166
214
  - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Mock OAuth2 server for testing (@pboling)
167
215
  - https://github.com/navikt/mock-oauth2-server
216
+
168
217
  ### Changed
218
+
169
219
  - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Upgraded to snaky_hash v2.0.3 (@pboling)
170
220
  - Provides solution for serialization issues
171
221
  - Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site (@pboling)
222
+
172
223
  ### Fixed
224
+
173
225
  - [gh!650](https://github.com/ruby-oauth/oauth2/pull/650) - Regression in return type of `OAuth2::Response#parsed` (@pboling)
174
226
  - Incorrect documentation related to silencing warnings (@pboling)
175
227
 
176
228
  ## [2.0.10] - 2025-05-17
229
+
177
230
  - TAG: [v2.0.10][2.0.10t]
178
231
  - COVERAGE: 100.00% -- 518/518 lines in 14 files
179
232
  - BRANCH COVERAGE: 100.00% -- 170/170 branches in 14 files
180
233
  - 79.05% documented
234
+
181
235
  ### Added
236
+
182
237
  - [gh!632](https://github.com/ruby-oauth/oauth2/pull/632) - Added `funding.yml` (@Aboling0)
183
238
  - [!635](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/635) - Added `.gitlab-ci.yml` (@jessieay)
184
239
  - [#638](https://gitlab.com/ruby-oauth/oauth2/-/issues/638) - Documentation of support for **ILO Fundamental Principles of Rights at Work** (@pboling)
@@ -198,14 +253,18 @@ Please file a bug if you notice a violation of semantic versioning.
198
253
  - See: https://datatracker.ietf.org/doc/html/rfc7009
199
254
  - [gh!644](https://github.com/ruby-oauth/oauth2/pull/644), [gh!645](https://github.com/ruby-oauth/oauth2/pull/645) - Added CITATION.cff (@Aboling0)
200
255
  - [!648](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/648) - Improved documentation (@pboling)
256
+
201
257
  ### Changed
258
+
202
259
  - Default value of `OAuth2.config.silence_extra_tokens_warning` was `false`, now `true` (@pboling)
203
260
  - Gem releases are now cryptographically signed, with a 20-year cert (@pboling)
204
261
  - Allow linux distros to build release without signing, as their package managers sign independently
205
262
  - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2::AccessToken#refresh` now supports block param pass through (@pboling)
206
263
  - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2.config` is no longer writable (@pboling)
207
264
  - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - Errors raised by `OAuth2::AccessToken` are now always `OAuth2::Error` and have better metadata (@pboling)
265
+
208
266
  ### Fixed
267
+
209
268
  - [#95](https://gitlab.com/ruby-oauth/oauth2/-/issues/95) - restoring an access token via `AccessToken#from_hash` (@pboling)
210
269
  - This was a 13 year old bug report. 😘
211
270
  - [#619](https://gitlab.com/ruby-oauth/oauth2/-/issues/619) - Internal options (like `snaky`, `raise_errors`, and `parse`) are no longer included in request (@pboling)
@@ -221,37 +280,58 @@ Please file a bug if you notice a violation of semantic versioning.
221
280
  - [gh!646](https://github.com/ruby-oauth/oauth2/pull/646) - Change `require` to `require_relative` (improve performance) (@Aboling0)
222
281
 
223
282
  ## [2.0.9] - 2022-09-16
283
+
224
284
  - TAG: [v2.0.9][2.0.9t]
285
+
225
286
  ### Added
287
+
226
288
  - More specs (@pboling)
289
+
227
290
  ### Changed
291
+
228
292
  - Complete migration to main branch as default (@pboling)
229
293
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
230
294
 
231
295
  ## [2.0.8] - 2022-09-01
296
+
232
297
  - TAG: [v2.0.8][2.0.8t]
298
+
233
299
  ### Changed
300
+
234
301
  - [!630](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/630) - Extract snaky_hash to external dependency (@pboling)
302
+
235
303
  ### Added
304
+
236
305
  - [!631](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/631) - New global configuration option OAuth2.config.silence_extra_tokens_warning (default: false) fixes [#628](https://gitlab.com/ruby-oauth/oauth2/-/issues/628)
237
306
 
238
307
  ## [2.0.7] - 2022-08-22
308
+
239
309
  - TAG: [v2.0.7][2.0.7t]
310
+
240
311
  ### Added
312
+
241
313
  - [!629](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/629) - Allow POST of JSON to get token (@pboling, @terracatta)
314
+
242
315
  ### Fixed
316
+
243
317
  - [!626](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/626) - Fixes a regression in 2.0.6. Will now prefer the key order from the lookup, not the hash keys (@rickselby)
244
318
  - Note: This fixes compatibility with `omniauth-oauth2` and AWS
245
319
  - [!625](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/625) - Fixes the printed version in the post install message (@hasghari)
246
320
 
247
321
  ## [2.0.6] - 2022-07-13
322
+
248
323
  - TAG: [v2.0.6][2.0.6t]
324
+
249
325
  ### Fixed
326
+
250
327
  - [!624](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/624) - Fixes a [regression](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/623) in v2.0.5, where an error would be raised in refresh_token flows due to (legitimate) lack of access_token (@pboling)
251
328
 
252
329
  ## [2.0.5] - 2022-07-07
330
+
253
331
  - TAG: [v2.0.5][2.0.5t]
332
+
254
333
  ### Fixed
334
+
255
335
  - [!620](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/620) - Documentation improvements, to help with upgrading (@swanson)
256
336
  - [!621](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/621) - Fixed [#528](https://gitlab.com/ruby-oauth/oauth2/-/issues/528) and [#619](https://gitlab.com/ruby-oauth/oauth2/-/issues/619) (@pboling)
257
337
  - All data in responses is now returned, with the access token removed and set as `token`
@@ -261,35 +341,52 @@ Please file a bug if you notice a violation of semantic versioning.
261
341
  - There is now 100% test coverage, for lines _and_ branches, and it will stay that way.
262
342
 
263
343
  ## [2.0.4] - 2022-07-01
344
+
264
345
  - TAG: [v2.0.4][2.0.4t]
346
+
265
347
  ### Fixed
348
+
266
349
  - [!618](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/618) - In some scenarios the `snaky` option default value was not applied (@pboling)
267
350
 
268
351
  ## [2.0.3] - 2022-06-28
352
+
269
353
  - TAG: [v2.0.3][2.0.3t]
354
+
270
355
  ### Added
356
+
271
357
  - [!611](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/611) - Proper deprecation warnings for `extract_access_token` argument (@pboling)
272
358
  - [!612](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/612) - Add `snaky: false` option to skip conversion to `OAuth2::SnakyHash` (default: true) (@pboling)
359
+
273
360
  ### Fixed
361
+
274
362
  - [!608](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/608) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@nbibler)
275
363
  - [!615](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/615) - Fix support for requests with blocks, see `Faraday::Connection#run_request` (@pboling)
276
364
 
277
365
  ## [2.0.2] - 2022-06-24
366
+
278
367
  - TAG: [v2.0.2][2.0.2t]
368
+
279
369
  ### Fixed
370
+
280
371
  - [!604](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/604) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@stanhu)
281
372
  - [!606](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/606) - Ruby 2.7 deprecation warning fix: Move `access_token_class` parameter into `Client` constructor (@stanhu)
282
373
  - [!607](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/607) - CHANGELOG correction, reference to `OAuth2::ConnectionError` (@zavan)
283
374
 
284
375
  ## [2.0.1] - 2022-06-22
376
+
285
377
  - TAG: [v2.0.1][2.0.1t]
378
+
286
379
  ### Added
380
+
287
381
  - Documentation improvements (@pboling)
288
382
  - Increased test coverage to 99% (@pboling)
289
383
 
290
384
  ## [2.0.0] - 2022-06-21
385
+
291
386
  - TAG: [v2.0.0][2.0.0t]
387
+
292
388
  ### Added
389
+
293
390
  - [!158](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/158), [!344](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/344) - Optionally pass raw response to parsers (@niels)
294
391
  - [!190](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/190), [!332](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/332), [!334](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/334), [!335](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/335), [!360](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/360), [!426](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/426), [!427](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/427), [!461](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/461) - Documentation (@josephpage, @pboling, @meganemura, @joshRpowell, @elliotcm)
295
392
  - [!220](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/220) - Support IETF rfc7523 JWT Bearer Tokens Draft 04+ (@jhmoore)
@@ -316,7 +413,9 @@ Please file a bug if you notice a violation of semantic versioning.
316
413
  - [!571](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/571) - Support Ruby 3.1 (@pboling)
317
414
  - [!575](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/575) - Support IETF rfc7231, section 7.1.2 - relative location in redirect (@pboling)
318
415
  - [!581](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/581) - _Documentation_: of breaking changes (@pboling)
416
+
319
417
  ### Changed
418
+
320
419
  - [!191](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/191) - **BREAKING**: Token is expired if `expired_at` time is `now` (@davestevens)
321
420
  - [!312](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/312) - **BREAKING**: Set `:basic_auth` as default for `:auth_scheme` instead of `:request_body`. This was default behavior before 1.3.0. (@tetsuya, @wy193777)
322
421
  - [!317](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/317) - _Dependency_: Upgrade `jwt` to 2.x.x (@travisofthenorth)
@@ -332,7 +431,9 @@ Please file a bug if you notice a violation of semantic versioning.
332
431
  - As of version 2.0.4 you can turn key transformation off with the `snaky: false` option.
333
432
  - [!576](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - **BREAKING**: Stop rescuing parsing errors (@pboling)
334
433
  - [!591](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - _DEPRECATION_: `OAuth2::Client` - `:extract_access_token` option is deprecated
434
+
335
435
  ### Fixed
436
+
336
437
  - [!158](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/158), [!344](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/344) - Handling of errors when using `omniauth-facebook` (@niels)
337
438
  - [!294](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/294) - Fix: "Unexpected middleware set" issue with Faraday when `OAUTH_DEBUG=true` (@spectator, @gafrom)
338
439
  - [!300](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/300) - _Documentation_: `Oauth2::Error` - Error codes are strings, not symbols (@NobodysNightmare)
@@ -351,7 +452,9 @@ Please file a bug if you notice a violation of semantic versioning.
351
452
  - [!595](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/595) - Graceful handling of empty responses from `Client#get_token`, respecting `:raise_errors` config (@stanhu)
352
453
  - [!596](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/596) - Consistency between `AccessToken#refresh` and `Client#get_token` named arguments (@stanhu)
353
454
  - [!598](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/598) - Fix unparseable data not raised as error in `Client#get_token`, respecting `:raise_errors` config (@stanhu)
455
+
354
456
  ### Removed
457
+
355
458
  - [!341](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/341) - Remove Rdoc & Jeweler related files (@josephpage)
356
459
  - [!342](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/342) - **BREAKING**: Dropped support for Ruby 1.8 (@josephpage)
357
460
  - [!539](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/539) - Remove reliance on globally included OAuth2 in tests, analog of [!538](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/538) for 1-4-stable (@anderscarling)
@@ -360,15 +463,18 @@ Please file a bug if you notice a violation of semantic versioning.
360
463
  - [!590](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/590) - _Dependency_: Removed `multi_json` (@stanhu)
361
464
 
362
465
  ## [1.4.11] - 2022-09-16
466
+
363
467
  - TAG: [v1.4.11][1.4.11t]
364
468
  - Complete migration to main branch as default (@pboling)
365
469
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
366
470
 
367
471
  ## [1.4.10] - 2022-07-01
472
+
368
473
  - TAG: [v1.4.10][1.4.10t]
369
474
  - FIPS Compatibility [!587](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/587) (@akostadinov)
370
475
 
371
476
  ## [1.4.9] - 2022-02-20
477
+
372
478
  - TAG: [v1.4.9][1.4.9t]
373
479
  - Fixes compatibility with Faraday v2 [572](https://gitlab.com/ruby-oauth/oauth2/-/issues/572)
374
480
  - Includes supported versions of Faraday in test matrix:
@@ -378,6 +484,7 @@ Please file a bug if you notice a violation of semantic versioning.
378
484
  - Add Windows and MacOS to test matrix
379
485
 
380
486
  ## [1.4.8] - 2022-02-18
487
+
381
488
  - TAG: [v1.4.8][1.4.8t]
382
489
  - MFA is now required to push new gem versions (@pboling)
383
490
  - README overhaul w/ new Ruby Version and Engine compatibility policies (@pboling)
@@ -388,16 +495,19 @@ Please file a bug if you notice a violation of semantic versioning.
388
495
  - [!543](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/543) - Support for more modern Open SSL libraries (@pboling)
389
496
 
390
497
  ## [1.4.7] - 2021-03-19
498
+
391
499
  - TAG: [v1.4.7][1.4.7t]
392
500
  - [!541](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/541) - Backport fix to expires_at handling [!533](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/533) to 1-4-stable branch. (@dobon)
393
501
 
394
502
  ## [1.4.6] - 2021-03-19
503
+
395
504
  - TAG: [v1.4.6][1.4.6t]
396
505
  - [!540](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/540) - Add VERSION constant (@pboling)
397
506
  - [!537](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/537) - Fix crash in OAuth2::Client#get_token (@anderscarling)
398
507
  - [!538](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/538) - Remove reliance on globally included OAuth2 in tests, analogous to [!539](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/539) on main branch (@anderscarling)
399
508
 
400
509
  ## [1.4.5] - 2021-03-18
510
+
401
511
  - TAG: [v1.4.5][1.4.5t]
402
512
  - [!535](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/535) - Compatibility with range of supported Ruby OpenSSL versions, Rubocop updates, Github Actions, analogous to [!536](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/536) on main branch (@pboling)
403
513
  - [!518](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/518) - Add extract_access_token option to OAuth2::Client (@jonspalmer)
@@ -405,10 +515,12 @@ Please file a bug if you notice a violation of semantic versioning.
405
515
  - [!500](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/500) - Fix YARD documentation formatting (@olleolleolle)
406
516
 
407
517
  ## [1.4.4] - 2020-02-12
518
+
408
519
  - TAG: [v1.4.4][1.4.4t]
409
520
  - [!408](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/408) - Fixed expires_at for formatted time (@Lomey)
410
521
 
411
522
  ## [1.4.3] - 2020-01-29
523
+
412
524
  - TAG: [v1.4.3][1.4.3t]
413
525
  - [!483](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/483) - add project metadata to gemspec (@orien)
414
526
  - [!495](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/495) - support additional types of access token requests (@SteveyblamFreeagent, @thomcorley, @dgholz)
@@ -416,11 +528,13 @@ Please file a bug if you notice a violation of semantic versioning.
416
528
  - [!433](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/433) - allow field names with square brackets and numbers in params (@asm256)
417
529
 
418
530
  ## [1.4.2] - 2019-10-01
531
+
419
532
  - TAG: [v1.4.2][1.4.2t]
420
533
  - [!478](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/478) - support latest version of faraday & fix build (@pboling)
421
534
  - Officially support Ruby 2.6 and truffleruby
422
535
 
423
536
  ## [1.4.1] - 2018-10-13
537
+
424
538
  - TAG: [v1.4.1][1.4.1t]
425
539
  - [!417](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/417) - update jwt dependency (@thewoolleyman)
426
540
  - [!419](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/419) - remove rubocop dependency (temporary, added back in [!423](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/423)) (@pboling)
@@ -448,6 +562,7 @@ Please file a bug if you notice a violation of semantic versioning.
448
562
  [jruby-9.2]: https://www.jruby.org/2018/05/24/jruby-9-2-0-0.html
449
563
 
450
564
  ## [1.4.0] - 2017-06-09
565
+
451
566
  - TAG: [v1.4.0][1.4.0t]
452
567
  - Drop Ruby 1.8.7 support (@sferik)
453
568
  - Fix some RuboCop offenses (@sferik)
@@ -455,11 +570,13 @@ Please file a bug if you notice a violation of semantic versioning.
455
570
  - _Dependency_: Upgrade Faraday to 0.12 (@sferik)
456
571
 
457
572
  ## [1.3.1] - 2017-03-03
573
+
458
574
  - TAG: [v1.3.1][1.3.1t]
459
575
  - Add support for Ruby 2.4.0 (@pschambacher)
460
576
  - _Dependency_: Upgrade Faraday to Faraday 0.11 (@mcfiredrill, @rhymes, @pschambacher)
461
577
 
462
578
  ## [1.3.0] - 2016-12-28
579
+
463
580
  - TAG: [v1.3.0][1.3.0t]
464
581
  - Add support for header-based authentication to the `Client` so it can be used across the library (@bjeanes)
465
582
  - Default to header-based authentication when getting a token from an authorisation code (@maletor)
@@ -470,26 +587,36 @@ Please file a bug if you notice a violation of semantic versioning.
470
587
  - Add support for Faraday 0.10 (@rhymes)
471
588
 
472
589
  ## [1.2.0] - 2016-07-01
590
+
473
591
  - TAG: [v1.2.0][1.2.0t]
474
592
  - Properly handle encoding of error responses (so we don't blow up, for example, when Google's response includes a ∞) (@Motoshi-Nishihira)
475
593
  - Make a copy of the options hash in `AccessToken#from_hash` to avoid accidental mutations (@Linuus)
476
594
  - Use `raise` rather than `fail` to throw exceptions (@sferik)
477
595
 
478
596
  ## [1.1.0] - 2016-01-30
597
+
479
598
  - TAG: [v1.1.0][1.1.0t]
480
599
  - Various refactors (eliminating `Hash#merge!` usage in `AccessToken#refresh!`, use `yield` instead of `#call`, freezing mutable objects in constants, replacing constants with class variables) (@sferik)
481
600
  - Add support for Rack 2, and bump various other dependencies (@sferik)
482
601
 
483
602
  ## [1.0.0] - 2014-07-09
603
+
484
604
  - TAG: [v1.0.0][1.0.0t]
605
+
485
606
  ### Added
607
+
486
608
  - Add an implementation of the MAC token spec.
609
+
487
610
  ### Fixed
611
+
488
612
  - Fix Base64.strict_encode64 incompatibility with Ruby 1.8.7.
489
613
 
490
614
  ## [0.5.0] - 2011-07-29
615
+
491
616
  - TAG: [v0.5.0][0.5.0t]
617
+
492
618
  ### Changed
619
+
493
620
  - *breaking* `oauth_token` renamed to `oauth_bearer`.
494
621
  - *breaking* `authorize_path` Client option renamed to `authorize_url`.
495
622
  - *breaking* `access_token_path` Client option renamed to `token_url`.
@@ -497,65 +624,86 @@ Please file a bug if you notice a violation of semantic versioning.
497
624
  - *breaking* `web_server` renamed to `auth_code`.
498
625
 
499
626
  ## [0.4.1] - 2011-04-20
627
+
500
628
  - TAG: [v0.4.1][0.4.1t]
501
629
 
502
630
  ## [0.4.0] - 2011-04-20
631
+
503
632
  - TAG: [v0.4.0][0.4.0t]
504
633
 
505
634
  ## [0.3.0] - 2011-04-08
635
+
506
636
  - TAG: [v0.3.0][0.3.0t]
507
637
 
508
638
  ## [0.2.0] - 2011-04-01
639
+
509
640
  - TAG: [v0.2.0][0.2.0t]
510
641
 
511
642
  ## [0.1.1] - 2011-01-12
643
+
512
644
  - TAG: [v0.1.1][0.1.1t]
513
645
 
514
646
  ## [0.1.0] - 2010-10-13
647
+
515
648
  - TAG: [v0.1.0][0.1.0t]
516
649
 
517
650
  ## [0.0.13] - 2010-08-17
651
+
518
652
  - TAG: [v0.0.13][0.0.13t]
519
653
 
520
654
  ## [0.0.12] - 2010-08-17
655
+
521
656
  - TAG: [v0.0.12][0.0.12t]
522
657
 
523
658
  ## [0.0.11] - 2010-08-17
659
+
524
660
  - TAG: [v0.0.11][0.0.11t]
525
661
 
526
662
  ## [0.0.10] - 2010-06-19
663
+
527
664
  - TAG: [v0.0.10][0.0.10t]
528
665
 
529
666
  ## [0.0.9] - 2010-06-18
667
+
530
668
  - TAG: [v0.0.9][0.0.9t]
531
669
 
532
670
  ## [0.0.8] - 2010-04-27
671
+
533
672
  - TAG: [v0.0.8][0.0.8t]
534
673
 
535
674
  ## [0.0.7] - 2010-04-27
675
+
536
676
  - TAG: [v0.0.7][0.0.7t]
537
677
 
538
678
  ## [0.0.6] - 2010-04-25
679
+
539
680
  - TAG: [v0.0.6][0.0.6t]
540
681
 
541
682
  ## [0.0.5] - 2010-04-23
683
+
542
684
  - TAG: [v0.0.5][0.0.5t]
543
685
 
544
686
  ## [0.0.4] - 2010-04-22
687
+
545
688
  - TAG: [v0.0.4][0.0.4t]
546
689
 
547
690
  ## [0.0.3] - 2010-04-22
691
+
548
692
  - TAG: [v0.0.3][0.0.3t]
549
693
 
550
694
  ## [0.0.2] - 2010-04-22
695
+
551
696
  - TAG: [v0.0.2][0.0.2t]
552
697
 
553
698
  ## [0.0.1] - 2010-04-22
699
+
554
700
  - TAG: [v0.0.1][0.0.1t]
555
701
 
556
702
  [gemfiles/readme]: gemfiles/README.md
557
703
 
558
- [Unreleased]: https://github.com/ruby-oauth/oauth2/compare/v2.0.16...HEAD
704
+ [Unreleased]: https://github.com/ruby-oauth/oauth2/compare/v2.0.17...HEAD
705
+ [2.0.17]: https://github.com/ruby-oauth/oauth2/compare/v2.0.16...v2.0.17
706
+ [2.0.17t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.17
559
707
  [2.0.16]: https://github.com/ruby-oauth/oauth2/compare/v2.0.15...v2.0.16
560
708
  [2.0.16t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.16
561
709
  [2.0.15]: https://github.com/ruby-oauth/oauth2/compare/v2.0.14...v2.0.15
data/README.md CHANGED
@@ -11,7 +11,7 @@
11
11
 
12
12
  ⭐️ including OAuth 2.1 draft spec & OpenID Connect (OIDC)
13
13
 
14
- [![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] [![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]
14
+ [![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]
15
15
 
16
16
  `if ci_badges.map(&:color).detect { it != "green"}` ☝️ [let me know][🖼️galtzo-discord], as I may have missed the [discord notification][🖼️galtzo-discord].
17
17
 
@@ -128,19 +128,19 @@ If it seems like you are in the wrong place, you might try one of these:
128
128
 
129
129
  ## 💡 Info you can shake a stick at
130
130
 
131
- | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
132
- |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
133
- | 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] |
134
- | 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] |
135
- | 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] |
136
- | Works with MRI Ruby 2 | ![Ruby 2.2 Compat][💎ruby-2.2i] <br/> [![Ruby 2.3 Compat][💎ruby-2.3i]][🚎1-an-wf] [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎1-an-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎1-an-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎7-us-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎7-us-wf] |
137
- | 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] |
138
- | 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] |
139
- | Documentation | [![Discussion][⛳gg-discussions-img]][⛳gg-discussions] [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![Wiki][📜wiki-img]][📜wiki] |
140
- | 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] |
141
- | 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] |
142
- | 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] |
143
- | `...` 💖 | [![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] |
131
+ | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
132
+ |-------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
133
+ | 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] |
134
+ | 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] |
135
+ | 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] |
136
+ | Works with MRI Ruby 2 | ![Ruby 2.2 Compat][💎ruby-2.2i] <br/> [![Ruby 2.3 Compat][💎ruby-2.3i]][🚎1-an-wf] [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎1-an-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎1-an-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎7-us-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎7-us-wf] |
137
+ | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Discussion][⛳gg-discussions-img]][⛳gg-discussions] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
138
+ | 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] |
139
+ | Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![Wiki][📜wiki-img]][📜wiki] |
140
+ | 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] |
141
+ | 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] |
142
+ | 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] |
143
+ | `...` 💖 | [![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] |
144
144
 
145
145
  ### Compatibility
146
146
 
@@ -266,6 +266,10 @@ Alternatively:
266
266
 
267
267
  | Version | Release Date | CHANGELOG | README |
268
268
  |---------|--------------|---------------------------------------|---------------------------------|
269
+ | 2.0.17 | 2025-09-15 | [v2.0.17 CHANGELOG][2.0.17-changelog] | [v2.0.17 README][2.0.17-readme] |
270
+ | 2.0.16 | 2025-09-14 | [v2.0.16 CHANGELOG][2.0.16-changelog] | [v2.0.16 README][2.0.16-readme] |
271
+ | 2.0.15 | 2025-09-08 | [v2.0.15 CHANGELOG][2.0.15-changelog] | [v2.0.15 README][2.0.15-readme] |
272
+ | 2.0.14 | 2025-08-31 | [v2.0.14 CHANGELOG][2.0.14-changelog] | [v2.0.14 README][2.0.14-readme] |
269
273
  | 2.0.13 | 2025-08-30 | [v2.0.13 CHANGELOG][2.0.13-changelog] | [v2.0.13 README][2.0.13-readme] |
270
274
  | 2.0.12 | 2025-05-31 | [v2.0.12 CHANGELOG][2.0.12-changelog] | [v2.0.12 README][2.0.12-readme] |
271
275
  | 2.0.11 | 2025-05-23 | [v2.0.11 CHANGELOG][2.0.11-changelog] | [v2.0.11 README][2.0.11-readme] |
@@ -283,6 +287,10 @@ Alternatively:
283
287
 
284
288
  </details>
285
289
 
290
+ [2.0.17-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2017---2025-09-15
291
+ [2.0.16-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2016---2025-09-14
292
+ [2.0.15-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2015---2025-09-08
293
+ [2.0.14-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2014---2025-08-31
286
294
  [2.0.13-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2013---2025-08-30
287
295
  [2.0.12-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2012---2025-05-31
288
296
  [2.0.11-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#2011---2025-05-23
@@ -298,6 +306,10 @@ Alternatively:
298
306
  [2.0.1-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#201---2022-06-22
299
307
  [2.0.0-changelog]: https://gitlab.com/ruby-oauth/oauth2/-/blob/main/CHANGELOG.md?ref_type=heads#200---2022-06-21
300
308
 
309
+ [2.0.17-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.17/README.md
310
+ [2.0.16-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.16/README.md
311
+ [2.0.15-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.15/README.md
312
+ [2.0.14-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.14/README.md
301
313
  [2.0.13-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.13/README.md
302
314
  [2.0.12-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.12/README.md
303
315
  [2.0.11-readme]: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.11/README.md
@@ -1317,6 +1329,8 @@ See [CONTRIBUTING.md][🤝contributing].
1317
1329
 
1318
1330
  ### Code Coverage
1319
1331
 
1332
+ [![Coverage Graph][🔑codecov-g]][🔑codecov]
1333
+
1320
1334
  [![Coveralls Test Coverage][🔑coveralls-img]][🔑coveralls]
1321
1335
 
1322
1336
  [![QLTY Test Coverage][🔑qlty-covi]][🔑qlty-cov]
@@ -1615,7 +1629,7 @@ Thanks for RTFM. ☺️
1615
1629
  [📌gitmoji]:https://gitmoji.dev
1616
1630
  [📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
1617
1631
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
1618
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.409-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1632
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.526-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
1619
1633
  [🔐security]: SECURITY.md
1620
1634
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
1621
1635
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -132,10 +132,15 @@ You may need to set `snaky: false`. See inline documentation for more info.
132
132
  # @option opts [FixNum, String] :expires_in (nil) the number of seconds in which the AccessToken will expire
133
133
  # @option opts [FixNum, String] :expires_at (nil) the epoch time in seconds in which AccessToken will expire
134
134
  # @option opts [FixNum, String] :expires_latency (nil) the number of seconds by which AccessToken validity will be reduced to offset latency, @version 2.0+
135
- # @option opts [Symbol or callable] :mode (:header) the transmission mode of the Access Token parameter value:
136
- # either one of :header, :body or :query, or a callable that accepts a request-verb parameter
135
+ # @option opts [Symbol, Hash, or callable] :mode (:header) the transmission mode of the Access Token parameter value:
136
+ # either one of :header, :body or :query; or a Hash with verb symbols as keys mapping to one of these symbols
137
+ # (e.g., {get: :query, post: :header, delete: :header}); or a callable that accepts a request-verb parameter
137
138
  # and returns one of these three symbols.
138
139
  # @option opts [String] :header_format ('Bearer %s') the string format to use for the Authorization header
140
+ #
141
+ # @example Verb-dependent Hash mode
142
+ # # Send token in query for GET, in header for POST/DELETE, in body for PUT/PATCH
143
+ # OAuth2::AccessToken.new(client, token, mode: {get: :query, post: :header, delete: :header, put: :body, patch: :body})
139
144
  # @option opts [String] :param_name ('access_token') the parameter name to use for transmission of the
140
145
  # Access Token value in :body or :query transmission mode
141
146
  # @option opts [String] :token_name (nil) the name of the response parameter that identifies the access token
@@ -372,7 +377,18 @@ You may need to set `snaky: false`. See inline documentation for more info.
372
377
  private
373
378
 
374
379
  def configure_authentication!(opts, verb)
375
- mode = options[:mode].respond_to?(:call) ? options[:mode].call(verb) : options[:mode]
380
+ mode_opt = options[:mode]
381
+ mode =
382
+ if mode_opt.respond_to?(:call)
383
+ mode_opt.call(verb)
384
+ elsif mode_opt.is_a?(Hash)
385
+ key = verb.to_sym
386
+ # Try symbol key first, then string key; default to :header when missing
387
+ mode_opt[key] || mode_opt[key.to_s] || :header
388
+ else
389
+ mode_opt
390
+ end
391
+
376
392
  case mode
377
393
  when :header
378
394
  opts[:headers] ||= {}
@@ -2,6 +2,6 @@
2
2
 
3
3
  module OAuth2
4
4
  module Version
5
- VERSION = "2.0.16"
5
+ VERSION = "2.0.17"
6
6
  end
7
7
  end
@@ -17,7 +17,7 @@ module OAuth2
17
17
  def patch: (String, ?Hash[Symbol, untyped]) { (untyped) -> void } -> OAuth2::Response
18
18
  def delete: (String, ?Hash[Symbol, untyped]) { (untyped) -> void } -> OAuth2::Response
19
19
  def headers: () -> Hash[String, String]
20
- def configure_authentication!: (Hash[Symbol, untyped]) -> void
20
+ def configure_authentication!: (Hash[Symbol, untyped], Symbol) -> void
21
21
  def convert_expires_at: (untyped) -> (Time | Integer | nil)
22
22
 
23
23
  attr_accessor response: OAuth2::Response
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oauth2
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.16
4
+ version: 2.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Boling
@@ -156,7 +156,7 @@ dependencies:
156
156
  version: '1.1'
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: 1.1.8
159
+ version: 1.1.9
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
@@ -166,7 +166,7 @@ dependencies:
166
166
  version: '1.1'
167
167
  - - ">="
168
168
  - !ruby/object:Gem::Version
169
- version: 1.1.8
169
+ version: 1.1.9
170
170
  - !ruby/object:Gem::Dependency
171
171
  name: addressable
172
172
  requirement: !ruby/object:Gem::Requirement
@@ -230,7 +230,7 @@ dependencies:
230
230
  version: '1.1'
231
231
  - - ">="
232
232
  - !ruby/object:Gem::Version
233
- version: 1.1.9
233
+ version: 1.1.20
234
234
  type: :development
235
235
  prerelease: false
236
236
  version_requirements: !ruby/object:Gem::Requirement
@@ -240,7 +240,7 @@ dependencies:
240
240
  version: '1.1'
241
241
  - - ">="
242
242
  - !ruby/object:Gem::Version
243
- version: 1.1.9
243
+ version: 1.1.20
244
244
  - !ruby/object:Gem::Dependency
245
245
  name: bundler-audit
246
246
  requirement: !ruby/object:Gem::Requirement
@@ -498,10 +498,10 @@ licenses:
498
498
  - MIT
499
499
  metadata:
500
500
  homepage_uri: https://oauth2.galtzo.com/
501
- source_code_uri: https://github.com/ruby-oauth/oauth2/tree/v2.0.16
502
- changelog_uri: https://github.com/ruby-oauth/oauth2/blob/v2.0.16/CHANGELOG.md
501
+ source_code_uri: https://github.com/ruby-oauth/oauth2/tree/v2.0.17
502
+ changelog_uri: https://github.com/ruby-oauth/oauth2/blob/v2.0.17/CHANGELOG.md
503
503
  bug_tracker_uri: https://github.com/ruby-oauth/oauth2/issues
504
- documentation_uri: https://www.rubydoc.info/gems/oauth2/2.0.16
504
+ documentation_uri: https://www.rubydoc.info/gems/oauth2/2.0.17
505
505
  mailing_list_uri: https://groups.google.com/g/oauth-ruby
506
506
  funding_uri: https://github.com/sponsors/pboling
507
507
  wiki_uri: https://gitlab.com/ruby-oauth/oauth2/-/wiki
@@ -510,11 +510,11 @@ metadata:
510
510
  rubygems_mfa_required: 'true'
511
511
  post_install_message: |2
512
512
 
513
- ---+++--- oauth2 v2.0.16 ---+++---
513
+ ---+++--- oauth2 v2.0.17 ---+++---
514
514
 
515
515
  (minor) ⚠️ BREAKING CHANGES ⚠️ when upgrading from < v2
516
516
  • Summary of breaking changes: https://gitlab.com/ruby-oauth/oauth2#what-is-new-for-v20
517
- • Changes in this patch: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.16/CHANGELOG.md#2015-2025-09-08
517
+ • Changes in this patch: https://gitlab.com/ruby-oauth/oauth2/-/blob/v2.0.17/CHANGELOG.md#2015-2025-09-08
518
518
 
519
519
  News:
520
520
  1. New documentation website, including for OAuth 2.1 and OIDC: https://oauth2.galtzo.com
metadata.gz.sig CHANGED
Binary file