oauth2 2.0.10 → 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.
data/CHANGELOG.md CHANGED
@@ -1,285 +1,560 @@
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
+
8
21
  ### Added
22
+
9
23
  ### Changed
24
+
10
25
  ### Deprecated
26
+
11
27
  ### Removed
28
+
12
29
  ### Fixed
30
+
13
31
  ### Security
14
32
 
15
- ## [2.0.10] - 2025-05-16
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
+
44
+ ## [2.0.16] - 2025-09-14
45
+
46
+ - TAG: [v2.0.16][2.0.16t]
47
+ - COVERAGE: 100.00% -- 520/520 lines in 14 files
48
+ - BRANCH COVERAGE: 100.00% -- 176/176 branches in 14 files
49
+ - 90.48% documented
50
+
51
+ ### Added
52
+
53
+ - [gh!680][gh!680] - E2E example using mock test server added in v2.0.11 by @pboling
54
+ - mock-oauth2-server upgraded to v2.3.0
55
+ - https://github.com/navikt/mock-oauth2-server
56
+ - `docker compose -f docker-compose-ssl.yml up -d --wait`
57
+ - `ruby examples/e2e.rb`
58
+ - `docker compose -f docker-compose-ssl.yml down`
59
+ - mock server readiness wait is 90s
60
+ - override via E2E_WAIT_TIMEOUT
61
+ - [gh!676][gh!676], [gh!679][gh!679] - Apache SkyWalking Eyes dependency license check by @pboling
62
+
63
+ ### Changed
64
+
65
+ - [gh!678][gh!678] - Many improvements to make CI more resilient (past/future proof) by @pboling
66
+ - [gh!681][gh!681] - Upgrade to kettle-dev v1.1.19
67
+
68
+ [gh!676]: https://github.com/ruby-oauth/oauth2/pull/676
69
+ [gh!678]: https://github.com/ruby-oauth/oauth2/pull/678
70
+ [gh!679]: https://github.com/ruby-oauth/oauth2/pull/679
71
+ [gh!680]: https://github.com/ruby-oauth/oauth2/pull/680
72
+ [gh!681]: https://github.com/ruby-oauth/oauth2/pull/681
73
+
74
+ ## [2.0.15] - 2025-09-08
75
+
76
+ - TAG: [v2.0.15][2.0.15t]
77
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
78
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
79
+ - 90.48% documented
80
+
81
+ ### Added
82
+
83
+ - [gh!671][gh!671] - Complete documentation example for Instagram by @pboling
84
+ - .env.local.example for contributor happiness
85
+ - note lack of builds for JRuby 9.2, 9.3 & Truffleruby 22.3, 23.0
86
+ - [actions/runner - issues/2347][GHA-continue-on-error-ui]
87
+ - [community/discussions/15452][GHA-allow-failure]
88
+ - [gh!670][gh!670] - AccessToken: verb-dependent token transmission mode by @mrj
89
+ - e.g., Instagram GET=:query, POST/DELETE=:header
90
+
91
+ ### Changed
92
+
93
+ - [gh!669][gh!669] - Upgrade to kettle-dev v1.1.9 by @pboling
94
+
95
+ ### Fixed
96
+
97
+ - Remove accidentally duplicated lines, and fix typos in CHANGELOG.md
98
+ - point badge to the correct workflow for Ruby 2.3 (caboose.yml)
99
+
100
+ [gh!669]: https://github.com/ruby-oauth/oauth2/pull/669
101
+ [gh!670]: https://github.com/ruby-oauth/oauth2/pull/670
102
+ [gh!671]: https://github.com/ruby-oauth/oauth2/pull/671
103
+ [GHA-continue-on-error-ui]: https://github.com/actions/runner/issues/2347
104
+ [GHA-allow-failure]: https://github.com/orgs/community/discussions/15452
105
+
106
+ ## [2.0.14] - 2025-08-31
107
+
108
+ - TAG: [v2.0.14][2.0.14t]
109
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
110
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
111
+ - 90.48% documented
112
+
113
+ ### Added
114
+
115
+ - improved documentation by @pboling
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
117
+ - [gh!666][gh!666] - Document usage of flat query params using Faraday::FlatParamsEncoder, with example URI, in README by @pboling
118
+ - Spec: verify flat params are preserved with Faraday::FlatParamsEncoder (skips on Faraday without FlatParamsEncoder)
119
+ - [gh!662][gh!662] - documentation notes in code comments and README highlighting OAuth 2.1 differences, with references, by @pboling
120
+ - PKCE required for auth code,
121
+ - exact redirect URI match,
122
+ - implicit/password grants omitted,
123
+ - avoid bearer tokens in query,
124
+ - refresh token guidance for public clients,
125
+ - simplified client definitions
126
+ - [gh!663][gh!663] - document how to implement an OIDC client with this gem in OIDC.md by @pboling
127
+ - also, list libraries built on top of the oauth2 gem that implement OIDC
128
+ - [gh!664][gh!664] - README: Add example for JHipster UAA (Spring Cloud) password grant, converted from Postman/Net::HTTP by @pboling
129
+
130
+ [gh!662]: https://github.com/ruby-oauth/oauth2/pull/662
131
+ [gh!663]: https://github.com/ruby-oauth/oauth2/pull/663
132
+ [gh!664]: https://github.com/ruby-oauth/oauth2/pull/664
133
+ [gh!665]: https://github.com/ruby-oauth/oauth2/pull/665
134
+ [gh!666]: https://github.com/ruby-oauth/oauth2/pull/666
135
+
136
+ ## [2.0.13] - 2025-08-30
137
+
138
+ - TAG: [v2.0.13][2.0.13t]
139
+ - COVERAGE: 100.00% -- 519/519 lines in 14 files
140
+ - BRANCH COVERAGE: 100.00% -- 174/174 branches in 14 files
141
+ - 90.48% documented
142
+
143
+ ### Added
144
+
145
+ - [gh!656][gh!656] - Support revocation with URL-encoded parameters
146
+ - [gh!660][gh!660] - Inline yard documentation by @pboling
147
+ - [gh!660][gh!660] - Complete RBS types documentation by @pboling
148
+ - [gh!660][gh!660]- (more) Comprehensive documentation / examples by @pboling
149
+ - [gh!657][gh!657] - Updated documentation for org-rename by @pboling
150
+ - More funding links by @Aboling0
151
+ - Documentation: Added docs/OIDC.md with OIDC 1.0 overview, example, and references
152
+
153
+ ### Changed
154
+
155
+ - Upgrade Code of Conduct to Contributor Covenant 2.1 by @pboling
156
+ - [gh!660][gh!660] - Shrink post-install message by 4 lines by @pboling
157
+
158
+ ### Fixed
159
+
160
+ - [gh!660][gh!660] - Links in README (including link to HEAD documentation) by @pboling
161
+
162
+ ### Security
163
+
164
+ [gh!660]: https://github.com/ruby-oauth/oauth2/pull/660
165
+ [gh!657]: https://github.com/ruby-oauth/oauth2/pull/657
166
+ [gh!656]: https://github.com/ruby-oauth/oauth2/pull/656
167
+
168
+ ## [2.0.12] - 2025-05-31
169
+
170
+ - TAG: [v2.0.12][2.0.12t]
171
+ - Line Coverage: 100.0% (520 / 520)
172
+ - Branch Coverage: 100.0% (174 / 174)
173
+ - 80.00% documented
174
+
175
+ ### Added
176
+
177
+ - [gh!652][gh!652] - Support IETF rfc7515 JSON Web Signature - JWS by @mridang
178
+ - Support JWT `kid` for key discovery and management
179
+ - More Documentation by @pboling
180
+ - Documented Serialization Extensions
181
+ - Added Gatzo.com FLOSS logo by @Aboling0, CC BY-SA 4.0
182
+ - Documentation site @ https://oauth2.galtzo.com now complete
183
+
184
+ ### Changed
185
+
186
+ - Updates to gemspec (email, funding url, post install message)
187
+
188
+ ### Fixed
189
+
190
+ - Documentation Typos by @pboling
191
+
192
+ [gh!652]: https://github.com/ruby-oauth/oauth2/pull/652
193
+
194
+ ## [2.0.11] - 2025-05-23
195
+
196
+ - TAG: [v2.0.11][2.0.11t]
197
+ - COVERAGE: 100.00% -- 518/518 lines in 14 files
198
+ - BRANCH COVERAGE: 100.00% -- 172/172 branches in 14 files
199
+ - 80.00% documented
200
+
201
+ ### Added
202
+
203
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - `:snaky_hash_klass` option (@pboling)
204
+ - More documentation
205
+ - Codeberg as ethical mirror (@pboling)
206
+ - https://codeberg.org/ruby-oauth/oauth2
207
+ - Don't check for cert if SKIP_GEM_SIGNING is set (@pboling)
208
+ - All runtime deps, including oauth-xx sibling gems, are now tested against HEAD (@pboling)
209
+ - All runtime deps, including ruby-oauth sibling gems, are now tested against HEAD (@pboling)
210
+ - YARD config, GFM compatible with relative file links (@pboling)
211
+ - Documentation site on GitHub Pages (@pboling)
212
+ - [oauth2.galtzo.com](https://oauth2.galtzo.com)
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)
214
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Mock OAuth2 server for testing (@pboling)
215
+ - https://github.com/navikt/mock-oauth2-server
216
+
217
+ ### Changed
218
+
219
+ - [gh!651](https://github.com/ruby-oauth/oauth2/pull/651) - Upgraded to snaky_hash v2.0.3 (@pboling)
220
+ - Provides solution for serialization issues
221
+ - Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site (@pboling)
222
+
223
+ ### Fixed
224
+
225
+ - [gh!650](https://github.com/ruby-oauth/oauth2/pull/650) - Regression in return type of `OAuth2::Response#parsed` (@pboling)
226
+ - Incorrect documentation related to silencing warnings (@pboling)
227
+
228
+ ## [2.0.10] - 2025-05-17
229
+
16
230
  - TAG: [v2.0.10][2.0.10t]
17
231
  - COVERAGE: 100.00% -- 518/518 lines in 14 files
18
232
  - BRANCH COVERAGE: 100.00% -- 170/170 branches in 14 files
19
233
  - 79.05% documented
234
+
20
235
  ### Added
21
- - [gh!632](https://github.com/oauth-xx/oauth2/pull/632) - Added `funding.yml` (@Aboling0)
22
- - [!635](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/635) - Added `.gitlab-ci.yml` (@jessieay)
23
- - [#638](https://gitlab.com/oauth-xx/oauth2/-/issues/638) - Documentation of support for **ILO Fundamental Principles of Rights at Work** (@pboling)
24
- - [!642](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/642) - 20-year certificate for signing gem releases, expires 2045-04-29 (@pboling)
236
+
237
+ - [gh!632](https://github.com/ruby-oauth/oauth2/pull/632) - Added `funding.yml` (@Aboling0)
238
+ - [!635](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/635) - Added `.gitlab-ci.yml` (@jessieay)
239
+ - [#638](https://gitlab.com/ruby-oauth/oauth2/-/issues/638) - Documentation of support for **ILO Fundamental Principles of Rights at Work** (@pboling)
240
+ - [!642](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/642) - 20-year certificate for signing gem releases, expires 2045-04-29 (@pboling)
25
241
  - Gemspec metadata
26
- - funding_uri
27
- - news_uri
28
- - mailing_list_uri
242
+ - funding_uri
243
+ - news_uri
244
+ - mailing_list_uri
29
245
  - SHA256 and SHA512 Checksums for release
30
- - [!643](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/643) - Add `token_name` option (@pboling)
246
+ - [!643](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/643) - Add `token_name` option (@pboling)
31
247
  - Specify the parameter name that identifies the access token
32
- - [!645](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/645) - Add `OAuth2::OAUTH_DEBUG` constant, based on `ENV["OAUTH_DEBUG"] (@pboling)
33
- - [!646](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/646) - Add `OAuth2.config.silence_extra_tokens_warning`, default: false (@pboling)
34
- - [!647](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/647) - Add IETF RFC 7009 Token Revocation compliant (@pboling)
35
- - `OAuth2::Client#revoke_token`
36
- - `OAuth2::AccessToken#revoke`
37
- - See: https://datatracker.ietf.org/doc/html/rfc7009
38
- - [gh!644](https://github.com/oauth-xx/oauth2/pull/644), [gh!645](https://github.com/oauth-xx/oauth2/pull/645) - Added CITATION.cff (@Aboling0)
39
- - [!648](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/648) - Improved documentation (@pboling)
248
+ - [!645](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/645) - Add `OAuth2::OAUTH_DEBUG` constant, based on `ENV["OAUTH_DEBUG"] (@pboling)
249
+ - [!646](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/646) - Add `OAuth2.config.silence_extra_tokens_warning`, default: false (@pboling)
250
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - Add IETF RFC 7009 Token Revocation compliant (@pboling)
251
+ - `OAuth2::Client#revoke_token`
252
+ - `OAuth2::AccessToken#revoke`
253
+ - See: https://datatracker.ietf.org/doc/html/rfc7009
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)
255
+ - [!648](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/648) - Improved documentation (@pboling)
256
+
40
257
  ### Changed
258
+
41
259
  - Default value of `OAuth2.config.silence_extra_tokens_warning` was `false`, now `true` (@pboling)
42
260
  - Gem releases are now cryptographically signed, with a 20-year cert (@pboling)
43
- - Allow linux distros to build release without signing, as their package managers sign independently
44
- - [!647](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/647) - `OAuth2::AccessToken#refresh` now supports block param pass through (@pboling)
45
- - [!647](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/647) - `OAuth2.config` is no longer writable (@pboling)
46
- - [!647](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/647) - Errors raised by `OAuth2::AccessToken` are now always `OAuth2::Error` and have better metadata (@pboling)
261
+ - Allow linux distros to build release without signing, as their package managers sign independently
262
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2::AccessToken#refresh` now supports block param pass through (@pboling)
263
+ - [!647](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/647) - `OAuth2.config` is no longer writable (@pboling)
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
+
47
266
  ### Fixed
48
- - [#95](https://gitlab.com/oauth-xx/oauth2/-/issues/95) - restoring an access token via `AccessToken#from_hash` (@pboling)
49
- - This was a 13 year old bug report. 😘
50
- - [#619](https://gitlab.com/oauth-xx/oauth2/-/issues/619) - Internal options (like `snaky`, `raise_errors`, and `parse`) are no longer included in request (@pboling)
51
- - [!633](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/633) - Spaces will now be encoded as `%20` instead of `+` (@nov.matake)
52
- - [!634](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/634) - `CHANGELOG.md` documentation fix (@skuwa229)
53
- - [!638](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/638) - fix `expired?` when `expires_in` is `0` (@disep)
54
- - [!639](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/639) - Only instantiate `OAuth2::Error` if `raise_errors` option is `true` (@glytch2)
55
- - [#639](https://gitlab.com/oauth-xx/oauth2/-/issues/639) - `AccessToken#to_hash` is now serializable, just a regular Hash (@pboling)
56
- - [!640](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/640) - `README.md` documentation fix (@martinezcoder)
57
- - [!641](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/641) - Do not include sensitive information in the `inspect` (@manuelvanrijn)
58
- - [#641](https://gitlab.com/oauth-xx/oauth2/-/issues/641) - Made default JSON response parser more resilient (@pboling)
59
- - [#645](https://gitlab.com/oauth-xx/oauth2/-/issues/645) - Response no longer becomes a snaky hash (@pboling)
60
- - [gh!646](https://github.com/oauth-xx/oauth2/pull/646) - Change `require` to `require_relative` (improve performance) (@Aboling0)
267
+
268
+ - [#95](https://gitlab.com/ruby-oauth/oauth2/-/issues/95) - restoring an access token via `AccessToken#from_hash` (@pboling)
269
+ - This was a 13 year old bug report. 😘
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)
271
+ - [!633](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/633) - Spaces will now be encoded as `%20` instead of `+` (@nov.matake)
272
+ - [!634](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/634) - `CHANGELOG.md` documentation fix (@skuwa229)
273
+ - [!638](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/638) - fix `expired?` when `expires_in` is `0` (@disep)
274
+ - [!639](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/639) - Only instantiate `OAuth2::Error` if `raise_errors` option is `true` (@glytch2)
275
+ - [#639](https://gitlab.com/ruby-oauth/oauth2/-/issues/639) - `AccessToken#to_hash` is now serializable, just a regular Hash (@pboling)
276
+ - [!640](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/640) - `README.md` documentation fix (@martinezcoder)
277
+ - [!641](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/641) - Do not include sensitive information in the `inspect` (@manuelvanrijn)
278
+ - [#641](https://gitlab.com/ruby-oauth/oauth2/-/issues/641) - Made default JSON response parser more resilient (@pboling)
279
+ - [#645](https://gitlab.com/ruby-oauth/oauth2/-/issues/645) - Response no longer becomes a snaky hash (@pboling)
280
+ - [gh!646](https://github.com/ruby-oauth/oauth2/pull/646) - Change `require` to `require_relative` (improve performance) (@Aboling0)
61
281
 
62
282
  ## [2.0.9] - 2022-09-16
283
+
63
284
  - TAG: [v2.0.9][2.0.9t]
285
+
64
286
  ### Added
287
+
65
288
  - More specs (@pboling)
289
+
66
290
  ### Changed
291
+
67
292
  - Complete migration to main branch as default (@pboling)
68
293
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
69
294
 
70
295
  ## [2.0.8] - 2022-09-01
296
+
71
297
  - TAG: [v2.0.8][2.0.8t]
298
+
72
299
  ### Changed
73
- - [!630](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/630) - Extract snaky_hash to external dependency (@pboling)
300
+
301
+ - [!630](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/630) - Extract snaky_hash to external dependency (@pboling)
302
+
74
303
  ### Added
75
- - [!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)
304
+
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)
76
306
 
77
307
  ## [2.0.7] - 2022-08-22
308
+
78
309
  - TAG: [v2.0.7][2.0.7t]
310
+
79
311
  ### Added
80
- - [!629](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/629) - Allow POST of JSON to get token (@pboling, @terracatta)
312
+
313
+ - [!629](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/629) - Allow POST of JSON to get token (@pboling, @terracatta)
314
+
81
315
  ### Fixed
82
- - [!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)
83
- - Note: This fixes compatibility with `omniauth-oauth2` and AWS
84
- - [!625](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/625) - Fixes the printed version in the post install message (@hasghari)
316
+
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)
318
+ - Note: This fixes compatibility with `omniauth-oauth2` and AWS
319
+ - [!625](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/625) - Fixes the printed version in the post install message (@hasghari)
85
320
 
86
321
  ## [2.0.6] - 2022-07-13
322
+
87
323
  - TAG: [v2.0.6][2.0.6t]
324
+
88
325
  ### Fixed
89
- - [!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)
326
+
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)
90
328
 
91
329
  ## [2.0.5] - 2022-07-07
330
+
92
331
  - TAG: [v2.0.5][2.0.5t]
332
+
93
333
  ### Fixed
94
- - [!620](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/620) - Documentation improvements, to help with upgrading (@swanson)
95
- - [!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)
96
- - All data in responses is now returned, with the access token removed and set as `token`
97
- - `refresh_token` is no longer dropped
98
- - **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
99
- - Remove `parse` and `snaky` from options so they don't get included in response
100
- - There is now 100% test coverage, for lines _and_ branches, and it will stay that way.
334
+
335
+ - [!620](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/620) - Documentation improvements, to help with upgrading (@swanson)
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)
337
+ - All data in responses is now returned, with the access token removed and set as `token`
338
+ - `refresh_token` is no longer dropped
339
+ - **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
340
+ - Remove `parse` and `snaky` from options so they don't get included in response
341
+ - There is now 100% test coverage, for lines _and_ branches, and it will stay that way.
101
342
 
102
343
  ## [2.0.4] - 2022-07-01
344
+
103
345
  - TAG: [v2.0.4][2.0.4t]
346
+
104
347
  ### Fixed
105
- - [!618](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/618) - In some scenarios the `snaky` option default value was not applied (@pboling)
348
+
349
+ - [!618](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/618) - In some scenarios the `snaky` option default value was not applied (@pboling)
106
350
 
107
351
  ## [2.0.3] - 2022-06-28
352
+
108
353
  - TAG: [v2.0.3][2.0.3t]
354
+
109
355
  ### Added
110
- - [!611](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/611) - Proper deprecation warnings for `extract_access_token` argument (@pboling)
111
- - [!612](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/612) - Add `snaky: false` option to skip conversion to `OAuth2::SnakyHash` (default: true) (@pboling)
356
+
357
+ - [!611](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/611) - Proper deprecation warnings for `extract_access_token` argument (@pboling)
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
+
112
360
  ### Fixed
113
- - [!608](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/608) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@nbibler)
114
- - [!615](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/615) - Fix support for requests with blocks, see `Faraday::Connection#run_request` (@pboling)
361
+
362
+ - [!608](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/608) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@nbibler)
363
+ - [!615](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/615) - Fix support for requests with blocks, see `Faraday::Connection#run_request` (@pboling)
115
364
 
116
365
  ## [2.0.2] - 2022-06-24
366
+
117
367
  - TAG: [v2.0.2][2.0.2t]
368
+
118
369
  ### Fixed
119
- - [!604](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/604) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@stanhu)
120
- - [!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)
121
- - [!607](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/607) - CHANGELOG correction, reference to `OAuth2::ConnectionError` (@zavan)
370
+
371
+ - [!604](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/604) - Wrap `Faraday::TimeoutError` in `OAuth2::TimeoutError` (@stanhu)
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)
373
+ - [!607](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/607) - CHANGELOG correction, reference to `OAuth2::ConnectionError` (@zavan)
122
374
 
123
375
  ## [2.0.1] - 2022-06-22
376
+
124
377
  - TAG: [v2.0.1][2.0.1t]
378
+
125
379
  ### Added
380
+
126
381
  - Documentation improvements (@pboling)
127
382
  - Increased test coverage to 99% (@pboling)
128
383
 
129
384
  ## [2.0.0] - 2022-06-21
385
+
130
386
  - TAG: [v2.0.0][2.0.0t]
387
+
131
388
  ### Added
132
- - [!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)
133
- - [!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)
134
- - [!220](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/220) - Support IETF rfc7523 JWT Bearer Tokens Draft 04+ (@jhmoore)
135
- - [!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)
136
- - [!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)
137
- - [!346](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/571) - Modern gem structure (@pboling)
138
- - [!351](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/351) - Support Jruby 9k (@pboling)
139
- - [!362](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/362) - Support SemVer release version scheme (@pboling)
140
- - [!363](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/363) - New method `OAuth2::AccessToken#refresh!` same as old `refresh`, with backwards compatibility alias (@pboling)
141
- - [!364](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/364) - Support `application/hal+json` format (@pboling)
142
- - [!365](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/365) - Support `application/vnd.collection+json` format (@pboling)
143
- - [!376](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/376) - _Documentation_: Example / Test for Google 2-legged JWT (@jhmoore)
144
- - [!381](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/381) - Spec for extra header params on client credentials (@nikz)
145
- - [!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)
146
- - [!412](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/412) - Support `application/vdn.api+json` format (from jsonapi.org) (@david-christensen)
147
- - [!413](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/413) - _Documentation_: License scan and report (@meganemura)
148
- - [!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)
149
- - [!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)
150
- - [!549](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/549) - Wrap `Faraday::ConnectionFailed` in `OAuth2::ConnectionError` (@nikkypx)
151
- - [!550](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/550) - Raise error if location header not present when redirecting (@stanhu)
152
- - [!552](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/552) - Add missing `version.rb` require (@ahorek)
153
- - [!553](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/553) - Support `application/problem+json` format (@janz93)
154
- - [!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)
155
- - [!571](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/571) - Support Ruby 3.1 (@pboling)
156
- - [!575](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/575) - Support IETF rfc7231, section 7.1.2 - relative location in redirect (@pboling)
157
- - [!581](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/581) - _Documentation_: of breaking changes (@pboling)
389
+
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)
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)
392
+ - [!220](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/220) - Support IETF rfc7523 JWT Bearer Tokens Draft 04+ (@jhmoore)
393
+ - [!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)
394
+ - [!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)
395
+ - [!346](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/571) - Modern gem structure (@pboling)
396
+ - [!351](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/351) - Support Jruby 9k (@pboling)
397
+ - [!362](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/362) - Support SemVer release version scheme (@pboling)
398
+ - [!363](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/363) - New method `OAuth2::AccessToken#refresh!` same as old `refresh`, with backwards compatibility alias (@pboling)
399
+ - [!364](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/364) - Support `application/hal+json` format (@pboling)
400
+ - [!365](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/365) - Support `application/vnd.collection+json` format (@pboling)
401
+ - [!376](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/376) - _Documentation_: Example / Test for Google 2-legged JWT (@jhmoore)
402
+ - [!381](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/381) - Spec for extra header params on client credentials (@nikz)
403
+ - [!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)
404
+ - [!412](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/412) - Support `application/vdn.api+json` format (from jsonapi.org) (@david-christensen)
405
+ - [!413](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/413) - _Documentation_: License scan and report (@meganemura)
406
+ - [!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)
407
+ - [!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)
408
+ - [!549](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/549) - Wrap `Faraday::ConnectionFailed` in `OAuth2::ConnectionError` (@nikkypx)
409
+ - [!550](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/550) - Raise error if location header not present when redirecting (@stanhu)
410
+ - [!552](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/552) - Add missing `version.rb` require (@ahorek)
411
+ - [!553](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/553) - Support `application/problem+json` format (@janz93)
412
+ - [!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)
413
+ - [!571](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/571) - Support Ruby 3.1 (@pboling)
414
+ - [!575](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/575) - Support IETF rfc7231, section 7.1.2 - relative location in redirect (@pboling)
415
+ - [!581](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/581) - _Documentation_: of breaking changes (@pboling)
416
+
158
417
  ### Changed
159
- - [!191](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/191) - **BREAKING**: Token is expired if `expired_at` time is `now` (@davestevens)
160
- - [!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)
161
- - [!317](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/317) - _Dependency_: Upgrade `jwt` to 2.x.x (@travisofthenorth)
162
- - [!338](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/338) - _Dependency_: Switch from `Rack::Utils.escape` to `CGI.escape` (@josephpage)
163
- - [!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)
164
- - [!410](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/410) - **BREAKING**: Removed the ability to call .error from an OAuth2::Response object (@jhmoore)
165
- - [!414](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/414) - Use Base64.strict_encode64 instead of custom internal logic (@meganemura)
166
- - [!469](https://gitlab.com/oauth-xx/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)
167
- - [!469](https://gitlab.com/oauth-xx/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)
168
- - [!507](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/507), [!575](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/575) - **BREAKING**: Transform keys to snake case, always, by default (ultimately via `rash_alt` gem)
169
- - Original keys will still work as previously, in most scenarios, thanks to `rash_alt` gem.
170
- - However, this is a _breaking_ change if you rely on `response.parsed.to_h`, as the keys in the result will be snake case.
171
- - As of version 2.0.4 you can turn key transformation off with the `snaky: false` option.
172
- - [!576](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/576) - **BREAKING**: Stop rescuing parsing errors (@pboling)
173
- - [!591](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/576) - _DEPRECATION_: `OAuth2::Client` - `:extract_access_token` option is deprecated
418
+
419
+ - [!191](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/191) - **BREAKING**: Token is expired if `expired_at` time is `now` (@davestevens)
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)
421
+ - [!317](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/317) - _Dependency_: Upgrade `jwt` to 2.x.x (@travisofthenorth)
422
+ - [!338](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/338) - _Dependency_: Switch from `Rack::Utils.escape` to `CGI.escape` (@josephpage)
423
+ - [!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)
424
+ - [!410](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/410) - **BREAKING**: Removed the ability to call .error from an OAuth2::Response object (@jhmoore)
425
+ - [!414](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/414) - Use Base64.strict_encode64 instead of custom internal logic (@meganemura)
426
+ - [!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)
427
+ - [!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)
428
+ - [!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)
429
+ - Original keys will still work as previously, in most scenarios, thanks to `rash_alt` gem.
430
+ - However, this is a _breaking_ change if you rely on `response.parsed.to_h`, as the keys in the result will be snake case.
431
+ - As of version 2.0.4 you can turn key transformation off with the `snaky: false` option.
432
+ - [!576](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - **BREAKING**: Stop rescuing parsing errors (@pboling)
433
+ - [!591](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/576) - _DEPRECATION_: `OAuth2::Client` - `:extract_access_token` option is deprecated
434
+
174
435
  ### Fixed
175
- - [!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)
176
- - [!294](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/294) - Fix: "Unexpected middleware set" issue with Faraday when `OAUTH_DEBUG=true` (@spectator, @gafrom)
177
- - [!300](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/300) - _Documentation_: `Oauth2::Error` - Error codes are strings, not symbols (@NobodysNightmare)
178
- - [!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)
179
- - [!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)
180
- - [!328](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/328) - _Documentation_: Homepage URL is SSL (@amatsuda)
181
- - [!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)
182
- - [!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)
183
- - [!380](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/380) - Fix: Stop attempting to encode non-encodable objects in `Oauth2::Error` (@jhmoore)
184
- - [!399](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/399) - Fix: Stop duplicating `redirect_uri` in `get_token` (@markus)
185
- - [!410](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/410) - Fix: `SystemStackError` caused by circular reference between Error and Response classes (@jhmoore)
186
- - [!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)
187
- - [!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)
188
- - [!482](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/482) - _Documentation_: Update last of `intridea` links to `oauth-xx` (@pboling)
189
- - [!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)
190
- - [!595](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/595) - Graceful handling of empty responses from `Client#get_token`, respecting `:raise_errors` config (@stanhu)
191
- - [!596](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/596) - Consistency between `AccessToken#refresh` and `Client#get_token` named arguments (@stanhu)
192
- - [!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)
436
+
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)
438
+ - [!294](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/294) - Fix: "Unexpected middleware set" issue with Faraday when `OAUTH_DEBUG=true` (@spectator, @gafrom)
439
+ - [!300](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/300) - _Documentation_: `Oauth2::Error` - Error codes are strings, not symbols (@NobodysNightmare)
440
+ - [!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)
441
+ - [!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)
442
+ - [!328](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/328) - _Documentation_: Homepage URL is SSL (@amatsuda)
443
+ - [!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)
444
+ - [!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)
445
+ - [!380](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/380) - Fix: Stop attempting to encode non-encodable objects in `Oauth2::Error` (@jhmoore)
446
+ - [!399](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/399) - Fix: Stop duplicating `redirect_uri` in `get_token` (@markus)
447
+ - [!410](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/410) - Fix: `SystemStackError` caused by circular reference between Error and Response classes (@jhmoore)
448
+ - [!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)
449
+ - [!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)
450
+ - [!482](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/482) - _Documentation_: Update last of `intridea` links to `ruby-oauth` (@pboling)
451
+ - [!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)
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)
453
+ - [!596](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/596) - Consistency between `AccessToken#refresh` and `Client#get_token` named arguments (@stanhu)
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
+
193
456
  ### Removed
194
- - [!341](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/341) - Remove Rdoc & Jeweler related files (@josephpage)
195
- - [!342](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/342) - **BREAKING**: Dropped support for Ruby 1.8 (@josephpage)
196
- - [!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)
197
- - [!566](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/566) - _Dependency_: Removed `wwtd` (@bquorning)
198
- - [!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)
199
- - [!590](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/590) - _Dependency_: Removed `multi_json` (@stanhu)
457
+
458
+ - [!341](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/341) - Remove Rdoc & Jeweler related files (@josephpage)
459
+ - [!342](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/342) - **BREAKING**: Dropped support for Ruby 1.8 (@josephpage)
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)
461
+ - [!566](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/566) - _Dependency_: Removed `wwtd` (@bquorning)
462
+ - [!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)
463
+ - [!590](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/590) - _Dependency_: Removed `multi_json` (@stanhu)
200
464
 
201
465
  ## [1.4.11] - 2022-09-16
466
+
202
467
  - TAG: [v1.4.11][1.4.11t]
203
468
  - Complete migration to main branch as default (@pboling)
204
469
  - Complete migration to Gitlab, updating all links, and references in VCS-managed files (@pboling)
205
470
 
206
471
  ## [1.4.10] - 2022-07-01
472
+
207
473
  - TAG: [v1.4.10][1.4.10t]
208
- - FIPS Compatibility [!587](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/587) (@akostadinov)
474
+ - FIPS Compatibility [!587](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/587) (@akostadinov)
209
475
 
210
476
  ## [1.4.9] - 2022-02-20
477
+
211
478
  - TAG: [v1.4.9][1.4.9t]
212
- - Fixes compatibility with Faraday v2 [572](https://gitlab.com/oauth-xx/oauth2/-/issues/572)
479
+ - Fixes compatibility with Faraday v2 [572](https://gitlab.com/ruby-oauth/oauth2/-/issues/572)
213
480
  - Includes supported versions of Faraday in test matrix:
214
- - Faraday ~> 2.2.0 with Ruby >= 2.6
215
- - Faraday ~> 1.10 with Ruby >= 2.4
216
- - Faraday ~> 0.17.3 with Ruby >= 1.9
481
+ - Faraday ~> 2.2.0 with Ruby >= 2.6
482
+ - Faraday ~> 1.10 with Ruby >= 2.4
483
+ - Faraday ~> 0.17.3 with Ruby >= 1.9
217
484
  - Add Windows and MacOS to test matrix
218
485
 
219
486
  ## [1.4.8] - 2022-02-18
487
+
220
488
  - TAG: [v1.4.8][1.4.8t]
221
489
  - MFA is now required to push new gem versions (@pboling)
222
490
  - README overhaul w/ new Ruby Version and Engine compatibility policies (@pboling)
223
- - [!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)
491
+ - [!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)
224
492
  - Improve Code Coverage tracking (Coveralls, CodeCov, CodeClimate), and enable branch coverage (@pboling)
225
493
  - Add CodeQL, Security Policy, Funding info (@pboling)
226
494
  - Added Ruby 3.1, jruby, jruby-head, truffleruby, truffleruby-head to build matrix (@pboling)
227
- - [!543](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/543) - Support for more modern Open SSL libraries (@pboling)
495
+ - [!543](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/543) - Support for more modern Open SSL libraries (@pboling)
228
496
 
229
497
  ## [1.4.7] - 2021-03-19
498
+
230
499
  - TAG: [v1.4.7][1.4.7t]
231
- - [!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)
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)
232
501
 
233
502
  ## [1.4.6] - 2021-03-19
503
+
234
504
  - TAG: [v1.4.6][1.4.6t]
235
- - [!540](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/540) - Add VERSION constant (@pboling)
236
- - [!537](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/537) - Fix crash in OAuth2::Client#get_token (@anderscarling)
237
- - [!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)
505
+ - [!540](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/540) - Add VERSION constant (@pboling)
506
+ - [!537](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/537) - Fix crash in OAuth2::Client#get_token (@anderscarling)
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)
238
508
 
239
509
  ## [1.4.5] - 2021-03-18
510
+
240
511
  - TAG: [v1.4.5][1.4.5t]
241
- - [!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)
242
- - [!518](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/518) - Add extract_access_token option to OAuth2::Client (@jonspalmer)
243
- - [!507](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/507) - Fix camel case content type, response keys (@anvox)
244
- - [!500](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/500) - Fix YARD documentation formatting (@olleolleolle)
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)
513
+ - [!518](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/518) - Add extract_access_token option to OAuth2::Client (@jonspalmer)
514
+ - [!507](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/507) - Fix camel case content type, response keys (@anvox)
515
+ - [!500](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/500) - Fix YARD documentation formatting (@olleolleolle)
245
516
 
246
517
  ## [1.4.4] - 2020-02-12
518
+
247
519
  - TAG: [v1.4.4][1.4.4t]
248
- - [!408](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/408) - Fixed expires_at for formatted time (@Lomey)
520
+ - [!408](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/408) - Fixed expires_at for formatted time (@Lomey)
249
521
 
250
522
  ## [1.4.3] - 2020-01-29
523
+
251
524
  - TAG: [v1.4.3][1.4.3t]
252
- - [!483](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/483) - add project metadata to gemspec (@orien)
253
- - [!495](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/495) - support additional types of access token requests (@SteveyblamFreeagent, @thomcorley, @dgholz)
254
- - Adds support for private_key_jwt and tls_client_auth
255
- - [!433](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/433) - allow field names with square brackets and numbers in params (@asm256)
525
+ - [!483](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/483) - add project metadata to gemspec (@orien)
526
+ - [!495](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/495) - support additional types of access token requests (@SteveyblamFreeagent, @thomcorley, @dgholz)
527
+ - Adds support for private_key_jwt and tls_client_auth
528
+ - [!433](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/433) - allow field names with square brackets and numbers in params (@asm256)
256
529
 
257
530
  ## [1.4.2] - 2019-10-01
531
+
258
532
  - TAG: [v1.4.2][1.4.2t]
259
- - [!478](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/478) - support latest version of faraday & fix build (@pboling)
260
- - Officially support Ruby 2.6 and truffleruby
533
+ - [!478](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/478) - support latest version of faraday & fix build (@pboling)
534
+ - Officially support Ruby 2.6 and truffleruby
261
535
 
262
536
  ## [1.4.1] - 2018-10-13
537
+
263
538
  - TAG: [v1.4.1][1.4.1t]
264
- - [!417](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/417) - update jwt dependency (@thewoolleyman)
265
- - [!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)
266
- - [!418](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/418) - update faraday dependency (@pboling)
267
- - [!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)
268
- - [!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)
269
- - [!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)
270
- - [!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)
271
- - officially document supported Rubies
272
- * Ruby 1.9.3
273
- * Ruby 2.0.0
274
- * Ruby 2.1
275
- * Ruby 2.2
276
- * [JRuby 1.7][jruby-1.7] (targets MRI v1.9)
277
- * [JRuby 9.0][jruby-9.0] (targets MRI v2.0)
278
- * Ruby 2.3
279
- * Ruby 2.4
280
- * Ruby 2.5
281
- * [JRuby 9.1][jruby-9.1] (targets MRI v2.3)
282
- * [JRuby 9.2][jruby-9.2] (targets MRI v2.5)
539
+ - [!417](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/417) - update jwt dependency (@thewoolleyman)
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)
541
+ - [!418](https://gitlab.com/ruby-oauth/oauth2/-/merge_requests/418) - update faraday dependency (@pboling)
542
+ - [!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)
543
+ - [!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)
544
+ - [!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)
545
+ - [!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)
546
+ - officially document supported Rubies
547
+ * Ruby 1.9.3
548
+ * Ruby 2.0.0
549
+ * Ruby 2.1
550
+ * Ruby 2.2
551
+ * [JRuby 1.7][jruby-1.7] (targets MRI v1.9)
552
+ * [JRuby 9.0][jruby-9.0] (targets MRI v2.0)
553
+ * Ruby 2.3
554
+ * Ruby 2.4
555
+ * Ruby 2.5
556
+ * [JRuby 9.1][jruby-9.1] (targets MRI v2.3)
557
+ * [JRuby 9.2][jruby-9.2] (targets MRI v2.5)
283
558
 
284
559
  [jruby-1.7]: https://www.jruby.org/2017/05/11/jruby-1-7-27.html
285
560
  [jruby-9.0]: https://www.jruby.org/2016/01/26/jruby-9-0-5-0.html
@@ -287,17 +562,22 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
287
562
  [jruby-9.2]: https://www.jruby.org/2018/05/24/jruby-9-2-0-0.html
288
563
 
289
564
  ## [1.4.0] - 2017-06-09
565
+
290
566
  - TAG: [v1.4.0][1.4.0t]
291
567
  - Drop Ruby 1.8.7 support (@sferik)
292
568
  - Fix some RuboCop offenses (@sferik)
293
569
  - _Dependency_: Remove Yardstick (@sferik)
294
570
  - _Dependency_: Upgrade Faraday to 0.12 (@sferik)
295
571
 
296
- ## [1.3.1] - 2017-03-03 ([tag][1.3.1t])
572
+ ## [1.3.1] - 2017-03-03
573
+
574
+ - TAG: [v1.3.1][1.3.1t]
297
575
  - Add support for Ruby 2.4.0 (@pschambacher)
298
576
  - _Dependency_: Upgrade Faraday to Faraday 0.11 (@mcfiredrill, @rhymes, @pschambacher)
299
577
 
300
- ## [1.3.0] - 2016-12-28 ([tag][1.3.0t])
578
+ ## [1.3.0] - 2016-12-28
579
+
580
+ - TAG: [v1.3.0][1.3.0t]
301
581
  - Add support for header-based authentication to the `Client` so it can be used across the library (@bjeanes)
302
582
  - Default to header-based authentication when getting a token from an authorisation code (@maletor)
303
583
  - **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)
@@ -306,163 +586,229 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
306
586
  - Avoid instantiating an `Error` if there is no error to raise (@urkle)
307
587
  - Add support for Faraday 0.10 (@rhymes)
308
588
 
309
- ## [1.2.0] - 2016-07-01 ([tag][1.2.0t])
589
+ ## [1.2.0] - 2016-07-01
590
+
591
+ - TAG: [v1.2.0][1.2.0t]
310
592
  - Properly handle encoding of error responses (so we don't blow up, for example, when Google's response includes a ∞) (@Motoshi-Nishihira)
311
593
  - Make a copy of the options hash in `AccessToken#from_hash` to avoid accidental mutations (@Linuus)
312
594
  - Use `raise` rather than `fail` to throw exceptions (@sferik)
313
595
 
314
- ## [1.1.0] - 2016-01-30 ([tag][1.1.0t])
596
+ ## [1.1.0] - 2016-01-30
597
+
598
+ - TAG: [v1.1.0][1.1.0t]
315
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)
316
600
  - Add support for Rack 2, and bump various other dependencies (@sferik)
317
601
 
318
- ## [1.0.0] - 2014-07-09 ([tag][1.0.0t])
602
+ ## [1.0.0] - 2014-07-09
603
+
604
+ - TAG: [v1.0.0][1.0.0t]
605
+
319
606
  ### Added
607
+
320
608
  - Add an implementation of the MAC token spec.
609
+
321
610
  ### Fixed
611
+
322
612
  - Fix Base64.strict_encode64 incompatibility with Ruby 1.8.7.
323
613
 
324
- ## [0.5.0] - 2011-07-29 ([tag][0.5.0t])
614
+ ## [0.5.0] - 2011-07-29
615
+
616
+ - TAG: [v0.5.0][0.5.0t]
617
+
325
618
  ### Changed
619
+
326
620
  - *breaking* `oauth_token` renamed to `oauth_bearer`.
327
621
  - *breaking* `authorize_path` Client option renamed to `authorize_url`.
328
622
  - *breaking* `access_token_path` Client option renamed to `token_url`.
329
623
  - *breaking* `access_token_method` Client option renamed to `token_method`.
330
624
  - *breaking* `web_server` renamed to `auth_code`.
331
625
 
332
- ## [0.4.1] - 2011-04-20 ([tag][0.4.1t])
626
+ ## [0.4.1] - 2011-04-20
627
+
628
+ - TAG: [v0.4.1][0.4.1t]
629
+
630
+ ## [0.4.0] - 2011-04-20
631
+
632
+ - TAG: [v0.4.0][0.4.0t]
633
+
634
+ ## [0.3.0] - 2011-04-08
635
+
636
+ - TAG: [v0.3.0][0.3.0t]
637
+
638
+ ## [0.2.0] - 2011-04-01
639
+
640
+ - TAG: [v0.2.0][0.2.0t]
641
+
642
+ ## [0.1.1] - 2011-01-12
643
+
644
+ - TAG: [v0.1.1][0.1.1t]
645
+
646
+ ## [0.1.0] - 2010-10-13
647
+
648
+ - TAG: [v0.1.0][0.1.0t]
649
+
650
+ ## [0.0.13] - 2010-08-17
651
+
652
+ - TAG: [v0.0.13][0.0.13t]
653
+
654
+ ## [0.0.12] - 2010-08-17
655
+
656
+ - TAG: [v0.0.12][0.0.12t]
657
+
658
+ ## [0.0.11] - 2010-08-17
659
+
660
+ - TAG: [v0.0.11][0.0.11t]
661
+
662
+ ## [0.0.10] - 2010-06-19
663
+
664
+ - TAG: [v0.0.10][0.0.10t]
333
665
 
334
- ## [0.4.0] - 2011-04-20 ([tag][0.4.0t])
666
+ ## [0.0.9] - 2010-06-18
335
667
 
336
- ## [0.3.0] - 2011-04-08 ([tag][0.3.0t])
668
+ - TAG: [v0.0.9][0.0.9t]
337
669
 
338
- ## [0.2.0] - 2011-04-01 ([tag][0.2.0t])
670
+ ## [0.0.8] - 2010-04-27
339
671
 
340
- ## [0.1.1] - 2011-01-12 ([tag][0.1.1t])
672
+ - TAG: [v0.0.8][0.0.8t]
341
673
 
342
- ## [0.1.0] - 2010-10-13 ([tag][0.1.0t])
674
+ ## [0.0.7] - 2010-04-27
343
675
 
344
- ## [0.0.13] - 2010-08-17 ([tag][0.0.13t])
676
+ - TAG: [v0.0.7][0.0.7t]
345
677
 
346
- ## [0.0.12] - 2010-08-17 ([tag][0.0.12t])
678
+ ## [0.0.6] - 2010-04-25
347
679
 
348
- ## [0.0.11] - 2010-08-17 ([tag][0.0.11t])
680
+ - TAG: [v0.0.6][0.0.6t]
349
681
 
350
- ## [0.0.10] - 2010-06-19 ([tag][0.0.10t])
682
+ ## [0.0.5] - 2010-04-23
351
683
 
352
- ## [0.0.9] - 2010-06-18 ([tag][0.0.9t])
684
+ - TAG: [v0.0.5][0.0.5t]
353
685
 
354
- ## [0.0.8] - 2010-04-27 ([tag][0.0.8t])
686
+ ## [0.0.4] - 2010-04-22
355
687
 
356
- ## [0.0.7] - 2010-04-27 ([tag][0.0.7t])
688
+ - TAG: [v0.0.4][0.0.4t]
357
689
 
358
- ## [0.0.6] - 2010-04-25 ([tag][0.0.6t])
690
+ ## [0.0.3] - 2010-04-22
359
691
 
360
- ## [0.0.5] - 2010-04-23 ([tag][0.0.5t])
692
+ - TAG: [v0.0.3][0.0.3t]
361
693
 
362
- ## [0.0.4] - 2010-04-22 ([tag][0.0.4t])
694
+ ## [0.0.2] - 2010-04-22
363
695
 
364
- ## [0.0.3] - 2010-04-22 ([tag][0.0.3t])
696
+ - TAG: [v0.0.2][0.0.2t]
365
697
 
366
- ## [0.0.2] - 2010-04-22 ([tag][0.0.2t])
698
+ ## [0.0.1] - 2010-04-22
367
699
 
368
- ## [0.0.1] - 2010-04-22 ([tag][0.0.1t])
700
+ - TAG: [v0.0.1][0.0.1t]
369
701
 
370
702
  [gemfiles/readme]: gemfiles/README.md
371
703
 
372
- [Unreleased]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.10...HEAD
373
- [2.0.10]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.09....v2.0.10
374
- [2.0.10t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.10
375
- [2.0.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.8...v2.0.9
376
- [2.0.9t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.9
377
- [2.0.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.7...v2.0.8
378
- [2.0.8t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.8
379
- [2.0.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.6...v2.0.7
380
- [2.0.7t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.7
381
- [2.0.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.5...v2.0.6
382
- [2.0.6t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.6
383
- [2.0.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.4...v2.0.5
384
- [2.0.5t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.5
385
- [2.0.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.3...v2.0.4
386
- [2.0.4t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.4
387
- [2.0.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.2...v2.0.3
388
- [2.0.3t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.3
389
- [2.0.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.1...v2.0.2
390
- [2.0.2t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.2
391
- [2.0.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v2.0.0...v2.0.1
392
- [2.0.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.1
393
- [2.0.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.11...v2.0.0
394
- [2.0.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v2.0.0
395
- [1.4.11]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.10...v1.4.11
396
- [1.4.11t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.11
397
- [1.4.10]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.9...v1.4.10
398
- [1.4.10t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.10
399
- [1.4.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.8...v1.4.9
400
- [1.4.9t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.9
401
- [1.4.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.7...v1.4.8
402
- [1.4.8t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.8
403
- [1.4.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.6...v1.4.7
404
- [1.4.7t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.7
405
- [1.4.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.5...v1.4.6
406
- [1.4.6t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.6
407
- [1.4.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.4...v1.4.5
408
- [1.4.5t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.5
409
- [1.4.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.3...v1.4.4
410
- [1.4.4t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.4
411
- [1.4.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.2...v1.4.3
412
- [1.4.3t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.3
413
- [1.4.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.1...v1.4.2
414
- [1.4.2t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.2
415
- [1.4.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.4.0...v1.4.1
416
- [1.4.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.1
417
- [1.4.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.3.1...v1.4.0
418
- [1.4.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.4.0
419
- [1.3.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.3.0...v1.3.1
420
- [1.3.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.3.1
421
- [1.3.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.2.0...v1.3.0
422
- [1.3.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.3.0
423
- [1.2.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.1.0...v1.2.0
424
- [1.2.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.2.0
425
- [1.1.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v1.0.0...v1.1.0
426
- [1.1.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.1.0
427
- [1.0.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.9.4...v1.0.0
428
- [1.0.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.0.0
429
- [0.5.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.4.1...v0.5.0
430
- [0.5.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.5.0
431
- [0.4.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.4.0...v0.4.1
432
- [0.4.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.4.1
433
- [0.4.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.3.0...v0.4.0
434
- [0.4.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.4.0
435
- [0.3.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.2.0...v0.3.0
436
- [0.3.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.3.0
437
- [0.2.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.1.1...v0.2.0
438
- [0.2.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.2.0
439
- [0.1.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.1.0...v0.1.1
440
- [0.1.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.1.1
441
- [0.1.0]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.13...v0.1.0
442
- [0.1.0t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.1.0
443
- [0.0.13]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.12...v0.0.13
444
- [0.0.13t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.13
445
- [0.0.12]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.11...v0.0.12
446
- [0.0.12t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.12
447
- [0.0.11]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.10...v0.0.11
448
- [0.0.11t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.11
449
- [0.0.10]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.9...v0.0.10
450
- [0.0.10t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.10
451
- [0.0.9]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.8...v0.0.9
452
- [0.0.9t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.9
453
- [0.0.8]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.7...v0.0.8
454
- [0.0.8t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.8
455
- [0.0.7]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.6...v0.0.7
456
- [0.0.7t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.7
457
- [0.0.6]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.5...v0.0.6
458
- [0.0.6t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.6
459
- [0.0.5]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.4...v0.0.5
460
- [0.0.5t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.5
461
- [0.0.4]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.3...v0.0.4
462
- [0.0.4t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.4
463
- [0.0.3]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.2...v0.0.3
464
- [0.0.3t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.3
465
- [0.0.2]: https://gitlab.com/oauth-xx/oauth2/-/compare/v0.0.1...v0.0.2
466
- [0.0.2t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.2
467
- [0.0.1]: https://gitlab.com/oauth-xx/oauth2/-/compare/311d9f4...v0.0.1
468
- [0.0.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v0.0.1
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
707
+ [2.0.16]: https://github.com/ruby-oauth/oauth2/compare/v2.0.15...v2.0.16
708
+ [2.0.16t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.16
709
+ [2.0.15]: https://github.com/ruby-oauth/oauth2/compare/v2.0.14...v2.0.15
710
+ [2.0.15t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.15
711
+ [2.0.14]: https://github.com/ruby-oauth/oauth2/compare/v2.0.13...v2.0.14
712
+ [2.0.14t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.14
713
+ [2.0.13]: https://github.com/ruby-oauth/oauth2/compare/v2.0.12...v2.0.13
714
+ [2.0.13t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.13
715
+ [2.0.12]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.11...v2.0.12
716
+ [2.0.12t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.12
717
+ [2.0.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.10...v2.0.11
718
+ [2.0.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.11
719
+ [2.0.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.9...v2.0.10
720
+ [2.0.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.10
721
+ [2.0.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.8...v2.0.9
722
+ [2.0.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.9
723
+ [2.0.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.7...v2.0.8
724
+ [2.0.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.8
725
+ [2.0.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.6...v2.0.7
726
+ [2.0.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.7
727
+ [2.0.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.5...v2.0.6
728
+ [2.0.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.6
729
+ [2.0.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.4...v2.0.5
730
+ [2.0.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.5
731
+ [2.0.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.3...v2.0.4
732
+ [2.0.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.4
733
+ [2.0.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.2...v2.0.3
734
+ [2.0.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.3
735
+ [2.0.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.1...v2.0.2
736
+ [2.0.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.2
737
+ [2.0.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v2.0.0...v2.0.1
738
+ [2.0.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.1
739
+ [2.0.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.11...v2.0.0
740
+ [2.0.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v2.0.0
741
+ [1.4.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.10...v1.4.11
742
+ [1.4.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.11
743
+ [1.4.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.9...v1.4.10
744
+ [1.4.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.10
745
+ [1.4.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.8...v1.4.9
746
+ [1.4.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.9
747
+ [1.4.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.7...v1.4.8
748
+ [1.4.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.8
749
+ [1.4.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.6...v1.4.7
750
+ [1.4.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.7
751
+ [1.4.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.5...v1.4.6
752
+ [1.4.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.6
753
+ [1.4.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.4...v1.4.5
754
+ [1.4.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.5
755
+ [1.4.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.3...v1.4.4
756
+ [1.4.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.4
757
+ [1.4.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.2...v1.4.3
758
+ [1.4.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.3
759
+ [1.4.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.1...v1.4.2
760
+ [1.4.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.2
761
+ [1.4.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.4.0...v1.4.1
762
+ [1.4.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.1
763
+ [1.4.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.3.1...v1.4.0
764
+ [1.4.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.4.0
765
+ [1.3.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.3.0...v1.3.1
766
+ [1.3.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.3.1
767
+ [1.3.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.2.0...v1.3.0
768
+ [1.3.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.3.0
769
+ [1.2.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.1.0...v1.2.0
770
+ [1.2.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.2.0
771
+ [1.1.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v1.0.0...v1.1.0
772
+ [1.1.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.1.0
773
+ [1.0.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.9.4...v1.0.0
774
+ [1.0.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v1.0.0
775
+ [0.5.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.4.1...v0.5.0
776
+ [0.5.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.5.0
777
+ [0.4.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.4.0...v0.4.1
778
+ [0.4.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.4.1
779
+ [0.4.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.3.0...v0.4.0
780
+ [0.4.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.4.0
781
+ [0.3.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.2.0...v0.3.0
782
+ [0.3.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.3.0
783
+ [0.2.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.1.1...v0.2.0
784
+ [0.2.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.2.0
785
+ [0.1.1]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.1.0...v0.1.1
786
+ [0.1.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.1.1
787
+ [0.1.0]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.13...v0.1.0
788
+ [0.1.0t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.1.0
789
+ [0.0.13]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.12...v0.0.13
790
+ [0.0.13t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.13
791
+ [0.0.12]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.11...v0.0.12
792
+ [0.0.12t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.12
793
+ [0.0.11]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.10...v0.0.11
794
+ [0.0.11t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.11
795
+ [0.0.10]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.9...v0.0.10
796
+ [0.0.10t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.10
797
+ [0.0.9]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.8...v0.0.9
798
+ [0.0.9t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.9
799
+ [0.0.8]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.7...v0.0.8
800
+ [0.0.8t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.8
801
+ [0.0.7]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.6...v0.0.7
802
+ [0.0.7t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.7
803
+ [0.0.6]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.5...v0.0.6
804
+ [0.0.6t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.6
805
+ [0.0.5]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.4...v0.0.5
806
+ [0.0.5t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.5
807
+ [0.0.4]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.3...v0.0.4
808
+ [0.0.4t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.4
809
+ [0.0.3]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.2...v0.0.3
810
+ [0.0.3t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.3
811
+ [0.0.2]: https://gitlab.com/ruby-oauth/oauth2/-/compare/v0.0.1...v0.0.2
812
+ [0.0.2t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.2
813
+ [0.0.1]: https://github.com/ruby-oauth/oauth2/compare/311d9f4...v0.0.1
814
+ [0.0.1t]: https://github.com/ruby-oauth/oauth2/releases/tag/v0.0.1