From 062f8798058cd330b8e4ff361a4f826dbad620a4 Mon Sep 17 00:00:00 2001 From: Anuj Dutta Date: Tue, 11 Oct 2011 12:59:53 +0100 Subject: [PATCH 1/3] Added new code to work with Sunspot-1.3.0rc4 and rsolr-1.0.2 --- .gitignore | 2 +- Gemfile.lock | 40 ++++ lib/sunspot-rails-http-basic-auth.rb | 3 +- .../rsolr/client.rb | 16 ++ .../rsolr/connection.rb | 12 ++ .../rsolr/connection/net_http.rb | 84 ++++---- .../sunspot/rails/configuration.rb | 14 +- spec/rsolr/connection/net_http_spec.rb | 200 +++++++++--------- spec/rsolr/connection_spec.rb | 86 ++++++++ sunspot-rails-http-basic-auth.gemspec | 2 +- 10 files changed, 309 insertions(+), 150 deletions(-) create mode 100644 Gemfile.lock create mode 100644 lib/sunspot-rails-http-basic-auth/rsolr/client.rb create mode 100644 lib/sunspot-rails-http-basic-auth/rsolr/connection.rb create mode 100644 spec/rsolr/connection_spec.rb diff --git a/.gitignore b/.gitignore index 4040c6c..8ee7752 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ *.gem .bundle -Gemfile.lock pkg/* +vendor \ No newline at end of file diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..62fbeba --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,40 @@ +PATH + remote: . + specs: + sunspot-rails-http-basic-auth (0.0.2) + sunspot_rails (~> 1.3.0.rc4) + +GEM + remote: http://rubygems.org/ + specs: + builder (3.0.0) + diff-lcs (1.1.3) + escape (0.0.4) + fakeweb (1.3.0) + nokogiri (1.5.0) + pr_geohash (1.0.0) + rsolr (1.0.2) + builder (>= 2.1.2) + rspec (2.6.0) + rspec-core (~> 2.6.0) + rspec-expectations (~> 2.6.0) + rspec-mocks (~> 2.6.0) + rspec-core (2.6.4) + rspec-expectations (2.6.0) + diff-lcs (~> 1.1.2) + rspec-mocks (2.6.0) + sunspot (1.3.0.rc4) + escape (= 0.0.4) + pr_geohash (~> 1.0) + rsolr (= 1.0.2) + sunspot_rails (1.3.0.rc4) + nokogiri + sunspot (= 1.3.0.rc4) + +PLATFORMS + ruby + +DEPENDENCIES + fakeweb + rspec (~> 2.5) + sunspot-rails-http-basic-auth! diff --git a/lib/sunspot-rails-http-basic-auth.rb b/lib/sunspot-rails-http-basic-auth.rb index 37e20a5..7db7e5f 100644 --- a/lib/sunspot-rails-http-basic-auth.rb +++ b/lib/sunspot-rails-http-basic-auth.rb @@ -1,7 +1,8 @@ require 'rsolr' require 'sunspot/rails' -require 'sunspot-rails-http-basic-auth/rsolr/connection/net_http' +require 'sunspot-rails-http-basic-auth/rsolr/connection' +require 'sunspot-rails-http-basic-auth/rsolr/client' require 'sunspot-rails-http-basic-auth/sunspot/rails' require 'sunspot-rails-http-basic-auth/sunspot/rails/configuration' diff --git a/lib/sunspot-rails-http-basic-auth/rsolr/client.rb b/lib/sunspot-rails-http-basic-auth/rsolr/client.rb new file mode 100644 index 0000000..972c957 --- /dev/null +++ b/lib/sunspot-rails-http-basic-auth/rsolr/client.rb @@ -0,0 +1,16 @@ +class RSolr::Client + alias_method :adapt_response_original, :adapt_response + + def adapt_response request, response + if response[:status] == 401 + result = response[:body] + result.extend Context + result.request = request + result.response = response + return result + else + adapt_response_original(request, response) + end + end + +end \ No newline at end of file diff --git a/lib/sunspot-rails-http-basic-auth/rsolr/connection.rb b/lib/sunspot-rails-http-basic-auth/rsolr/connection.rb new file mode 100644 index 0000000..9233d13 --- /dev/null +++ b/lib/sunspot-rails-http-basic-auth/rsolr/connection.rb @@ -0,0 +1,12 @@ +class RSolr::Connection + alias_method :setup_raw_request_original, :setup_raw_request + + def setup_raw_request request_context + raw_request = setup_raw_request_original(request_context) + if request_context[:uri].user and request_context[:uri].password + raw_request.basic_auth(request_context[:uri].user, request_context[:uri].password) + end + raw_request + end + +end \ No newline at end of file diff --git a/lib/sunspot-rails-http-basic-auth/rsolr/connection/net_http.rb b/lib/sunspot-rails-http-basic-auth/rsolr/connection/net_http.rb index e75fc70..fd3e6e5 100644 --- a/lib/sunspot-rails-http-basic-auth/rsolr/connection/net_http.rb +++ b/lib/sunspot-rails-http-basic-auth/rsolr/connection/net_http.rb @@ -1,42 +1,42 @@ -module RSolr - module Connection - class NetHttp - - def get(path, params={}) - url = build_url(path, params) - net_http_response = basic_auth_get_request(url) - create_http_context(net_http_response, url, path, params) - end - - def post(path, data, params={}, headers={}) - url = build_url(path, params) - net_http_response = basic_auth_post_request(url, data, headers) - create_http_context(net_http_response, url, path, params, data, headers) - end - - private - - def basic_auth_get_request(url) - rails_logger "SOLR GET: #{url}" - req = add_basic_auth(Net::HTTP::Get.new(url)) - connection.request(req) - end - - def basic_auth_post_request(url, data, headers) - rails_logger "SOLR POST: #{url}" - req = add_basic_auth(Net::HTTP::Post.new(url, headers)) - connection.request(req, data) - end - - def add_basic_auth(req) - req.basic_auth(uri.user, uri.password) if uri.user and uri.password - req - end - - def rails_logger(text) - Rails.logger.debug(text) if defined?(Rails) - end - - end - end -end \ No newline at end of file +# module RSolr +# module Connection +# class NetHttp +# +# def get(path, params={}) +# url = build_url(path, params) +# net_http_response = basic_auth_get_request(url) +# create_http_context(net_http_response, url, path, params) +# end +# +# def post(path, data, params={}, headers={}) +# url = build_url(path, params) +# net_http_response = basic_auth_post_request(url, data, headers) +# create_http_context(net_http_response, url, path, params, data, headers) +# end +# +# private +# +# def basic_auth_get_request(url) +# rails_logger "SOLR GET: #{url}" +# req = add_basic_auth(Net::HTTP::Get.new(url)) +# connection.request(req) +# end +# +# def basic_auth_post_request(url, data, headers) +# rails_logger "SOLR POST: #{url}" +# req = add_basic_auth(Net::HTTP::Post.new(url, headers)) +# connection.request(req, data) +# end +# +# def add_basic_auth(req) +# req.basic_auth(uri.user, uri.password) if uri.user and uri.password +# req +# end +# +# def rails_logger(text) +# Rails.logger.debug(text) if defined?(Rails) +# end +# +# end +# end +# end \ No newline at end of file diff --git a/lib/sunspot-rails-http-basic-auth/sunspot/rails/configuration.rb b/lib/sunspot-rails-http-basic-auth/sunspot/rails/configuration.rb index 31755d7..3aaa322 100644 --- a/lib/sunspot-rails-http-basic-auth/sunspot/rails/configuration.rb +++ b/lib/sunspot-rails-http-basic-auth/sunspot/rails/configuration.rb @@ -1,23 +1,27 @@ module Sunspot module Rails class Configuration - + + # User used for basic http auth def user @user ||= user_configuration_from_key('solr', 'user') end - + + # Master user used for basic http auth, in case, you have separate solr instances you read and write (master_solr) to. def master_user @master_user ||= user_configuration_from_key('master_solr', 'user') end - + + # Password for basic http auth def password @password ||= user_configuration_from_key('solr', 'password') end - + + # Master password for basic http auth def master_password @master_password ||= user_configuration_from_key('master_solr', 'password') end - + end end end diff --git a/spec/rsolr/connection/net_http_spec.rb b/spec/rsolr/connection/net_http_spec.rb index 80e0bdb..85fb14f 100644 --- a/spec/rsolr/connection/net_http_spec.rb +++ b/spec/rsolr/connection/net_http_spec.rb @@ -1,100 +1,100 @@ -require 'spec_helper' -require 'fakeweb' - -module RSolr - module Connection - describe NetHttp do - - describe '#get' do - context 'with valid basic auth credentials' do - before do - FakeWeb.register_uri :get, - 'http://user:pass@127.0.0.1:8983/solr/select?q=a', - :body => 'Authorized' - end - - let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } - - let(:result) { net_http.get('/select', :q => 'a') } - - specify { result[:data].should be_nil } - specify { result[:body].should eq('Authorized') } - specify { result[:status_code].should eq(200) } - specify { result[:path].should eq('/select') } - specify { result[:url].should eq('http://127.0.0.1:8983/solr/select?q=a') } - specify { result[:headers].should be_empty } - specify { result[:params].should eq({:q => 'a'}) } - specify { result[:message].should eq('OK') } - end - - context 'with invalid basic auth credentials' do - before do - FakeWeb.register_uri :get, - 'http://user:pass@127.0.0.1:8983/solr/select?q=a', - :body => 'Unauthorized', - :status => [401, 'Unauthorized'] - end - - let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } - - let(:result) { net_http.get('/select', :q => 'a') } - - specify { result[:data].should be_nil } - specify { result[:body].should eq('Unauthorized') } - specify { result[:status_code].should eq(401) } - specify { result[:path].should eq('/select') } - specify { result[:url].should eq('http://127.0.0.1:8983/solr/select?q=a') } - specify { result[:headers].should be_empty } - specify { result[:params].should eq({:q => 'a'}) } - specify { result[:message].should eq('Unauthorized') } - end - end - - describe '#post' do - context 'with valid basic auth credentials' do - before do - FakeWeb.register_uri :post, - 'http://user:pass@127.0.0.1:8983/solr/update', - :body => 'Authorized' - end - - let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } - - let(:result) { net_http.post('/update', '') } - - specify { result[:data].should eq('') } - specify { result[:body].should eq('Authorized') } - specify { result[:status_code].should eq(200) } - specify { result[:path].should eq('/update') } - specify { result[:url].should eq('http://127.0.0.1:8983/solr/update') } - specify { result[:headers].should be_empty } - specify { result[:params].should be_empty } - specify { result[:message].should eq('OK') } - end - - context 'with invalid basic auth credentials' do - before do - FakeWeb.register_uri :post, - 'http://user:pass@127.0.0.1:8983/solr/update', - :body => 'Unauthorized', - :status => [401, 'Unauthorized'] - end - - let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } - - let(:result) { net_http.post('/update', '') } - - specify { result[:data].should eq('') } - specify { result[:body].should eq('Unauthorized') } - specify { result[:status_code].should eq(401) } - specify { result[:path].should eq('/update') } - specify { result[:url].should eq('http://127.0.0.1:8983/solr/update') } - specify { result[:headers].should be_empty } - specify { result[:params].should be_empty } - specify { result[:message].should eq('Unauthorized') } - end - end - - end - end -end \ No newline at end of file +# require 'spec_helper' +# require 'fakeweb' +# +# module RSolr +# module Connection +# describe NetHttp do +# +# describe '#get' do +# context 'with valid basic auth credentials' do +# before do +# FakeWeb.register_uri :get, +# 'http://user:pass@127.0.0.1:8983/solr/select?q=a', +# :body => 'Authorized' +# end +# +# let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } +# +# let(:result) { net_http.get('/select', :q => 'a') } +# +# specify { result[:data].should be_nil } +# specify { result[:body].should eq('Authorized') } +# specify { result[:status_code].should eq(200) } +# specify { result[:path].should eq('/select') } +# specify { result[:url].should eq('http://127.0.0.1:8983/solr/select?q=a') } +# specify { result[:headers].should be_empty } +# specify { result[:params].should eq({:q => 'a'}) } +# specify { result[:message].should eq('OK') } +# end +# +# context 'with invalid basic auth credentials' do +# before do +# FakeWeb.register_uri :get, +# 'http://user:pass@127.0.0.1:8983/solr/select?q=a', +# :body => 'Unauthorized', +# :status => [401, 'Unauthorized'] +# end +# +# let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } +# +# let(:result) { net_http.get('/select', :q => 'a') } +# +# specify { result[:data].should be_nil } +# specify { result[:body].should eq('Unauthorized') } +# specify { result[:status_code].should eq(401) } +# specify { result[:path].should eq('/select') } +# specify { result[:url].should eq('http://127.0.0.1:8983/solr/select?q=a') } +# specify { result[:headers].should be_empty } +# specify { result[:params].should eq({:q => 'a'}) } +# specify { result[:message].should eq('Unauthorized') } +# end +# end +# +# describe '#post' do +# context 'with valid basic auth credentials' do +# before do +# FakeWeb.register_uri :post, +# 'http://user:pass@127.0.0.1:8983/solr/update', +# :body => 'Authorized' +# end +# +# let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } +# +# let(:result) { net_http.post('/update', '') } +# +# specify { result[:data].should eq('') } +# specify { result[:body].should eq('Authorized') } +# specify { result[:status_code].should eq(200) } +# specify { result[:path].should eq('/update') } +# specify { result[:url].should eq('http://127.0.0.1:8983/solr/update') } +# specify { result[:headers].should be_empty } +# specify { result[:params].should be_empty } +# specify { result[:message].should eq('OK') } +# end +# +# context 'with invalid basic auth credentials' do +# before do +# FakeWeb.register_uri :post, +# 'http://user:pass@127.0.0.1:8983/solr/update', +# :body => 'Unauthorized', +# :status => [401, 'Unauthorized'] +# end +# +# let(:net_http) { described_class.new(:url => 'http://user:pass@127.0.0.1:8983/solr') } +# +# let(:result) { net_http.post('/update', '') } +# +# specify { result[:data].should eq('') } +# specify { result[:body].should eq('Unauthorized') } +# specify { result[:status_code].should eq(401) } +# specify { result[:path].should eq('/update') } +# specify { result[:url].should eq('http://127.0.0.1:8983/solr/update') } +# specify { result[:headers].should be_empty } +# specify { result[:params].should be_empty } +# specify { result[:message].should eq('Unauthorized') } +# end +# end +# +# end +# end +# end \ No newline at end of file diff --git a/spec/rsolr/connection_spec.rb b/spec/rsolr/connection_spec.rb new file mode 100644 index 0000000..1cb0f42 --- /dev/null +++ b/spec/rsolr/connection_spec.rb @@ -0,0 +1,86 @@ +require 'spec_helper' +require 'fakeweb' + +describe RSolr::Connection do + describe '#get' do + context 'with valid basic auth credentials' do + before do + FakeWeb.register_uri :get, + 'http://user:pass@127.0.0.1:8983/solr/select?q=a', + :body => 'Authorized' + end + + let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } + let(:result) { client.get('/select', :params => {:q => 'a'}) } + + specify { result.response[:data].should be_nil } + specify { result.response[:body].should eq('Authorized') } + specify { result.response[:status].should eq(200) } + specify { result.request[:path].should eq('/select') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a') } + specify { result.response[:headers].should be_empty } + specify { result.request[:params].should eq({:q => 'a'}) } + end + + context 'with invalid basic auth credentials' do + before do + FakeWeb.register_uri :get, + 'http://user:pass@127.0.0.1:8983/solr/select?q=a', + :body => 'Unauthorized', + :status => [401, 'Unauthorized'] + end + + let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } + let(:result) { client.get('/select', :params => {:q => 'a'}) } + + specify { result.response[:data].should be_nil } + specify { result.response[:body].should eq('Unauthorized') } + specify { result.response[:status].should eq(401) } + specify { result.request[:path].should eq('/select') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a') } + specify { result.response[:headers].should be_empty } + specify { result.request[:params].should eq({:q => 'a'}) } + end + end + + describe '#post' do + context 'with valid basic auth credentials' do + before do + FakeWeb.register_uri :post, + 'http://user:pass@127.0.0.1:8983/solr/update', + :body => 'Authorized' + end + + let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } + let(:result) { client.post('/update', :data => '') } + + specify { result.request[:data].should eq('') } + specify { result.response[:body].should eq('Authorized') } + specify { result.response[:status].should eq(200) } + specify { result.request[:path].should eq('/update') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update') } + specify { result.response[:headers].should be_empty } + specify { result.request[:params].should be_empty } + end + + context 'with invalid basic auth credentials' do + before do + FakeWeb.register_uri :post, + 'http://user:pass@127.0.0.1:8983/solr/update', + :body => 'Unauthorized', + :status => [401, 'Unauthorized'] + end + + let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } + let(:result) { client.post('/update', :data => '') } + + specify { result.request[:data].should eq('') } + specify { result.response[:body].should eq('Unauthorized') } + specify { result.response[:status].should eq(401) } + specify { result.request[:path].should eq('/update') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update') } + specify { result.response[:headers].should be_empty } + specify { result.request[:params].should be_empty } + end + end +end \ No newline at end of file diff --git a/sunspot-rails-http-basic-auth.gemspec b/sunspot-rails-http-basic-auth.gemspec index 6e7164c..7ffc7c2 100644 --- a/sunspot-rails-http-basic-auth.gemspec +++ b/sunspot-rails-http-basic-auth.gemspec @@ -16,7 +16,7 @@ Gem::Specification.new do |s| s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } s.require_path = 'lib' - s.add_dependency 'sunspot_rails', '~> 1.2.1' + s.add_dependency 'sunspot_rails', '~> 1.3.0.rc4' s.add_development_dependency 'rspec', '~> 2.5' s.add_development_dependency 'fakeweb' From c6d3b68ffc78e21d6012bd1c2e151d6ba3179051 Mon Sep 17 00:00:00 2001 From: Anuj Dutta Date: Tue, 11 Oct 2011 16:00:00 +0100 Subject: [PATCH 2/3] Fixed the specs. --- spec/rsolr/connection_spec.rb | 36 +++++++++++++-------------- sunspot-rails-http-basic-auth.gemspec | 4 +-- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/spec/rsolr/connection_spec.rb b/spec/rsolr/connection_spec.rb index 1cb0f42..ffaa9ed 100644 --- a/spec/rsolr/connection_spec.rb +++ b/spec/rsolr/connection_spec.rb @@ -6,26 +6,26 @@ context 'with valid basic auth credentials' do before do FakeWeb.register_uri :get, - 'http://user:pass@127.0.0.1:8983/solr/select?q=a', - :body => 'Authorized' + 'http://user:pass@127.0.0.1:8983/solr/select?q=a&wt=ruby', + :body => "{'result' => 'Authorized'}" end let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } let(:result) { client.get('/select', :params => {:q => 'a'}) } specify { result.response[:data].should be_nil } - specify { result.response[:body].should eq('Authorized') } + specify { result.response[:body].should eq("{'result' => 'Authorized'}") } specify { result.response[:status].should eq(200) } specify { result.request[:path].should eq('/select') } - specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a&wt=ruby') } specify { result.response[:headers].should be_empty } - specify { result.request[:params].should eq({:q => 'a'}) } + specify { result.request[:params].should eq({:q => 'a', :wt => :ruby}) } end context 'with invalid basic auth credentials' do before do FakeWeb.register_uri :get, - 'http://user:pass@127.0.0.1:8983/solr/select?q=a', + 'http://user:pass@127.0.0.1:8983/solr/select?q=a&wt=ruby', :body => 'Unauthorized', :status => [401, 'Unauthorized'] end @@ -37,9 +37,9 @@ specify { result.response[:body].should eq('Unauthorized') } specify { result.response[:status].should eq(401) } specify { result.request[:path].should eq('/select') } - specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/select?q=a&wt=ruby') } specify { result.response[:headers].should be_empty } - specify { result.request[:params].should eq({:q => 'a'}) } + specify { result.request[:params].should eq({:q => 'a', :wt => :ruby}) } end end @@ -47,26 +47,26 @@ context 'with valid basic auth credentials' do before do FakeWeb.register_uri :post, - 'http://user:pass@127.0.0.1:8983/solr/update', - :body => 'Authorized' + 'http://user:pass@127.0.0.1:8983/solr/update?wt=ruby', + :body => "{'result' => 'Authorized'}" end - + let(:client) { RSolr::Client.new(RSolr::Connection.new, :url => 'http://user:pass@127.0.0.1:8983/solr') } let(:result) { client.post('/update', :data => '') } - + specify { result.request[:data].should eq('') } - specify { result.response[:body].should eq('Authorized') } + specify { result.response[:body].should eq("{'result' => 'Authorized'}") } specify { result.response[:status].should eq(200) } specify { result.request[:path].should eq('/update') } - specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update?wt=ruby') } specify { result.response[:headers].should be_empty } - specify { result.request[:params].should be_empty } + specify { result.request[:params].should eq({:wt => :ruby}) } end context 'with invalid basic auth credentials' do before do FakeWeb.register_uri :post, - 'http://user:pass@127.0.0.1:8983/solr/update', + 'http://user:pass@127.0.0.1:8983/solr/update?wt=ruby', :body => 'Unauthorized', :status => [401, 'Unauthorized'] end @@ -78,9 +78,9 @@ specify { result.response[:body].should eq('Unauthorized') } specify { result.response[:status].should eq(401) } specify { result.request[:path].should eq('/update') } - specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update') } + specify { result.request[:uri].to_s.should eq('http://user:pass@127.0.0.1:8983/solr/update?wt=ruby') } specify { result.response[:headers].should be_empty } - specify { result.request[:params].should be_empty } + specify { result.request[:params].should eq({:wt => :ruby}) } end end end \ No newline at end of file diff --git a/sunspot-rails-http-basic-auth.gemspec b/sunspot-rails-http-basic-auth.gemspec index 7ffc7c2..643765d 100644 --- a/sunspot-rails-http-basic-auth.gemspec +++ b/sunspot-rails-http-basic-auth.gemspec @@ -15,9 +15,9 @@ Gem::Specification.new do |s| s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n") s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } s.require_path = 'lib' - + s.add_dependency 'sunspot_rails', '~> 1.3.0.rc4' - + s.add_development_dependency 'rspec', '~> 2.5' s.add_development_dependency 'fakeweb' end \ No newline at end of file From 5a84c6f79952c1caf32db98228acc87d290ef374 Mon Sep 17 00:00:00 2001 From: Nathan Woodhull Date: Sun, 22 Jan 2012 14:32:12 +1100 Subject: [PATCH 3/3] update to latest sunspot --- sunspot-rails-http-basic-auth.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sunspot-rails-http-basic-auth.gemspec b/sunspot-rails-http-basic-auth.gemspec index 6e7164c..ad44af3 100644 --- a/sunspot-rails-http-basic-auth.gemspec +++ b/sunspot-rails-http-basic-auth.gemspec @@ -16,7 +16,7 @@ Gem::Specification.new do |s| s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } s.require_path = 'lib' - s.add_dependency 'sunspot_rails', '~> 1.2.1' + s.add_dependency 'sunspot_rails', '~> 1.3.0' s.add_development_dependency 'rspec', '~> 2.5' s.add_development_dependency 'fakeweb'