google-api-client 0.8.2 → 0.8.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/CHANGELOG.md +4 -0
- data/README.md +15 -0
- data/Rakefile +2 -0
- data/google-api-client.gemspec +3 -1
- data/lib/google/api_client.rb +23 -13
- data/lib/google/api_client/version.rb +1 -1
- data/spec/spec_helper.rb +2 -0
- metadata +64 -36
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
ZGJlZTRjNzY4NzY0ZjU5NGY4N2EwYTM0Yzg1OTk1MzY1MDhiOGY2OA==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 32e794e627d99cf204a2c62e8479fb6c62fba10b
|
4
|
+
data.tar.gz: 617cc09c435456fbcde61e58499538f787125c21
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
OWQzN2Q1MzVhZTNkM2M1MTkyYmNlMWY4ZGI4MTMyMzA3ZDI2YzQ5ZmYyZGZm
|
11
|
-
NTkwNTNiNGJiNzMxN2U2NmE4YWFjYWFjNGRhYmEzMmUxMmY3NGE=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MmYxMjg2MWYxOTg5ODExYWFhOGQxYmRmZDI4ZGVmOTkxZDExNzllYjViNzE3
|
14
|
-
ZDIzYTc0ZjEzYWU1M2I2YTc4MjdlZTVjOGNjMDY1NjEwZDJkMjYyNzc5Yzhi
|
15
|
-
OTkyMWQ3NzJjMjljOWQ2OTY1Nzk1ODFmMzU0NmM4MDA0MzdiMTQ=
|
6
|
+
metadata.gz: 34e2ea99e0ef2ae2de28181077a9204a937b8bf0a25971f04584b06f5ab347d28d358623baf2d49dc8dc5808d5c459263fb9662cf3c6ae5ea93ca7c82ae78aa6
|
7
|
+
data.tar.gz: 15887c8abbc838a33cbfa560cfeb3d996e54c0b9f949c073daf9d15764514aa733a8f038f37622b01579ad64ac8ad30814ac7915606b5999ee98ed530b157a92
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -104,6 +104,19 @@ Credentials can be managed at the connection level, as shown, or supplied on a p
|
|
104
104
|
|
105
105
|
For server-to-server interactions, like those between a web application and Google Cloud Storage, Prediction, or BigQuery APIs, use service accounts.
|
106
106
|
|
107
|
+
As of version 0.8.3, service accounts can be configured using
|
108
|
+
[Application Default Credentials][1], which rely on the credentials being
|
109
|
+
available in a well-known location. If the credentials are not present
|
110
|
+
and it's being used on a Compute Engine VM, it will use the VM's default credentials.
|
111
|
+
|
112
|
+
```ruby
|
113
|
+
client.authorization = :google_app_default # in a later version, this will become the default
|
114
|
+
client.authorization.fetch_access_token!
|
115
|
+
client.execute(...)
|
116
|
+
```
|
117
|
+
|
118
|
+
This is simpler API to use than in previous versions, although that is still available:
|
119
|
+
|
107
120
|
```ruby
|
108
121
|
key = Google::APIClient::KeyUtils.load_from_pkcs12('client.p12', 'notasecret')
|
109
122
|
client.authorization = Signet::OAuth2::Client.new(
|
@@ -201,3 +214,5 @@ See the full list of [samples on Github](https://github.com/google/google-api-ru
|
|
201
214
|
## Support
|
202
215
|
|
203
216
|
Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
217
|
+
|
218
|
+
[1]: https://developers.google.com/accounts/docs/application-default-credentials
|
data/Rakefile
CHANGED
data/google-api-client.gemspec
CHANGED
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
|
|
26
26
|
s.add_runtime_dependency 'addressable', '~> 2.3'
|
27
27
|
s.add_runtime_dependency 'signet', '~> 0.6'
|
28
28
|
s.add_runtime_dependency 'faraday', '~> 0.9'
|
29
|
+
s.add_runtime_dependency 'googleauth', '~> 0.3'
|
29
30
|
s.add_runtime_dependency 'multi_json', '~> 1.10'
|
30
31
|
s.add_runtime_dependency 'autoparse', "~> 0.3"
|
31
32
|
s.add_runtime_dependency 'extlib', '~> 0.9'
|
@@ -37,5 +38,6 @@ Gem::Specification.new do |s|
|
|
37
38
|
s.add_development_dependency 'yard', '~> 0.8'
|
38
39
|
s.add_development_dependency 'rspec', '~> 3.1'
|
39
40
|
s.add_development_dependency 'kramdown', '~> 1.5'
|
40
|
-
s.add_development_dependency 'simplecov', '~> 0.9'
|
41
|
+
s.add_development_dependency 'simplecov', '~> 0.9.2'
|
42
|
+
s.add_development_dependency 'coveralls', '~> 0.7.11'
|
41
43
|
end
|
data/lib/google/api_client.rb
CHANGED
@@ -41,7 +41,7 @@ module Google
|
|
41
41
|
# This class manages APIs communication.
|
42
42
|
class APIClient
|
43
43
|
include Google::APIClient::Logging
|
44
|
-
|
44
|
+
|
45
45
|
##
|
46
46
|
# Creates a new Google API client.
|
47
47
|
#
|
@@ -54,13 +54,16 @@ module Google
|
|
54
54
|
# <li><code>:two_legged_oauth_1</code></li>
|
55
55
|
# <li><code>:oauth_1</code></li>
|
56
56
|
# <li><code>:oauth_2</code></li>
|
57
|
+
# <li><code>:google_app_default</code></li>
|
57
58
|
# </ul>
|
58
59
|
# @option options [Boolean] :auto_refresh_token (true)
|
59
60
|
# The setting that controls whether or not the api client attempts to
|
60
|
-
# refresh authorization when a 401 is hit in #execute. If the token does
|
61
|
+
# refresh authorization when a 401 is hit in #execute. If the token does
|
61
62
|
# not support it, this option is ignored.
|
62
63
|
# @option options [String] :application_name
|
63
64
|
# The name of the application using the client.
|
65
|
+
# @option options [String | Array | nil] :scope
|
66
|
+
# The scope(s) used when using google application default credentials
|
64
67
|
# @option options [String] :application_version
|
65
68
|
# The version number of the application using the client.
|
66
69
|
# @option options [String] :user_agent
|
@@ -83,7 +86,7 @@ module Google
|
|
83
86
|
# Pass through of options to set on the Faraday connection
|
84
87
|
def initialize(options={})
|
85
88
|
logger.debug { "#{self.class} - Initializing client with options #{options}" }
|
86
|
-
|
89
|
+
|
87
90
|
# Normalize key to String to allow indifferent access.
|
88
91
|
options = options.inject({}) do |accu, (key, value)|
|
89
92
|
accu[key.to_sym] = value
|
@@ -114,6 +117,9 @@ module Google
|
|
114
117
|
# default authentication mechanisms.
|
115
118
|
self.authorization =
|
116
119
|
options.key?(:authorization) ? options[:authorization] : :oauth_2
|
120
|
+
if !options['scope'].nil? and self.authorization.respond_to?(:scope=)
|
121
|
+
self.authorization.scope = options['scope']
|
122
|
+
end
|
117
123
|
self.auto_refresh_token = options.fetch(:auto_refresh_token) { true }
|
118
124
|
self.key = options[:key]
|
119
125
|
self.user_ip = options[:user_ip]
|
@@ -174,6 +180,10 @@ module Google
|
|
174
180
|
:client_credential_secret => nil,
|
175
181
|
:two_legged => true
|
176
182
|
)
|
183
|
+
when :google_app_default
|
184
|
+
require 'googleauth'
|
185
|
+
new_authorization = Google::Auth.get_application_default
|
186
|
+
|
177
187
|
when :oauth_2
|
178
188
|
require 'signet/oauth_2/client'
|
179
189
|
# NOTE: Do not rely on this default value, as it may change
|
@@ -204,7 +214,7 @@ module Google
|
|
204
214
|
|
205
215
|
##
|
206
216
|
# The setting that controls whether or not the api client attempts to
|
207
|
-
# refresh authorization when a 401 is hit in #execute.
|
217
|
+
# refresh authorization when a 401 is hit in #execute.
|
208
218
|
#
|
209
219
|
# @return [Boolean]
|
210
220
|
attr_accessor :auto_refresh_token
|
@@ -251,7 +261,7 @@ module Google
|
|
251
261
|
|
252
262
|
##
|
253
263
|
# Number of times to retry on recoverable errors
|
254
|
-
#
|
264
|
+
#
|
255
265
|
# @return [FixNum]
|
256
266
|
# Number of retries
|
257
267
|
attr_accessor :retries
|
@@ -461,7 +471,7 @@ module Google
|
|
461
471
|
# Verifies an ID token against a server certificate. Used to ensure that
|
462
472
|
# an ID token supplied by an untrusted client-side mechanism is valid.
|
463
473
|
# Raises an error if the token is invalid or missing.
|
464
|
-
#
|
474
|
+
#
|
465
475
|
# @deprecated Use the google-id-token gem for verifying JWTs
|
466
476
|
def verify_id_token!
|
467
477
|
require 'jwt'
|
@@ -570,7 +580,7 @@ module Google
|
|
570
580
|
# - (TrueClass, FalseClass) :authenticated (default: true) -
|
571
581
|
# `true` if the request must be signed or somehow
|
572
582
|
# authenticated, `false` otherwise.
|
573
|
-
# - (TrueClass, FalseClass) :gzip (default: true) -
|
583
|
+
# - (TrueClass, FalseClass) :gzip (default: true) -
|
574
584
|
# `true` if gzip enabled, `false` otherwise.
|
575
585
|
# - (FixNum) :retries -
|
576
586
|
# # of times to retry on recoverable errors
|
@@ -610,7 +620,7 @@ module Google
|
|
610
620
|
options.update(params.shift) if params.size > 0
|
611
621
|
request = self.generate_request(options)
|
612
622
|
end
|
613
|
-
|
623
|
+
|
614
624
|
request.headers['User-Agent'] ||= '' + self.user_agent unless self.user_agent.nil?
|
615
625
|
request.headers['Accept-Encoding'] ||= 'gzip' unless options[:gzip] == false
|
616
626
|
request.headers['Content-Type'] ||= ''
|
@@ -619,11 +629,11 @@ module Google
|
|
619
629
|
|
620
630
|
connection = options[:connection] || self.connection
|
621
631
|
request.authorization = options[:authorization] || self.authorization unless options[:authenticated] == false
|
622
|
-
|
632
|
+
|
623
633
|
tries = 1 + (options[:retries] || self.retries)
|
624
634
|
attempt = 0
|
625
635
|
|
626
|
-
Retriable.retriable :tries => tries,
|
636
|
+
Retriable.retriable :tries => tries,
|
627
637
|
:on => [TransmissionError],
|
628
638
|
:on_retry => client_error_handler,
|
629
639
|
:interval => lambda {|attempts| (2 ** attempts) + rand} do
|
@@ -632,7 +642,7 @@ module Google
|
|
632
642
|
# This 2nd level retriable only catches auth errors, and supports 1 retry, which allows
|
633
643
|
# auth to be re-attempted without having to retry all sorts of other failures like
|
634
644
|
# NotFound, etc
|
635
|
-
Retriable.retriable :tries => ((expired_auth_retry || tries > 1) && attempt == 1) ? 2 : 1,
|
645
|
+
Retriable.retriable :tries => ((expired_auth_retry || tries > 1) && attempt == 1) ? 2 : 1,
|
636
646
|
:on => [AuthorizationError],
|
637
647
|
:on_retry => authorization_error_handler(request.authorization) do
|
638
648
|
result = request.send(connection, true)
|
@@ -699,7 +709,7 @@ module Google
|
|
699
709
|
end
|
700
710
|
return Addressable::Template.new(@base_uri + template).expand(mapping)
|
701
711
|
end
|
702
|
-
|
712
|
+
|
703
713
|
|
704
714
|
##
|
705
715
|
# Returns on proc for special processing of retries for authorization errors
|
@@ -709,7 +719,7 @@ module Google
|
|
709
719
|
# OAuth 2 credentials
|
710
720
|
# @return [Proc]
|
711
721
|
def authorization_error_handler(authorization)
|
712
|
-
can_refresh = authorization.respond_to?(:refresh_token) && auto_refresh_token
|
722
|
+
can_refresh = authorization.respond_to?(:refresh_token) && auto_refresh_token
|
713
723
|
Proc.new do |exception, tries|
|
714
724
|
next unless exception.kind_of?(AuthorizationError)
|
715
725
|
if can_refresh
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-api-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bob Aman
|
@@ -9,204 +9,232 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-03-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: addressable
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - ~>
|
18
|
+
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '2.3'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- - ~>
|
25
|
+
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '2.3'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: signet
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- - ~>
|
32
|
+
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '0.6'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- - ~>
|
39
|
+
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '0.6'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: faraday
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- - ~>
|
46
|
+
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '0.9'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- - ~>
|
53
|
+
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '0.9'
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: googleauth
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0.3'
|
63
|
+
type: :runtime
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0.3'
|
56
70
|
- !ruby/object:Gem::Dependency
|
57
71
|
name: multi_json
|
58
72
|
requirement: !ruby/object:Gem::Requirement
|
59
73
|
requirements:
|
60
|
-
- - ~>
|
74
|
+
- - "~>"
|
61
75
|
- !ruby/object:Gem::Version
|
62
76
|
version: '1.10'
|
63
77
|
type: :runtime
|
64
78
|
prerelease: false
|
65
79
|
version_requirements: !ruby/object:Gem::Requirement
|
66
80
|
requirements:
|
67
|
-
- - ~>
|
81
|
+
- - "~>"
|
68
82
|
- !ruby/object:Gem::Version
|
69
83
|
version: '1.10'
|
70
84
|
- !ruby/object:Gem::Dependency
|
71
85
|
name: autoparse
|
72
86
|
requirement: !ruby/object:Gem::Requirement
|
73
87
|
requirements:
|
74
|
-
- - ~>
|
88
|
+
- - "~>"
|
75
89
|
- !ruby/object:Gem::Version
|
76
90
|
version: '0.3'
|
77
91
|
type: :runtime
|
78
92
|
prerelease: false
|
79
93
|
version_requirements: !ruby/object:Gem::Requirement
|
80
94
|
requirements:
|
81
|
-
- - ~>
|
95
|
+
- - "~>"
|
82
96
|
- !ruby/object:Gem::Version
|
83
97
|
version: '0.3'
|
84
98
|
- !ruby/object:Gem::Dependency
|
85
99
|
name: extlib
|
86
100
|
requirement: !ruby/object:Gem::Requirement
|
87
101
|
requirements:
|
88
|
-
- - ~>
|
102
|
+
- - "~>"
|
89
103
|
- !ruby/object:Gem::Version
|
90
104
|
version: '0.9'
|
91
105
|
type: :runtime
|
92
106
|
prerelease: false
|
93
107
|
version_requirements: !ruby/object:Gem::Requirement
|
94
108
|
requirements:
|
95
|
-
- - ~>
|
109
|
+
- - "~>"
|
96
110
|
- !ruby/object:Gem::Version
|
97
111
|
version: '0.9'
|
98
112
|
- !ruby/object:Gem::Dependency
|
99
113
|
name: launchy
|
100
114
|
requirement: !ruby/object:Gem::Requirement
|
101
115
|
requirements:
|
102
|
-
- - ~>
|
116
|
+
- - "~>"
|
103
117
|
- !ruby/object:Gem::Version
|
104
118
|
version: '2.4'
|
105
119
|
type: :runtime
|
106
120
|
prerelease: false
|
107
121
|
version_requirements: !ruby/object:Gem::Requirement
|
108
122
|
requirements:
|
109
|
-
- - ~>
|
123
|
+
- - "~>"
|
110
124
|
- !ruby/object:Gem::Version
|
111
125
|
version: '2.4'
|
112
126
|
- !ruby/object:Gem::Dependency
|
113
127
|
name: retriable
|
114
128
|
requirement: !ruby/object:Gem::Requirement
|
115
129
|
requirements:
|
116
|
-
- - ~>
|
130
|
+
- - "~>"
|
117
131
|
- !ruby/object:Gem::Version
|
118
132
|
version: '1.4'
|
119
133
|
type: :runtime
|
120
134
|
prerelease: false
|
121
135
|
version_requirements: !ruby/object:Gem::Requirement
|
122
136
|
requirements:
|
123
|
-
- - ~>
|
137
|
+
- - "~>"
|
124
138
|
- !ruby/object:Gem::Version
|
125
139
|
version: '1.4'
|
126
140
|
- !ruby/object:Gem::Dependency
|
127
141
|
name: activesupport
|
128
142
|
requirement: !ruby/object:Gem::Requirement
|
129
143
|
requirements:
|
130
|
-
- -
|
144
|
+
- - ">="
|
131
145
|
- !ruby/object:Gem::Version
|
132
146
|
version: '3.2'
|
133
147
|
type: :runtime
|
134
148
|
prerelease: false
|
135
149
|
version_requirements: !ruby/object:Gem::Requirement
|
136
150
|
requirements:
|
137
|
-
- -
|
151
|
+
- - ">="
|
138
152
|
- !ruby/object:Gem::Version
|
139
153
|
version: '3.2'
|
140
154
|
- !ruby/object:Gem::Dependency
|
141
155
|
name: rake
|
142
156
|
requirement: !ruby/object:Gem::Requirement
|
143
157
|
requirements:
|
144
|
-
- - ~>
|
158
|
+
- - "~>"
|
145
159
|
- !ruby/object:Gem::Version
|
146
160
|
version: '10.0'
|
147
161
|
type: :development
|
148
162
|
prerelease: false
|
149
163
|
version_requirements: !ruby/object:Gem::Requirement
|
150
164
|
requirements:
|
151
|
-
- - ~>
|
165
|
+
- - "~>"
|
152
166
|
- !ruby/object:Gem::Version
|
153
167
|
version: '10.0'
|
154
168
|
- !ruby/object:Gem::Dependency
|
155
169
|
name: yard
|
156
170
|
requirement: !ruby/object:Gem::Requirement
|
157
171
|
requirements:
|
158
|
-
- - ~>
|
172
|
+
- - "~>"
|
159
173
|
- !ruby/object:Gem::Version
|
160
174
|
version: '0.8'
|
161
175
|
type: :development
|
162
176
|
prerelease: false
|
163
177
|
version_requirements: !ruby/object:Gem::Requirement
|
164
178
|
requirements:
|
165
|
-
- - ~>
|
179
|
+
- - "~>"
|
166
180
|
- !ruby/object:Gem::Version
|
167
181
|
version: '0.8'
|
168
182
|
- !ruby/object:Gem::Dependency
|
169
183
|
name: rspec
|
170
184
|
requirement: !ruby/object:Gem::Requirement
|
171
185
|
requirements:
|
172
|
-
- - ~>
|
186
|
+
- - "~>"
|
173
187
|
- !ruby/object:Gem::Version
|
174
188
|
version: '3.1'
|
175
189
|
type: :development
|
176
190
|
prerelease: false
|
177
191
|
version_requirements: !ruby/object:Gem::Requirement
|
178
192
|
requirements:
|
179
|
-
- - ~>
|
193
|
+
- - "~>"
|
180
194
|
- !ruby/object:Gem::Version
|
181
195
|
version: '3.1'
|
182
196
|
- !ruby/object:Gem::Dependency
|
183
197
|
name: kramdown
|
184
198
|
requirement: !ruby/object:Gem::Requirement
|
185
199
|
requirements:
|
186
|
-
- - ~>
|
200
|
+
- - "~>"
|
187
201
|
- !ruby/object:Gem::Version
|
188
202
|
version: '1.5'
|
189
203
|
type: :development
|
190
204
|
prerelease: false
|
191
205
|
version_requirements: !ruby/object:Gem::Requirement
|
192
206
|
requirements:
|
193
|
-
- - ~>
|
207
|
+
- - "~>"
|
194
208
|
- !ruby/object:Gem::Version
|
195
209
|
version: '1.5'
|
196
210
|
- !ruby/object:Gem::Dependency
|
197
211
|
name: simplecov
|
198
212
|
requirement: !ruby/object:Gem::Requirement
|
199
213
|
requirements:
|
200
|
-
- - ~>
|
214
|
+
- - "~>"
|
201
215
|
- !ruby/object:Gem::Version
|
202
|
-
version:
|
216
|
+
version: 0.9.2
|
203
217
|
type: :development
|
204
218
|
prerelease: false
|
205
219
|
version_requirements: !ruby/object:Gem::Requirement
|
206
220
|
requirements:
|
207
|
-
- - ~>
|
221
|
+
- - "~>"
|
208
222
|
- !ruby/object:Gem::Version
|
209
|
-
version:
|
223
|
+
version: 0.9.2
|
224
|
+
- !ruby/object:Gem::Dependency
|
225
|
+
name: coveralls
|
226
|
+
requirement: !ruby/object:Gem::Requirement
|
227
|
+
requirements:
|
228
|
+
- - "~>"
|
229
|
+
- !ruby/object:Gem::Version
|
230
|
+
version: 0.7.11
|
231
|
+
type: :development
|
232
|
+
prerelease: false
|
233
|
+
version_requirements: !ruby/object:Gem::Requirement
|
234
|
+
requirements:
|
235
|
+
- - "~>"
|
236
|
+
- !ruby/object:Gem::Version
|
237
|
+
version: 0.7.11
|
210
238
|
description: The Google API Ruby Client makes it trivial to discover and access supported
|
211
239
|
APIs.
|
212
240
|
email: sbazyl@google.com
|
@@ -281,23 +309,23 @@ licenses:
|
|
281
309
|
metadata: {}
|
282
310
|
post_install_message:
|
283
311
|
rdoc_options:
|
284
|
-
- --main
|
312
|
+
- "--main"
|
285
313
|
- README.md
|
286
314
|
require_paths:
|
287
315
|
- lib
|
288
316
|
required_ruby_version: !ruby/object:Gem::Requirement
|
289
317
|
requirements:
|
290
|
-
- -
|
318
|
+
- - ">="
|
291
319
|
- !ruby/object:Gem::Version
|
292
320
|
version: '0'
|
293
321
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
294
322
|
requirements:
|
295
|
-
- -
|
323
|
+
- - ">="
|
296
324
|
- !ruby/object:Gem::Version
|
297
325
|
version: 1.3.5
|
298
326
|
requirements: []
|
299
327
|
rubyforge_project:
|
300
|
-
rubygems_version: 2.
|
328
|
+
rubygems_version: 2.4.3
|
301
329
|
signing_key:
|
302
330
|
specification_version: 4
|
303
331
|
summary: The Google API Ruby Client makes it trivial to discover and access Google's
|