mauth-client 7.2.0 → 7.3.0

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: 26dbb5eeff53416bf247a264a415eb7223359a142a2150e75734c0f62e824256
4
- data.tar.gz: 6e73c8fdc1637927ba7625dc33b0e1ab0d8239f5e086c68a74d4a46385479940
3
+ metadata.gz: 382afef415a9f26e2ccd2d9c931c3d8494cdf3617630ef418fd54099675ca817
4
+ data.tar.gz: 7217f086976bacc388a3c702fd72adce9ea407a0caadd05909095cc7b58c50bb
5
5
  SHA512:
6
- metadata.gz: c4eb6c25146c155208258e513ed64c9215c39dc0f250078db7fc57288d66df7f1d64f68aa41382be6c22ed25ed8dcf98249421433b93f2feb8ef7377d5922825
7
- data.tar.gz: a06299bb7874d516e4391e33edab52c8c4d1ea8bef8ee39ca4e325115700b241ae25a0fe50ee49dee11029607056a6043922f2a0246c2393ad31aafa479341ab
6
+ metadata.gz: 27cd354b5884f9d9655d930257f6cd5f4dc6e17f4dac94c12a388689160ab0885411a0e53c9288e0beb66da09ae72c9ea625e220211573bd3e981bdbcbb9b3a2
7
+ data.tar.gz: 94cdf4d3cfbca6e69610c4d8b7ac8b568f1ee42e1c640a2fd654145661548831f41b4535f2a8e34f63e24257acb09196670f5f1af86595ac638522a143d9ef46
@@ -28,7 +28,7 @@ jobs:
28
28
 
29
29
  strategy:
30
30
  matrix:
31
- ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3']
31
+ ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
32
32
  appraisal: ['faraday_1.x', 'faraday_2.x']
33
33
 
34
34
  env:
@@ -20,7 +20,7 @@ jobs:
20
20
  - name: Set up Ruby
21
21
  uses: ruby/setup-ruby@v1
22
22
  with:
23
- ruby-version: 3.3
23
+ ruby-version: 3.4
24
24
 
25
25
  - name: Publish to RubyGems
26
26
  run: |
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "7.2.0"
2
+ ".": "7.3.0"
3
3
  }
data/CHANGELOG.md CHANGED
@@ -1,9 +1,11 @@
1
- ## v7.1.0
2
- - Add MAuth::PrivateKeyHelper.load method to process RSA private keys.
3
- - Update Faraday configuration in SecurityTokenCacher:
4
- - Add the `MAUTH_USE_RAILS_CACHE` environment variable to make `Rails.cache` usable to cache public keys.
5
- - Shorten timeout for connection, add retries, and use persistent HTTP connections.
6
- - Drop support for Faraday < 1.9.
1
+ # Changelog
2
+
3
+ ## [7.3.0](https://github.com/mdsol/mauth-client-ruby/compare/v7.2.0...v7.3.0) (2025-01-16)
4
+
5
+
6
+ ### Features
7
+
8
+ * Support ruby 3.4 ([97f0f32](https://github.com/mdsol/mauth-client-ruby/commit/97f0f3211d5da8c92fc0ab6bbf44c6ad6929c807))
7
9
 
8
10
  ## [7.2.0](https://github.com/mdsol/mauth-client-ruby/compare/v7.1.0...v7.2.0) (2024-04-25)
9
11
 
@@ -12,7 +14,14 @@
12
14
 
13
15
  * Support Ruby 3.3 ([245bb06](https://github.com/mdsol/mauth-client-ruby/commit/245bb06d8abb86bd6a4b557b84bc9d0898254a95))
14
16
 
15
- ## v7.0.0
17
+ ## 7.1.0
18
+ - Add MAuth::PrivateKeyHelper.load method to process RSA private keys.
19
+ - Update Faraday configuration in SecurityTokenCacher:
20
+ - Add the `MAUTH_USE_RAILS_CACHE` environment variable to make `Rails.cache` usable to cache public keys.
21
+ - Shorten timeout for connection, add retries, and use persistent HTTP connections.
22
+ - Drop support for Faraday < 1.9.
23
+
24
+ ## 7.0.0
16
25
  - Remove dice_bag and set configuration through environment variables directly.
17
26
  - Rename the `V2_ONLY_SIGN_REQUESTS`, `V2_ONLY_AUTHENTICATE`, `DISABLE_FALLBACK_TO_V1_ON_V2_FAILURE` and `V1_ONLY_SIGN_REQUESTS` environment variables.
18
27
  - Remove the remote authenticator.
@@ -20,37 +29,37 @@
20
29
 
21
30
  See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
22
31
 
23
- ## v6.4.3
32
+ ## 6.4.3
24
33
  - Force Rack > 2.2.3 to resolve [CVE-2022-30123](https://github.com/advisories/GHSA-wq4h-7r42-5hrr).
25
34
 
26
- ## v6.4.2
35
+ ## 6.4.2
27
36
  - Add MAuth::ServerHelper module with convenience methods for servers to access requester app uuid.
28
37
 
29
- ## v6.4.1
38
+ ## 6.4.1
30
39
  - Fix MAuth::Rack::Response to not raise FrozenError.
31
40
 
32
- ## v6.4.0
41
+ ## 6.4.0
33
42
  - Support Ruby 3.1.
34
43
  - Drop support for Ruby < 2.6.0.
35
44
  - Allow Faraday 2.x.
36
45
 
37
- ## v6.3.0
46
+ ## 6.3.0
38
47
  - Support Ruby 3.0.
39
48
  - Drop support for Ruby < 2.5.0.
40
49
 
41
- ## v6.2.1
50
+ ## 6.2.1
42
51
  - Fix SecurityTokenCacher to not cache tokens forever.
43
52
 
44
- ## v6.2.0
53
+ ## 6.2.0
45
54
  - Drop legacy security token expiry in favor of honoring server cache headers via Faraday HTTP Cache Middleware.
46
55
 
47
- ## v6.1.1
56
+ ## 6.1.1
48
57
  - Replace `URI.escape` with `CGI.escape` in SecurityTokenCacher to suppress "URI.escape is obsolete" warning.
49
58
 
50
- ## v6.1.0
59
+ ## 6.1.0
51
60
  - Allow Faraday 1.x.
52
61
 
53
- ## v6.0.0
62
+ ## 6.0.0
54
63
  - Added parsing code to test with mauth-protocol-test-suite.
55
64
  - Added unescape step in query_string encoding in order to remove 'double encoding'.
56
65
  - Added normalization of paths.
@@ -58,106 +67,106 @@ See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
58
67
  - Changed V2 to V1 fallback to be configurable.
59
68
  - Fixed bug in sorting query parameters.
60
69
 
61
- ## v5.1.0
70
+ ## 5.1.0
62
71
  - Fall back to V1 when V2 authentication fails.
63
72
 
64
- ## v5.0.2
73
+ ## 5.0.2
65
74
  - Fix to not raise FrozenError when string to sign contains frozen value.
66
75
 
67
- ## v5.0.1
76
+ ## 5.0.1
68
77
  - Update euresource escaping of query string.
69
78
 
70
- ## v5.0.0
79
+ ## 5.0.0
71
80
  - Add support for MWSV2 protocol.
72
81
  - Change request signing to sign with both V1 and V2 protocols by default.
73
82
  - Update log message for authentication request to include protocol version used.
74
83
  - Added `benchmark` rake task to benchmark request signing and authentication.
75
84
 
76
- ## v4.1.1
85
+ ## 4.1.1
77
86
  - Use warning level instead of error level for logs about missing mauth header.
78
87
 
79
- ## v4.1.0
88
+ ## 4.1.0
80
89
  - Drop support for Ruby < 2.3.0
81
90
  - Update development dependencies
82
91
 
83
- ## v4.0.4
92
+ ## 4.0.4
84
93
  - Restore original behavior in the proxy of forwarding of headers that begin with HTTP_ (except for HTTP_HOST) but removing the HTTP_.
85
94
 
86
- ## v4.0.3
95
+ ## 4.0.3
87
96
  - Updated signature to decode number sign (#) in requests
88
97
 
89
- ## v4.0.2
98
+ ## 4.0.2
90
99
  - Store the config data to not load the config file multiple times
91
100
 
92
- ## v4.0.1
101
+ ## 4.0.1
93
102
  - Open source and publish this gem on rubygems.org, no functionality changes
94
103
 
95
- ## v4.0.0
104
+ ## 4.0.0
96
105
  - *yanked*
97
106
 
98
- ## v3.1.4
107
+ ## 3.1.4
99
108
  - Use String#bytesize method instead of Rack::Utils' one, which was removed in Rack 2.0
100
109
 
101
- ## v3.1.3
110
+ ## 3.1.3
102
111
  - Increased the default timeout when fetching keys from MAuth from 1 second to 10 seconds
103
112
  - Properly honor faraday_options: timeout in mauth.yml for faraday < 0.9
104
113
 
105
- ## v3.1.2
114
+ ## 3.1.2
106
115
  - Fixed bug in Faraday call, not to raise exception when adding authenticate information to response.
107
116
 
108
- ## v3.1.1
117
+ ## 3.1.1
109
118
  - Properly require version file. Solves exception with the Faraday middleware.
110
119
 
111
- ## v3.1.0
120
+ ## 3.1.0
112
121
  - Updated `mauth.rb.dice` template to use `MAuth::Client.default_config` method and store the config in `MAUTH_CONF` constant
113
122
 
114
- ## v3.0.2
123
+ ## 3.0.2
115
124
  - Always pass a private key to the `ensure_is_private_key` method
116
125
 
117
- ## v3.0.1
126
+ ## 3.0.1
118
127
  - Use `ensure_is_private_key` in the `mauth_key` template
119
128
 
120
- ## v3.0.0
129
+ ## 3.0.0
121
130
  - Drop support for ruby 1.x
122
131
 
123
- ## v2.9.0
132
+ ## 2.9.0
124
133
  - Add a dice template for mauth initializer
125
134
 
126
135
  ## 2-8-stable
127
136
  - Added an ssl_certs_path option to support JRuby applications
128
137
  - Updated dice templates to ensure `rake config` raises an error in production env if required variables are missing.
129
138
 
130
- ## v2.7.2
139
+ ## 2.7.2
131
140
  - Added logging of mauth app_uuid of requester and requestee on each request
132
141
 
133
- ## v2.7.0
142
+ ## 2.7.0
134
143
  - Ability to pass custom headers into mauth-client and mauth-proxy
135
144
  - Upgraded to use newest version of Faraday Middleware
136
145
  - Faraday_options now only get merged to the request (previously got merged into everything)
137
146
  - Syntax highlighting in hale+json output
138
147
 
139
- ## v2.6.4
148
+ ## 2.6.4
140
149
  - Less restrictive rack versioning to allow for more consumers.
141
150
  - Allow verification even if intermediate web servers unescape URLs.
142
151
 
143
- ## v2.6.3
152
+ ## 2.6.3
144
153
  - Fixed bug where nil Rails.logger prevented a logger from being built.
145
154
 
146
- ## v2.6.2
155
+ ## 2.6.2
147
156
  - Added templates for dice_bag, now rake config:generate_all will create mauth config files when you include this gem.
148
157
 
149
- ## v2.6.1
158
+ ## 2.6.1
150
159
  - Imported documentation from Medinet into the project's doc directory
151
160
  - Add Shamus
152
161
 
153
- ## v2.6.0
162
+ ## 2.6.0
154
163
  - CLI option --no-ssl-verify disables SSL verification
155
164
  - Syntax highlighting with CodeRay colorizes request and response bodies of recognized media types
156
165
  - MAuth::Proxy class now lives in lib, in mauth/proxy, and may be used as a rack application
157
166
  - mauth-proxy executable recognizes --no-authenticate option for responses
158
167
  - MAuth::Proxy bugfix usage of REQUEST_URI; use Rack::Request#fullpath instead
159
168
 
160
- ## v2.5.0
169
+ ## 2.5.0
161
170
  - MAuth::Rack::RequestAuthenticator middleware responds with json (instead of text/plain) for inauthentic requests and requests which it is unable to authenticate
162
171
  - Added MAuth::Client.default_config method
163
172
  - Added mauth-proxy executable
@@ -165,7 +174,7 @@ See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
165
174
  - Rack middleware correctly handles Content-Length with HEAD requests
166
175
  - MAuth::Client raises MAuth::Client::ConfigurationError instead of ArgumentError or RuntimeError as appropriate
167
176
 
168
- ## v2.4.0
177
+ ## 2.4.0
169
178
  - Colorized output from the mauth-client CLI
170
179
  - Add --content-type option to CLI
171
180
  - CLI rescues and prints MAuth errors instead of them bubbling up to the interpreter
@@ -173,7 +182,7 @@ See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
173
182
  - Fix default null logger on windows where /dev/null is not available
174
183
  - Improve error logging
175
184
 
176
- ## v2.3.0
185
+ ## 2.3.0
177
186
  - When authentication headers are missing, the previous message ("No x-mws-time present") is replaced by the somewhat more informative "Authentication Failed. No mAuth signature present; X-MWS-Authentication header is blank."
178
187
  - More informative help messages from mauth-client CLI
179
188
  - CLI sets a user-agent
@@ -181,7 +190,7 @@ See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
181
190
  - Middleware MAuth::Rack::RequestAuthenticationFaker for testing
182
191
  - More and better specs
183
192
 
184
- ## v2.2.0
193
+ ## 2.2.0
185
194
  - Fixes an issue where requests which have a body and are not PUT or POST were not being correctly signed in rack middleware
186
195
  - Improves the CLI, adding command-line options --[no-]authenticate to decide whether to authenticate responses, and --[no-]verbose to decide whether to dump the entire request and response, or just the response body. and --help to
187
196
  Remind you.
@@ -191,10 +200,10 @@ See [UPGRADE_GUIDE.md](UPGRADE_GUIDE.md#upgrading-to-700) for migration.
191
200
  - Drops backports dependency (Ben has found some issues with this gem, and it was easier to drop the depedency entirely than figure out whether these issues affected mauth-client and if it could be fixed)
192
201
  - Fix issue with remote authentication against the currently-deployed mauth service with a request signed by a nonexistent app_uuid
193
202
 
194
- ## v2.1.1
203
+ ## 2.1.1
195
204
  - Fix an issue in a case where the rack.input is not rewound before mauth-client attempts to read it
196
205
 
197
- ## v2.1.0
206
+ ## 2.1.0
198
207
  - MAuth::Client handles the :private_key_file, so you can remove from your application the bit that does that - this bit can be deleted:
199
208
  ```
200
209
  if mauth_conf['private_key_file']
@@ -204,5 +213,5 @@ end
204
213
 
205
214
  - Autoloads are in place so that once you require 'mauth/client', you should not need to require mauth/rack, mauth/faraday, or mauth/request_and_response.
206
215
 
207
- ## v2.0.0
216
+ ## 2.0.0
208
217
  - Rewrite combining the mauth_signer and rack-mauth gems
data/lib/mauth/client.rb CHANGED
@@ -97,9 +97,7 @@ module MAuth
97
97
  Rails.logger
98
98
  else
99
99
  require 'logger'
100
- is_win = RUBY_PLATFORM =~ /mswin|windows|mingw32|cygwin/i
101
- null_device = is_win ? 'NUL' : '/dev/null'
102
- ::Logger.new(File.open(null_device, File::WRONLY))
100
+ ::Logger.new(File.open(File::NULL, File::WRONLY))
103
101
  end
104
102
  end
105
103
 
@@ -183,7 +181,7 @@ module MAuth
183
181
 
184
182
  # Changes all keys in the top level of the hash to symbols. Does not affect nested hashes inside this one.
185
183
  def symbolize_keys(hash)
186
- hash.keys.each do |key| # rubocop:disable Style/HashEachMethods
184
+ hash.keys.each do |key|
187
185
  hash[(key.to_sym rescue key) || key] = hash.delete(key)
188
186
  end
189
187
  hash
data/lib/mauth/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MAuth
4
- VERSION = '7.2.0'
4
+ VERSION = '7.3.0'
5
5
  end
data/mauth-client.gemspec CHANGED
@@ -22,6 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.require_paths = ['lib']
23
23
 
24
24
  spec.add_dependency 'addressable', '~> 2.0'
25
+ spec.add_dependency 'base64', '~> 0.2'
25
26
  spec.add_dependency 'coderay', '~> 1.0'
26
27
  spec.add_dependency 'faraday', '>= 1.9', '< 3.0'
27
28
  spec.add_dependency 'faraday-http-cache', '>= 2.0', '< 3.0'
metadata CHANGED
@@ -1,17 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mauth-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.2.0
4
+ version: 7.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Szenher
8
8
  - Aaron Suggs
9
9
  - Geoffrey Ducharme
10
10
  - Ethan
11
- autorequire:
12
11
  bindir: exe
13
12
  cert_chain: []
14
- date: 2024-04-25 00:00:00.000000000 Z
13
+ date: 1980-01-02 00:00:00.000000000 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: addressable
@@ -27,6 +26,20 @@ dependencies:
27
26
  - - "~>"
28
27
  - !ruby/object:Gem::Version
29
28
  version: '2.0'
29
+ - !ruby/object:Gem::Dependency
30
+ name: base64
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - "~>"
34
+ - !ruby/object:Gem::Version
35
+ version: '0.2'
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.2'
30
43
  - !ruby/object:Gem::Dependency
31
44
  name: coderay
32
45
  requirement: !ruby/object:Gem::Requirement
@@ -219,7 +232,6 @@ homepage: https://github.com/mdsol/mauth-client-ruby
219
232
  licenses:
220
233
  - MIT
221
234
  metadata: {}
222
- post_install_message:
223
235
  rdoc_options: []
224
236
  require_paths:
225
237
  - lib
@@ -234,8 +246,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
234
246
  - !ruby/object:Gem::Version
235
247
  version: '0'
236
248
  requirements: []
237
- rubygems_version: 3.5.9
238
- signing_key:
249
+ rubygems_version: 3.6.9
239
250
  specification_version: 4
240
251
  summary: Sign and authenticate requests and responses with mAuth authentication.
241
252
  test_files: []