oauth2 2.0.9 → 2.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG.md CHANGED
@@ -1,215 +1,722 @@
1
1
  # Changelog
2
+
3
+ [![SemVer 2.0.0][📌semver-img]][📌semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog]
4
+
2
5
  All notable changes to this project will be documented in this file.
3
6
 
4
- The format (since v2) is based on [Keep a Changelog v1](https://keepachangelog.com/en/1.0.0/),
5
- and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.0.0.html).
7
+ The format is based on [Keep a Changelog][📗keep-changelog],
8
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
9
+ and [yes][📌major-versions-not-sacred], platform and engine support are part of the [public API][📌semver-breaking].
10
+ Please file a bug if you notice a violation of semantic versioning.
11
+
12
+ [📌semver]: https://semver.org/spec/v2.0.0.html
13
+ [📌semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat
14
+ [📌semver-breaking]: https://github.com/semver/semver/issues/716#issuecomment-869336139
15
+ [📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
16
+ [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
17
+ [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
6
18
 
7
19
  ## [Unreleased]
20
+
21
+ ### Added
22
+
23
+ ### Changed
24
+
25
+ ### Deprecated
26
+
27
+ ### Removed
28
+
29
+ ### Fixed
30
+
31
+ ### Security
32
+
33
+ ## [2.0.22] - 2026-06-07
34
+
35
+ - TAG: [v2.0.22][2.0.22t]
36
+ - COVERAGE: 100.00% -- 542/542 lines in 15 files
37
+ - BRANCH COVERAGE: 100.00% -- 180/180 branches in 15 files
38
+ - 88.35% documented
39
+
40
+ ### Changed
41
+
42
+ - Raised generated development tooling floors to `kettle-dev` >= 2.1.1 and
43
+ `version_gem` >= 1.1.11.
44
+ - Raised the runtime dependency floor for `snaky_hash` to `>= 2.0.5`.
45
+
46
+ ### Security
47
+
48
+ - [GHSA-pp92-crg2-gfv9] Prevent protocol-relative redirect `Location` values from changing request authority, and strip `Authorization` headers from cross-origin redirects.
49
+
50
+ ## [2.0.21] - 2026-06-06
51
+
52
+ - TAG: [v2.0.21][2.0.21t]
53
+ - COVERAGE: 100.00% -- 525/525 lines in 15 files
54
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 15 files
55
+ - 88.35% documented
56
+
57
+ ### Added
58
+
59
+ - [gh!730][gh!730] - Alternatives section to README by @jonathangrinstead
60
+ - Updates to alternatives section - by @pboling
61
+
62
+ [gh!730]: https://github.com/ruby-oauth/oauth2/pull/730
63
+
64
+ - Added conditional `appraisal2-rubocop` Appraisal root loading on modern Ruby
65
+ so generated Appraisal gemfiles are normalized during generation - by @pboling
66
+
67
+ ### Changed
68
+
69
+ - Raised generated `version_gem` dependency floor to `version_gem` >= 1.1.10 - by @pboling
70
+ - Raised the runtime dependency floor for `auth-sanitizer` to `>= 0.2.1` - by @pboling
71
+ - Refreshed generated package metadata, support documentation, CI workflows,
72
+ and development dependency floors from the current kettle-jem template - by @pboling
73
+ - Documented the current per-version Ruby, JRuby, and TruffleRuby CI matrix in
74
+ generated README badges and compatibility tables - by @pboling
75
+ - Removed the post-install message from the gemspec to keep installs quieter - by @pboling
76
+ - Refreshed generated README support badges so Ruby 2.3 is listed as
77
+ supported but untested - by @pboling
78
+ - Refreshed generated project metadata from the current kettle-jem template - by @pboling
79
+ - Raised development tooling floors to `kettle-dev` >= 2.1.0 and
80
+ `appraisal2` >= 3.1.1 for Appraisal2's split generate/install/update
81
+ command semantics.
82
+ - Refreshed generated Appraisal and CI templates to appraisal2-rubocop 0.2.0 - by @pboling
83
+
84
+ ### Removed
85
+
86
+ - Dropped the obsolete Ruby 2.3 Caboose workflow and its Hashie appraisal
87
+ gemfiles; development tooling now requires Ruby 2.4 or newer, and Ruby 2.4
88
+ coverage is already handled by the standard Ruby 2.4 workflow - by @pboling
89
+
90
+ ### Fixed
91
+
92
+ - Updated CI workflow maintenance: QLTY uploads now use OIDC and harden-runner
93
+ is pinned to v2.19.4 - by @pboling
94
+ - Replaced stale platform CI `rake magic` commands with portable spec commands - by @pboling
95
+ - Pinned `multi_xml` below 0.9 for TruffleRuby compatibility - by @pboling
96
+ - Marked EOL TruffleRuby 22.3, 23.0, and 23.1 CI as experimental because they can crash inside the interpreter during Bundler setup - by @pboling
97
+ - Improved gemspec version loading for older Rubies and isolated load-path
98
+ contexts - by @pboling
99
+ - Constrained `json` in TruffleRuby and Ruby 3.2 appraisal bundles so generated
100
+ CI dependency resolution remains compatible with those Ruby targets - by @pboling
101
+ - Pinned generated GitHub Actions `actions/checkout` steps to the peeled
102
+ v6.0.3 commit SHA so OSSF Scorecard workflow verification accepts them - by @pboling
103
+ - Marked generated EOL TruffleRuby 22.3, 23.0, and 23.1 matrix entries
104
+ experimental so native extension build failures do not fail the whole
105
+ workflow - by @pboling
106
+ - Pinned `json` only for EOL TruffleRuby appraisal bundles, matching the
107
+ default `json` gem shipped with each TruffleRuby release instead of
108
+ constraining MRI Ruby appraisal bundles - by @pboling
109
+
110
+ ## [2.0.20] - 2026-05-20
111
+
112
+ - TAG: [v2.0.20][2.0.20t]
113
+ - COVERAGE: 99.62% -- 525/527 lines in 15 files
114
+ - BRANCH COVERAGE: 98.88% -- 176/178 branches in 15 files
115
+ - 88.35% documented
116
+
8
117
  ### Added
118
+
119
+ - OAuth2::VERSION (Traditional Constant Location) - by @pboling
120
+
9
121
  ### Changed
122
+
123
+ - auth-sanitizer v0.1.3 - by @pboling
124
+
10
125
  ### Fixed
126
+
127
+ - [gh!721][gh!721] Load `auth-sanitizer` through an internal isolated loader so requiring `oauth2` does not add top-level `Auth` or `AuthSanitizer` constants that may collide with downstream applications by @pboling
128
+
129
+ ### Security
130
+
131
+ [gh!721]: https://github.com/ruby-oauth/oauth2/pull/721
132
+
133
+ ## [2.0.19] - 2026-05-15
134
+
135
+ - TAG: [v2.0.19][2.0.19t]
136
+ - COVERAGE: 100.00% -- 515/515 lines in 14 files
137
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
138
+ - 89.11% documented
139
+
140
+ ### Added
141
+
142
+ - [gh!707][gh!707] Add `OAuth2.config[:filtered_label]` to configure the placeholder used for filtered sensitive values in inspected objects and debug logging output by @pboling
143
+ - [gh!707][gh!707] Add `OAuth2.config[:filtered_debug_keys]` to configure which key names have their values redacted from debug logging output by @pboling
144
+
145
+ ### Changed
146
+
147
+ - [gh!707][gh!707] Make inspect-time and debug-log filters snapshot their configuration at initialization time rather than tracking later config changes by @pboling
148
+ - [gh!714][gh!714]Refactor sensitive-value filtering to use `auth-sanitizer` while preserving `OAuth2::FilteredAttributes` as a permanent API alias by @pboling
149
+
11
150
  ### Removed
12
151
 
152
+ - Remove the internal `OAuth2::ThingFilter` and `OAuth2::SanitizedLogger` implementations now provided by `auth-sanitizer` by @pboling
153
+
154
+ ### Security
155
+
156
+ - [gh!707][gh!707] Redact sensitive values from debug logging output, including Authorization headers and common token/secret fields in headers, query strings, form bodies, and JSON payloads by @pboling
157
+ - NOTE: debug logging has always been, and remains, opt-in. It is turned off by default.
158
+
159
+ [gh!707]: https://github.com/ruby-oauth/oauth2/pull/707
160
+ [gh!714]: https://github.com/ruby-oauth/oauth2/pull/714
161
+
162
+ ## [2.0.18] - 2025-11-08
163
+
164
+ - TAG: [v2.0.18][2.0.18t]
165
+ - COVERAGE: 100.00% -- 526/526 lines in 14 files
166
+ - BRANCH COVERAGE: 100.00% -- 178/178 branches in 14 files
167
+ - 90.48% documented
168
+
169
+ ### Added
170
+
171
+ - [gh!683][gh!683], [gh!684][gh!684] - Improve documentation by @pboling
172
+ - [gh!686][gh!686]- Add Incident Response Plan by @pboling
173
+ - [gh!687][gh!687]- Add Threat Model by @pboling
174
+
175
+ ### Changed
176
+
177
+ - [gh!685][gh!685] - upgrade kettle-dev v1.1.24 by @pboling
178
+ - upgrade kettle-dev v1.1.52 by @pboling
179
+ - Add open collective donors to README
180
+
181
+ ### Fixed
182
+
183
+ - [gh!690][gh!690], [gh!691][gh!691], [gh!692][gh!692] - Add yard-fence
184
+ - handle braces within code fences in markdown properly by @pboling
185
+
186
+ [gh!683]: https://github.com/ruby-oauth/oauth2/pull/683
187
+ [gh!684]: https://github.com/ruby-oauth/oauth2/pull/684
188
+ [gh!685]: https://github.com/ruby-oauth/oauth2/pull/685
189
+ [gh!686]: https://github.com/ruby-oauth/oauth2/pull/686
190
+ [gh!687]: https://github.com/ruby-oauth/oauth2/pull/687
191
+ [gh!690]: https://github.com/ruby-oauth/oauth2/pull/690
192
+ [gh!691]: https://github.com/ruby-oauth/oauth2/pull/691
193
+ [gh!692]: https://github.com/ruby-oauth/oauth2/pull/692
194
+
195
+ ## [2.0.17] - 2025-09-15
196
+
197
+ - TAG: [v2.0.17][2.0.17t]
198
+ - COVERAGE: 100.00% -- 526/526 lines in 14 files
199
+ - BRANCH COVERAGE: 100.00% -- 178/178 branches in 14 files
200
+ - 90.48% documented
201
+
202
+ ### Added
203
+
204
+ - [gh!682][gh!682] - AccessToken: support Hash-based verb-dependent token transmission mode (e.g., `{get: :query, post: :header}`)
205
+
206
+ [gh!682]: https://github.com/ruby-oauth/oauth2/pull/682
207
+
208
+ ## [2.0.16] - 2025-09-14
209
+
210
+ - TAG: [v2.0.16][2.0.16t]
211
+ - COVERAGE: 100.00% -- 520/520 lines in 14 files
212
+ - BRANCH COVERAGE: 100.00% -- 176/176 branches in 14 files
213
+ - 90.48% documented
214
+
215
+ ### Added
216
+
217
+ - [gh!680][gh!680] - E2E example using mock test server added in v2.0.11 by @pboling
218
+ - mock-oauth2-server upgraded to v2.3.0
219
+ - https://github.com/navikt/mock-oauth2-server
220
+ - `docker compose -f docker-compose-ssl.yml up -d --wait`
221
+ - `ruby examples/e2e.rb`
222
+ - `docker compose -f docker-compose-ssl.yml down`
223
+ - mock server readiness wait is 90s
224
+ - override via E2E_WAIT_TIMEOUT
225
+ - [gh!676][gh!676], [gh!679][gh!679] - Apache SkyWalking Eyes dependency license check by @pboling
226
+
227
+ ### Changed
228
+
229
+ - [gh!678][gh!678] - Many improvements to make CI more resilient (past/future proof) by @pboling
230
+ - [gh!681][gh!681] - Upgrade to kettle-dev v1.1.19
231
+
232
+ [gh!676]: https://github.com/ruby-oauth/oauth2/pull/676
233
+ [gh!678]: https://github.com/ruby-oauth/oauth2/pull/678
234
+ [gh!679]: https://github.com/ruby-oauth/oauth2/pull/679
235
+ [gh!680]: https://github.com/ruby-oauth/oauth2/pull/680
236
+ [gh!681]: https://github.com/ruby-oauth/oauth2/pull/681
237
+
238
+ ## [2.0.15] - 2025-09-08
239
+
240
+ - TAG: [v2.0.15][2.0.15t]
241
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
242
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
243
+ - 90.48% documented
244
+
245
+ ### Added
246
+
247
+ - [gh!671][gh!671] - Complete documentation example for Instagram by @pboling
248
+ - .env.local.example for contributor happiness
249
+ - note lack of builds for JRuby 9.2, 9.3 & Truffleruby 22.3, 23.0
250
+ - [actions/runner - issues/2347][GHA-continue-on-error-ui]
251
+ - [community/discussions/15452][GHA-allow-failure]
252
+ - [gh!670][gh!670] - AccessToken: verb-dependent token transmission mode by @mrj
253
+ - e.g., Instagram GET=:query, POST/DELETE=:header
254
+
255
+ ### Changed
256
+
257
+ - [gh!669][gh!669] - Upgrade to kettle-dev v1.1.9 by @pboling
258
+
259
+ ### Fixed
260
+
261
+ - Remove accidentally duplicated lines, and fix typos in CHANGELOG.md
262
+ - point badge to the correct workflow for Ruby 2.3 (caboose.yml)
263
+
264
+ [gh!669]: https://github.com/ruby-oauth/oauth2/pull/669
265
+ [gh!670]: https://github.com/ruby-oauth/oauth2/pull/670
266
+ [gh!671]: https://github.com/ruby-oauth/oauth2/pull/671
267
+ [GHA-continue-on-error-ui]: https://github.com/actions/runner/issues/2347
268
+ [GHA-allow-failure]: https://github.com/orgs/community/discussions/15452
269
+
270
+ ## [2.0.14] - 2025-08-31
271
+
272
+ - TAG: [v2.0.14][2.0.14t]
273
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
274
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
275
+ - 90.48% documented
276
+
277
+ ### Added
278
+
279
+ - improved documentation by @pboling
280
+ - [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
281
+ - [gh!666][gh!666] - Document usage of flat query params using Faraday::FlatParamsEncoder, with example URI, in README by @pboling
282
+ - Spec: verify flat params are preserved with Faraday::FlatParamsEncoder (skips on Faraday without FlatParamsEncoder)
283
+ - [gh!662][gh!662] - documentation notes in code comments and README highlighting OAuth 2.1 differences, with references, by @pboling
284
+ - PKCE required for auth code,
285
+ - exact redirect URI match,
286
+ - implicit/password grants omitted,
287
+ - avoid bearer tokens in query,
288
+ - refresh token guidance for public clients,
289
+ - simplified client definitions
290
+ - [gh!663][gh!663] - document how to implement an OIDC client with this gem in OIDC.md by @pboling
291
+ - also, list libraries built on top of the oauth2 gem that implement OIDC
292
+ - [gh!664][gh!664] - README: Add example for JHipster UAA (Spring Cloud) password grant, converted from Postman/Net::HTTP by @pboling
293
+
294
+ [gh!662]: https://github.com/ruby-oauth/oauth2/pull/662
295
+ [gh!663]: https://github.com/ruby-oauth/oauth2/pull/663
296
+ [gh!664]: https://github.com/ruby-oauth/oauth2/pull/664
297
+ [gh!665]: https://github.com/ruby-oauth/oauth2/pull/665
298
+ [gh!666]: https://github.com/ruby-oauth/oauth2/pull/666
299
+
300
+ ## [2.0.13] - 2025-08-30
301
+
302
+ - TAG: [v2.0.13][2.0.13t]
303
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
304
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
305
+ - 90.48% documented
306
+
307
+ ### Added
308
+
309
+ - [gh!656][gh!656] - Support revocation with URL-encoded parameters
310
+ - [gh!660][gh!660] - Inline yard documentation by @pboling
311
+ - [gh!660][gh!660] - Complete RBS types documentation by @pboling
312
+ - [gh!660][gh!660]- (more) Comprehensive documentation / examples by @pboling
313
+ - [gh!657][gh!657] - Updated documentation for org-rename by @pboling
314
+ - More funding links by @Aboling0
315
+ - Documentation: Added docs/OIDC.md with OIDC 1.0 overview, example, and references
316
+
317
+ ### Changed
318
+
319
+ - Upgrade Code of Conduct to Contributor Covenant 2.1 by @pboling
320
+ - [gh!660][gh!660] - Shrink post-install message by 4 lines by @pboling
321
+
322
+ ### Fixed
323
+
324
+ - [gh!660][gh!660] - Links in README (including link to HEAD documentation) by @pboling
325
+
326
+ [gh!660]: https://github.com/ruby-oauth/oauth2/pull/660
327
+ [gh!657]: https://github.com/ruby-oauth/oauth2/pull/657
328
+ [gh!656]: https://github.com/ruby-oauth/oauth2/pull/656
329
+
330
+ ## [2.0.12] - 2025-05-31
331
+
332
+ - TAG: [v2.0.12][2.0.12t]
333
+ - Line Coverage: 100.0% (520 / 520)
334
+ - Branch Coverage: 100.0% (174 / 174)
335
+ - 80.00% documented
336
+
337
+ ### Added
338
+
339
+ - [gh!652][gh!652] - Support IETF rfc7515 JSON Web Signature - JWS by @mridang
340
+ - Support JWT `kid` for key discovery and management
341
+ - More Documentation by @pboling
342
+ - Documented Serialization Extensions
343
+ - Added Gatzo.com FLOSS logo by @Aboling0, CC BY-SA 4.0
344
+ - Documentation site @ https://oauth2.galtzo.com now complete
345
+
346
+ ### Changed
347
+
348
+ - Updates to gemspec (email, funding url, post install message)
349
+
350
+ ### Fixed
351
+
352
+ - Documentation Typos by @pboling
353
+
354
+ [gh!652]: https://github.com/ruby-oauth/oauth2/pull/652
355
+
356
+ ## [2.0.11] - 2025-05-23
357
+
358
+ - TAG: [v2.0.11][2.0.11t]
359
+ - COVERAGE: 100.00% -- 518/518 lines in 14 files
360
+ - BRANCH COVERAGE: 100.00% -- 172/172 branches in 14 files
361
+ - 80.00% documented
362
+
363
+ ### Added
364
+
365
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - `:snaky_hash_klass` option (@pboling)
366
+ - More documentation
367
+ - Codeberg as ethical mirror (@pboling)
368
+ - https://codeberg.org/ruby-oauth/oauth2
369
+ - Don't check for cert if SKIP_GEM_SIGNING is set (@pboling)
370
+ - All runtime deps, including oauth-xx sibling gems, are now tested against HEAD (@pboling)
371
+ - All runtime deps, including ruby-oauth sibling gems, are now tested against HEAD (@pboling)
372
+ - YARD config, GFM compatible with relative file links (@pboling)
373
+ - Documentation site on GitHub Pages (@pboling)
374
+ - [oauth2.galtzo.com](https://oauth2.galtzo.com)
375
+ - [!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)
376
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Mock OAuth2 server for testing (@pboling)
377
+ - https://github.com/navikt/mock-oauth2-server
378
+
379
+ ### Changed
380
+
381
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Upgraded to snaky_hash v2.0.3 (@pboling)
382
+ - Provides solution for serialization issues
383
+ - Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site (@pboling)
384
+
385
+ ### Fixed
386
+
387
+ - [gh!650](https://github.com/ruby-oauth/oauth2/pull/650) - Regression in return type of `OAuth2::Response#parsed` (@pboling)
388
+ - Incorrect documentation related to silencing warnings (@pboling)
389
+
390
+ ## [2.0.10] - 2025-05-17
391
+
392
+ - TAG: [v2.0.10][2.0.10t]
393
+ - COVERAGE: 100.00% -- 518/518 lines in 14 files
394
+ - BRANCH COVERAGE: 100.00% -- 170/170 branches in 14 files
395
+ - 79.05% documented
396
+
397
+ ### Added
398
+
399
+ - [gh!632](https://github.com/ruby-oauth/oauth2/pull/632) - Added `funding.yml` (@Aboling0)
400
+ - [!635](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/635) - Added `.gitlab-ci.yml` (@jessieay)
401
+ - [#638](https://gitlab.com/ruby-oauth/oauth2/-/issues/638) - Documentation of support for **ILO Fundamental Principles of Rights at Work** (@pboling)
402
+ - [!642](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/642) - 20-year certificate for signing gem releases, expires 2045-04-29 (@pboling)
403
+ - Gemspec metadata
404
+ - funding_uri
405
+ - news_uri
406
+ - mailing_list_uri
407
+ - SHA256 and SHA512 Checksums for release
408
+ - [!643](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/643) - Add `token_name` option (@pboling)
409
+ - Specify the parameter name that identifies the access token
410
+ - [!645](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/645) - Add `OAuth2::OAUTH_DEBUG` constant, based on `ENV["OAUTH_DEBUG"] (@pboling)
411
+ - [!646](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/646) - Add `OAuth2.config.silence_extra_tokens_warning`, default: false (@pboling)
412
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - Add IETF RFC 7009 Token Revocation compliant (@pboling)
413
+ - `OAuth2::Client#revoke_token`
414
+ - `OAuth2::AccessToken#revoke`
415
+ - See: https://datatracker.ietf.org/doc/html/rfc7009
416
+ - [gh!644](https://github.com/ruby-oauth/oauth2/pull/644), [gh!645](https://github.com/ruby-oauth/oauth2/pull/645) - Added CITATION.cff (@Aboling0)
417
+ - [!648](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/648) - Improved documentation (@pboling)
418
+
419
+ ### Changed
420
+
421
+ - Default value of `OAuth2.config.silence_extra_tokens_warning` was `false`, now `true` (@pboling)
422
+ - Gem releases are now cryptographically signed, with a 20-year cert (@pboling)
423
+ - Allow linux distros to build release without signing, as their package managers sign independently
424
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2::AccessToken#refresh` now supports block param pass through (@pboling)
425
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2.config` is no longer writable (@pboling)
426
+ - [!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)
427
+
428
+ ### Fixed
429
+
430
+ - [#95](https://gitlab.com/ruby-oauth/oauth2/-/issues/95) - restoring an access token via `AccessToken#from_hash` (@pboling)
431
+ - This was a 13 year old bug report. 😘
432
+ - [#619](https://gitlab.com/ruby-oauth/oauth2/-/issues/619) - Internal options (like `snaky`, `raise_errors`, and `parse`) are no longer included in request (@pboling)
433
+ - [!633](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/633) - Spaces will now be encoded as `%20` instead of `+` (@nov.matake)
434
+ - [!634](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/634) - `CHANGELOG.md` documentation fix (@skuwa229)
435
+ - [!638](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/638) - fix `expired?` when `expires_in` is `0` (@disep)
436
+ - [!639](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/639) - Only instantiate `OAuth2::Error` if `raise_errors` option is `true` (@glytch2)
437
+ - [#639](https://gitlab.com/ruby-oauth/oauth2/-/issues/639) - `AccessToken#to_hash` is now serializable, just a regular Hash (@pboling)
438
+ - [!640](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/640) - `README.md` documentation fix (@martinezcoder)
439
+ - [!641](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/641) - Do not include sensitive information in the `inspect` (@manuelvanrijn)
440
+ - [#641](https://gitlab.com/ruby-oauth/oauth2/-/issues/641) - Made default JSON response parser more resilient (@pboling)
441
+ - [#645](https://gitlab.com/ruby-oauth/oauth2/-/issues/645) - Response no longer becomes a snaky hash (@pboling)
442
+ - [gh!646](https://github.com/ruby-oauth/oauth2/pull/646) - Change `require` to `require_relative` (improve performance) (@Aboling0)
443
+
13
444
  ## [2.0.9] - 2022-09-16
445
+
446
+ - TAG: [v2.0.9][2.0.9t]
447
+
14
448
  ### Added
449
+
15
450
  - More specs (@pboling)
451
+
16
452
  ### Changed
453
+
17
454
  - Complete migration to main branch as default (@pboling)
18
455
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
19
456
 
20
457
  ## [2.0.8] - 2022-09-01
458
+
459
+ - TAG: [v2.0.8][2.0.8t]
460
+
21
461
  ### Changed
22
- - [!630](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/630) - Extract snaky_hash to external dependency (@pboling)
462
+
463
+ - [!630](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/630) - Extract snaky_hash to external dependency (@pboling)
464
+
23
465
  ### Added
24
- - [!631](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/631) - New global configuration option OAuth2.config.silence_extra_tokens_warning (default: false) fixes [#628](https://gitlab.com/oauth-xx/oauth2/-/issues/628)
466
+
467
+ - [!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)
25
468
 
26
469
  ## [2.0.7] - 2022-08-22
470
+
471
+ - TAG: [v2.0.7][2.0.7t]
472
+
27
473
  ### Added
28
- - [#629](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/629) - Allow POST of JSON to get token (@pboling, @terracatta)
474
+
475
+ - [!629](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/629) - Allow POST of JSON to get token (@pboling, @terracatta)
476
+
29
477
  ### Fixed
30
- - [#626](https://gitlab.com/oauth-xx/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)
31
- - Note: This fixes compatibility with `omniauth-oauth2` and AWS
32
- - [#625](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/625) - Fixes the printed version in the post install message (@hasghari)
478
+
479
+ - [!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)
480
+ - Note: This fixes compatibility with `omniauth-oauth2` and AWS
481
+ - [!625](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/625) - Fixes the printed version in the post install message (@hasghari)
33
482
 
34
483
  ## [2.0.6] - 2022-07-13
484
+
485
+ - TAG: [v2.0.6][2.0.6t]
486
+
35
487
  ### Fixed
36
- - [#624](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/624) - Fixes a [regression](https://gitlab.com/oauth-xx/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)
488
+
489
+ - [!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)
37
490
 
38
491
  ## [2.0.5] - 2022-07-07
492
+
493
+ - TAG: [v2.0.5][2.0.5t]
494
+
39
495
  ### Fixed
40
- - [#620](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/620) - Documentation improvements, to help with upgrading (@swanson)
41
- - [#621](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/621) - Fixed [#528](https://gitlab.com/oauth-xx/oauth2/-/issues/528) and [#619](https://gitlab.com/oauth-xx/oauth2/-/issues/619) (@pboling)
42
- - All data in responses is now returned, with the access token removed and set as `token`
43
- - `refresh_token` is no longer dropped
44
- - **BREAKING**: Microsoft's `id_token` is no longer left as `access_token['id_token']`, but moved to the standard `access_token.token` that all other strategies use
45
- - Remove `parse` and `snaky` from options so they don't get included in response
46
- - There is now 100% test coverage, for lines _and_ branches, and it will stay that way.
496
+
497
+ - [!620](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/620) - Documentation improvements, to help with upgrading (@swanson)
498
+ - [!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)
499
+ - All data in responses is now returned, with the access token removed and set as `token`
500
+ - `refresh_token` is no longer dropped
501
+ - **BREAKING**: Microsoft's `id_token` is no longer left as `access_token['id_token']`, but moved to the standard `access_token.token` that all other strategies use
502
+ - Remove `parse` and `snaky` from options so they don't get included in response
503
+ - There is now 100% test coverage, for lines _and_ branches, and it will stay that way.
47
504
 
48
505
  ## [2.0.4] - 2022-07-01
506
+
507
+ - TAG: [v2.0.4][2.0.4t]
508
+
49
509
  ### Fixed
50
- - [#618](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/618) - In some scenarios the `snaky` option default value was not applied (@pboling)
510
+
511
+ - [!618](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/618) - In some scenarios the `snaky` option default value was not applied (@pboling)
51
512
 
52
513
  ## [2.0.3] - 2022-06-28
514
+
515
+ - TAG: [v2.0.3][2.0.3t]
516
+
53
517
  ### Added
54
- - [#611](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/611) - Proper deprecation warnings for `extract_access_token` argument (@pboling)
55
- - [#612](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/612) - Add `snaky: false` option to skip conversion to `OAuth2::SnakyHash` (default: true) (@pboling)
518
+
519
+ - [!611](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/611) - Proper deprecation warnings for `extract_access_token` argument (@pboling)
520
+ - [!612](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/612) - Add `snaky: false` option to skip conversion to `OAuth2::SnakyHash` (default: true) (@pboling)
521
+
56
522
  ### Fixed
57
- - [#608](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/608) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@nbibler)
58
- - [#615](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/615) - Fix support for requests with blocks, see `Faraday::Connection#run_request` (@pboling)
523
+
524
+ - [!608](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/608) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@nbibler)
525
+ - [!615](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/615) - Fix support for requests with blocks, see `Faraday::Connection#run_request` (@pboling)
59
526
 
60
527
  ## [2.0.2] - 2022-06-24
528
+
529
+ - TAG: [v2.0.2][2.0.2t]
530
+
61
531
  ### Fixed
62
- - [#604](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/604) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@stanhu)
63
- - [#606](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/606) - Ruby 2.7 deprecation warning fix: Move `access_token_class` parameter into `Client` constructor (@stanhu)
64
- - [#607](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/607) - CHANGELOG correction, reference to `OAuth2::ConnectionError` (@zavan)
532
+
533
+ - [!604](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/604) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@stanhu)
534
+ - [!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)
535
+ - [!607](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/607) - CHANGELOG correction, reference to `OAuth2::ConnectionError` (@zavan)
65
536
 
66
537
  ## [2.0.1] - 2022-06-22
538
+
539
+ - TAG: [v2.0.1][2.0.1t]
540
+
67
541
  ### Added
542
+
68
543
  - Documentation improvements (@pboling)
69
544
  - Increased test coverage to 99% (@pboling)
70
545
 
71
546
  ## [2.0.0] - 2022-06-21
547
+
548
+ - TAG: [v2.0.0][2.0.0t]
549
+
72
550
  ### Added
73
- - [#158](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/158), [#344](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/344) - Optionally pass raw response to parsers (@niels)
74
- - [#190](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/190), [#332](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/332), [#334](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/334), [#335](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/335), [#360](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/360), [#426](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/426), [#427](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/427), [#461](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/461) - Documentation (@josephpage, @pboling, @meganemura, @joshRpowell, @elliotcm)
75
- - [#220](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/220) - Support IETF rfc7523 JWT Bearer Tokens Draft 04+ (@jhmoore)
76
- - [#298](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/298) - Set the response object on the access token on Client#get_token for debugging (@cpetschnig)
77
- - [#305](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/305) - Option: `OAuth2::Client#get_token` - `:access_token_class` (`AccessToken`); user specified class to use for all calls to `get_token` (@styd)
78
- - [#346](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/571) - Modern gem structure (@pboling)
79
- - [#351](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/351) - Support Jruby 9k (@pboling)
80
- - [#362](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/362) - Support SemVer release version scheme (@pboling)
81
- - [#363](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/363) - New method `OAuth2::AccessToken#refresh!` same as old `refresh`, with backwards compatibility alias (@pboling)
82
- - [#364](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/364) - Support `application/hal+json` format (@pboling)
83
- - [#365](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/365) - Support `application/vnd.collection+json` format (@pboling)
84
- - [#376](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/376) - _Documentation_: Example / Test for Google 2-legged JWT (@jhmoore)
85
- - [#381](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/381) - Spec for extra header params on client credentials (@nikz)
86
- - [#394](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/394) - Option: `OAuth2::AccessToken#initialize` - `:expires_latency` (`nil`); number of seconds by which AccessToken validity will be reduced to offset latency (@klippx)
87
- - [#412](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/412) - Support `application/vdn.api+json` format (from jsonapi.org) (@david-christensen)
88
- - [#413](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/413) - _Documentation_: License scan and report (@meganemura)
89
- - [#442](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/442) - Option: `OAuth2::Client#initialize` - `:logger` (`::Logger.new($stdout)`) logger to use when OAUTH_DEBUG is enabled (for parity with `1-4-stable` branch) (@rthbound)
90
- - [#494](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/494) - Support [OIDC 1.0 Private Key JWT](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication); based on the OAuth JWT assertion specification [(RFC 7523)](https://tools.ietf.org/html/rfc7523) (@SteveyblamWork)
91
- - [#549](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/549) - Wrap `Faraday::ConnectionFailed` in `OAuth2::ConnectionError` (@nikkypx)
92
- - [#550](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/550) - Raise error if location header not present when redirecting (@stanhu)
93
- - [#552](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/552) - Add missing `version.rb` require (@ahorek)
94
- - [#553](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/553) - Support `application/problem+json` format (@janz93)
95
- - [#560](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/560) - Support IETF rfc6749, section 2.3.1 - don't set auth params when `nil` (@bouk)
96
- - [#571](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/571) - Support Ruby 3.1 (@pboling)
97
- - [#575](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/575) - Support IETF rfc7231, section 7.1.2 - relative location in redirect (@pboling)
98
- - [#581](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/581) - _Documentation_: of breaking changes (@pboling)
551
+
552
+ - [!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)
553
+ - [!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)
554
+ - [!220](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/220) - Support IETF rfc7523 JWT Bearer Tokens Draft 04+ (@jhmoore)
555
+ - [!298](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/298) - Set the response object on the access token on Client#get_token for debugging (@cpetschnig)
556
+ - [!305](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/305) - Option: `OAuth2::Client#get_token` - `:access_token_class` (`AccessToken`); user specified class to use for all calls to `get_token` (@styd)
557
+ - [!346](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/571) - Modern gem structure (@pboling)
558
+ - [!351](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/351) - Support Jruby 9k (@pboling)
559
+ - [!362](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/362) - Support SemVer release version scheme (@pboling)
560
+ - [!363](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/363) - New method `OAuth2::AccessToken#refresh!` same as old `refresh`, with backwards compatibility alias (@pboling)
561
+ - [!364](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/364) - Support `application/hal+json` format (@pboling)
562
+ - [!365](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/365) - Support `application/vnd.collection+json` format (@pboling)
563
+ - [!376](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/376) - _Documentation_: Example / Test for Google 2-legged JWT (@jhmoore)
564
+ - [!381](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/381) - Spec for extra header params on client credentials (@nikz)
565
+ - [!394](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/394) - Option: `OAuth2::AccessToken#initialize` - `:expires_latency` (`nil`); number of seconds by which AccessToken validity will be reduced to offset latency (@klippx)
566
+ - [!412](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/412) - Support `application/vdn.api+json` format (from jsonapi.org) (@david-christensen)
567
+ - [!413](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/413) - _Documentation_: License scan and report (@meganemura)
568
+ - [!442](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/442) - Option: `OAuth2::Client#initialize` - `:logger` (`::Logger.new($stdout)`) logger to use when OAUTH_DEBUG is enabled (for parity with `1-4-stable` branch) (@rthbound)
569
+ - [!494](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/494) - Support [OIDC 1.0 Private Key JWT](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication); based on the OAuth JWT assertion specification [(RFC 7523)](https://tools.ietf.org/html/rfc7523) (@SteveyblamWork)
570
+ - [!549](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/549) - Wrap `Faraday::ConnectionFailed` in `OAuth2::ConnectionError` (@nikkypx)
571
+ - [!550](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/550) - Raise error if location header not present when redirecting (@stanhu)
572
+ - [!552](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/552) - Add missing `version.rb` require (@ahorek)
573
+ - [!553](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/553) - Support `application/problem+json` format (@janz93)
574
+ - [!560](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/560) - Support IETF rfc6749, section 2.3.1 - don't set auth params when `nil` (@bouk)
575
+ - [!571](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/571) - Support Ruby 3.1 (@pboling)
576
+ - [!575](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/575) - Support IETF rfc7231, section 7.1.2 - relative location in redirect (@pboling)
577
+ - [!581](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/581) - _Documentation_: of breaking changes (@pboling)
578
+
99
579
  ### Changed
100
- - [#191](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/191) - **BREAKING**: Token is expired if `expired_at` time is `now` (@davestevens)
101
- - [#312](https://gitlab.com/oauth-xx/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)
102
- - [#317](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/317) - _Dependency_: Upgrade `jwt` to 2.x.x (@travisofthenorth)
103
- - [#338](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/338) - _Dependency_: Switch from `Rack::Utils.escape` to `CGI.escape` (@josephpage)
104
- - [#339](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/339), [#368](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/368), [#424](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/424), [#479](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/479), [#493](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/493), [#539](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/539), [#542](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/542), [#553](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/553) - CI Updates, code coverage, linting, spelling, type fixes, New VERSION constant (@pboling, @josephpage, @ahorek)
105
- - [#410](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/410) - **BREAKING**: Removed the ability to call .error from an OAuth2::Response object (@jhmoore)
106
- - [#414](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/414) - Use Base64.strict_encode64 instead of custom internal logic (@meganemura)
107
- - [#489](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/489) - **BREAKING**: Default value for option `OAuth2::Client` - `:authorize_url` removed leading slash to work with relative paths by default (`'oauth/authorize'`) (@ghost)
108
- - [#489](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/489) - **BREAKING**: Default value for option `OAuth2::Client` - `:token_url` removed leading slash to work with relative paths by default (`'oauth/token'`) (@ghost)
109
- - [#507](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/507), [#575](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/575) - **BREAKING**: Transform keys to camel case, always, by default (ultimately via `rash_alt` gem)
110
- - Original keys will still work as previously, in most scenarios, thanks to `rash_alt` gem.
111
- - However, this is a _breaking_ change if you rely on `response.parsed.to_h`, as the keys in the result will be camel case.
112
- - As of version 2.0.4 you can turn key transformation off with the `snaky: false` option.
113
- - [#576](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/576) - **BREAKING**: Stop rescuing parsing errors (@pboling)
114
- - [#591](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/576) - _DEPRECATION_: `OAuth2::Client` - `:extract_access_token` option is deprecated
580
+
581
+ - [!191](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/191) - **BREAKING**: Token is expired if `expired_at` time is `now` (@davestevens)
582
+ - [!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)
583
+ - [!317](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/317) - _Dependency_: Upgrade `jwt` to 2.x.x (@travisofthenorth)
584
+ - [!338](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/338) - _Dependency_: Switch from `Rack::Utils.escape` to `CGI.escape` (@josephpage)
585
+ - [!339](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/339), [!368](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/368), [!424](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/424), [!479](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/479), [!493](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/493), [!539](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/539), [!542](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/542), [!553](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/553) - CI Updates, code coverage, linting, spelling, type fixes, New VERSION constant (@pboling, @josephpage, @ahorek)
586
+ - [!410](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/410) - **BREAKING**: Removed the ability to call .error from an OAuth2::Response object (@jhmoore)
587
+ - [!414](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/414) - Use Base64.strict_encode64 instead of custom internal logic (@meganemura)
588
+ - [!469](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/469) - **BREAKING**: Default value for option `OAuth2::Client` - `:authorize_url` removed leading slash to work with relative paths by default (`'oauth/authorize'`) (@ghost)
589
+ - [!469](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/469) - **BREAKING**: Default value for option `OAuth2::Client` - `:token_url` removed leading slash to work with relative paths by default (`'oauth/token'`) (@ghost)
590
+ - [!507](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/507), [!575](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/575) - **BREAKING**: Transform keys to snake case, always, by default (ultimately via `rash_alt` gem)
591
+ - Original keys will still work as previously, in most scenarios, thanks to `rash_alt` gem.
592
+ - However, this is a _breaking_ change if you rely on `response.parsed.to_h`, as the keys in the result will be snake case.
593
+ - As of version 2.0.4 you can turn key transformation off with the `snaky: false` option.
594
+ - [!576](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - **BREAKING**: Stop rescuing parsing errors (@pboling)
595
+ - [!591](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - _DEPRECATION_: `OAuth2::Client` - `:extract_access_token` option is deprecated
596
+
115
597
  ### Fixed
116
- - [#158](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/158), [#344](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/344) - Handling of errors when using `omniauth-facebook` (@niels)
117
- - [#294](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/294) - Fix: "Unexpected middleware set" issue with Faraday when `OAUTH_DEBUG=true` (@spectator, @gafrom)
118
- - [#300](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/300) - _Documentation_: `Oauth2::Error` - Error codes are strings, not symbols (@NobodysNightmare)
119
- - [#318](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/318), [#326](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/326), [#343](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/343), [#347](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/347), [#397](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/397), [#464](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/464), [#561](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/561), [#565](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/565) - _Dependency_: Support all versions of `faraday` (see [gemfiles/README.md][gemfiles/readme] for compatibility matrix with Ruby engines & versions) (@pboling, @raimondasv, @zacharywelch, @Fudoshiki, @ryogift, @sj26, @jdelStrother)
120
- - [#322](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/322), [#331](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/331), [#337](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/337), [#361](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/361), [#371](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/371), [#377](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/377), [#383](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/383), [#392](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/392), [#395](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/395), [#400](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/400), [#401](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/401), [#403](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/403), [#415](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/415), [#567](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/567) - Updated Rubocop, Rubocop plugins and improved code style (@pboling, @bquorning, @lautis, @spectator)
121
- - [#328](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/328) - _Documentation_: Homepage URL is SSL (@amatsuda)
122
- - [#339](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/339), [#479](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/479) - Update testing infrastructure for all supported Rubies (@pboling and @josephpage)
123
- - [#366](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/366) - **Security**: Fix logging to `$stdout` of request and response bodies via Faraday's logger and `ENV["OAUTH_DEBUG"] == 'true'` (@pboling)
124
- - [#380](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/380) - Fix: Stop attempting to encode non-encodable objects in `Oauth2::Error` (@jhmoore)
125
- - [#399](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/399) - Fix: Stop duplicating `redirect_uri` in `get_token` (@markus)
126
- - [#410](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/410) - Fix: `SystemStackError` caused by circular reference between Error and Response classes (@jhmoore)
127
- - [#460](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/460) - Fix: Stop throwing errors when `raise_errors` is set to `false`; analog of [#524](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/524) for `1-4-stable` branch (@joaolrpaulo)
128
- - [#472](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/472) - **Security**: Add checks to enforce `client_secret` is *never* passed in authorize_url query params for `implicit` and `auth_code` grant types (@dfockler)
129
- - [#482](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/482) - _Documentation_: Update last of `intridea` links to `oauth-xx` (@pboling)
130
- - [#536](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/536) - **Security**: Compatibility with more (and recent) Ruby OpenSSL versions, Github Actions, Rubocop updated, analogous to [#535](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/535) on `1-4-stable` branch (@pboling)
131
- - [#595](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/595) - Graceful handling of empty responses from `Client#get_token`, respecting `:raise_errors` config (@stanhu)
132
- - [#596](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/596) - Consistency between `AccessToken#refresh` and `Client#get_token` named arguments (@stanhu)
133
- - [#598](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/598) - Fix unparseable data not raised as error in `Client#get_token`, respecting `:raise_errors` config (@stanhu)
598
+
599
+ - [!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)
600
+ - [!294](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/294) - Fix: "Unexpected middleware set" issue with Faraday when `OAUTH_DEBUG=true` (@spectator, @gafrom)
601
+ - [!300](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/300) - _Documentation_: `Oauth2::Error` - Error codes are strings, not symbols (@NobodysNightmare)
602
+ - [!318](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/318), [!326](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/326), [!343](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/343), [!347](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/347), [!397](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/397), [!464](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/464), [!561](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/561), [!565](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/565) - _Dependency_: Support all versions of `faraday` (see [gemfiles/README.md][gemfiles/readme] for compatibility matrix with Ruby engines & versions) (@pboling, @raimondasv, @zacharywelch, @Fudoshiki, @ryogift, @sj26, @jdelStrother)
603
+ - [!322](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/322), [!331](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/331), [!337](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/337), [!361](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/361), [!371](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/371), [!377](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/377), [!383](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/383), [!392](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/392), [!395](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/395), [!400](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/400), [!401](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/401), [!403](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/403), [!415](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/415), [!567](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/567) - Updated Rubocop, Rubocop plugins and improved code style (@pboling, @bquorning, @lautis, @spectator)
604
+ - [!328](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/328) - _Documentation_: Homepage URL is SSL (@amatsuda)
605
+ - [!339](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/339), [!479](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/479) - Update testing infrastructure for all supported Rubies (@pboling and @josephpage)
606
+ - [!366](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/366) - **Security**: Fix logging to `$stdout` of request and response bodies via Faraday's logger and `ENV["OAUTH_DEBUG"] == 'true'` (@pboling)
607
+ - [!380](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/380) - Fix: Stop attempting to encode non-encodable objects in `Oauth2::Error` (@jhmoore)
608
+ - [!399](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/399) - Fix: Stop duplicating `redirect_uri` in `get_token` (@markus)
609
+ - [!410](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/410) - Fix: `SystemStackError` caused by circular reference between Error and Response classes (@jhmoore)
610
+ - [!460](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/460) - Fix: Stop throwing errors when `raise_errors` is set to `false`; analog of [!524](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/524) for `1-4-stable` branch (@joaolrpaulo)
611
+ - [!472](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/472) - **Security**: Add checks to enforce `client_secret` is *never* passed in authorize_url query params for `implicit` and `auth_code` grant types (@dfockler)
612
+ - [!482](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/482) - _Documentation_: Update last of `intridea` links to `ruby-oauth` (@pboling)
613
+ - [!536](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/536) - **Security**: Compatibility with more (and recent) Ruby OpenSSL versions, Github Actions, Rubocop updated, analogous to [!535](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/535) on `1-4-stable` branch (@pboling)
614
+ - [!595](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/595) - Graceful handling of empty responses from `Client#get_token`, respecting `:raise_errors` config (@stanhu)
615
+ - [!596](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/596) - Consistency between `AccessToken#refresh` and `Client#get_token` named arguments (@stanhu)
616
+ - [!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)
617
+
134
618
  ### Removed
135
- - [#341](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/341) - Remove Rdoc & Jeweler related files (@josephpage)
136
- - [#342](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/342) - **BREAKING**: Dropped support for Ruby 1.8 (@josephpage)
137
- - [#539](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/539) - Remove reliance on globally included OAuth2 in tests, analog of [#538](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/538) for 1-4-stable (@anderscarling)
138
- - [#566](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/566) - _Dependency_: Removed `wwtd` (@bquorning)
139
- - [#589](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/589), [#593](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/593) - Remove support for expired MAC token draft spec (@stanhu)
140
- - [#590](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/590) - _Dependency_: Removed `multi_json` (@stanhu)
619
+
620
+ - [!341](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/341) - Remove Rdoc & Jeweler related files (@josephpage)
621
+ - [!342](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/342) - **BREAKING**: Dropped support for Ruby 1.8 (@josephpage)
622
+ - [!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)
623
+ - [!566](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/566) - _Dependency_: Removed `wwtd` (@bquorning)
624
+ - [!589](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/589), [!593](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/593) - Remove support for expired MAC token draft spec (@stanhu)
625
+ - [!590](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/590) - _Dependency_: Removed `multi_json` (@stanhu)
141
626
 
142
627
  ## [1.4.11] - 2022-09-16
628
+
629
+ - TAG: [v1.4.11][1.4.11t]
143
630
  - Complete migration to main branch as default (@pboling)
144
631
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
145
632
 
146
633
  ## [1.4.10] - 2022-07-01
147
- - FIPS Compatibility [#587](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/587) (@akostadinov)
634
+
635
+ - TAG: [v1.4.10][1.4.10t]
636
+ - FIPS Compatibility [!587](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/587) (@akostadinov)
148
637
 
149
638
  ## [1.4.9] - 2022-02-20
150
- - Fixes compatibility with Faraday v2 [572](https://gitlab.com/oauth-xx/oauth2/-/issues/572)
639
+
640
+ - TAG: [v1.4.9][1.4.9t]
641
+ - Fixes compatibility with Faraday v2 [572](https://gitlab.com/ruby-oauth/oauth2/-/issues/572)
151
642
  - Includes supported versions of Faraday in test matrix:
152
- - Faraday ~> 2.2.0 with Ruby >= 2.6
153
- - Faraday ~> 1.10 with Ruby >= 2.4
154
- - Faraday ~> 0.17.3 with Ruby >= 1.9
643
+ - Faraday ~> 2.2.0 with Ruby >= 2.6
644
+ - Faraday ~> 1.10 with Ruby >= 2.4
645
+ - Faraday ~> 0.17.3 with Ruby >= 1.9
155
646
  - Add Windows and MacOS to test matrix
156
647
 
157
648
  ## [1.4.8] - 2022-02-18
649
+
650
+ - TAG: [v1.4.8][1.4.8t]
158
651
  - MFA is now required to push new gem versions (@pboling)
159
652
  - README overhaul w/ new Ruby Version and Engine compatibility policies (@pboling)
160
- - [#569](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/569) Backport fixes ([#561](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/561) by @ryogift), and add more fixes, to allow faraday 1.x and 2.x (@jrochkind)
653
+ - [!569](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/569) Backport fixes ([!561](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/561) by @ryogift), and add more fixes, to allow faraday 1.x and 2.x (@jrochkind)
161
654
  - Improve Code Coverage tracking (Coveralls, CodeCov, CodeClimate), and enable branch coverage (@pboling)
162
655
  - Add CodeQL, Security Policy, Funding info (@pboling)
163
656
  - Added Ruby 3.1, jruby, jruby-head, truffleruby, truffleruby-head to build matrix (@pboling)
164
- - [#543](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/543) - Support for more modern Open SSL libraries (@pboling)
657
+ - [!543](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/543) - Support for more modern Open SSL libraries (@pboling)
165
658
 
166
659
  ## [1.4.7] - 2021-03-19
167
- - [#541](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/541) - Backport fix to expires_at handling [#533](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/533) to 1-4-stable branch. (@dobon)
660
+
661
+ - TAG: [v1.4.7][1.4.7t]
662
+ - [!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)
168
663
 
169
664
  ## [1.4.6] - 2021-03-19
170
- - [#540](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/540) - Add VERSION constant (@pboling)
171
- - [#537](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/537) - Fix crash in OAuth2::Client#get_token (@anderscarling)
172
- - [#538](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/538) - Remove reliance on globally included OAuth2 in tests, analogous to [#539](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/539) on main branch (@anderscarling)
665
+
666
+ - TAG: [v1.4.6][1.4.6t]
667
+ - [!540](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/540) - Add VERSION constant (@pboling)
668
+ - [!537](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/537) - Fix crash in OAuth2::Client#get_token (@anderscarling)
669
+ - [!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)
173
670
 
174
671
  ## [1.4.5] - 2021-03-18
175
- - [#535](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/535) - Compatibility with range of supported Ruby OpenSSL versions, Rubocop updates, Github Actions, analogous to [#536](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/536) on main branch (@pboling)
176
- - [#518](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/518) - Add extract_access_token option to OAuth2::Client (@jonspalmer)
177
- - [#507](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/507) - Fix camel case content type, response keys (@anvox)
178
- - [#500](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/500) - Fix YARD documentation formatting (@olleolleolle)
672
+
673
+ - TAG: [v1.4.5][1.4.5t]
674
+ - [!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)
675
+ - [!518](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/518) - Add extract_access_token option to OAuth2::Client (@jonspalmer)
676
+ - [!507](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/507) - Fix camel case content type, response keys (@anvox)
677
+ - [!500](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/500) - Fix YARD documentation formatting (@olleolleolle)
179
678
 
180
679
  ## [1.4.4] - 2020-02-12
181
- - [#408](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/408) - Fixed expires_at for formatted time (@Lomey)
680
+
681
+ - TAG: [v1.4.4][1.4.4t]
682
+ - [!408](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/408) - Fixed expires_at for formatted time (@Lomey)
182
683
 
183
684
  ## [1.4.3] - 2020-01-29
184
- - [#483](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/483) - add project metadata to gemspec (@orien)
185
- - [#495](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/495) - support additional types of access token requests (@SteveyblamFreeagent, @thomcorley, @dgholz)
186
- - Adds support for private_key_jwt and tls_client_auth
187
- - [#433](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/433) - allow field names with square brackets and numbers in params (@asm256)
685
+
686
+ - TAG: [v1.4.3][1.4.3t]
687
+ - [!483](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/483) - add project metadata to gemspec (@orien)
688
+ - [!495](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/495) - support additional types of access token requests (@SteveyblamFreeagent, @thomcorley, @dgholz)
689
+ - Adds support for private_key_jwt and tls_client_auth
690
+ - [!433](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/433) - allow field names with square brackets and numbers in params (@asm256)
188
691
 
189
692
  ## [1.4.2] - 2019-10-01
190
- - [#478](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/478) - support latest version of faraday & fix build (@pboling)
191
- - Officially support Ruby 2.6 and truffleruby
693
+
694
+ - TAG: [v1.4.2][1.4.2t]
695
+ - [!478](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/478) - support latest version of faraday & fix build (@pboling)
696
+ - Officially support Ruby 2.6 and truffleruby
192
697
 
193
698
  ## [1.4.1] - 2018-10-13
194
- - [#417](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/417) - update jwt dependency (@thewoolleyman)
195
- - [#419](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/419) - remove rubocop dependency (temporary, added back in [#423](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/423)) (@pboling)
196
- - [#418](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/418) - update faraday dependency (@pboling)
197
- - [#420](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/420) - update [oauth2.gemspec](https://gitlab.com/oauth-xx/oauth2/-/blob/1-4-stable/oauth2.gemspec) (@pboling)
198
- - [#421](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/421) - fix [CHANGELOG.md](https://gitlab.com/oauth-xx/oauth2/-/blob/1-4-stable/CHANGELOG.md) for previous releases (@pboling)
199
- - [#422](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/422) - update [LICENSE](https://gitlab.com/oauth-xx/oauth2/-/blob/1-4-stable/LICENSE) and [README.md](https://gitlab.com/oauth-xx/oauth2/-/blob/1-4-stable/README.md) (@pboling)
200
- - [#423](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/423) - update [builds](https://travis-ci.org/oauth-xx/oauth2/builds), [Rakefile](https://gitlab.com/oauth-xx/oauth2/-/blob/1-4-stable/Rakefile) (@pboling)
201
- - officially document supported Rubies
202
- * Ruby 1.9.3
203
- * Ruby 2.0.0
204
- * Ruby 2.1
205
- * Ruby 2.2
206
- * [JRuby 1.7][jruby-1.7] (targets MRI v1.9)
207
- * [JRuby 9.0][jruby-9.0] (targets MRI v2.0)
208
- * Ruby 2.3
209
- * Ruby 2.4
210
- * Ruby 2.5
211
- * [JRuby 9.1][jruby-9.1] (targets MRI v2.3)
212
- * [JRuby 9.2][jruby-9.2] (targets MRI v2.5)
699
+
700
+ - TAG: [v1.4.1][1.4.1t]
701
+ - [!417](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/417) - update jwt dependency (@thewoolleyman)
702
+ - [!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)
703
+ - [!418](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/418) - update faraday dependency (@pboling)
704
+ - [!420](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/420) - update [oauth2.gemspec](https://gitlab.com/ruby-oauth/oauth2/-/blob/1-4-stable/oauth2.gemspec) (@pboling)
705
+ - [!421](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/421) - fix [CHANGELOG.md](https://gitlab.com/ruby-oauth/oauth2/-/blob/1-4-stable/CHANGELOG.md) for previous releases (@pboling)
706
+ - [!422](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/422) - update [LICENSE](https://gitlab.com/ruby-oauth/oauth2/-/blob/1-4-stable/LICENSE) and [README.md](https://gitlab.com/ruby-oauth/oauth2/-/blob/1-4-stable/README.md) (@pboling)
707
+ - [!423](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/423) - update [builds](https://travis-ci.org/ruby-oauth/oauth2/builds), [Rakefile](https://gitlab.com/ruby-oauth/oauth2/-/blob/1-4-stable/Rakefile) (@pboling)
708
+ - officially document supported Rubies
709
+ * Ruby 1.9.3
710
+ * Ruby 2.0.0
711
+ * Ruby 2.1
712
+ * Ruby 2.2
713
+ * [JRuby 1.7][jruby-1.7] (targets MRI v1.9)
714
+ * [JRuby 9.0][jruby-9.0] (targets MRI v2.0)
715
+ * Ruby 2.3
716
+ * Ruby 2.4
717
+ * Ruby 2.5
718
+ * [JRuby 9.1][jruby-9.1] (targets MRI v2.3)
719
+ * [JRuby 9.2][jruby-9.2] (targets MRI v2.5)
213
720
 
214
721
  [jruby-1.7]: https://www.jruby.org/2017/05/11/jruby-1-7-27.html
215
722
  [jruby-9.0]: https://www.jruby.org/2016/01/26/jruby-9-0-5-0.html
@@ -217,16 +724,22 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
217
724
  [jruby-9.2]: https://www.jruby.org/2018/05/24/jruby-9-2-0-0.html
218
725
 
219
726
  ## [1.4.0] - 2017-06-09
727
+
728
+ - TAG: [v1.4.0][1.4.0t]
220
729
  - Drop Ruby 1.8.7 support (@sferik)
221
730
  - Fix some RuboCop offenses (@sferik)
222
731
  - _Dependency_: Remove Yardstick (@sferik)
223
732
  - _Dependency_: Upgrade Faraday to 0.12 (@sferik)
224
733
 
225
734
  ## [1.3.1] - 2017-03-03
735
+
736
+ - TAG: [v1.3.1][1.3.1t]
226
737
  - Add support for Ruby 2.4.0 (@pschambacher)
227
738
  - _Dependency_: Upgrade Faraday to Faraday 0.11 (@mcfiredrill, @rhymes, @pschambacher)
228
739
 
229
740
  ## [1.3.0] - 2016-12-28
741
+
742
+ - TAG: [v1.3.0][1.3.0t]
230
743
  - Add support for header-based authentication to the `Client` so it can be used across the library (@bjeanes)
231
744
  - Default to header-based authentication when getting a token from an authorisation code (@maletor)
232
745
  - **Breaking**: Allow an `auth_scheme` (`:basic_auth` or `:request_body`) to be set on the client, defaulting to `:request_body` to maintain backwards compatibility (@maletor, @bjeanes)
@@ -236,22 +749,36 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
236
749
  - Add support for Faraday 0.10 (@rhymes)
237
750
 
238
751
  ## [1.2.0] - 2016-07-01
752
+
753
+ - TAG: [v1.2.0][1.2.0t]
239
754
  - Properly handle encoding of error responses (so we don't blow up, for example, when Google's response includes a ∞) (@Motoshi-Nishihira)
240
755
  - Make a copy of the options hash in `AccessToken#from_hash` to avoid accidental mutations (@Linuus)
241
756
  - Use `raise` rather than `fail` to throw exceptions (@sferik)
242
757
 
243
758
  ## [1.1.0] - 2016-01-30
759
+
760
+ - TAG: [v1.1.0][1.1.0t]
244
761
  - 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)
245
762
  - Add support for Rack 2, and bump various other dependencies (@sferik)
246
763
 
247
764
  ## [1.0.0] - 2014-07-09
765
+
766
+ - TAG: [v1.0.0][1.0.0t]
767
+
248
768
  ### Added
769
+
249
770
  - Add an implementation of the MAC token spec.
771
+
250
772
  ### Fixed
773
+
251
774
  - Fix Base64.strict_encode64 incompatibility with Ruby 1.8.7.
252
775
 
253
776
  ## [0.5.0] - 2011-07-29
777
+
778
+ - TAG: [v0.5.0][0.5.0t]
779
+
254
780
  ### Changed
781
+
255
782
  - *breaking* `oauth_token` renamed to `oauth_bearer`.
256
783
  - *breaking* `authorize_path` Client option renamed to `authorize_url`.
257
784
  - *breaking* `access_token_path` Client option renamed to `token_url`.
@@ -260,76 +787,200 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
260
787
 
261
788
  ## [0.4.1] - 2011-04-20
262
789
 
790
+ - TAG: [v0.4.1][0.4.1t]
791
+
263
792
  ## [0.4.0] - 2011-04-20
264
793
 
794
+ - TAG: [v0.4.0][0.4.0t]
795
+
265
796
  ## [0.3.0] - 2011-04-08
266
797
 
798
+ - TAG: [v0.3.0][0.3.0t]
799
+
267
800
  ## [0.2.0] - 2011-04-01
268
801
 
802
+ - TAG: [v0.2.0][0.2.0t]
803
+
269
804
  ## [0.1.1] - 2011-01-12
270
805
 
806
+ - TAG: [v0.1.1][0.1.1t]
807
+
271
808
  ## [0.1.0] - 2010-10-13
272
809
 
273
- ## [0.0.13] + [0.0.12] + [0.0.11] - 2010-08-17
810
+ - TAG: [v0.1.0][0.1.0t]
811
+
812
+ ## [0.0.13] - 2010-08-17
813
+
814
+ - TAG: [v0.0.13][0.0.13t]
815
+
816
+ ## [0.0.12] - 2010-08-17
817
+
818
+ - TAG: [v0.0.12][0.0.12t]
819
+
820
+ ## [0.0.11] - 2010-08-17
821
+
822
+ - TAG: [v0.0.11][0.0.11t]
274
823
 
275
824
  ## [0.0.10] - 2010-06-19
276
825
 
826
+ - TAG: [v0.0.10][0.0.10t]
827
+
277
828
  ## [0.0.9] - 2010-06-18
278
829
 
279
- ## [0.0.8] + [0.0.7] - 2010-04-27
830
+ - TAG: [v0.0.9][0.0.9t]
831
+
832
+ ## [0.0.8] - 2010-04-27
833
+
834
+ - TAG: [v0.0.8][0.0.8t]
835
+
836
+ ## [0.0.7] - 2010-04-27
837
+
838
+ - TAG: [v0.0.7][0.0.7t]
280
839
 
281
840
  ## [0.0.6] - 2010-04-25
282
841
 
842
+ - TAG: [v0.0.6][0.0.6t]
843
+
283
844
  ## [0.0.5] - 2010-04-23
284
845
 
285
- ## [0.0.4] + [0.0.3] + [0.0.2] + [0.0.1] - 2010-04-22
286
-
287
- [0.0.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/311d9f4...v0.0.1
288
- [0.0.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.1...v0.0.2
289
- [0.0.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.2...v0.0.3
290
- [0.0.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.3...v0.0.4
291
- [0.0.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.4...v0.0.5
292
- [0.0.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.5...v0.0.6
293
- [0.0.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.6...v0.0.7
294
- [0.0.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.7...v0.0.8
295
- [0.0.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.8...v0.0.9
296
- [0.0.10]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.9...v0.0.10
297
- [0.0.11]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.10...v0.0.11
298
- [0.0.12]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.11...v0.0.12
299
- [0.0.13]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.12...v0.0.13
300
- [0.1.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.13...v0.1.0
301
- [0.1.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.1.0...v0.1.1
302
- [0.2.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.1.1...v0.2.0
303
- [0.3.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.2.0...v0.3.0
304
- [0.4.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.3.0...v0.4.0
305
- [0.4.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.4.0...v0.4.1
306
- [0.5.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.4.1...v0.5.0
307
- [1.0.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.9.4...v1.0.0
308
- [1.1.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.0.0...v1.1.0
309
- [1.2.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.1.0...v1.2.0
310
- [1.3.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.2.0...v1.3.0
311
- [1.3.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.3.0...v1.3.1
312
- [1.4.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.3.1...v1.4.0
313
- [1.4.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.0...v1.4.1
314
- [1.4.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.1...v1.4.2
315
- [1.4.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.2...v1.4.3
316
- [1.4.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.3...v1.4.4
317
- [1.4.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.4...v1.4.5
318
- [1.4.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.5...v1.4.6
319
- [1.4.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.6...v1.4.7
320
- [1.4.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.7...v1.4.8
321
- [1.4.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.8...v1.4.9
322
- [1.4.10]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.9...v1.4.10
323
- [1.4.11]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.10...v1.4.11
324
- [2.0.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.11...v2.0.0
325
- [2.0.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.0...v2.0.1
326
- [2.0.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.1...v2.0.2
327
- [2.0.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.2...v2.0.3
328
- [2.0.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.3...v2.0.4
329
- [2.0.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.4...v2.0.5
330
- [2.0.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.5...v2.0.6
331
- [2.0.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.6...v2.0.7
332
- [2.0.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.7...v2.0.8
333
- [2.0.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.8...v2.0.9
334
- [Unreleased]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.9...HEAD
846
+ - TAG: [v0.0.5][0.0.5t]
847
+
848
+ ## [0.0.4] - 2010-04-22
849
+
850
+ - TAG: [v0.0.4][0.0.4t]
851
+
852
+ ## [0.0.3] - 2010-04-22
853
+
854
+ - TAG: [v0.0.3][0.0.3t]
855
+
856
+ ## [0.0.2] - 2010-04-22
857
+
858
+ - TAG: [v0.0.2][0.0.2t]
859
+
860
+ ## [0.0.1] - 2010-04-22
861
+
862
+ - TAG: [v0.0.1][0.0.1t]
863
+
335
864
  [gemfiles/readme]: gemfiles/README.md
865
+
866
+ [Unreleased]: https://github.com/ruby-oauth/oauth2/compare/v2.0.22...HEAD
867
+ [2.0.22]: https://github.com/ruby-oauth/oauth2/compare/v2.0.21...v2.0.22
868
+ [2.0.22t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.22
869
+ [2.0.21]: https://github.com/ruby-oauth/oauth2/compare/v2.0.20...v2.0.21
870
+ [2.0.21t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.21
871
+ [2.0.20]: https://github.com/ruby-oauth/oauth2/compare/v2.0.19...v2.0.20
872
+ [2.0.20t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.20
873
+ [2.0.19]: https://github.com/ruby-oauth/oauth2/compare/v2.0.18...v2.0.19
874
+ [2.0.19t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.19
875
+ [2.0.18]: https://github.com/ruby-oauth/oauth2/compare/v2.0.17...v2.0.18
876
+ [2.0.18t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.18
877
+ [2.0.17]: https://github.com/ruby-oauth/oauth2/compare/v2.0.16...v2.0.17
878
+ [2.0.17t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.17
879
+ [2.0.16]: https://github.com/ruby-oauth/oauth2/compare/v2.0.15...v2.0.16
880
+ [2.0.16t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.16
881
+ [2.0.15]: https://github.com/ruby-oauth/oauth2/compare/v2.0.14...v2.0.15
882
+ [2.0.15t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.15
883
+ [2.0.14]: https://github.com/ruby-oauth/oauth2/compare/v2.0.13...v2.0.14
884
+ [2.0.14t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.14
885
+ [2.0.13]: https://github.com/ruby-oauth/oauth2/compare/v2.0.12...v2.0.13
886
+ [2.0.13t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.13
887
+ [2.0.12]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.11...v2.0.12
888
+ [2.0.12t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.12
889
+ [2.0.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.10...v2.0.11
890
+ [2.0.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.11
891
+ [2.0.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.9...v2.0.10
892
+ [2.0.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.10
893
+ [2.0.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.8...v2.0.9
894
+ [2.0.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.9
895
+ [2.0.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.7...v2.0.8
896
+ [2.0.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.8
897
+ [2.0.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.6...v2.0.7
898
+ [2.0.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.7
899
+ [2.0.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.5...v2.0.6
900
+ [2.0.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.6
901
+ [2.0.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.4...v2.0.5
902
+ [2.0.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.5
903
+ [2.0.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.3...v2.0.4
904
+ [2.0.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.4
905
+ [2.0.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.2...v2.0.3
906
+ [2.0.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.3
907
+ [2.0.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.1...v2.0.2
908
+ [2.0.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.2
909
+ [2.0.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.0...v2.0.1
910
+ [2.0.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.1
911
+ [2.0.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.11...v2.0.0
912
+ [2.0.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.0
913
+ [1.4.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.10...v1.4.11
914
+ [1.4.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.11
915
+ [1.4.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.9...v1.4.10
916
+ [1.4.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.10
917
+ [1.4.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.8...v1.4.9
918
+ [1.4.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.9
919
+ [1.4.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.7...v1.4.8
920
+ [1.4.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.8
921
+ [1.4.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.6...v1.4.7
922
+ [1.4.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.7
923
+ [1.4.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.5...v1.4.6
924
+ [1.4.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.6
925
+ [1.4.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.4...v1.4.5
926
+ [1.4.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.5
927
+ [1.4.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.3...v1.4.4
928
+ [1.4.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.4
929
+ [1.4.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.2...v1.4.3
930
+ [1.4.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.3
931
+ [1.4.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.1...v1.4.2
932
+ [1.4.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.2
933
+ [1.4.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.0...v1.4.1
934
+ [1.4.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.1
935
+ [1.4.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.3.1...v1.4.0
936
+ [1.4.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.0
937
+ [1.3.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.3.0...v1.3.1
938
+ [1.3.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.3.1
939
+ [1.3.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.2.0...v1.3.0
940
+ [1.3.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.3.0
941
+ [1.2.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.1.0...v1.2.0
942
+ [1.2.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.2.0
943
+ [1.1.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.0.0...v1.1.0
944
+ [1.1.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.1.0
945
+ [1.0.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.9.4...v1.0.0
946
+ [1.0.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.0.0
947
+ [0.5.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.4.1...v0.5.0
948
+ [0.5.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.5.0
949
+ [0.4.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.4.0...v0.4.1
950
+ [0.4.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.4.1
951
+ [0.4.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.3.0...v0.4.0
952
+ [0.4.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.4.0
953
+ [0.3.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.2.0...v0.3.0
954
+ [0.3.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.3.0
955
+ [0.2.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.1.1...v0.2.0
956
+ [0.2.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.2.0
957
+ [0.1.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.1.0...v0.1.1
958
+ [0.1.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.1.1
959
+ [0.1.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.13...v0.1.0
960
+ [0.1.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.1.0
961
+ [0.0.13]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.12...v0.0.13
962
+ [0.0.13t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.13
963
+ [0.0.12]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.11...v0.0.12
964
+ [0.0.12t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.12
965
+ [0.0.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.10...v0.0.11
966
+ [0.0.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.11
967
+ [0.0.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.9...v0.0.10
968
+ [0.0.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.10
969
+ [0.0.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.8...v0.0.9
970
+ [0.0.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.9
971
+ [0.0.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.7...v0.0.8
972
+ [0.0.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.8
973
+ [0.0.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.6...v0.0.7
974
+ [0.0.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.7
975
+ [0.0.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.5...v0.0.6
976
+ [0.0.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.6
977
+ [0.0.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.4...v0.0.5
978
+ [0.0.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.5
979
+ [0.0.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.3...v0.0.4
980
+ [0.0.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.4
981
+ [0.0.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.2...v0.0.3
982
+ [0.0.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.3
983
+ [0.0.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.1...v0.0.2
984
+ [0.0.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.2
985
+ [0.0.1]: https://github.com/ruby-oauth/oauth2/compare/311d9f4...v0.0.1
986
+ [0.0.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.1