grape-jwt-authentication 2.7.1 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bafce52c8e698421232325dfe9f003a9251b5100bddaa3cc5698f61033e557b9
4
- data.tar.gz: c0f3224f38a1c814e67c73087edac614e7557aa9204c0e594b7855c8357af912
3
+ metadata.gz: 185fa68e33cd711c3b716ac86c04fba1bc04c64e92d49ec3ec3e6d711c90b5f1
4
+ data.tar.gz: da64d2c5e230762cc9c71313d8630eb51c8fc48938db3f703034f194b6fca5e4
5
5
  SHA512:
6
- metadata.gz: ff0cb1bfb59949634037f53ac28f1b3b461556842d6076a807da33a1d12184a88242b276d33f06e437f8b3973678f8001c06ab6476f50b001b84fc980712a54c
7
- data.tar.gz: 1fd927cdf3b6565773aee13c02c744aa8b9041adaabc888d7d37ca2836f98e4a6b68cd7bc3e5296f4d4442c1b4e4af4b78b0412e40c1b3ed41521e5d03cfc084
6
+ metadata.gz: a89c218c5f328987733e6f9c9b3dd400b7728169a001629a518bbab557ad236c2b33478100f79926554277412d6856fe82478ef755aa46cfe30eddeff169f7f2
7
+ data.tar.gz: 174bac1d2fefd144da2e00ea3c55744362607f1a34549224aff22d277b628745693a630fb82c532efbc41f077575a90f235951fd3e9cf31efd78b94b0e7b8ba1
@@ -18,7 +18,7 @@ jobs:
18
18
  strategy:
19
19
  fail-fast: false
20
20
  matrix:
21
- ruby: ['2.7', '3.0']
21
+ ruby: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
22
22
  rails: ['6.1', '7.1']
23
23
  env:
24
24
  BUNDLE_GEMFILE: 'gemfiles/rails_${{ matrix.rails }}.gemfile'
data/.rubocop.yml CHANGED
@@ -1,4 +1,4 @@
1
- require:
1
+ plugins:
2
2
  - rubocop-rspec
3
3
  - rubocop-rails
4
4
 
@@ -58,7 +58,7 @@ RSpec/NestedGroups:
58
58
  Max: 4
59
59
 
60
60
  # Disable regular Rails spec paths.
61
- RSpec/FilePath:
61
+ Rails/FilePath:
62
62
  Enabled: false
63
63
 
64
64
  # Because we just implemented the ActiveRecord API.
data/CHANGELOG.md CHANGED
@@ -2,21 +2,30 @@
2
2
 
3
3
  * TODO: Replace this bullet point with an actual description of a change.
4
4
 
5
+ ### 2.8.1 (21 May 2025)
6
+
7
+ * Corrected some RuboCop glitches ([#19](https://github.com/hausgold/grape-jwt-authentication/pull/19))
8
+ * Upgraded the rubocop dependencies ([#20](https://github.com/hausgold/grape-jwt-authentication/pull/20))
9
+
10
+ ### 2.8.0 (30 January 2025)
11
+
12
+ * Added all versions up to Ruby 3.4 to the CI matrix ([#19](https://github.com/hausgold/grape-jwt-authentication/pull/19))
13
+
5
14
  ### 2.7.1 (17 January 2025)
6
15
 
7
- * Added the logger dependency (#18)
16
+ * Added the logger dependency ([#18](https://github.com/hausgold/grape-jwt-authentication/pull/18))
8
17
 
9
18
  ### 2.7.0 (11 January 2025)
10
19
 
11
- * Switched to Zeitwerk as autoloader (#17)
20
+ * Switched to Zeitwerk as autoloader ([#17](https://github.com/hausgold/grape-jwt-authentication/pull/17))
12
21
 
13
22
  ### 2.6.0 (3 January 2025)
14
23
 
15
- * Raised minimum supported Ruby/Rails version to 2.7/6.1 (#16)
24
+ * Raised minimum supported Ruby/Rails version to 2.7/6.1 ([#16](https://github.com/hausgold/grape-jwt-authentication/pull/16))
16
25
 
17
26
  ### 2.5.0 (4 October 2024)
18
27
 
19
- * Upgraded the `recursive-open-struct` gem to `~> 2.0` (#15)
28
+ * Upgraded the `recursive-open-struct` gem to `~> 2.0` ([#15](https://github.com/hausgold/grape-jwt-authentication/pull/15))
20
29
 
21
30
  ### 2.4.5 (15 August 2024)
22
31
 
@@ -36,17 +45,17 @@
36
45
 
37
46
  ### 2.4.1 (9 August 2024)
38
47
 
39
- * Added API docs building to continuous integration (#14)
48
+ * Added API docs building to continuous integration ([#14](https://github.com/hausgold/grape-jwt-authentication/pull/14))
40
49
 
41
50
  ### 2.4.0 (8 July 2024)
42
51
 
43
- * Dropped support for Ruby <2.7 (#13)
52
+ * Dropped support for Ruby <2.7 ([#13](https://github.com/hausgold/grape-jwt-authentication/pull/13))
44
53
 
45
54
  ### 2.3.0 (16 January 2024)
46
55
 
47
56
  * Implemented case-insensitive header value checks for Grape 2.0.0+
48
57
  compatibility, aligning with HTTP/2+ semantics (#11, #12)
49
- * Moved the development dependencies from the gemspec to the Gemfile (#10)
58
+ * Moved the development dependencies from the gemspec to the Gemfile ([#10](https://github.com/hausgold/grape-jwt-authentication/pull/10))
50
59
 
51
60
  ### 2.2.0 (24 February 2023)
52
61
 
@@ -54,11 +63,11 @@
54
63
 
55
64
  ### 2.1.0 (18 January 2023)
56
65
 
57
- * Bundler >= 2.3 is from now on required as minimal version (#9)
58
- * Dropped support for Ruby < 2.5 (#9)
59
- * Dropped support for Rails < 5.2 (#9)
66
+ * Bundler >= 2.3 is from now on required as minimal version ([#9](https://github.com/hausgold/grape-jwt-authentication/pull/9))
67
+ * Dropped support for Ruby < 2.5 ([#9](https://github.com/hausgold/grape-jwt-authentication/pull/9))
68
+ * Dropped support for Rails < 5.2 ([#9](https://github.com/hausgold/grape-jwt-authentication/pull/9))
60
69
  * Updated all development/runtime gems to their latest
61
- Ruby 2.5 compatible version (#9)
70
+ Ruby 2.5 compatible version ([#9](https://github.com/hausgold/grape-jwt-authentication/pull/9))
62
71
 
63
72
  ### 2.0.4 (15 October 2021)
64
73
 
@@ -84,7 +93,7 @@
84
93
  ### 2.0.0 (7 September 2020)
85
94
 
86
95
  * Extracted the JWT verification functionality into its own gem
87
- ([keyless](https://github.com/hausgold/keyless)) (#6)
96
+ ([keyless](https://github.com/hausgold/keyless)) ([#6](https://github.com/hausgold/grape-jwt-authentication/pull/6))
88
97
  * This extraction allows users to use the JWT/RSA key handling without Grape
89
98
  * The API/configuration stays the same
90
99
  * With the major update to 2.0 we dropped a lot of code which is now located at
@@ -98,13 +107,13 @@
98
107
 
99
108
  ### 1.2.0 (14 February 2019)
100
109
 
101
- * Check the remote response on public key fetching (#3)
110
+ * Check the remote response on public key fetching ([#3](https://github.com/hausgold/grape-jwt-authentication/pull/3))
102
111
  * Added support for Ruby 2.6
103
112
  * Dropped support for EOL Ruby 2.2
104
113
 
105
114
  ### 1.1.0 (1 November 2018)
106
115
 
107
- * Added the parsed and original token to the Rack environment (#2)
116
+ * Added the parsed and original token to the Rack environment ([#2](https://github.com/hausgold/grape-jwt-authentication/pull/2))
108
117
  * Two new helper methods are now available to access the JWT from an API spec
109
118
 
110
119
  ### 1.0.1 (23 November 2017)
data/Dockerfile CHANGED
@@ -1,5 +1,5 @@
1
1
  FROM hausgold/ruby:2.7
2
- MAINTAINER Hermann Mayer <hermann.mayer@hausgold.de>
2
+ LABEL org.opencontainers.image.authors="containers@hausgold.de"
3
3
 
4
4
  # Update system gem
5
5
  RUN gem update --system '3.4.22'
data/Gemfile CHANGED
@@ -17,9 +17,9 @@ gem 'rack-test', '~> 2.0'
17
17
  gem 'railties', '>= 6.1'
18
18
  gem 'rake', '~> 13.0'
19
19
  gem 'rspec', '~> 3.12'
20
- gem 'rubocop', '~> 1.28'
21
- gem 'rubocop-rails', '~> 2.14'
22
- gem 'rubocop-rspec', '~> 2.10'
20
+ gem 'rubocop'
21
+ gem 'rubocop-rails'
22
+ gem 'rubocop-rspec'
23
23
  gem 'simplecov', '>= 0.22'
24
24
  gem 'timecop', '>= 0.9.6'
25
25
  gem 'vcr', '~> 6.0'
data/Makefile CHANGED
@@ -25,6 +25,7 @@ GREP ?= grep
25
25
  ID ?= id
26
26
  MKDIR ?= mkdir
27
27
  RM ?= rm
28
+ TEST ?= test
28
29
  XARGS ?= xargs
29
30
 
30
31
  # Container binaries
@@ -36,6 +37,7 @@ RAKE ?= rake
36
37
  RSPEC ?= rspec
37
38
  RUBOCOP ?= rubocop
38
39
  YARD ?= yard
40
+ RUBY_VERSION := ruby-version
39
41
 
40
42
  # Files
41
43
  GEMFILES ?= $(subst _,-,$(patsubst $(GEMFILES_DIR)/%.gemfile,%,\
@@ -114,12 +116,14 @@ test-style: \
114
116
 
115
117
  test-style-ruby:
116
118
  # Run the static code analyzer (rubocop)
117
- @$(call run-shell,$(BUNDLE) exec $(RUBOCOP) -a)
119
+ @$(call run-shell,$(BUNDLE) exec $(RUBOCOP) -a \
120
+ || ($(TEST) $$($(RUBY_VERSION)) != '2.7' && true))
118
121
 
119
122
  clean:
120
123
  # Clean the dependencies
121
124
  @$(RM) -rf $(VENDOR_DIR)
122
- @$(RM) -rf $(VENDOR_DIR)/Gemfile.lock
125
+ @$(RM) -rf $(GEMFILES_DIR)/vendor
126
+ @$(RM) -rf $(GEMFILES_DIR)/*.lock
123
127
  @$(RM) -rf .bundle .yardoc coverage pkg Gemfile.lock doc/api \
124
128
  .rspec_status
125
129
 
@@ -1,68 +1,7 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <svg
3
- xmlns:dc="http://purl.org/dc/elements/1.1/"
4
- xmlns:cc="http://creativecommons.org/ns#"
5
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
- xmlns:svg="http://www.w3.org/2000/svg"
7
- xmlns="http://www.w3.org/2000/svg"
8
- version="1.1"
9
- id="Ebene_1"
10
- x="0px"
11
- y="0px"
12
- viewBox="0 0 800 200"
13
- xml:space="preserve"
14
- width="800"
15
- height="200"><metadata
16
- id="metadata33"><rdf:RDF><cc:Work
17
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
18
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
19
- id="defs31" />
20
- <style
21
- type="text/css"
22
- id="style2">
23
- .st0{fill-rule:evenodd;clip-rule:evenodd;fill:#E73E11;}
24
- .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#0371B9;}
25
- .st2{fill:#132E48;}
26
- .st3{font-family:'OpenSans-Bold';}
27
- .st4{font-size:29.5168px;}
28
- .st5{fill-rule:evenodd;clip-rule:evenodd;fill:none;}
29
- .st6{opacity:0.5;fill:#132E48;}
30
- .st7{font-family:'OpenSans';}
31
- .st8{font-size:12px;}
32
- </style>
33
- <g
34
- transform="translate(0,1.53584)"
35
- id="g828"><g
36
- transform="translate(35.93985,35.66416)"
37
- id="g8">
38
- <path
39
- style="clip-rule:evenodd;fill:#e73e11;fill-rule:evenodd"
40
- id="path4"
41
- d="m -0.1,124.4 c 0,0 33.7,-123.2 66.7,-123.2 12.8,0 26.9,21.9 38.8,47.2 -23.6,27.9 -66.6,59.7 -94,76 -7.1,0 -11.5,0 -11.5,0 z"
42
- class="st0" />
43
- <path
44
- style="clip-rule:evenodd;fill:#0371b9;fill-rule:evenodd"
45
- id="path6"
46
- d="m 88.1,101.8 c 13.5,-10.4 18.4,-16.2 27.1,-25.4 10,25.7 16.7,48 16.7,48 0,0 -41.4,0 -78,0 14.6,-7.9 18.7,-10.7 34.2,-22.6 z"
47
- class="st1" />
48
- </g><text
49
- y="106.40316"
50
- x="192.43155"
51
- style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:29.51733398px;font-family:'Open Sans', sans-serif;-inkscape-font-specification:'OpenSans-Bold, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#132e48"
52
- id="text10"
53
- class="st2 st3 st4">grape-jwt-authentication</text>
54
- <rect
55
- style="clip-rule:evenodd;fill:none;fill-rule:evenodd"
56
- id="rect12"
57
- height="24"
58
- width="314.5"
59
- class="st5"
60
- y="118.06416"
61
- x="194.23985" /><text
62
- y="127.22146"
63
- x="194.21715"
64
- style="font-size:12px;font-family:'Open Sans', sans-serif;opacity:0.5;fill:#132e48;-inkscape-font-specification:'Open Sans, sans-serif, Normal';font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;text-anchor:start;text-align:start;writing-mode:lr;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
65
- id="text14"
66
- class="st6 st7 st8">A reusable Grape JWT authentication concern</text>
67
- </g>
68
- </svg>
1
+ <svg id="hg-readme-banner-v2" viewBox="0 0 800 200" width="800" height="200" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="a" x1="112.46" y1="309.13" x2="314.5" y2="309.13" gradientUnits="userSpaceOnUse" gradientTransform="translate(-33.985 -122.816)"><stop offset="0" stop-color="#1992f4" /><stop offset="1" stop-color="#2b8af6" /></linearGradient></defs><style>.st3{font-family:&apos;OpenSans-Bold&apos;}.st4{font-size:29.5168px}.st5{fill-rule:evenodd;clip-rule:evenodd;fill:none}.st7{font-family:&apos;OpenSans&apos;}.st8{font-size:12px}@media (prefers-color-scheme:dark){text{fill:#f0f6fc!important}}</style>
2
+ <text y="107.939" x="192.432" style="font-family:'Open Sans', sans-serif;-inkscape-font-specification:'OpenSans-Bold, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start" class="st3 st4" font-weight="700" font-size="29.517" font-family="'Open Sans',sans-serif" fill="#3f3e4b"
3
+ >grape-jwt-authentication</text>
4
+ <path class="st5" clip-rule="evenodd" fill="none" fill-rule="evenodd" d="M194.24 119.6h314.5v24h-314.5z"/>
5
+ <text y="128.757" x="194.217" style="font-family:'Open Sans', sans-serif;-inkscape-font-specification:'Open Sans, sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start" class="st7 st8" font-weight="400" font-size="12" font-family="'Open Sans',sans-serif" opacity=".75" fill="#3f3e4b"
6
+ >A reusable Grape JWT authentication concern</text>
7
+ <g transform="translate(33.985 122.816)"><path d="M129.427 32.4q-7-20.71-14.09-41.44c-.33-1-.52-1.18-1.34-.25-3.1 3.48-6.25 6.92-9.49 10.26a180.23 180.23 0 0 1-18.54 16.15 193.7 193.7 0 0 1-21.95 15.43c-2.53 1.47-5.08 2.91-7.62 4.36l.11.27h73.05c1 .1 1.4-.13 1-1.22-.4-1.09-.73-2.38-1.13-3.56z" fill="url(#a)" /><path d="M89.077-63.87c-3.57-5.58-7.42-10.95-12.62-15.17-3.93-3.19-8.28-5-13.42-3.32a23 23 0 0 0-8.76 5.6 66.77 66.77 0 0 0-10.34 13.09c-8 12.68-14.06 26.28-19.28 40.25-4.6 12.33-8.82 24.8-12.95 37.29-2.45 7.41-4.39 15-6.61 22.49-.26.88 0 1 .79 1h7.4c1.23 0 2.44.14 3.6-.68 9.17-6.45 18.51-12.67 27.55-19.31a396.21 396.21 0 0 0 37.36-31.3 245.79 245.79 0 0 0 20.74-22 1.6 1.6 0 0 0 .26-2 224.45 224.45 0 0 0-13.72-25.94z" fill="#f2686d" /></g></svg>
@@ -11,9 +11,9 @@ gem "rack-test", "~> 2.0"
11
11
  gem "railties", ">= 6.1"
12
12
  gem "rake", "~> 13.0"
13
13
  gem "rspec", "~> 3.12"
14
- gem "rubocop", "~> 1.28"
15
- gem "rubocop-rails", "~> 2.14"
16
- gem "rubocop-rspec", "~> 2.10"
14
+ gem "rubocop"
15
+ gem "rubocop-rails"
16
+ gem "rubocop-rspec"
17
17
  gem "simplecov", ">= 0.22"
18
18
  gem "timecop", ">= 0.9.6"
19
19
  gem "vcr", "~> 6.0"
@@ -11,9 +11,9 @@ gem "rack-test", "~> 2.0"
11
11
  gem "railties", ">= 6.1"
12
12
  gem "rake", "~> 13.0"
13
13
  gem "rspec", "~> 3.12"
14
- gem "rubocop", "~> 1.28"
15
- gem "rubocop-rails", "~> 2.14"
16
- gem "rubocop-rspec", "~> 2.10"
14
+ gem "rubocop"
15
+ gem "rubocop-rails"
16
+ gem "rubocop-rspec"
17
17
  gem "simplecov", ">= 0.22"
18
18
  gem "timecop", ">= 0.9.6"
19
19
  gem "vcr", "~> 6.0"
@@ -38,6 +38,7 @@ Gem::Specification.new do |spec|
38
38
  spec.add_dependency 'httparty', '>= 0.21'
39
39
  spec.add_dependency 'jwt', '~> 2.6'
40
40
  spec.add_dependency 'keyless', '~> 1.6'
41
+ spec.add_dependency 'mutex_m', '~> 0.3.0'
41
42
  spec.add_dependency 'recursive-open-struct', '~> 2.0'
42
43
  spec.add_dependency 'zeitwerk', '~> 2.6'
43
44
  end
@@ -5,7 +5,7 @@ module Grape
5
5
  # The gem version details.
6
6
  module Authentication
7
7
  # The version of the +grape-jwt-authentication+ gem
8
- VERSION = '2.7.1'
8
+ VERSION = '2.8.1'
9
9
 
10
10
  class << self
11
11
  # Returns the version of gem as a string.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-jwt-authentication
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.1
4
+ version: 2.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hermann Mayer
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-01-17 00:00:00.000000000 Z
11
+ date: 2025-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -86,6 +86,20 @@ dependencies:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: '1.6'
89
+ - !ruby/object:Gem::Dependency
90
+ name: mutex_m
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: 0.3.0
96
+ type: :runtime
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: 0.3.0
89
103
  - !ruby/object:Gem::Dependency
90
104
  name: recursive-open-struct
91
105
  requirement: !ruby/object:Gem::Requirement
@@ -179,7 +193,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
179
193
  - !ruby/object:Gem::Version
180
194
  version: '0'
181
195
  requirements: []
182
- rubygems_version: 3.3.26
196
+ rubygems_version: 3.4.22
183
197
  signing_key:
184
198
  specification_version: 4
185
199
  summary: A reusable Grape JWT authentication concern