Skip to content

Commit e279295

Browse files
committed
Merge branch 'feat/test-against-hashie-versions' into 'main'
👷 Ensure compatibility with all versions of Hashie See merge request oauth-xx/oauth2!649
2 parents f06238e + 805b49e commit e279295

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+165
-40
lines changed

.github/workflows/truffle.yml

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,32 @@ jobs:
6262
# NOTE: This does not use the primary Gemfile at all.
6363
- name: Install Root Appraisal
6464
run: bundle
65-
- name: Appraisal for ${{ matrix.appraisal }}
65+
66+
- name: "[Attempt 1] Install Root Appraisal"
67+
id: bundleAttempt1
68+
run: bundle
69+
# Continue to the next step on failure
70+
continue-on-error: true
71+
72+
# Effectively an automatic retry of the previous step.
73+
- name: "[Attempt 2] Install Root Appraisal"
74+
id: bundleAttempt2
75+
# If bundleAttempt1 failed, try again here; Otherwise skip.
76+
if: steps.bundleAttempt1.outcome == 'failure'
77+
run: bundle
78+
79+
- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
80+
id: bundleAppraisalAttempt1
81+
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
82+
# Continue to the next step on failure
83+
continue-on-error: true
84+
85+
# Effectively an automatic retry of the previous step.
86+
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
87+
id: bundleAppraisalAttempt2
88+
# If bundleAttempt1 failed, try again here; Otherwise skip.
89+
if: steps.bundleAppraisalAttempt1.outcome == 'failure'
6690
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
91+
6792
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
6893
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}

.rubocop_gradual.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"lib/oauth2/response.rb:4048171841": [
2222
[35, 5, 204, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 996912427]
2323
],
24-
"oauth2.gemspec:2957552385": [
24+
"oauth2.gemspec:3929706977": [
2525
[5, 23, 12, "Gemspec/RubyVersionGlobalsUsage: Do not use `RUBY_VERSION` in gemspec file.", 31296028]
2626
],
2727
"spec/oauth2/access_token_spec.rb:443932125": [

Appraisals

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ appraise "current" do
2727
gem "mutex_m", ">= 0.2"
2828
gem "stringio", ">= 3.0"
2929
eval_gemfile "modular/faraday_v2.gemfile"
30+
eval_gemfile "modular/hashie_v5.gemfile"
3031
eval_gemfile "modular/jwt_v3.gemfile"
3132
eval_gemfile "modular/logger_v1_7.gemfile"
3233
eval_gemfile "modular/multi_xml_v0_7.gemfile"
@@ -36,6 +37,7 @@ end
3637

3738
appraise "ruby-2-3" do
3839
eval_gemfile "modular/faraday_v0.gemfile"
40+
eval_gemfile "modular/hashie_v0.gemfile"
3941
eval_gemfile "modular/jwt_v1.gemfile"
4042
eval_gemfile "modular/logger_v1_2.gemfile"
4143
eval_gemfile "modular/multi_xml_v0_5.gemfile"
@@ -45,6 +47,7 @@ end
4547

4648
appraise "ruby-2-4" do
4749
eval_gemfile "modular/faraday_v1.gemfile"
50+
eval_gemfile "modular/hashie_v1.gemfile"
4851
eval_gemfile "modular/jwt_v1.gemfile"
4952
eval_gemfile "modular/logger_v1_2.gemfile"
5053
eval_gemfile "modular/multi_xml_v0_5.gemfile"
@@ -54,6 +57,7 @@ end
5457

5558
appraise "ruby-2-5" do
5659
eval_gemfile "modular/faraday_v1.gemfile"
60+
eval_gemfile "modular/hashie_v2.gemfile"
5761
eval_gemfile "modular/jwt_v2.gemfile"
5862
eval_gemfile "modular/logger_v1_5.gemfile"
5963
eval_gemfile "modular/multi_xml_v0_6.gemfile"
@@ -65,6 +69,7 @@ appraise "ruby-2-6" do
6569
gem "mutex_m", "~> 0.2"
6670
gem "stringio", "~> 3.0"
6771
eval_gemfile "modular/faraday_v2.gemfile"
72+
eval_gemfile "modular/hashie_v3.gemfile"
6873
eval_gemfile "modular/jwt_v2.gemfile"
6974
eval_gemfile "modular/logger_v1_5.gemfile"
7075
eval_gemfile "modular/multi_xml_v0_6.gemfile"
@@ -76,6 +81,7 @@ appraise "ruby-2-7" do
7681
gem "mutex_m", "~> 0.2"
7782
gem "stringio", "~> 3.0"
7883
eval_gemfile "modular/faraday_v2.gemfile"
84+
eval_gemfile "modular/hashie_v4.gemfile"
7985
eval_gemfile "modular/jwt_v2.gemfile"
8086
eval_gemfile "modular/logger_v1_7.gemfile"
8187
eval_gemfile "modular/multi_xml_v0_6.gemfile"
@@ -87,6 +93,7 @@ appraise "ruby-3-0" do
8793
gem "mutex_m", "~> 0.2"
8894
gem "stringio", "~> 3.0"
8995
eval_gemfile "modular/faraday_v2.gemfile"
96+
eval_gemfile "modular/hashie_v5.gemfile"
9097
eval_gemfile "modular/jwt_v2.gemfile"
9198
eval_gemfile "modular/logger_v1_7.gemfile"
9299
eval_gemfile "modular/multi_xml_v0_6.gemfile"
@@ -98,6 +105,7 @@ appraise "ruby-3-1" do
98105
gem "mutex_m", "~> 0.2"
99106
gem "stringio", "~> 3.0"
100107
eval_gemfile "modular/faraday_v2.gemfile"
108+
eval_gemfile "modular/hashie_v5.gemfile"
101109
eval_gemfile "modular/jwt_v2.gemfile"
102110
eval_gemfile "modular/logger_v1_7.gemfile"
103111
eval_gemfile "modular/multi_xml_v0_6.gemfile"
@@ -109,6 +117,7 @@ appraise "ruby-3-2" do
109117
gem "mutex_m", "~> 0.2"
110118
gem "stringio", "~> 3.0"
111119
eval_gemfile "modular/faraday_v2.gemfile"
120+
eval_gemfile "modular/hashie_v5.gemfile"
112121
eval_gemfile "modular/jwt_v2.gemfile"
113122
eval_gemfile "modular/logger_v1_7.gemfile"
114123
eval_gemfile "modular/multi_xml_v0_7.gemfile"
@@ -120,6 +129,7 @@ appraise "ruby-3-3" do
120129
gem "mutex_m", "~> 0.2"
121130
gem "stringio", "~> 3.0"
122131
eval_gemfile "modular/faraday_v2.gemfile"
132+
eval_gemfile "modular/hashie_v5.gemfile"
123133
eval_gemfile "modular/jwt_v2.gemfile"
124134
eval_gemfile "modular/logger_v1_7.gemfile"
125135
eval_gemfile "modular/multi_xml_v0_7.gemfile"
@@ -133,6 +143,7 @@ appraise "audit" do
133143
gem "stringio", "~> 3.0"
134144
eval_gemfile "modular/audit.gemfile"
135145
eval_gemfile "modular/faraday_v2.gemfile"
146+
eval_gemfile "modular/hashie_v5.gemfile"
136147
eval_gemfile "modular/jwt_v2.gemfile"
137148
eval_gemfile "modular/logger_v1_7.gemfile"
138149
eval_gemfile "modular/multi_xml_v0_7.gemfile"
@@ -146,6 +157,7 @@ appraise "coverage" do
146157
gem "stringio", "~> 3.0"
147158
eval_gemfile "modular/coverage.gemfile"
148159
eval_gemfile "modular/faraday_v2.gemfile"
160+
eval_gemfile "modular/hashie_v5.gemfile"
149161
eval_gemfile "modular/jwt_v2.gemfile"
150162
eval_gemfile "modular/logger_v1_7.gemfile"
151163
eval_gemfile "modular/multi_xml_v0_7.gemfile"
@@ -166,6 +178,7 @@ appraise "omnibus" do
166178
eval_gemfile "modular/coverage.gemfile"
167179
eval_gemfile "modular/documentation.gemfile"
168180
eval_gemfile "modular/faraday_v2.gemfile"
181+
eval_gemfile "modular/hashie_v5.gemfile"
169182
eval_gemfile "modular/jwt_v2.gemfile"
170183
eval_gemfile "modular/logger_v1_7.gemfile"
171184
eval_gemfile "modular/multi_xml_v0_7.gemfile"

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.
1313
- YARD config, GFM compatible with relative file links
1414
- Documentation site on GitHub Pages
1515
- [oauth2.galtzo.com](https://oauth2.galtzo.com)
16+
- [!649](https://gitlab.com/oauth-xx/oauth2/-/merge_requests/649) - Test compatibility with all key minor versions of Hashie v0, v1, v2, v3, v4, v5, HEAD
1617
### Changed
1718
- Updated `spec.homepage_uri` in gemspec to GitHub Pages YARD documentation site
1819
### Deprecated

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ GEM
9292
gem_bench (2.0.5)
9393
bundler (>= 1.14)
9494
version_gem (~> 1.1, >= 1.1.4)
95-
hashie (5.0.0)
95+
hashie (0.4.0)
9696
io-console (0.8.0)
9797
irb (1.15.2)
9898
pp (>= 0.6.0)

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,10 @@ covering the latest patch for each of the following minor versions:
6060
The last two were extracted from this gem. They are part of the `oauth-xx` org,
6161
and are developed in tight collaboration with this gem.
6262

63+
Also, where reasonable, tested against the runtime dependencies of those dependencies:
64+
65+
* gem `hashie` @ v0, v1, v2, v3, v4, v5, HEAD ⏩️ [hashie/hashie](https://github.com/hashie/hashie)
66+
6367
#### You should upgrade this gem with confidence\*.
6468

6569
- This gem follows a _strict & correct_ (according to the maintainer of SemVer; [more info][sv-pub-api]) interpretation of SemVer.

doc/OAuth2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@ <h3 class="signature first" id="configure-class_method">
326326
</div>
327327

328328
<div id="footer">
329-
Generated on Wed May 21 04:26:17 2025 by
329+
Generated on Wed May 21 08:20:02 2025 by
330330
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
331331
0.9.37 (ruby-3.4.3).
332332
</div>

doc/OAuth2/AccessToken.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3051,7 +3051,7 @@ <h3 class="signature " id="to_hash-instance_method">
30513051
</div>
30523052

30533053
<div id="footer">
3054-
Generated on Wed May 21 04:26:17 2025 by
3054+
Generated on Wed May 21 08:20:02 2025 by
30553055
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
30563056
0.9.37 (ruby-3.4.3).
30573057
</div>

doc/OAuth2/Authenticator.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -631,7 +631,7 @@ <h3 class="signature first" id="apply-instance_method">
631631
</div>
632632

633633
<div id="footer">
634-
Generated on Wed May 21 04:26:17 2025 by
634+
Generated on Wed May 21 08:20:02 2025 by
635635
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
636636
0.9.37 (ruby-3.4.3).
637637
</div>

doc/OAuth2/Client.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2651,7 +2651,7 @@ <h3 class="signature " id="token_url-instance_method">
26512651
</div>
26522652

26532653
<div id="footer">
2654-
Generated on Wed May 21 04:26:17 2025 by
2654+
Generated on Wed May 21 08:20:02 2025 by
26552655
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
26562656
0.9.37 (ruby-3.4.3).
26572657
</div>

0 commit comments

Comments
 (0)