signet 0.6.0 → 0.6.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,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ODJiNTkyYjQ1OGRkNDY2Y2RjNDZiY2U1YjJhNWI3MWFmNmU5OTNiNw==
5
- data.tar.gz: !binary |-
6
- MGUyODYzMjdmODI4Y2U4YjE5YTMyYzY2ZDU1ZWE3ZGFlYjZmNjRlMw==
2
+ SHA1:
3
+ metadata.gz: 54a525db784c45a39a547b947ad806222183aafa
4
+ data.tar.gz: f2e9672239bacebf70d02803f0a072234095ea96
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- YTIyZGY5MDFjYmM4OWQwOWQzNTBjM2ZmNTNiNjg2ODBlYzAzMTdkOWQ4MWRh
10
- OGQ4NTcxMjhkMGYxZmQyZGVhZTk5YzI3N2IyN2JmYjM0OTIyYTc2Yzc2ZTAw
11
- MmRiZDRjZjM2NzFkMjdhYTEyNzQ5YTBlMjljZGU5NDA0YzRjZTc=
12
- data.tar.gz: !binary |-
13
- MWY0ZWJhNDg2MWQ1YjlkODQ5ZmQzMzBjNmRjZWVhYjA5N2JkZjU5YjRkMjU2
14
- ZTBkNzNmZGQ5NDU4YjgyZjMxM2FiODdhZjM3YjE4OWZkYzBhZTk2ZGMxZWM5
15
- YmE4YzU2YzI2M2E0NGIzZDI5ODMzYWJhMzM5MjkzMmQ5MjM5NTM=
6
+ metadata.gz: f32cda6094a605750a1b1743e0cb1cca838e2d452ddf62d06601321cd0f8fed9910d29966beb1b9208401cb46e7be4e7ce22de8eb80e58ed6d95bc8e96e40821
7
+ data.tar.gz: f6fb4fdf4853079697938fbf6319c91b4b6d0327551ab68f00260c22070ee6efcdbba0c4d620d6b76ebfb1382d36269e327a54a763952e5ac57a848398387f49
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # 0.6.1
2
+ * Fix language warnings for unused & shadowed variables ((@blowmage)[])
3
+ * Update SSL cert path for OSX ((@gambaroff)[])
4
+ * Update JWT library and fix broken tests
5
+ * Fix incorrect parameter name in OAuth2 client docs ((@samuelreh)[])
6
+ * Fix symbolization of URL parameter keys ((@swifthand)[])
7
+
1
8
  # 0.6.0
2
9
 
3
10
  * Drop support for ruby versions < 1.9.3
data/lib/signet.rb CHANGED
@@ -29,7 +29,6 @@ module Signet #:nodoc:
29
29
  # Combine the above production rules to find valid auth-param pairs.
30
30
  auth_param = /((?:#{token})\s*=\s*(?:#{d_qs}|#{s_qs}|#{token}))/
31
31
  auth_param_pairs = []
32
- position = 0
33
32
  last_match = nil
34
33
  remainder = auth_param_string
35
34
  # Iterate over the string, consuming pair matches as we go. Verify that
@@ -592,7 +592,7 @@ module Signet
592
592
  :client_credential_secret => 'Client credential secret'
593
593
  }
594
594
  # Make sure all required state is set
595
- verifications.each do |(key, value)|
595
+ verifications.each do |(key, _value)|
596
596
  unless self.send(key)
597
597
  raise ArgumentError, "#{key} was not set."
598
598
  end
@@ -748,7 +748,7 @@ module Signet
748
748
  :temporary_credential_secret => 'Temporary credential secret'
749
749
  }
750
750
  # Make sure all required state is set
751
- verifications.each do |(key, value)|
751
+ verifications.each do |(key, _value)|
752
752
  unless self.send(key)
753
753
  raise ArgumentError, "#{key} was not set."
754
754
  end
@@ -912,7 +912,7 @@ module Signet
912
912
  )
913
913
  end
914
914
  # Make sure all required state is set
915
- verifications.each do |(key, value)|
915
+ verifications.each do |(key, _value)|
916
916
  unless self.send(key)
917
917
  raise ArgumentError, "#{key} was not set."
918
918
  end
@@ -979,7 +979,7 @@ module Signet
979
979
  content_type = content_type.split(';', 2).first if content_type.index(';')
980
980
  if request.method == :post && content_type == 'application/x-www-form-urlencoded'
981
981
  # Serializes the body in case a hash/array was passed. Noop if already string like
982
- encoder = Faraday::Request::UrlEncoded.new(lambda { |env| })
982
+ encoder = Faraday::Request::UrlEncoded.new(lambda { |_env| })
983
983
  encoder.call(env)
984
984
  request.body = env[:body]
985
985
 
@@ -250,7 +250,7 @@ module Signet
250
250
  )
251
251
  }
252
252
  }
253
- verifications.each do |(key, value)|
253
+ verifications.each do |(key, _value)|
254
254
  raise ArgumentError, "#{key} was not set." unless self.send(key)
255
255
  end
256
256
 
@@ -321,7 +321,7 @@ module Signet
321
321
  :verifier =>
322
322
  lambda {|x| 'Verifier' }
323
323
  }
324
- verifications.each do |(key, value)|
324
+ verifications.each do |(key, _value)|
325
325
  unless self.send(key)
326
326
  raise ArgumentError, "#{key} was not set."
327
327
  end
@@ -405,7 +405,7 @@ module Signet
405
405
  )
406
406
  end
407
407
  # Make sure all required state is set
408
- verifications.each do |(key, value)|
408
+ verifications.each do |(key, _value)|
409
409
  unless self.send(key)
410
410
  raise ArgumentError, "#{key} was not set."
411
411
  end
@@ -77,9 +77,9 @@ module Signet
77
77
  #
78
78
  # @example
79
79
  # client = Signet::OAuth2::Client.new(
80
- # :authorization_endpoint_uri =>
80
+ # :authorization_uri =>
81
81
  # 'https://example.server.com/authorization',
82
- # :token_endpoint_uri =>
82
+ # :token_credential_uri =>
83
83
  # 'https://example.server.com/token',
84
84
  # :client_id => 'anonymous',
85
85
  # :client_secret => 'anonymous',
@@ -89,6 +89,22 @@ module Signet
89
89
  #
90
90
  # @see Signet::OAuth2::Client#update!
91
91
  def initialize(options={})
92
+ @authorization_uri = nil
93
+ @client_id = nil
94
+ @client_secret = nil
95
+ @code = nil
96
+ @expires_at = nil
97
+ @expires_in = nil
98
+ @issued_at = nil
99
+ @issued_at = nil
100
+ @issuer = nil
101
+ @password = nil
102
+ @principal = nil
103
+ @redirect_uri = nil
104
+ @scope = nil
105
+ @state = nil
106
+ @token_credential_uri = nil
107
+ @username = nil
92
108
  self.update!(options)
93
109
  end
94
110
 
@@ -259,6 +275,9 @@ module Signet
259
275
  options[:state] = self.state unless options[:state]
260
276
  options.merge!(self.additional_parameters.merge(options[:additional_parameters] || {}))
261
277
  options.delete(:additional_parameters)
278
+ options = Hash[options.map do |key, option|
279
+ [key.to_s, option]
280
+ end]
262
281
  uri = Addressable::URI.parse(
263
282
  ::Signet::OAuth2.generate_authorization_uri(
264
283
  @authorization_uri, options
@@ -297,7 +316,7 @@ module Signet
297
316
  @token_credential_uri = coerce_uri(new_token_credential_uri)
298
317
  end
299
318
 
300
- # Addressable expects URIs formatted as hashes to come in with symbols as keys.
319
+ # Addressable expects URIs formatted as hashes to come in with symbols as keys.
301
320
  # Returns nil implicitly for the nil case.
302
321
  def coerce_uri(incoming_uri)
303
322
  if incoming_uri.is_a? Hash
@@ -690,8 +709,8 @@ module Signet
690
709
  # omitted.
691
710
  #
692
711
  # @return [String] The decoded ID token.
693
- def decoded_id_token(public_key=nil)
694
- payload, header = JWT.decode(self.id_token, public_key, !!public_key)
712
+ def decoded_id_token(public_key=nil, options = {})
713
+ payload, _header = JWT.decode(self.id_token, public_key, !!public_key, options)
695
714
  if !payload.has_key?('aud')
696
715
  raise Signet::UnsafeOperationError, 'No ID token audience declared.'
697
716
  elsif payload['aud'] != self.client_id
@@ -832,11 +851,11 @@ module Signet
832
851
  skew = options[:skew] || 60
833
852
  assertion = {
834
853
  "iss" => self.issuer,
835
- "scope" => self.scope.join(' '),
836
854
  "aud" => self.audience,
837
855
  "exp" => (now + self.expiry).to_i,
838
856
  "iat" => (now - skew).to_i
839
857
  }
858
+ assertion['scope'] = self.scope.join(' ') unless self.scope.nil?
840
859
  assertion['prn'] = self.person unless self.person.nil?
841
860
  assertion['sub'] = self.sub unless self.sub.nil?
842
861
  JWT.encode(assertion, self.signing_key, self.signing_algorithm)
@@ -1130,7 +1149,7 @@ module Signet
1130
1149
  def uri_is_oob?(uri)
1131
1150
  return uri.to_s == 'urn:ietf:wg:oauth:2.0:oob' || uri.to_s == 'oob'
1132
1151
  end
1133
-
1152
+
1134
1153
  # Convert all keys in this hash (nested) to symbols for uniform retrieval
1135
1154
  def recursive_hash_normalize_keys(val)
1136
1155
  if val.is_a? Hash
@@ -1141,10 +1160,10 @@ module Signet
1141
1160
  end
1142
1161
 
1143
1162
  def deep_hash_normalize(old_hash)
1144
- old_hash.inject(formatted_hash={}) do |formatted_hash,(k,v)|
1163
+ old_hash.inject(formatted_hash={}) do |hash,(k,v)|
1145
1164
 
1146
- formatted_hash[k.to_sym] = recursive_hash_normalize_keys(v)
1147
- formatted_hash
1165
+ hash[k.to_sym] = recursive_hash_normalize_keys(v)
1166
+ hash
1148
1167
  end
1149
1168
 
1150
1169
  formatted_hash
@@ -16,6 +16,7 @@ if (!ENV['SSL_CERT_FILE'] || !File.exist?(ENV['SSL_CERT_FILE'])) &&
16
16
  '/usr/ssl/certs/ca-certificates.crt',
17
17
  '/usr/share/curl/curl-ca-bundle.crt',
18
18
  '/etc/ssl/certs/ca-certificates.crt',
19
+ '/etc/openssl/cert.pem',
19
20
  '/etc/pki/tls/cert.pem',
20
21
  '/etc/pki/CA/cacert.pem',
21
22
  'C:\Windows\curl-ca-bundle.crt',
@@ -18,7 +18,7 @@ unless defined? Signet::VERSION
18
18
  module VERSION
19
19
  MAJOR = 0
20
20
  MINOR = 6
21
- TINY = 0
21
+ TINY = 1
22
22
 
23
23
  STRING = [MAJOR, MINOR, TINY].join('.')
24
24
  end
data/signet.gemspec CHANGED
@@ -26,7 +26,7 @@ Gem::Specification.new do |s|
26
26
  s.add_runtime_dependency 'addressable', '~> 2.3'
27
27
  s.add_runtime_dependency 'faraday', '~> 0.9'
28
28
  s.add_runtime_dependency 'multi_json', '~> 1.10'
29
- s.add_runtime_dependency 'jwt', '~> 1.0'
29
+ s.add_runtime_dependency 'jwt', '~> 1.5'
30
30
  s.add_runtime_dependency 'extlib', '~> 0.9'
31
31
 
32
32
  s.add_development_dependency 'rake', '~> 10.0'
@@ -763,7 +763,7 @@ JSON
763
763
  )
764
764
  expect(@client.access_token).to eq '12345'
765
765
  expect(@client.refresh_token).to eq '54321'
766
- expect(@client.decoded_id_token).to eq ({
766
+ expect(@client.decoded_id_token(nil, :verify_expiration => false)).to eq ({
767
767
  "token_hash" => "tghD9J7n8V0N2vcw6eMijg",
768
768
  "id" => "12345",
769
769
  "aud" => "client-12345",
@@ -806,7 +806,7 @@ JSON
806
806
  expect(@client.refresh_token).to eq '54321'
807
807
  expect(@client.expires_in).to eq 3600
808
808
  expect(lambda do
809
- @client.decoded_id_token
809
+ @client.decoded_id_token(nil, :verify_expiration => false)
810
810
  end).to raise_error(Signet::UnsafeOperationError)
811
811
  stubs.verify_stubbed_calls
812
812
  end
@@ -840,7 +840,7 @@ JSON
840
840
  expect(@client.refresh_token).to eq '54321'
841
841
  expect(@client.expires_in).to eq 3600
842
842
  expect(lambda do
843
- @client.decoded_id_token
843
+ @client.decoded_id_token(nil, :verify_expiration => false)
844
844
  end).to raise_error(Signet::UnsafeOperationError)
845
845
  stubs.verify_stubbed_calls
846
846
  end
@@ -938,7 +938,7 @@ describe Signet::OAuth2::Client, 'configured with custom parameters' do
938
938
 
939
939
  it 'should allow custom parameters to be updated' do
940
940
  @client.update!(:additional_parameters => {:type => 'new_type'})
941
- @client.additional_parameters.should == { :type => 'new_type'}
941
+ expect(@client.additional_parameters).to eq ({ :type => 'new_type'})
942
942
  end
943
943
 
944
944
  it 'should use custom parameters when generating authorization_uri' do
@@ -951,14 +951,14 @@ describe Signet::OAuth2::Client, 'configured with custom parameters' do
951
951
  end
952
952
 
953
953
  it 'should merge new authorization_uri custom parameters' do
954
- @client.authorization_uri(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).query_values.should == {"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "new_param"=>"new_val", "response_type"=>"code","redirect_uri"=>"https://example.client.com/callback", "type"=>"new_type"}
954
+ expect(@client.authorization_uri(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).query_values).to eql({"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "new_param"=>"new_val", "response_type"=>"code","redirect_uri"=>"https://example.client.com/callback", "type"=>"new_type"})
955
955
  end
956
956
 
957
957
  it 'should merge new generate_access_token_request custom parameters' do
958
958
  @client.update!(:code=>'12345')
959
959
  body = @client.generate_access_token_request(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).body
960
- body.should include("type=new_type")
961
- body.should include("new_param=new_val")
960
+ expect(body).to include("type=new_type")
961
+ expect(body).to include("new_param=new_val")
962
962
  end
963
963
  end
964
964
 
@@ -977,32 +977,32 @@ describe Signet::OAuth2::Client, 'configured with custom parameters' do
977
977
  # Also tests Addressable's output.
978
978
  # Note: The only changes made here are to testing the **INTERNAL** representation of options.
979
979
  it 'should allow custom parameters to be set on init' do
980
- @client.additional_parameters.should == { :type => 'web_server'}
980
+ expect(@client.additional_parameters).to eq ({ :type => 'web_server'})
981
981
  end
982
982
 
983
983
  it 'should allow custom parameters to be updated' do
984
984
  @client.update!(:additional_parameters => {'type' => 'new_type'})
985
- @client.additional_parameters.should == { :type => 'new_type'}
985
+ expect(@client.additional_parameters).to eql ({ :type => 'new_type'})
986
986
  end
987
987
 
988
988
  it 'should use custom parameters when generating authorization_uri' do
989
- @client.authorization_uri().query_values.should == {"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "redirect_uri"=>"https://example.client.com/callback", "response_type"=>"code", "type"=>"web_server"}
989
+ expect(@client.authorization_uri().query_values).to eq ({"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "redirect_uri"=>"https://example.client.com/callback", "response_type"=>"code", "type"=>"web_server"})
990
990
  end
991
991
 
992
992
  it 'should have the correct authorization_uri' do
993
- @client.authorization_uri.host.should == 'example.com'
994
- @client.authorization_uri.path.should == '/authorize'
993
+ expect(@client.authorization_uri.host).to eq 'example.com'
994
+ expect(@client.authorization_uri.path).to eq '/authorize'
995
995
  end
996
996
 
997
997
  it 'should merge new authorization_uri custom parameters' do
998
- @client.authorization_uri(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).query_values.should == {"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "new_param"=>"new_val", "response_type"=>"code","redirect_uri"=>"https://example.client.com/callback", "type"=>"new_type"}
998
+ expect(@client.authorization_uri(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).query_values).to eq ({"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "new_param"=>"new_val", "response_type"=>"code","redirect_uri"=>"https://example.client.com/callback", "type"=>"new_type"})
999
999
  end
1000
1000
 
1001
1001
  it 'should merge new generate_access_token_request custom parameters' do
1002
1002
  @client.update!(:code=>'12345')
1003
1003
  body = @client.generate_access_token_request(:additional_parameters => {'type' => 'new_type', 'new_param' => 'new_val'}).body
1004
- body.should include("type=new_type")
1005
- body.should include("new_param=new_val")
1004
+ expect(body).to include("type=new_type")
1005
+ expect(body).to include("new_param=new_val")
1006
1006
  end
1007
1007
  end
1008
1008
 
@@ -1018,21 +1018,21 @@ describe Signet::OAuth2::Client, 'configured with custom parameters a la JSON.lo
1018
1018
  end
1019
1019
 
1020
1020
  it 'should allow custom parameters to be set on init' do
1021
- @client.additional_parameters.should == {:type => 'web_server'}
1021
+ expect(@client.additional_parameters).to eq ({:type => 'web_server'})
1022
1022
  end
1023
1023
 
1024
1024
  it 'should allow custom parameters to be updated' do
1025
1025
  @client.update!(:additional_parameters => {'type' => 'new_type'})
1026
- @client.additional_parameters.should == {:type => 'new_type'}
1026
+ expect(@client.additional_parameters).to eql ({:type => 'new_type'})
1027
1027
  end
1028
1028
 
1029
1029
  it 'should have correct authorization_uri hash options' do
1030
- @client.authorization_uri.host.should == "accounts.google.com"
1031
- @client.authorization_uri.path.should == "/o/oauth2/auth"
1030
+ expect(@client.authorization_uri.host).to eq "accounts.google.com"
1031
+ expect(@client.authorization_uri.path).to eq "/o/oauth2/auth"
1032
1032
  end
1033
1033
 
1034
1034
  it 'should use custom parameters when generating authorization_uri' do
1035
- @client.authorization_uri().query_values.should == {"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "redirect_uri"=>"https://example.client.com/callback", "response_type"=>"code", "type"=>"web_server"}
1035
+ expect(@client.authorization_uri().query_values).to eq ({"access_type"=>"offline", "client_id"=>"s6BhdRkqt3", "redirect_uri"=>"https://example.client.com/callback", "response_type"=>"code", "type"=>"web_server"})
1036
1036
  end
1037
1037
 
1038
1038
  # , "path" => "/o/oauth2/oauth", "host" => "accounts.google.com"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: signet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bob Aman
@@ -9,165 +9,164 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-12-05 00:00:00.000000000 Z
12
+ date: 2015-06-08 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: faraday
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0.9'
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.9'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: multi_json
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ~>
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: '1.10'
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: '1.10'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: jwt
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ~>
60
+ - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: '1.0'
62
+ version: '1.5'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - ~>
67
+ - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '1.0'
69
+ version: '1.5'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: extlib
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - ~>
74
+ - - "~>"
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0.9'
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ~>
81
+ - - "~>"
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0.9'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rake
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ~>
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
90
  version: '10.0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ~>
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
97
  version: '10.0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: yard
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ~>
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
104
  version: '0.8'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ~>
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0.8'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: rspec
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - ~>
116
+ - - "~>"
117
117
  - !ruby/object:Gem::Version
118
118
  version: '3.1'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - ~>
123
+ - - "~>"
124
124
  - !ruby/object:Gem::Version
125
125
  version: '3.1'
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: launchy
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - ~>
130
+ - - "~>"
131
131
  - !ruby/object:Gem::Version
132
132
  version: '2.4'
133
133
  type: :development
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - ~>
137
+ - - "~>"
138
138
  - !ruby/object:Gem::Version
139
139
  version: '2.4'
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: kramdown
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - ~>
144
+ - - "~>"
145
145
  - !ruby/object:Gem::Version
146
146
  version: '1.5'
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - ~>
151
+ - - "~>"
152
152
  - !ruby/object:Gem::Version
153
153
  version: '1.5'
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: simplecov
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ~>
158
+ - - "~>"
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0.9'
161
161
  type: :development
162
162
  prerelease: false
163
163
  version_requirements: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - ~>
165
+ - - "~>"
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0.9'
168
- description: ! 'Signet is an OAuth 1.0 / OAuth 2.0 implementation.
169
-
170
- '
168
+ description: |
169
+ Signet is an OAuth 1.0 / OAuth 2.0 implementation.
171
170
  email: sbazyl@google.com
172
171
  executables: []
173
172
  extensions: []
@@ -226,23 +225,23 @@ licenses:
226
225
  metadata: {}
227
226
  post_install_message:
228
227
  rdoc_options:
229
- - --main
228
+ - "--main"
230
229
  - README.md
231
230
  require_paths:
232
231
  - lib
233
232
  required_ruby_version: !ruby/object:Gem::Requirement
234
233
  requirements:
235
- - - ! '>='
234
+ - - ">="
236
235
  - !ruby/object:Gem::Version
237
236
  version: '0'
238
237
  required_rubygems_version: !ruby/object:Gem::Requirement
239
238
  requirements:
240
- - - ! '>='
239
+ - - ">="
241
240
  - !ruby/object:Gem::Version
242
241
  version: 1.3.5
243
242
  requirements: []
244
243
  rubyforge_project:
245
- rubygems_version: 2.2.2
244
+ rubygems_version: 2.4.8
246
245
  signing_key:
247
246
  specification_version: 4
248
247
  summary: Signet is an OAuth 1.0 / OAuth 2.0 implementation.