thinking-sphinx 1.3.19 → 1.3.20
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.
- data/VERSION +1 -1
- data/features/thinking_sphinx/models/alpha.rb +1 -0
- data/lib/thinking_sphinx.rb +1 -0
- data/lib/thinking_sphinx/auto_version.rb +2 -0
- data/lib/thinking_sphinx/bundled_search.rb +44 -0
- data/lib/thinking_sphinx/search.rb +8 -12
- data/spec/thinking_sphinx/auto_version_spec.rb +8 -0
- data/tasks/distribution.rb +1 -1
- data/tasks/testing.rb +1 -1
- metadata +11 -15
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.3.
|
1
|
+
1.3.20
|
data/lib/thinking_sphinx.rb
CHANGED
@@ -10,6 +10,7 @@ require 'thinking_sphinx/property'
|
|
10
10
|
require 'thinking_sphinx/active_record'
|
11
11
|
require 'thinking_sphinx/association'
|
12
12
|
require 'thinking_sphinx/attribute'
|
13
|
+
require 'thinking_sphinx/bundled_search'
|
13
14
|
require 'thinking_sphinx/configuration'
|
14
15
|
require 'thinking_sphinx/context'
|
15
16
|
require 'thinking_sphinx/excerpter'
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module ThinkingSphinx
|
2
|
+
class BundledSearch
|
3
|
+
attr_reader :client
|
4
|
+
|
5
|
+
def initialize
|
6
|
+
@searches = []
|
7
|
+
end
|
8
|
+
|
9
|
+
def search(*args)
|
10
|
+
@searches << ThinkingSphinx.search(*args)
|
11
|
+
@searches.last.append_to client
|
12
|
+
end
|
13
|
+
|
14
|
+
def search_for_ids(*args)
|
15
|
+
@searches << ThinkingSphinx.search_for_ids(*args)
|
16
|
+
@searches.last.append_to client
|
17
|
+
end
|
18
|
+
|
19
|
+
def searches
|
20
|
+
populate
|
21
|
+
@searches
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def client
|
27
|
+
@client ||= ThinkingSphinx::Configuration.instance.client
|
28
|
+
end
|
29
|
+
|
30
|
+
def populated?
|
31
|
+
@populated
|
32
|
+
end
|
33
|
+
|
34
|
+
def populate
|
35
|
+
return if populated?
|
36
|
+
|
37
|
+
@populated = true
|
38
|
+
|
39
|
+
client.run.each_with_index do |results, index|
|
40
|
+
searches[index].populate_from_queue results
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -57,20 +57,16 @@ module ThinkingSphinx
|
|
57
57
|
ThinkingSphinx.facets *args
|
58
58
|
end
|
59
59
|
|
60
|
-
def self.bundle_searches(enum)
|
61
|
-
|
60
|
+
def self.bundle_searches(enum = nil)
|
61
|
+
bundle = ThinkingSphinx::BundledSearch.new
|
62
62
|
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
client.run.each_with_index.collect { |results, index|
|
70
|
-
searches[index].populate_from_queue results
|
71
|
-
}
|
63
|
+
if enum.nil?
|
64
|
+
yield bundle
|
65
|
+
else
|
66
|
+
enum.each { |item| yield bundle, item }
|
67
|
+
end
|
72
68
|
|
73
|
-
searches
|
69
|
+
bundle.searches
|
74
70
|
end
|
75
71
|
|
76
72
|
def self.matching_fields(fields, bitmask)
|
@@ -22,6 +22,14 @@ describe ThinkingSphinx::AutoVersion do
|
|
22
22
|
ThinkingSphinx::AutoVersion.detect
|
23
23
|
end
|
24
24
|
|
25
|
+
it "should require 1.10-beta if that is the detected version" do
|
26
|
+
ThinkingSphinx::AutoVersion.should_receive(:require).
|
27
|
+
with('riddle/1.10')
|
28
|
+
|
29
|
+
@config.stub!(:version => '1.10-beta')
|
30
|
+
ThinkingSphinx::AutoVersion.detect
|
31
|
+
end
|
32
|
+
|
25
33
|
it "should output a warning if the detected version is something else" do
|
26
34
|
STDERR.should_receive(:puts)
|
27
35
|
|
data/tasks/distribution.rb
CHANGED
@@ -29,7 +29,7 @@ Jeweler::Tasks.new do |gem|
|
|
29
29
|
"spec/**/*_spec.rb"
|
30
30
|
]
|
31
31
|
|
32
|
-
gem.add_dependency 'activerecord', '>= 1.15.6'
|
32
|
+
gem.add_dependency 'activerecord', '>= 1.15.6', '< 3.0.0'
|
33
33
|
gem.add_dependency 'riddle', '>= 1.0.10'
|
34
34
|
gem.add_dependency 'after_commit', '>= 1.0.6'
|
35
35
|
|
data/tasks/testing.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thinking-sphinx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash: 61
|
5
4
|
prerelease: false
|
6
5
|
segments:
|
7
6
|
- 1
|
8
7
|
- 3
|
9
|
-
-
|
10
|
-
version: 1.3.
|
8
|
+
- 20
|
9
|
+
version: 1.3.20
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
12
|
- Pat Allan
|
@@ -15,7 +14,7 @@ autorequire:
|
|
15
14
|
bindir: bin
|
16
15
|
cert_chain: []
|
17
16
|
|
18
|
-
date: 2010-
|
17
|
+
date: 2010-09-03 00:00:00 +09:00
|
19
18
|
default_executable:
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
@@ -26,12 +25,18 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ">="
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
hash: 39
|
30
28
|
segments:
|
31
29
|
- 1
|
32
30
|
- 15
|
33
31
|
- 6
|
34
32
|
version: 1.15.6
|
33
|
+
- - <
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
segments:
|
36
|
+
- 3
|
37
|
+
- 0
|
38
|
+
- 0
|
39
|
+
version: 3.0.0
|
35
40
|
type: :runtime
|
36
41
|
version_requirements: *id001
|
37
42
|
- !ruby/object:Gem::Dependency
|
@@ -42,7 +47,6 @@ dependencies:
|
|
42
47
|
requirements:
|
43
48
|
- - ">="
|
44
49
|
- !ruby/object:Gem::Version
|
45
|
-
hash: 3
|
46
50
|
segments:
|
47
51
|
- 1
|
48
52
|
- 0
|
@@ -58,7 +62,6 @@ dependencies:
|
|
58
62
|
requirements:
|
59
63
|
- - ">="
|
60
64
|
- !ruby/object:Gem::Version
|
61
|
-
hash: 27
|
62
65
|
segments:
|
63
66
|
- 1
|
64
67
|
- 0
|
@@ -74,7 +77,6 @@ dependencies:
|
|
74
77
|
requirements:
|
75
78
|
- - ">="
|
76
79
|
- !ruby/object:Gem::Version
|
77
|
-
hash: 3
|
78
80
|
segments:
|
79
81
|
- 0
|
80
82
|
version: "0"
|
@@ -88,7 +90,6 @@ dependencies:
|
|
88
90
|
requirements:
|
89
91
|
- - ">="
|
90
92
|
- !ruby/object:Gem::Version
|
91
|
-
hash: 13
|
92
93
|
segments:
|
93
94
|
- 1
|
94
95
|
- 2
|
@@ -104,7 +105,6 @@ dependencies:
|
|
104
105
|
requirements:
|
105
106
|
- - ">="
|
106
107
|
- !ruby/object:Gem::Version
|
107
|
-
hash: 3
|
108
108
|
segments:
|
109
109
|
- 0
|
110
110
|
version: "0"
|
@@ -118,7 +118,6 @@ dependencies:
|
|
118
118
|
requirements:
|
119
119
|
- - "="
|
120
120
|
- !ruby/object:Gem::Version
|
121
|
-
hash: 21
|
122
121
|
segments:
|
123
122
|
- 2
|
124
123
|
- 3
|
@@ -134,7 +133,6 @@ dependencies:
|
|
134
133
|
requirements:
|
135
134
|
- - "="
|
136
135
|
- !ruby/object:Gem::Version
|
137
|
-
hash: 31
|
138
136
|
segments:
|
139
137
|
- 1
|
140
138
|
- 2
|
@@ -150,7 +148,6 @@ dependencies:
|
|
150
148
|
requirements:
|
151
149
|
- - "="
|
152
150
|
- !ruby/object:Gem::Version
|
153
|
-
hash: 17
|
154
151
|
segments:
|
155
152
|
- 0
|
156
153
|
- 3
|
@@ -185,6 +182,7 @@ files:
|
|
185
182
|
- lib/thinking_sphinx/association.rb
|
186
183
|
- lib/thinking_sphinx/attribute.rb
|
187
184
|
- lib/thinking_sphinx/auto_version.rb
|
185
|
+
- lib/thinking_sphinx/bundled_search.rb
|
188
186
|
- lib/thinking_sphinx/class_facet.rb
|
189
187
|
- lib/thinking_sphinx/configuration.rb
|
190
188
|
- lib/thinking_sphinx/context.rb
|
@@ -343,7 +341,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
343
341
|
requirements:
|
344
342
|
- - ">="
|
345
343
|
- !ruby/object:Gem::Version
|
346
|
-
hash: 3
|
347
344
|
segments:
|
348
345
|
- 0
|
349
346
|
version: "0"
|
@@ -352,7 +349,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
352
349
|
requirements:
|
353
350
|
- - ">="
|
354
351
|
- !ruby/object:Gem::Version
|
355
|
-
hash: 3
|
356
352
|
segments:
|
357
353
|
- 0
|
358
354
|
version: "0"
|