oauth-tty 1.0.7 → 1.0.8

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: ddf468baedf5f9d67c7d894fb625a87d96c5f8618604e5d6ae0e0dd1541b61df
4
- data.tar.gz: bcf96155a11aabb6f329cabf3f965296c4c98479b74f229df076fa5f756532e0
3
+ metadata.gz: 615326d7bdb365bf9529d93296704b468611cfde8340c92328184cde418932ca
4
+ data.tar.gz: 261203267bcec6401ae9ad0240a2ddf42a87ad9f65a747ae73e97aa1e4b43633
5
5
  SHA512:
6
- metadata.gz: eef1bd7af1bb544d05364ea553c4b41fef5d856d8284ff1b50f23c110cefe04ee335b1102ebaf7c606d218d83b6fb227789a912e33eb1b98e9c5a9bfaf9a3d98
7
- data.tar.gz: 87b683834fa36d7357abaadeb6536b8196fd11ec4191d2dfbde3a9221bedb0ad882c316cb4135971dacb0f525759a9d763fc962da3c9d5397d733718af809854
6
+ metadata.gz: 6c7f5871e5803d1c399143583f8ce5cba43b43808f92128cf977f5651070548b06214db4aafce22f533ee2fd450ca8cf41fc64d3bfce10e444db96242fef9e5e
7
+ data.tar.gz: bf82abc2f80a966fa094b10b10ce4a4fb91d61f5d072b2b4e10516739f5ab8b9b5909d3e9976561a7a7ad09964ab859cf79200d82f20be0d3096b50305f323bc
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,21 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [1.0.8] - 2026-05-20
34
+
35
+ - TAG: [v1.0.8][1.0.8t]
36
+ - COVERAGE: 100.00% -- 315/315 lines in 11 files
37
+ - BRANCH COVERAGE: 96.55% -- 28/29 branches in 11 files
38
+ - 15.79% documented
39
+
40
+ ### Changed
41
+
42
+ - auth-sanitizer v0.1.3
43
+
44
+ ### Fixed
45
+
46
+ - Load `auth-sanitizer` through an internal isolated loader so requiring `oauth/tty` does not add top-level `Auth` or `AuthSanitizer` constants that may collide with downstream applications.
47
+
33
48
  ## [1.0.7] - 2026-05-16
34
49
 
35
50
  - TAG: [v1.0.7][1.0.7t]
@@ -140,7 +155,9 @@ Please file a bug if you notice a violation of semantic versioning.
140
155
 
141
156
  - Initial release (@pboling)
142
157
 
143
- [Unreleased]: https://github.com/ruby-oauth/oauth-tty/compare/v1.0.7...HEAD
158
+ [Unreleased]: https://github.com/ruby-oauth/oauth-tty/compare/v1.0.8...HEAD
159
+ [1.0.8]: https://github.com/ruby-oauth/oauth-tty/compare/v1.0.7...v1.0.8
160
+ [1.0.8t]: https://github.com/ruby-oauth/oauth-tty/releases/tag/v1.0.8
144
161
  [1.0.7]: https://github.com/ruby-oauth/oauth-tty/compare/v1.0.6...v1.0.7
145
162
  [1.0.7t]: https://github.com/ruby-oauth/oauth-tty/releases/tag/v1.0.7
146
163
  [1.0.6]: https://github.com/ruby-oauth/oauth-tty/compare/v1.0.5...v1.0.6
data/README.md CHANGED
@@ -662,7 +662,7 @@ Thanks for RTFM. ☺️
662
662
  [📌gitmoji]:https://gitmoji.dev
663
663
  [📌gitmoji-img]:https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
664
664
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
665
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.305-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
665
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.315-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
666
666
  [🔐security]: SECURITY.md
667
667
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
668
668
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OAuth
4
+ module TTY
5
+ AUTH_SANITIZER = begin
6
+ auth_sanitizer_requirement = Gem::Requirement.new("~> 0.1", ">= 0.1.3")
7
+ auth_sanitizer_spec = Gem.loaded_specs["auth-sanitizer"]
8
+ unless auth_sanitizer_spec && auth_sanitizer_requirement.satisfied_by?(auth_sanitizer_spec.version)
9
+ # :nocov:
10
+ auth_sanitizer_spec = Gem::Specification.find_by_name("auth-sanitizer", auth_sanitizer_requirement)
11
+ # :nocov:
12
+ end
13
+
14
+ auth_sanitizer_loader_path = File.join(
15
+ auth_sanitizer_spec.full_gem_path,
16
+ "lib/auth_sanitizer/loader.rb",
17
+ )
18
+ unless File.file?(auth_sanitizer_loader_path)
19
+ # :nocov:
20
+ raise LoadError, "oauth-tty requires auth-sanitizer #{auth_sanitizer_requirement}; " \
21
+ "loader not found at #{auth_sanitizer_loader_path}"
22
+ # :nocov:
23
+ end
24
+
25
+ auth_sanitizer_loader_namespace = Module.new
26
+ auth_sanitizer_loader_namespace.module_eval(
27
+ File.read(auth_sanitizer_loader_path),
28
+ auth_sanitizer_loader_path,
29
+ 1,
30
+ )
31
+
32
+ auth_sanitizer_loader_namespace
33
+ .const_get(:AuthSanitizer)
34
+ .const_get(:Loader)
35
+ .load_isolated
36
+ end
37
+ end
38
+ end
@@ -4,11 +4,11 @@ module OAuth
4
4
  module TTY
5
5
  # Base class for oauth-tty commands.
6
6
  #
7
- # Includes {Auth::Sanitizer::FilteredAttributes} so inspect output redacts
7
+ # Includes {OAuth::TTY::AUTH_SANITIZER::FilteredAttributes} so inspect output redacts
8
8
  # the accumulated command options hash, which may contain consumer or token
9
9
  # secrets read from CLI flags or option files.
10
10
  class Command
11
- include Auth::Sanitizer::FilteredAttributes
11
+ include OAuth::TTY::AUTH_SANITIZER::FilteredAttributes
12
12
 
13
13
  # Redact parser-related state from inspect output because it can include
14
14
  # credential-bearing CLI arguments and parser internals that retain them.
@@ -3,7 +3,7 @@
3
3
  module OAuth
4
4
  module TTY
5
5
  module Version
6
- VERSION = "1.0.7"
6
+ VERSION = "1.0.8"
7
7
  end
8
8
  VERSION = Version::VERSION # Traditional Constant Location
9
9
  end
data/lib/oauth/tty.rb CHANGED
@@ -5,7 +5,6 @@ require "cgi"
5
5
  require "optparse"
6
6
 
7
7
  # external gems
8
- require "auth/sanitizer"
9
8
  require "version_gem"
10
9
 
11
10
  # For initial release as a standalone gem, this gem must not declare oauth as a dependency,
@@ -15,6 +14,7 @@ require "oauth"
15
14
 
16
15
  # this gem's version
17
16
  require_relative "tty/version"
17
+ require_relative "tty/auth_sanitizer"
18
18
 
19
19
  # Configure version before loading the rest of the library
20
20
  OAuth::TTY::Version.class_eval do
@@ -1,7 +1,7 @@
1
1
  module OAuth
2
2
  module TTY
3
3
  class Command
4
- include Auth::Sanitizer::FilteredAttributes
4
+ include OAuth::TTY::AUTH_SANITIZER::FilteredAttributes
5
5
 
6
6
  def initialize: (untyped stdout, untyped stdin, untyped stderr, untyped arguments) -> void
7
7
  def run: () -> untyped
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oauth-tty
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thiago Pinto
@@ -59,6 +59,9 @@ dependencies:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.1'
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 0.1.3
62
65
  type: :runtime
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
@@ -66,6 +69,9 @@ dependencies:
66
69
  - - "~>"
67
70
  - !ruby/object:Gem::Version
68
71
  version: '0.1'
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 0.1.3
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: version_gem
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -92,28 +98,28 @@ dependencies:
92
98
  requirements:
93
99
  - - "~>"
94
100
  - !ruby/object:Gem::Version
95
- version: '1.1'
101
+ version: '2.0'
96
102
  type: :development
97
103
  prerelease: false
98
104
  version_requirements: !ruby/object:Gem::Requirement
99
105
  requirements:
100
106
  - - "~>"
101
107
  - !ruby/object:Gem::Version
102
- version: '1.1'
108
+ version: '2.0'
103
109
  - !ruby/object:Gem::Dependency
104
110
  name: bundler-audit
105
111
  requirement: !ruby/object:Gem::Requirement
106
112
  requirements:
107
113
  - - "~>"
108
114
  - !ruby/object:Gem::Version
109
- version: 0.9.2
115
+ version: 0.9.3
110
116
  type: :development
111
117
  prerelease: false
112
118
  version_requirements: !ruby/object:Gem::Requirement
113
119
  requirements:
114
120
  - - "~>"
115
121
  - !ruby/object:Gem::Version
116
- version: 0.9.2
122
+ version: 0.9.3
117
123
  - !ruby/object:Gem::Dependency
118
124
  name: rake
119
125
  requirement: !ruby/object:Gem::Requirement
@@ -155,6 +161,9 @@ dependencies:
155
161
  - - "~>"
156
162
  - !ruby/object:Gem::Version
157
163
  version: '3.0'
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: 3.0.6
158
167
  type: :development
159
168
  prerelease: false
160
169
  version_requirements: !ruby/object:Gem::Requirement
@@ -162,6 +171,9 @@ dependencies:
162
171
  - - "~>"
163
172
  - !ruby/object:Gem::Version
164
173
  version: '3.0'
174
+ - - ">="
175
+ - !ruby/object:Gem::Version
176
+ version: 3.0.6
165
177
  - !ruby/object:Gem::Dependency
166
178
  name: kettle-test
167
179
  requirement: !ruby/object:Gem::Requirement
@@ -169,6 +181,9 @@ dependencies:
169
181
  - - "~>"
170
182
  - !ruby/object:Gem::Version
171
183
  version: '1.0'
184
+ - - ">="
185
+ - !ruby/object:Gem::Version
186
+ version: 1.0.10
172
187
  type: :development
173
188
  prerelease: false
174
189
  version_requirements: !ruby/object:Gem::Requirement
@@ -176,6 +191,9 @@ dependencies:
176
191
  - - "~>"
177
192
  - !ruby/object:Gem::Version
178
193
  version: '1.0'
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: 1.0.10
179
197
  - !ruby/object:Gem::Dependency
180
198
  name: mocha
181
199
  requirement: !ruby/object:Gem::Requirement
@@ -238,20 +256,20 @@ dependencies:
238
256
  requirements:
239
257
  - - "~>"
240
258
  - !ruby/object:Gem::Version
241
- version: '0.0'
259
+ version: '0.1'
242
260
  - - ">="
243
261
  - !ruby/object:Gem::Version
244
- version: 0.0.17
262
+ version: 0.1.20
245
263
  type: :development
246
264
  prerelease: false
247
265
  version_requirements: !ruby/object:Gem::Requirement
248
266
  requirements:
249
267
  - - "~>"
250
268
  - !ruby/object:Gem::Version
251
- version: '0.0'
269
+ version: '0.1'
252
270
  - - ">="
253
271
  - !ruby/object:Gem::Version
254
- version: 0.0.17
272
+ version: 0.1.20
255
273
  - !ruby/object:Gem::Dependency
256
274
  name: typhoeus
257
275
  requirement: !ruby/object:Gem::Requirement
@@ -289,7 +307,7 @@ dependencies:
289
307
  version: '1.0'
290
308
  - - ">="
291
309
  - !ruby/object:Gem::Version
292
- version: 1.0.2
310
+ version: 1.0.3
293
311
  type: :development
294
312
  prerelease: false
295
313
  version_requirements: !ruby/object:Gem::Requirement
@@ -299,7 +317,7 @@ dependencies:
299
317
  version: '1.0'
300
318
  - - ">="
301
319
  - !ruby/object:Gem::Version
302
- version: 1.0.2
320
+ version: 1.0.3
303
321
  - !ruby/object:Gem::Dependency
304
322
  name: gitmoji-regex
305
323
  requirement: !ruby/object:Gem::Requirement
@@ -400,6 +418,7 @@ files:
400
418
  - exe/oauth
401
419
  - lib/oauth/cli.rb
402
420
  - lib/oauth/tty.rb
421
+ - lib/oauth/tty/auth_sanitizer.rb
403
422
  - lib/oauth/tty/cli.rb
404
423
  - lib/oauth/tty/command.rb
405
424
  - lib/oauth/tty/commands/authorize_command.rb
@@ -416,10 +435,10 @@ licenses:
416
435
  - MIT
417
436
  metadata:
418
437
  homepage_uri: https://oauth-tty.galtzo.com/
419
- source_code_uri: https://github.com/ruby-oauth/oauth-tty/tree/v1.0.7
420
- changelog_uri: https://github.com/ruby-oauth/oauth-tty/blob/v1.0.7/CHANGELOG.md
438
+ source_code_uri: https://github.com/ruby-oauth/oauth-tty/tree/v1.0.8
439
+ changelog_uri: https://github.com/ruby-oauth/oauth-tty/blob/v1.0.8/CHANGELOG.md
421
440
  bug_tracker_uri: https://github.com/ruby-oauth/oauth-tty/issues
422
- documentation_uri: https://www.rubydoc.info/gems/oauth-tty/1.0.7
441
+ documentation_uri: https://www.rubydoc.info/gems/oauth-tty/1.0.8
423
442
  funding_uri: https://github.com/sponsors/pboling
424
443
  wiki_uri: https://github.com/ruby-oauth/oauth-tty/wiki
425
444
  news_uri: https://www.railsbling.com/tags/oauth-tty
metadata.gz.sig CHANGED
Binary file