flying-sphinx 0.5.0 → 0.5.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.
@@ -1,7 +1,7 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  Gem::Specification.new do |s|
3
3
  s.name = 'flying-sphinx'
4
- s.version = '0.5.0'
4
+ s.version = '0.5.1'
5
5
  s.authors = ['Pat Allan']
6
6
  s.email = 'pat@freelancing-gods.com'
7
7
  s.date = '2011-05-12'
@@ -17,12 +17,13 @@ Gem::Specification.new do |s|
17
17
  s.rubygems_version = %q{1.3.7}
18
18
 
19
19
  s.add_runtime_dependency 'thinking-sphinx', ['>= 0']
20
- s.add_runtime_dependency 'net-ssh', ['~> 2.0.23']
20
+ s.add_runtime_dependency 'net-ssh', ['>= 2.0.23']
21
21
  s.add_runtime_dependency 'multi_json', ['~> 1.0.1']
22
22
  s.add_runtime_dependency 'faraday', ['~> 0.6.1']
23
23
  s.add_runtime_dependency 'faraday_middleware', ['~> 0.6.3']
24
24
  s.add_runtime_dependency 'rash', ['~> 0.3.0']
25
25
 
26
+ s.add_development_dependency 'rake', ['0.8.7']
26
27
  s.add_development_dependency 'yajl-ruby', ['~> 0.8.2']
27
28
  s.add_development_dependency 'rspec', ['~> 2.5.0']
28
29
  s.add_development_dependency 'rcov', ['~> 0.9.9']
@@ -69,7 +69,7 @@ class FlyingSphinx::API
69
69
 
70
70
  puts "API Request: #{method} '#{path}'; params: #{data.inspect}"
71
71
  response = block.call
72
- puts "API Response: #{response.body.to_hash.inspect}"
72
+ puts "API Response: #{response.body.inspect}"
73
73
  return response
74
74
  end
75
75
 
@@ -12,6 +12,10 @@ class FlyingSphinx::DelayedDelta < ThinkingSphinx::Deltas::DefaultDelta
12
12
  def self.enqueue(object, priority = 0)
13
13
  return if duplicates_exist? object
14
14
 
15
+ enqueue_without_duplicates_check object, priority
16
+ end
17
+
18
+ def self.enqueue_without_duplicates_check(object, priority = 0)
15
19
  if defined?(Rails) && Rails.version.to_i <= 2
16
20
  ::Delayed::Job.enqueue(object, priority)
17
21
  else
@@ -55,11 +59,11 @@ class FlyingSphinx::DelayedDelta < ThinkingSphinx::Deltas::DefaultDelta
55
59
  delayed_job_priority
56
60
  )
57
61
 
58
- Delayed::Job.enqueue(
62
+ self.class.enqueue_without_duplicates_check(
59
63
  FlyingSphinx::FlagAsDeletedJob.new(
60
64
  model.core_index_names, instance.sphinx_document_id
61
65
  ),
62
- :priority => delayed_job_priority
66
+ delayed_job_priority
63
67
  ) if instance
64
68
 
65
69
  true
@@ -34,6 +34,8 @@ class FlyingSphinx::IndexRequest
34
34
  end
35
35
 
36
36
  def status_message
37
+ raise "Index Request failed to start. Something's not right!" if @index_id.nil?
38
+
37
39
  status = request_status
38
40
  case status
39
41
  when 'FINISHED'
@@ -0,0 +1,12 @@
1
+ require 'flying_sphinx'
2
+
3
+ config = FlyingSphinx::Configuration.new
4
+
5
+ ThinkingSphinx::Configuration.instance.address = config.host
6
+ ThinkingSphinx::Configuration.instance.port = config.port
7
+ ThinkingSphinx::Configuration.instance.configuration.searchd.client_key =
8
+ config.client_key
9
+
10
+ if ENV['DATABASE_URL'][/^mysql/].nil?
11
+ ThinkingSphinx.database_adapter = FlyingSphinx::HerokuSharedAdapter
12
+ end
@@ -37,7 +37,7 @@ class FlyingSphinx::Tunnel
37
37
  end
38
38
 
39
39
  def db_port
40
- db_config[:port]
40
+ db_config[:port] || 5432
41
41
  end
42
42
 
43
43
  def db_config
@@ -137,6 +137,8 @@ describe FlyingSphinx::IndexRequest do
137
137
 
138
138
  before :each do
139
139
  api.stub(:post => index_response)
140
+
141
+ index_request.instance_variable_set :@index_id, 42
140
142
  end
141
143
 
142
144
  it "returns with a positive message on success" do
@@ -162,6 +164,14 @@ describe FlyingSphinx::IndexRequest do
162
164
 
163
165
  index_request.status_message.should == "Unknown index response: 'UNKNOWN'."
164
166
  end
167
+
168
+ it "raises a warning if the index id isn't set" do
169
+ index_request.instance_variable_set :@index_id, nil
170
+
171
+ lambda {
172
+ index_request.status_message
173
+ }.should raise_error
174
+ end
165
175
  end
166
176
 
167
177
  describe "#display_name" do
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: flying-sphinx
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.5.0
5
+ version: 0.5.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Pat Allan
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirement: &id002 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
- - - ~>
33
+ - - ">="
34
34
  - !ruby/object:Gem::Version
35
35
  version: 2.0.23
36
36
  type: :runtime
@@ -80,71 +80,82 @@ dependencies:
80
80
  type: :runtime
81
81
  version_requirements: *id006
82
82
  - !ruby/object:Gem::Dependency
83
- name: yajl-ruby
83
+ name: rake
84
84
  prerelease: false
85
85
  requirement: &id007 !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - "="
89
+ - !ruby/object:Gem::Version
90
+ version: 0.8.7
91
+ type: :development
92
+ version_requirements: *id007
93
+ - !ruby/object:Gem::Dependency
94
+ name: yajl-ruby
95
+ prerelease: false
96
+ requirement: &id008 !ruby/object:Gem::Requirement
86
97
  none: false
87
98
  requirements:
88
99
  - - ~>
89
100
  - !ruby/object:Gem::Version
90
101
  version: 0.8.2
91
102
  type: :development
92
- version_requirements: *id007
103
+ version_requirements: *id008
93
104
  - !ruby/object:Gem::Dependency
94
105
  name: rspec
95
106
  prerelease: false
96
- requirement: &id008 !ruby/object:Gem::Requirement
107
+ requirement: &id009 !ruby/object:Gem::Requirement
97
108
  none: false
98
109
  requirements:
99
110
  - - ~>
100
111
  - !ruby/object:Gem::Version
101
112
  version: 2.5.0
102
113
  type: :development
103
- version_requirements: *id008
114
+ version_requirements: *id009
104
115
  - !ruby/object:Gem::Dependency
105
116
  name: rcov
106
117
  prerelease: false
107
- requirement: &id009 !ruby/object:Gem::Requirement
118
+ requirement: &id010 !ruby/object:Gem::Requirement
108
119
  none: false
109
120
  requirements:
110
121
  - - ~>
111
122
  - !ruby/object:Gem::Version
112
123
  version: 0.9.9
113
124
  type: :development
114
- version_requirements: *id009
125
+ version_requirements: *id010
115
126
  - !ruby/object:Gem::Dependency
116
127
  name: fakeweb
117
128
  prerelease: false
118
- requirement: &id010 !ruby/object:Gem::Requirement
129
+ requirement: &id011 !ruby/object:Gem::Requirement
119
130
  none: false
120
131
  requirements:
121
132
  - - ~>
122
133
  - !ruby/object:Gem::Version
123
134
  version: 1.3.0
124
135
  type: :development
125
- version_requirements: *id010
136
+ version_requirements: *id011
126
137
  - !ruby/object:Gem::Dependency
127
138
  name: fakeweb-matcher
128
139
  prerelease: false
129
- requirement: &id011 !ruby/object:Gem::Requirement
140
+ requirement: &id012 !ruby/object:Gem::Requirement
130
141
  none: false
131
142
  requirements:
132
143
  - - ~>
133
144
  - !ruby/object:Gem::Version
134
145
  version: 1.2.2
135
146
  type: :development
136
- version_requirements: *id011
147
+ version_requirements: *id012
137
148
  - !ruby/object:Gem::Dependency
138
149
  name: delayed_job
139
150
  prerelease: false
140
- requirement: &id012 !ruby/object:Gem::Requirement
151
+ requirement: &id013 !ruby/object:Gem::Requirement
141
152
  none: false
142
153
  requirements:
143
154
  - - ~>
144
155
  - !ruby/object:Gem::Version
145
156
  version: 2.1.4
146
157
  type: :development
147
- version_requirements: *id012
158
+ version_requirements: *id013
148
159
  description: Hooks Thinking Sphinx into the Flying Sphinx service
149
160
  email: pat@freelancing-gods.com
150
161
  executables: []
@@ -159,7 +170,6 @@ files:
159
170
  - LICENCE
160
171
  - README.textile
161
172
  - Rakefile
162
- - VERSION
163
173
  - flying-sphinx.gemspec
164
174
  - keys/key
165
175
  - lib/flying-sphinx.rb
@@ -172,6 +182,7 @@ files:
172
182
  - lib/flying_sphinx/index_request.rb
173
183
  - lib/flying_sphinx/rails.rb
174
184
  - lib/flying_sphinx/railtie.rb
185
+ - lib/flying_sphinx/sinatra.rb
175
186
  - lib/flying_sphinx/tasks.rb
176
187
  - lib/flying_sphinx/tunnel.rb
177
188
  - spec/spec_helper.rb
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.5.0