googleauth 0.10.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db5eb8767a7eae3ca209e8a6eeebc6e8e3b0b8724ce456734fbb4f10fc62319a
4
- data.tar.gz: 36501fbb7a1963cde692f1122d40fcbc02d6f98d517736ffd11745c42649dcef
3
+ metadata.gz: '084256f40daf70be42b7489597bbdde5fa0809a0b33690f60307fafa4928d83f'
4
+ data.tar.gz: ecf351e58a7ff196ed6e75e9a9bdca3eef918828feb9e65dd5e51869c6c6a235
5
5
  SHA512:
6
- metadata.gz: fd87ff90b92d1906310f9bebeffa84a692b11bd54c114d597e19c02968955922c0202b87cf6fb6b6e172804234ffb5f4b642ac1415b562013cbd789b942025a0
7
- data.tar.gz: 444ce4532265ff0b8ecdd384653384579c0d99730fa0c415c957c8a956d603fdc1667e2dd2c112efa062b7c11c55285d783a85894e84c440c74f5c6923140c10
6
+ metadata.gz: eb987a66865f02231cd66e8b96bbc8a26c97bb516a0a4324c19b86e9c5a77b84f1af208aa96b2a9f9b3656b0d9b742b0f27b6dcc26060cb9acfd5b03d96beccb
7
+ data.tar.gz: b59184d1118bc14fdf5499eb2a19e5ecd9ba4e90c9d1f6ba648e18a648f4162c2a6ef0fe2d65683ecf1b0dfd42500a9fdfbba0d61208538d4c3c4bd85b482f9e
@@ -3,10 +3,10 @@
3
3
  build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
4
4
 
5
5
  # Configure the docker image for kokoro-trampoline.
6
- # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/ruby-multi
6
+ # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/multi
7
7
  env_vars: {
8
8
  key: "TRAMPOLINE_IMAGE"
9
- value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/ruby-multi"
9
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi"
10
10
  }
11
11
 
12
12
  env_vars: {
@@ -0,0 +1,30 @@
1
+ # Format: //devtools/kokoro/config/proto/build.proto
2
+
3
+ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
4
+
5
+ # Configure the docker image for kokoro-trampoline.
6
+ # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/multi-node
7
+ env_vars: {
8
+ key: "TRAMPOLINE_IMAGE"
9
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi-node"
10
+ }
11
+
12
+ env_vars: {
13
+ key: "TRAMPOLINE_BUILD_FILE"
14
+ value: "github/google-auth-library-ruby/.kokoro/build.sh"
15
+ }
16
+
17
+ env_vars: {
18
+ key: "TRAMPOLINE_SCRIPT"
19
+ value: "trampoline_v1.py"
20
+ }
21
+
22
+ env_vars: {
23
+ key: "OS"
24
+ value: "linux"
25
+ }
26
+
27
+ env_vars: {
28
+ key: "JOB_TYPE"
29
+ value: "post"
30
+ }
@@ -5,7 +5,7 @@ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
5
5
  # Configure the docker image for kokoro-trampoline.
6
6
  env_vars: {
7
7
  key: "TRAMPOLINE_IMAGE"
8
- value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/ruby-multi"
8
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi"
9
9
  }
10
10
 
11
11
  env_vars: {
@@ -60,7 +60,7 @@ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
60
60
  # Configure the docker image for kokoro-trampoline.
61
61
  env_vars: {
62
62
  key: "TRAMPOLINE_IMAGE"
63
- value: "gcr.io/cloud-devrel-kokoro-resources/google-cloud-ruby/ruby-release"
63
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/release"
64
64
  }
65
65
 
66
66
  env_vars: {
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "googleauth",
3
+ "language": "ruby",
4
+ "distribution-name": "googleauth"
5
+ }
@@ -5,10 +5,9 @@ AllCops:
5
5
  Exclude:
6
6
  - "spec/**/*"
7
7
  - "Rakefile"
8
+ - "rakelib/**/*"
8
9
  Metrics/ClassLength:
9
- Max: 110
10
- Exclude:
11
- - "lib/googleauth/credentials.rb"
10
+ Max: 200
12
11
  Metrics/ModuleLength:
13
12
  Max: 110
14
13
  Metrics/BlockLength:
@@ -1,3 +1,8 @@
1
+ ### 0.11.0 / 2020-02-24
2
+
3
+ * Support Faraday 1.x.
4
+ * Allow special "postmessage" value for redirect_uri.
5
+
1
6
  ### 0.10.0 / 2019-10-09
2
7
 
3
8
  Note: This release now requires Ruby 2.4 or later
data/README.md CHANGED
@@ -178,7 +178,7 @@ access and refresh tokens. Two storage implementations are included:
178
178
  * Google::Auth::Stores::RedisTokenStore
179
179
 
180
180
  Custom storage implementations can also be used. See
181
- [token_store.rb](lib/googleauth/token_store.rb) for additional details.
181
+ [token_store.rb](https://googleapis.dev/ruby/googleauth/latest/Google/Auth/TokenStore.html) for additional details.
182
182
 
183
183
  ## Supported Ruby Versions
184
184
 
@@ -206,7 +206,6 @@ hesitate to
206
206
  [ask questions](http://stackoverflow.com/questions/tagged/google-auth-library-ruby)
207
207
  about the client or APIs on [StackOverflow](http://stackoverflow.com).
208
208
 
209
- [google-apis-ruby-client]: (https://github.com/google/google-api-ruby-client)
210
- [application default credentials]: (https://developers.google.com/accounts/docs/application-default-credentials)
211
- [contributing]: https://github.com/google/google-auth-library-ruby/tree/master/CONTRIBUTING.md
212
- [copying]: https://github.com/google/google-auth-library-ruby/tree/master/COPYING
209
+ [application default credentials]: https://developers.google.com/accounts/docs/application-default-credentials
210
+ [contributing]: https://github.com/googleapis/google-auth-library-ruby/tree/master/.github/CONTRIBUTING.md
211
+ [copying]: https://github.com/googleapis/google-auth-library-ruby/tree/master/COPYING
data/Rakefile CHANGED
@@ -13,7 +13,7 @@ task :release_gem, :tag do |_t, args|
13
13
  raise "You must provide a tag to release." if tag.nil?
14
14
 
15
15
  # Verify the tag format "vVERSION"
16
- m = tag.match(/google-auth-library-ruby\/v(?<version>\S*)/)
16
+ m = tag.match /v(?<version>\S*)/
17
17
  raise "Tag #{tag} does not match the expected format." if m.nil?
18
18
 
19
19
  version = m[:version]
@@ -35,16 +35,23 @@ task :release_gem, :tag do |_t, args|
35
35
  end
36
36
 
37
37
  path_to_be_pushed = "pkg/googleauth-#{version}.gem"
38
+ gem_was_published = nil
38
39
  if File.file? path_to_be_pushed
39
40
  begin
40
- ::Gems.push File.new(path_to_be_pushed)
41
+ response = ::Gems.push File.new(path_to_be_pushed)
42
+ puts response
43
+ raise unless response.include? "Successfully registered gem:"
44
+ gem_was_published = true
41
45
  puts "Successfully built and pushed googleauth for version #{version}"
42
46
  rescue StandardError => e
47
+ gem_was_published = false
43
48
  puts "Error while releasing googleauth version #{version}: #{e.message}"
44
49
  end
45
50
  else
46
51
  raise "Cannot build googleauth for version #{version}"
47
52
  end
53
+
54
+ Rake::Task["kokoro:publish_docs"].invoke if gem_was_published
48
55
  end
49
56
 
50
57
  namespace :kokoro do
@@ -64,6 +71,14 @@ namespace :kokoro do
64
71
  Rake::Task["ci"].invoke
65
72
  end
66
73
 
74
+ task :post do
75
+ require_relative "rakelib/link_checker.rb"
76
+
77
+ link_checker = LinkChecker.new
78
+ link_checker.run
79
+ exit link_checker.exit_status
80
+ end
81
+
67
82
  task :nightly do
68
83
  Rake::Task["ci"].invoke
69
84
  end
@@ -76,7 +91,13 @@ namespace :kokoro do
76
91
  .first.split("(").last.split(")").first || "0.1.0"
77
92
  end
78
93
  Rake::Task["kokoro:load_env_vars"].invoke
79
- Rake::Task["release_gem"].invoke "google-auth-library-ruby/v#{version}"
94
+ Rake::Task["release_gem"].invoke "v#{version}"
95
+ end
96
+
97
+ task :publish_docs do
98
+ require_relative "rakelib/devsite_builder.rb"
99
+
100
+ DevsiteBuilder.new(__dir__).publish
80
101
  end
81
102
  end
82
103
 
@@ -27,10 +27,11 @@ Gem::Specification.new do |gem|
27
27
  gem.platform = Gem::Platform::RUBY
28
28
  gem.required_ruby_version = ">= 2.4.0"
29
29
 
30
- gem.add_dependency "faraday", "~> 0.12"
30
+ gem.add_dependency "faraday", ">= 0.17.3", "< 2.0"
31
31
  gem.add_dependency "jwt", ">= 1.4", "< 3.0"
32
32
  gem.add_dependency "memoist", "~> 0.16"
33
33
  gem.add_dependency "multi_json", "~> 1.11"
34
34
  gem.add_dependency "os", ">= 0.9", "< 2.0"
35
35
  gem.add_dependency "signet", "~> 0.12"
36
+ gem.add_development_dependency "yard", "~> 0.9"
36
37
  end
@@ -47,7 +47,7 @@ module Google
47
47
  #
48
48
  # Use this to obtain the Application Default Credentials for accessing
49
49
  # Google APIs. Application Default Credentials are described in detail
50
- # at http://goo.gl/IUuyuX.
50
+ # at https://cloud.google.com/docs/authentication/production.
51
51
  #
52
52
  # If supplied, scope is used to create the credentials instance, when it can
53
53
  # be applied. E.g, on google compute engine and for user credentials the
@@ -45,7 +45,7 @@ module Google
45
45
  # from credentials from a json key file downloaded from the developer
46
46
  # console (via 'Generate new Json Key').
47
47
  #
48
- # cf [Application Default Credentials](http://goo.gl/mkAHpZ)
48
+ # cf [Application Default Credentials](https://cloud.google.com/docs/authentication/production)
49
49
  class ServiceAccountCredentials < Signet::OAuth2::Client
50
50
  TOKEN_CRED_URI = "https://www.googleapis.com/oauth2/v4/token".freeze
51
51
  extend CredentialsLoader
@@ -123,7 +123,7 @@ module Google
123
123
  # console (via 'Generate new Json Key'). It is not part of any OAuth2
124
124
  # flow, rather it creates a JWT and sends that as a credential.
125
125
  #
126
- # cf [Application Default Credentials](http://goo.gl/mkAHpZ)
126
+ # cf [Application Default Credentials](https://cloud.google.com/docs/authentication/production)
127
127
  class ServiceAccountJwtHeaderCredentials
128
128
  JWT_AUD_URI_KEY = :jwt_aud_uri
129
129
  AUTH_METADATA_KEY = Signet::OAuth2::AUTH_METADATA_KEY
@@ -271,10 +271,15 @@ module Google
271
271
  # @return [String]
272
272
  # Redirect URI
273
273
  def redirect_uri_for base_url
274
- return @callback_uri unless URI(@callback_uri).scheme.nil?
274
+ return @callback_uri if uri_is_postmessage?(@callback_uri) || !URI(@callback_uri).scheme.nil?
275
275
  raise format(MISSING_ABSOLUTE_URL_ERROR, @callback_uri) if base_url.nil? || URI(base_url).scheme.nil?
276
276
  URI.join(base_url, @callback_uri).to_s
277
277
  end
278
+
279
+ # Check if URI is Google's postmessage flow (not a valid redirect_uri by spec, but allowed)
280
+ def uri_is_postmessage? uri
281
+ uri.to_s.casecmp("postmessage").zero?
282
+ end
278
283
  end
279
284
  end
280
285
  end
@@ -44,7 +44,7 @@ module Google
44
44
  # 'gcloud auth login' saves a file with these contents in well known
45
45
  # location
46
46
  #
47
- # cf [Application Default Credentials](http://goo.gl/mkAHpZ)
47
+ # cf [Application Default Credentials](https://cloud.google.com/docs/authentication/production)
48
48
  class UserRefreshCredentials < Signet::OAuth2::Client
49
49
  TOKEN_CRED_URI = "https://oauth2.googleapis.com/token".freeze
50
50
  AUTHORIZATION_URI = "https://accounts.google.com/o/oauth2/auth".freeze
@@ -31,6 +31,6 @@ module Google
31
31
  # Module Auth provides classes that provide Google-specific authorization
32
32
  # used to access Google APIs.
33
33
  module Auth
34
- VERSION = "0.10.0".freeze
34
+ VERSION = "0.11.0".freeze
35
35
  end
36
36
  end
@@ -0,0 +1,45 @@
1
+ require "pathname"
2
+
3
+ require_relative "repo_metadata.rb"
4
+
5
+ class DevsiteBuilder
6
+ def initialize master_dir = "."
7
+ @master_dir = Pathname.new master_dir
8
+ @output_dir = "doc"
9
+ @metadata = RepoMetadata.from_source "#{master_dir}/.repo-metadata.json"
10
+ end
11
+
12
+ def build
13
+ FileUtils.remove_dir @output_dir if Dir.exist? @output_dir
14
+ markup = "--markup markdown"
15
+
16
+ Dir.chdir @master_dir do
17
+ cmds = ["-o #{@output_dir}", markup]
18
+ cmd "yard --verbose #{cmds.join ' '}"
19
+ end
20
+ @metadata.build @master_dir + @output_dir
21
+ end
22
+
23
+ def upload
24
+ Dir.chdir @output_dir do
25
+ opts = [
26
+ "--credentials=#{ENV['KOKORO_KEYSTORE_DIR']}/73713_docuploader_service_account",
27
+ "--staging-bucket=#{ENV.fetch 'STAGING_BUCKET', 'docs-staging'}",
28
+ "--metadata-file=./docs.metadata"
29
+ ]
30
+ cmd "python3 -m docuploader upload . #{opts.join ' '}"
31
+ end
32
+ end
33
+
34
+ def publish
35
+ build
36
+ upload
37
+ end
38
+
39
+ def cmd line
40
+ puts line
41
+ output = `#{line}`
42
+ puts output
43
+ output
44
+ end
45
+ end
@@ -0,0 +1,64 @@
1
+ require "open3"
2
+
3
+ class LinkChecker
4
+ def initialize
5
+ @failed = false
6
+ end
7
+
8
+ def run
9
+ job_info
10
+ git_commit = ENV.fetch "KOKORO_GITHUB_COMMIT", "master"
11
+
12
+ markdown_files = Dir.glob "**/*.md"
13
+ broken_markdown_links = check_links markdown_files,
14
+ "https://github.com/googleapis/google-auth-library-ruby/tree/#{git_commit}",
15
+ " --skip '^(?!(\\Wruby.*google|.*google.*\\Wruby|.*cloud\\.google\\.com))'"
16
+
17
+ broken_devsite_links = check_links ["googleauth"],
18
+ "https://googleapis.dev/ruby",
19
+ "/latest/ --recurse --skip https:.*github.*"
20
+
21
+ puts_broken_links broken_markdown_links
22
+ puts_broken_links broken_devsite_links
23
+ end
24
+
25
+ def check_links location_list, base, tail
26
+ broken_links = Hash.new { |h, k| h[k] = [] }
27
+ location_list.each do |location|
28
+ out, err, st = Open3.capture3 "npx linkinator #{base}/#{location}#{tail}"
29
+ puts out
30
+ unless st.to_i.zero?
31
+ @failed = true
32
+ puts err
33
+ end
34
+ checked_links = out.split "\n"
35
+ checked_links.select! { |link| link =~ /\[\d+\]/ && !link.include?("[200]") }
36
+ unless checked_links.empty?
37
+ @failed = true
38
+ broken_links[location] += checked_links
39
+ end
40
+ end
41
+ broken_links
42
+ end
43
+
44
+ def puts_broken_links link_hash
45
+ link_hash.each do |location, links|
46
+ puts "#{location} contains the following broken links:"
47
+ links.each { |link| puts " #{link}" }
48
+ puts ""
49
+ end
50
+ end
51
+
52
+ def job_info
53
+ line_length = "Using Ruby - #{RUBY_VERSION}".length + 8
54
+ puts ""
55
+ puts "#" * line_length
56
+ puts "### Using Ruby - #{RUBY_VERSION} ###"
57
+ puts "#" * line_length
58
+ puts ""
59
+ end
60
+
61
+ def exit_status
62
+ @failed ? 1 : 0
63
+ end
64
+ end
@@ -0,0 +1,59 @@
1
+ require "json"
2
+
3
+ class RepoMetadata
4
+ attr_reader :data
5
+
6
+ def initialize data
7
+ @data = data
8
+ normalize_data!
9
+ end
10
+
11
+ def allowed_fields
12
+ [
13
+ "name", "version", "language", "distribution-name",
14
+ "product-page", "github-repository", "issue-tracker"
15
+ ]
16
+ end
17
+
18
+ def build output_directory
19
+ fields = @data.to_a.map { |kv| "--#{kv[0]} #{kv[1]}" }
20
+ Dir.chdir output_directory do
21
+ cmd "python3 -m docuploader create-metadata #{fields.join ' '}"
22
+ end
23
+ end
24
+
25
+ def normalize_data!
26
+ require_relative "../lib/googleauth/version.rb"
27
+
28
+ @data.delete_if { |k, _| !allowed_fields.include?(k) }
29
+ @data["version"] = "v#{Google::Auth::VERSION}"
30
+ end
31
+
32
+ def [] key
33
+ data[key]
34
+ end
35
+
36
+ def []= key, value
37
+ @data[key] = value
38
+ end
39
+
40
+ def cmd line
41
+ puts line
42
+ output = `#{line}`
43
+ puts output
44
+ output
45
+ end
46
+
47
+ def self.from_source source
48
+ if source.is_a? RepoMetadata
49
+ data = source.data
50
+ elsif source.is_a? Hash
51
+ data = source
52
+ elsif File.file? source
53
+ data = JSON.parse File.read(source)
54
+ else
55
+ raise "Source must be a path, hash, or RepoMetadata instance"
56
+ end
57
+ RepoMetadata.new data
58
+ end
59
+ end
@@ -80,7 +80,7 @@ describe Google::Auth::UserAuthorizer do
80
80
  expect(URI(uri).query).to_not match(/client_secret/)
81
81
  end
82
82
 
83
- it "should include the callback uri" do
83
+ it "should include the redirect_uri" do
84
84
  expect(URI(uri).query).to match(
85
85
  %r{redirect_uri=https://www.example.com/oauth/callback}
86
86
  )
@@ -91,6 +91,25 @@ describe Google::Auth::UserAuthorizer do
91
91
  end
92
92
  end
93
93
 
94
+ context "when generating authorization URLs and callback_uri is 'postmessage'" do
95
+ let(:callback_uri) { "postmessage" }
96
+ let :authorizer do
97
+ Google::Auth::UserAuthorizer.new(client_id,
98
+ scope,
99
+ token_store,
100
+ callback_uri)
101
+ end
102
+ let :uri do
103
+ authorizer.get_authorization_url login_hint: "user1", state: "mystate"
104
+ end
105
+
106
+ it "should include the redirect_uri 'postmessage'" do
107
+ expect(URI(uri).query).to match(
108
+ %r{redirect_uri=postmessage}
109
+ )
110
+ end
111
+ end
112
+
94
113
  context "when generating authorization URLs with user ID & state" do
95
114
  let :uri do
96
115
  authorizer.get_authorization_url login_hint: "user1", state: "mystate"
@@ -253,6 +272,7 @@ describe Google::Auth::UserAuthorizer do
253
272
  user_id: "user1", code: "code"
254
273
  )
255
274
  expect(credentials.access_token).to eq "1/abc123"
275
+ expect(credentials.redirect_uri.to_s).to eq "https://www.example.com/oauth/callback"
256
276
  end
257
277
 
258
278
  it "should not store credentials when get only requested" do
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: googleauth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Emiola
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-09 00:00:00.000000000 Z
11
+ date: 2020-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.12'
19
+ version: 0.17.3
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '2.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
- version: '0.12'
29
+ version: 0.17.3
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '2.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: jwt
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -106,6 +112,20 @@ dependencies:
106
112
  - - "~>"
107
113
  - !ruby/object:Gem::Version
108
114
  version: '0.12'
115
+ - !ruby/object:Gem::Dependency
116
+ name: yard
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: '0.9'
122
+ type: :development
123
+ prerelease: false
124
+ version_requirements: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '0.9'
109
129
  description: |2
110
130
  Allows simple authorization for accessing Google APIs.
111
131
  Provide support for Application Default Credentials, as described at
@@ -125,6 +145,7 @@ files:
125
145
  - ".kokoro/continuous/common.cfg"
126
146
  - ".kokoro/continuous/linux.cfg"
127
147
  - ".kokoro/continuous/osx.cfg"
148
+ - ".kokoro/continuous/post.cfg"
128
149
  - ".kokoro/continuous/windows.cfg"
129
150
  - ".kokoro/osx.sh"
130
151
  - ".kokoro/presubmit/common.cfg"
@@ -134,6 +155,7 @@ files:
134
155
  - ".kokoro/release.cfg"
135
156
  - ".kokoro/trampoline.bat"
136
157
  - ".kokoro/trampoline.sh"
158
+ - ".repo-metadata.json"
137
159
  - ".rspec"
138
160
  - ".rubocop.yml"
139
161
  - CHANGELOG.md
@@ -162,6 +184,9 @@ files:
162
184
  - lib/googleauth/user_refresh.rb
163
185
  - lib/googleauth/version.rb
164
186
  - lib/googleauth/web_user_authorizer.rb
187
+ - rakelib/devsite_builder.rb
188
+ - rakelib/link_checker.rb
189
+ - rakelib/repo_metadata.rb
165
190
  - spec/googleauth/apply_auth_examples.rb
166
191
  - spec/googleauth/client_id_spec.rb
167
192
  - spec/googleauth/compute_engine_spec.rb
@@ -197,8 +222,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
197
222
  - !ruby/object:Gem::Version
198
223
  version: '0'
199
224
  requirements: []
200
- rubyforge_project:
201
- rubygems_version: 2.7.6
225
+ rubygems_version: 3.0.6
202
226
  signing_key:
203
227
  specification_version: 4
204
228
  summary: Google Auth Library for Ruby