oauth 0.4.1 → 0.4.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of oauth might be problematic. Click here for more details.
- data/.gitignore +2 -1
- data/Gemfile +13 -0
- data/Gemfile.lock +40 -0
- data/HISTORY +7 -0
- data/Rakefile +2 -2
- data/lib/oauth.rb +1 -1
- data/lib/oauth/client/em_http.rb +26 -0
- data/lib/oauth/client/net_http.rb +3 -11
- data/lib/oauth/request_proxy/action_controller_request.rb +2 -1
- data/lib/oauth/request_proxy/base.rb +8 -0
- data/oauth.gemspec +12 -10
- data/test/cases/spec/1_0-final/test_construct_request_url.rb +2 -2
- data/test/cases/spec/1_0-final/test_normalize_request_parameters.rb +2 -2
- data/test/cases/spec/1_0-final/test_parameter_encodings.rb +1 -1
- data/test/cases/spec/1_0-final/test_signature_base_strings.rb +2 -2
- data/test/integration/consumer_test.rb +1 -1
- data/test/test_access_token.rb +2 -2
- data/test/test_action_controller_request_proxy.rb +4 -3
- data/test/test_consumer.rb +1 -1
- data/test/test_curb_request_proxy.rb +2 -2
- data/test/test_em_http_client.rb +1 -1
- data/test/test_em_http_request_proxy.rb +2 -2
- data/test/test_hmac_sha1.rb +1 -1
- data/test/test_net_http_client.rb +9 -14
- data/test/test_net_http_request_proxy.rb +1 -1
- data/test/test_oauth_helper.rb +1 -1
- data/test/test_rack_request_proxy.rb +1 -1
- data/test/test_request_token.rb +2 -2
- data/test/test_rsa_sha1.rb +1 -1
- data/test/test_server.rb +1 -1
- data/test/test_signature.rb +1 -1
- data/test/test_signature_base.rb +1 -1
- data/test/test_signature_plain_text.rb +1 -1
- data/test/test_token.rb +1 -1
- data/test/test_typhoeus_request_proxy.rb +1 -1
- metadata +29 -15
data/.gitignore
CHANGED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
actionpack (2.3.8)
|
5
|
+
activesupport (= 2.3.8)
|
6
|
+
rack (~> 1.1.0)
|
7
|
+
activesupport (2.3.8)
|
8
|
+
addressable (2.2.0)
|
9
|
+
curb (0.7.7.1)
|
10
|
+
em-http-request (0.2.10)
|
11
|
+
addressable (>= 2.0.0)
|
12
|
+
eventmachine (>= 0.12.9)
|
13
|
+
eventmachine (0.12.10)
|
14
|
+
gemcutter (0.4.1)
|
15
|
+
json_pure
|
16
|
+
git (1.2.5)
|
17
|
+
jeweler (1.4.0)
|
18
|
+
gemcutter (>= 0.1.0)
|
19
|
+
git (>= 1.2.5)
|
20
|
+
rubyforge (>= 2.0.0)
|
21
|
+
json_pure (1.4.3)
|
22
|
+
mocha (0.9.8)
|
23
|
+
rake
|
24
|
+
rack (1.1.0)
|
25
|
+
rake (0.8.7)
|
26
|
+
rubyforge (2.0.4)
|
27
|
+
json_pure (>= 1.1.7)
|
28
|
+
typhoeus (0.1.31)
|
29
|
+
rack
|
30
|
+
|
31
|
+
PLATFORMS
|
32
|
+
ruby
|
33
|
+
|
34
|
+
DEPENDENCIES
|
35
|
+
actionpack (= 2.3.8)
|
36
|
+
curb (>= 0.6.6.0)
|
37
|
+
em-http-request
|
38
|
+
jeweler
|
39
|
+
mocha (>= 0.9.8)
|
40
|
+
typhoeus (>= 0.1.13)
|
data/HISTORY
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
== 0.4.2 2010-08-13
|
2
|
+
|
3
|
+
* Fixed compatibility with Ruby 1.9.2 (ecavazos)
|
4
|
+
* Fixed the em-http request proxy (Joshua Hull)
|
5
|
+
* Fix for oauth proxy string manipulation (Jakub Suder)
|
6
|
+
* Added Bundler (rc) Gemfile for easier dev/testing
|
7
|
+
|
1
8
|
== 0.4.1 2010-06-16
|
2
9
|
|
3
10
|
* Added support for using OAuth with proxies (Marsh Gardiner)
|
data/Rakefile
CHANGED
@@ -12,11 +12,11 @@ begin
|
|
12
12
|
s.description = "OAuth Core Ruby implementation"
|
13
13
|
s.summary = s.description
|
14
14
|
s.rubyforge_project = %q{oauth}
|
15
|
-
s.add_development_dependency(%q<actionpack>, ["
|
15
|
+
s.add_development_dependency(%q<actionpack>, ["2.3.8"])
|
16
16
|
s.add_development_dependency(%q<rack>, [">= 1.0.0"])
|
17
17
|
s.add_development_dependency(%q<mocha>, [">= 0.9.8"])
|
18
18
|
s.add_development_dependency(%q<typhoeus>, [">= 0.1.13"])
|
19
|
-
s.add_development_dependency(%q<em-http-request
|
19
|
+
s.add_development_dependency(%q<em-http-request>, [">= 0.2.10"])
|
20
20
|
s.add_development_dependency(%q<curb>, [">= 0.6.6.0"])
|
21
21
|
end
|
22
22
|
Jeweler::GemcutterTasks.new
|
data/lib/oauth.rb
CHANGED
data/lib/oauth/client/em_http.rb
CHANGED
@@ -61,8 +61,34 @@ class EventMachine::HttpClient
|
|
61
61
|
OAuth::Client::Helper.new(self, options).signature_base_string
|
62
62
|
end
|
63
63
|
|
64
|
+
# This code was lifted from the em-http-request because it was removed from
|
65
|
+
# the gem June 19, 2010
|
66
|
+
# see: http://github.com/igrigorik/em-http-request/commit/d536fc17d56dbe55c487eab01e2ff9382a62598b
|
67
|
+
def normalize_uri
|
68
|
+
@normalized_uri ||= begin
|
69
|
+
uri = @uri.dup
|
70
|
+
encoded_query = encode_query(@uri.path, @options[:query], @uri.query)
|
71
|
+
path, query = encoded_query.split("?", 2)
|
72
|
+
uri.query = query unless encoded_query.empty?
|
73
|
+
uri.path = path
|
74
|
+
uri
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
64
78
|
protected
|
65
79
|
|
80
|
+
def combine_query(path, query, uri_query)
|
81
|
+
combined_query = if query.kind_of?(Hash)
|
82
|
+
query.map { |k, v| encode_param(k, v) }.join('&')
|
83
|
+
else
|
84
|
+
query.to_s
|
85
|
+
end
|
86
|
+
if !uri_query.to_s.empty?
|
87
|
+
combined_query = [combined_query, uri_query].reject {|part| part.empty?}.join("&")
|
88
|
+
end
|
89
|
+
combined_query.to_s.empty? ? path : "#{path}?#{combined_query}"
|
90
|
+
end
|
91
|
+
|
66
92
|
# Since we expect to get the host etc details from the http instance (...),
|
67
93
|
# we create a fake url here. Surely this is a horrible, horrible idea?
|
68
94
|
def normalized_oauth_uri(http)
|
@@ -68,16 +68,9 @@ private
|
|
68
68
|
uri.host = http.address
|
69
69
|
uri.port = http.port
|
70
70
|
|
71
|
-
if options[:request_endpoint]
|
72
|
-
|
73
|
-
|
74
|
-
hostval["http://"] = ""
|
75
|
-
end
|
76
|
-
if hostval.include?("https://")
|
77
|
-
hostval["https://"] = ""
|
78
|
-
end
|
79
|
-
uri.host = hostval
|
80
|
-
uri.port = 80
|
71
|
+
if options[:request_endpoint] && options[:site]
|
72
|
+
uri.host = options[:site].gsub(%r(^https?://), '')
|
73
|
+
uri.port = 80
|
81
74
|
end
|
82
75
|
|
83
76
|
if http.respond_to?(:use_ssl?) && http.use_ssl?
|
@@ -86,7 +79,6 @@ private
|
|
86
79
|
uri.scheme = "http"
|
87
80
|
end
|
88
81
|
|
89
|
-
|
90
82
|
uri.to_s
|
91
83
|
end
|
92
84
|
|
@@ -34,7 +34,8 @@ module OAuth::RequestProxy
|
|
34
34
|
|
35
35
|
unless options[:clobber_request]
|
36
36
|
params << header_params.to_query
|
37
|
-
params << request.query_string unless
|
37
|
+
params << request.query_string unless query_string_blank?
|
38
|
+
|
38
39
|
if request.post? && request.content_type == Mime::Type.lookup("application/x-www-form-urlencoded")
|
39
40
|
params << request.raw_post
|
40
41
|
end
|
@@ -142,6 +142,14 @@ module OAuth::RequestProxy
|
|
142
142
|
"OAuth #{realm}#{header_params_str}"
|
143
143
|
end
|
144
144
|
|
145
|
+
def query_string_blank?
|
146
|
+
if uri = request.request_uri
|
147
|
+
uri.split('?', 2)[1].nil?
|
148
|
+
else
|
149
|
+
request.query_string.blank?
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
145
153
|
protected
|
146
154
|
|
147
155
|
def header_params
|
data/oauth.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{oauth}
|
8
|
-
s.version = "0.4.
|
8
|
+
s.version = "0.4.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Pelle Braendgaard", "Blaine Cook", "Larry Halff", "Jesse Clark", "Jon Crosby", "Seth Fitzsimmons", "Matt Sanford", "Aaron Quint"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-08-13}
|
13
13
|
s.default_executable = %q{oauth}
|
14
14
|
s.description = %q{OAuth Core Ruby implementation}
|
15
15
|
s.email = %q{oauth-ruby@googlegroups.com}
|
@@ -21,6 +21,8 @@ Gem::Specification.new do |s|
|
|
21
21
|
]
|
22
22
|
s.files = [
|
23
23
|
".gitignore",
|
24
|
+
"Gemfile",
|
25
|
+
"Gemfile.lock",
|
24
26
|
"HISTORY",
|
25
27
|
"LICENSE",
|
26
28
|
"README.rdoc",
|
@@ -109,7 +111,7 @@ Gem::Specification.new do |s|
|
|
109
111
|
s.rdoc_options = ["--charset=UTF-8"]
|
110
112
|
s.require_paths = ["lib"]
|
111
113
|
s.rubyforge_project = %q{oauth}
|
112
|
-
s.rubygems_version = %q{1.3.
|
114
|
+
s.rubygems_version = %q{1.3.7}
|
113
115
|
s.summary = %q{OAuth Core Ruby implementation}
|
114
116
|
s.test_files = [
|
115
117
|
"test/cases/oauth_case.rb",
|
@@ -145,27 +147,27 @@ Gem::Specification.new do |s|
|
|
145
147
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
146
148
|
s.specification_version = 3
|
147
149
|
|
148
|
-
if Gem::Version.new(Gem::
|
149
|
-
s.add_development_dependency(%q<actionpack>, ["
|
150
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
151
|
+
s.add_development_dependency(%q<actionpack>, ["= 2.3.8"])
|
150
152
|
s.add_development_dependency(%q<rack>, [">= 1.0.0"])
|
151
153
|
s.add_development_dependency(%q<mocha>, [">= 0.9.8"])
|
152
154
|
s.add_development_dependency(%q<typhoeus>, [">= 0.1.13"])
|
153
|
-
s.add_development_dependency(%q<em-http-request>, [">= 0"])
|
155
|
+
s.add_development_dependency(%q<em-http-request>, [">= 0.2.10"])
|
154
156
|
s.add_development_dependency(%q<curb>, [">= 0.6.6.0"])
|
155
157
|
else
|
156
|
-
s.add_dependency(%q<actionpack>, ["
|
158
|
+
s.add_dependency(%q<actionpack>, ["= 2.3.8"])
|
157
159
|
s.add_dependency(%q<rack>, [">= 1.0.0"])
|
158
160
|
s.add_dependency(%q<mocha>, [">= 0.9.8"])
|
159
161
|
s.add_dependency(%q<typhoeus>, [">= 0.1.13"])
|
160
|
-
s.add_dependency(%q<em-http-request>, [">= 0"])
|
162
|
+
s.add_dependency(%q<em-http-request>, [">= 0.2.10"])
|
161
163
|
s.add_dependency(%q<curb>, [">= 0.6.6.0"])
|
162
164
|
end
|
163
165
|
else
|
164
|
-
s.add_dependency(%q<actionpack>, ["
|
166
|
+
s.add_dependency(%q<actionpack>, ["= 2.3.8"])
|
165
167
|
s.add_dependency(%q<rack>, [">= 1.0.0"])
|
166
168
|
s.add_dependency(%q<mocha>, [">= 0.9.8"])
|
167
169
|
s.add_dependency(%q<typhoeus>, [">= 0.1.13"])
|
168
|
-
s.add_dependency(%q<em-http-request>, [">= 0"])
|
170
|
+
s.add_dependency(%q<em-http-request>, [">= 0.2.10"])
|
169
171
|
s.add_dependency(%q<curb>, [">= 0.6.6.0"])
|
170
172
|
end
|
171
173
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../../../oauth_case', __FILE__)
|
2
2
|
|
3
3
|
# See http://oauth.net/core/1.0/#anchor14
|
4
4
|
#
|
@@ -59,4 +59,4 @@ class ConstructRequestUrlTest < OAuthCase
|
|
59
59
|
assert_equal expected, request({},'GET',given).normalized_uri, message
|
60
60
|
end
|
61
61
|
|
62
|
-
end
|
62
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../../../oauth_case', __FILE__)
|
2
2
|
|
3
3
|
# See http://oauth.net/core/1.0/#anchor14
|
4
4
|
#
|
@@ -85,4 +85,4 @@ class NormalizeRequestParametersTest < OAuthCase
|
|
85
85
|
def normalize_request_parameters(params={})
|
86
86
|
request(params).normalized_parameters
|
87
87
|
end
|
88
|
-
end
|
88
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../../../oauth_case', __FILE__)
|
2
2
|
|
3
3
|
# See http://oauth.net/core/1.0/#anchor14
|
4
4
|
#
|
@@ -74,4 +74,4 @@ class SignatureBaseStringTest < OAuthCase
|
|
74
74
|
def signature_base_string(params={},method='GET',uri="http://photos.example.net/photos")
|
75
75
|
request(params,method,uri).signature_base_string
|
76
76
|
end
|
77
|
-
end
|
77
|
+
end
|
data/test/test_access_token.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
2
2
|
|
3
3
|
class TestAccessToken < Test::Unit::TestCase
|
4
4
|
def setup
|
@@ -23,4 +23,4 @@ class TestAccessToken < Test::Unit::TestCase
|
|
23
23
|
assert_not_nil @access_token.params[:user_id]
|
24
24
|
assert_equal 5734758743895, @access_token.params[:user_id]
|
25
25
|
end
|
26
|
-
end
|
26
|
+
end
|
@@ -1,10 +1,11 @@
|
|
1
|
-
gem 'actionpack', '
|
2
|
-
require File.
|
1
|
+
gem 'actionpack', '2.3.8'
|
2
|
+
require File.expand_path('../test_helper', __FILE__)
|
3
3
|
|
4
4
|
require 'oauth/request_proxy/action_controller_request'
|
5
5
|
require 'action_controller/test_process'
|
6
6
|
|
7
7
|
class ActionControllerRequestProxyTest < Test::Unit::TestCase
|
8
|
+
|
8
9
|
def request_proxy(request_method = :get, uri_params = {}, body_params = {})
|
9
10
|
request = ActionController::TestRequest.new
|
10
11
|
request.set_REQUEST_URI('/')
|
@@ -22,7 +23,7 @@ class ActionControllerRequestProxyTest < Test::Unit::TestCase
|
|
22
23
|
request.env['CONTENT_TYPE'] = 'application/x-www-form-urlencoded'
|
23
24
|
|
24
25
|
yield request if block_given?
|
25
|
-
OAuth::RequestProxy.
|
26
|
+
OAuth::RequestProxy::ActionControllerRequest.new(request, :parameters => uri_params)
|
26
27
|
end
|
27
28
|
|
28
29
|
def test_that_proxy_simple_get_request_works_with_query_params
|
data/test/test_consumer.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'test_helper'
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
2
2
|
|
3
3
|
begin
|
4
4
|
require 'oauth/request_proxy/curb_request'
|
@@ -73,4 +73,4 @@ class CurbRequestProxyTest < Test::Unit::TestCase
|
|
73
73
|
assert_equal expected_parameters, request_proxy.parameters_for_signature
|
74
74
|
assert_equal 'http://example.com/test', request_proxy.normalized_uri
|
75
75
|
end
|
76
|
-
end
|
76
|
+
end
|
data/test/test_em_http_client.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'test_helper'
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
2
2
|
|
3
3
|
begin
|
4
4
|
require 'em-http'
|
@@ -111,4 +111,4 @@ class EmHttpRequestProxyTest < Test::Unit::TestCase
|
|
111
111
|
OAuth::RequestProxy.proxy(create_client(opts), arguments)
|
112
112
|
end
|
113
113
|
|
114
|
-
end
|
114
|
+
end
|
data/test/test_hmac_sha1.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
2
2
|
|
3
3
|
class NetHTTPClientTest < Test::Unit::TestCase
|
4
4
|
|
@@ -23,20 +23,7 @@ class NetHTTPClientTest < Test::Unit::TestCase
|
|
23
23
|
assert_equal auth_intro, 'OAuth'
|
24
24
|
assert_matching_headers correct_sorted_params, request['authorization']
|
25
25
|
end
|
26
|
-
|
27
|
-
def test_that_using_auth_headers_on_get_requests_works_with_plaintext
|
28
|
-
require 'oauth/signature/plaintext'
|
29
|
-
c = OAuth::Consumer.new('consumer_key_86cad9', '5888bf0345e5d237',{
|
30
|
-
:signature_method => 'PLAINTEXT'
|
31
|
-
})
|
32
|
-
request = Net::HTTP::Get.new(@request_uri.path + "?" + request_parameters_to_s)
|
33
|
-
request.oauth!(@http, c, @token, {:nonce => @nonce, :timestamp => @timestamp, :signature_method => 'PLAINTEXT'})
|
34
26
|
|
35
|
-
assert_equal 'GET', request.method
|
36
|
-
assert_equal '/test?key=value', request.path
|
37
|
-
assert_matching_headers "oauth_nonce=\"225579211881198842005988698334675835446\", oauth_signature_method=\"PLAINTEXT\", oauth_token=\"token_411a7f\", oauth_timestamp=\"1199645624\", oauth_consumer_key=\"consumer_key_86cad9\", oauth_signature=\"1oO2izFav1GP4kEH2EskwXkCRFg%3D\", oauth_version=\"1.0\"", request['authorization']
|
38
|
-
end
|
39
|
-
|
40
27
|
def test_that_using_auth_headers_on_get_requests_works_with_plaintext
|
41
28
|
require 'oauth/signature/plaintext'
|
42
29
|
c = OAuth::Consumer.new('consumer_key_86cad9', '5888bf0345e5d237',{
|
@@ -273,6 +260,14 @@ class NetHTTPClientTest < Test::Unit::TestCase
|
|
273
260
|
assert_equal "POST&http%3A%2F%2Fexample.com%2Ftest&oauth_body_hash%3DDvAa1AWdFoH9K%252B%252F2AHm3f6wH27k%253D%26oauth_consumer_key%3Dconsumer_key_86cad9%26oauth_nonce%3D225579211881198842005988698334675835446%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1199645624%26oauth_version%3D1.0", signature_base_string
|
274
261
|
end
|
275
262
|
|
263
|
+
def test_that_site_address_is_not_modified_in_place
|
264
|
+
options = { :site => 'http://twitter.com', :request_endpoint => 'http://api.twitter.com' }
|
265
|
+
request = Net::HTTP::Get.new(@request_uri.path + "?" + request_parameters_to_s)
|
266
|
+
request.oauth!(@http, @consumer, @token, options)
|
267
|
+
assert_equal "http://twitter.com", options[:site]
|
268
|
+
assert_equal "http://api.twitter.com", options[:request_endpoint]
|
269
|
+
end
|
270
|
+
|
276
271
|
protected
|
277
272
|
|
278
273
|
def request_parameters_to_s
|
data/test/test_oauth_helper.rb
CHANGED
data/test/test_request_token.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.
|
1
|
+
require File.expand_path('../test_helper', __FILE__)
|
2
2
|
|
3
3
|
class StubbedToken < OAuth::RequestToken
|
4
4
|
define_method :build_authorize_url_promoted do |root_domain, params|
|
@@ -48,4 +48,4 @@ class TestRequestToken < Test::Unit::TestCase
|
|
48
48
|
assert url
|
49
49
|
assert_equal "http://github.com/oauth/authorize?foo=bar+bar", url
|
50
50
|
end
|
51
|
-
end
|
51
|
+
end
|
data/test/test_rsa_sha1.rb
CHANGED
data/test/test_server.rb
CHANGED
data/test/test_signature.rb
CHANGED
data/test/test_signature_base.rb
CHANGED
data/test/test_token.rb
CHANGED
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oauth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 11
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
8
|
- 4
|
8
|
-
-
|
9
|
-
version: 0.4.
|
9
|
+
- 2
|
10
|
+
version: 0.4.2
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- Pelle Braendgaard
|
@@ -21,37 +22,34 @@ autorequire:
|
|
21
22
|
bindir: bin
|
22
23
|
cert_chain: []
|
23
24
|
|
24
|
-
date: 2010-
|
25
|
+
date: 2010-08-13 00:00:00 -07:00
|
25
26
|
default_executable: oauth
|
26
27
|
dependencies:
|
27
28
|
- !ruby/object:Gem::Dependency
|
28
29
|
name: actionpack
|
29
30
|
prerelease: false
|
30
31
|
requirement: &id001 !ruby/object:Gem::Requirement
|
32
|
+
none: false
|
31
33
|
requirements:
|
32
|
-
- - "
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
segments:
|
35
|
-
- 2
|
36
|
-
- 2
|
37
|
-
- 0
|
38
|
-
version: 2.2.0
|
39
|
-
- - <
|
34
|
+
- - "="
|
40
35
|
- !ruby/object:Gem::Version
|
36
|
+
hash: 19
|
41
37
|
segments:
|
42
38
|
- 2
|
43
39
|
- 3
|
44
|
-
-
|
45
|
-
version: 2.3.
|
40
|
+
- 8
|
41
|
+
version: 2.3.8
|
46
42
|
type: :development
|
47
43
|
version_requirements: *id001
|
48
44
|
- !ruby/object:Gem::Dependency
|
49
45
|
name: rack
|
50
46
|
prerelease: false
|
51
47
|
requirement: &id002 !ruby/object:Gem::Requirement
|
48
|
+
none: false
|
52
49
|
requirements:
|
53
50
|
- - ">="
|
54
51
|
- !ruby/object:Gem::Version
|
52
|
+
hash: 23
|
55
53
|
segments:
|
56
54
|
- 1
|
57
55
|
- 0
|
@@ -63,9 +61,11 @@ dependencies:
|
|
63
61
|
name: mocha
|
64
62
|
prerelease: false
|
65
63
|
requirement: &id003 !ruby/object:Gem::Requirement
|
64
|
+
none: false
|
66
65
|
requirements:
|
67
66
|
- - ">="
|
68
67
|
- !ruby/object:Gem::Version
|
68
|
+
hash: 43
|
69
69
|
segments:
|
70
70
|
- 0
|
71
71
|
- 9
|
@@ -77,9 +77,11 @@ dependencies:
|
|
77
77
|
name: typhoeus
|
78
78
|
prerelease: false
|
79
79
|
requirement: &id004 !ruby/object:Gem::Requirement
|
80
|
+
none: false
|
80
81
|
requirements:
|
81
82
|
- - ">="
|
82
83
|
- !ruby/object:Gem::Version
|
84
|
+
hash: 1
|
83
85
|
segments:
|
84
86
|
- 0
|
85
87
|
- 1
|
@@ -91,21 +93,27 @@ dependencies:
|
|
91
93
|
name: em-http-request
|
92
94
|
prerelease: false
|
93
95
|
requirement: &id005 !ruby/object:Gem::Requirement
|
96
|
+
none: false
|
94
97
|
requirements:
|
95
98
|
- - ">="
|
96
99
|
- !ruby/object:Gem::Version
|
100
|
+
hash: 3
|
97
101
|
segments:
|
98
102
|
- 0
|
99
|
-
|
103
|
+
- 2
|
104
|
+
- 10
|
105
|
+
version: 0.2.10
|
100
106
|
type: :development
|
101
107
|
version_requirements: *id005
|
102
108
|
- !ruby/object:Gem::Dependency
|
103
109
|
name: curb
|
104
110
|
prerelease: false
|
105
111
|
requirement: &id006 !ruby/object:Gem::Requirement
|
112
|
+
none: false
|
106
113
|
requirements:
|
107
114
|
- - ">="
|
108
115
|
- !ruby/object:Gem::Version
|
116
|
+
hash: 103
|
109
117
|
segments:
|
110
118
|
- 0
|
111
119
|
- 6
|
@@ -126,6 +134,8 @@ extra_rdoc_files:
|
|
126
134
|
- TODO
|
127
135
|
files:
|
128
136
|
- .gitignore
|
137
|
+
- Gemfile
|
138
|
+
- Gemfile.lock
|
129
139
|
- HISTORY
|
130
140
|
- LICENSE
|
131
141
|
- README.rdoc
|
@@ -220,23 +230,27 @@ rdoc_options:
|
|
220
230
|
require_paths:
|
221
231
|
- lib
|
222
232
|
required_ruby_version: !ruby/object:Gem::Requirement
|
233
|
+
none: false
|
223
234
|
requirements:
|
224
235
|
- - ">="
|
225
236
|
- !ruby/object:Gem::Version
|
237
|
+
hash: 3
|
226
238
|
segments:
|
227
239
|
- 0
|
228
240
|
version: "0"
|
229
241
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
242
|
+
none: false
|
230
243
|
requirements:
|
231
244
|
- - ">="
|
232
245
|
- !ruby/object:Gem::Version
|
246
|
+
hash: 3
|
233
247
|
segments:
|
234
248
|
- 0
|
235
249
|
version: "0"
|
236
250
|
requirements: []
|
237
251
|
|
238
252
|
rubyforge_project: oauth
|
239
|
-
rubygems_version: 1.3.
|
253
|
+
rubygems_version: 1.3.7
|
240
254
|
signing_key:
|
241
255
|
specification_version: 3
|
242
256
|
summary: OAuth Core Ruby implementation
|