acts_as_indexed 0.8.3 → 0.9.0
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 +5 -5
- data/CHANGELOG.md +231 -0
- data/Gemfile +7 -4
- data/README.rdoc +1 -0
- data/Rakefile +10 -0
- data/TODO +9 -0
- data/VERSION +1 -1
- data/acts_as_indexed.gemspec +16 -15
- data/lib/acts_as_indexed/class_methods.rb +56 -20
- data/lib/acts_as_indexed/configuration.rb +2 -2
- data/lib/acts_as_indexed.rb +2 -0
- data/lib/will_paginate_search.rb +2 -2
- data/test/integration/acts_as_indexed_test.rb +6 -6
- data/test/integration/will_paginate_search_test.rb +1 -2
- data/test/integration_test_helper.rb +6 -5
- data/test/unit/configuration_test.rb +3 -3
- data/test/unit/search_atom_test.rb +2 -2
- data/test/unit_test_helper.rb +9 -6
- metadata +12 -12
- data/.travis.yml +0 -14
- data/CHANGELOG +0 -177
- data/Gemfile.lock +0 -33
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 2105cca0ae741b470e907e102d7fd28c9fa8085a8e56f15a9a762c6b999d14bc
|
4
|
+
data.tar.gz: f49826806af799bce91dee9f39fb648e5a772cda6600e89ea4b9cb798816892a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc94b8bb0057c577aacfe2a3f917300995fec76ae971f12485e124915a60815ecc427d49548ce467c7a8f23ccc0e5c4e98f3e49bfef1e41c356f0e792e6cb3be
|
7
|
+
data.tar.gz: c57f65cdce75d9df799240ee978a7310a8a33dd057a53b835b8d8598616c75fe315062c6d16eaef004e361e72e58a954379f2e6f4e61f131992322ab67baed7e
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,231 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## 0.9.0 [25 August 2023]
|
4
|
+
|
5
|
+
Thanks to Ryan Kopf for reviewing PRs, fixing the broken CI, and tidying things up to make this release possible.
|
6
|
+
|
7
|
+
- Now tested on Ruby 3.0 and Ruby 3.1. [#70](https://github.com/dougal/acts_as_indexed/pull/70). [[ryankopf](https://github.com/ryankopf) - Ryan Kopf]
|
8
|
+
- Remove deprecated Fixnum references. [#62](https://github.com/dougal/acts_as_indexed/pull/62). [[yez](https://github.com/yez) - Jake Yesbeck]
|
9
|
+
- Delete Gemfile.lock from repo. [#68](https://github.com/dougal/acts_as_indexed/pull/68). [[parndt](https://github.com/parndt) - Philip Arndt]
|
10
|
+
- Bump i18n from 0.6.1 to 0.9.5. [#64](https://github.com/dougal/acts_as_indexed/pull/64)
|
11
|
+
- Bump tzinfo from 0.3.35 to 0.3.61. [#66](https://github.com/dougal/acts_as_indexed/pull/66)
|
12
|
+
- Bump will_paginate from 3.0.3 to 3.0.5. [#67](https://github.com/dougal/acts_as_indexed/pull/67)
|
13
|
+
|
14
|
+
## 0.8.3 [17 February 2013]
|
15
|
+
|
16
|
+
- Now tested on Ruby 2.0.
|
17
|
+
- Fixed issue where underscores were not stripped by the pre-tokenizer.
|
18
|
+
|
19
|
+
## 0.8.2 [27 January 2013]
|
20
|
+
|
21
|
+
- Full review and update of test examples.
|
22
|
+
- Fixed bug where all records matching resulted in an ID rather than scored order. [phurni - Pascal Hurni]
|
23
|
+
- Fixed bug where records were returned in order of lowest-score first. [phurni - Pascal Hurni]
|
24
|
+
- Fixed bug where 1.8.7 would fail CI tests. [parndt - Philip Arndt]
|
25
|
+
- 70x performance improvement for non-changed record updates.
|
26
|
+
- Added a benchmark suite.
|
27
|
+
- Updated README install instructions. [gudata - Ivaylo Bardarov]
|
28
|
+
|
29
|
+
## 0.8.1 [21 December 2012]
|
30
|
+
|
31
|
+
- Fixed bug where record count was not correctly updated on bulk add. [phurni - Pascal Hurni]
|
32
|
+
|
33
|
+
## 0.8.0 [20 December 2012]
|
34
|
+
|
35
|
+
- Fixed bug where intentional hyphenation was treated as a negative query. Fixes #31.
|
36
|
+
- Fixed bug where will_paginate_search was not being required. Fixes #23.
|
37
|
+
- Fixed bug where quoted phrases were matched across field boundaries. [novalis - David Turner]
|
38
|
+
- Fixed bug where records with indentical match-rankings were returned in different orders under different Ruby implementations.
|
39
|
+
- Storage is now process and thread-safe. Fixes issue #34. [rsamoilov - Roman Samoilov]
|
40
|
+
- Added configuration option to force is-Windows mode for storage. Fixes issues #32, #39.
|
41
|
+
- Added multiple Gemfiles for Travis CI. https://travis-ci.org/dougal/acts_as_indexed
|
42
|
+
- Acts as Indexed can now be tested stand-alone without a generated Rails app.
|
43
|
+
- ModelKlass.build_index is now a public method.
|
44
|
+
|
45
|
+
## 0.7.8 [14 March 2011]
|
46
|
+
|
47
|
+
- Fixed bug with file renaming on Windows. Fixes issue #21. [gabynamiman - Gabriel Namiman]
|
48
|
+
|
49
|
+
## 0.7.7 [14 November 2011]
|
50
|
+
|
51
|
+
- Fixed bug with out-of-date indexes on Windows. Fixes issue #20. [parndt - Philip Arndt]
|
52
|
+
|
53
|
+
## 0.7.6 [24th October 2011]
|
54
|
+
|
55
|
+
- Removed support for atomic writes under Windows. Fixes issue #15.
|
56
|
+
|
57
|
+
## 0.7.5 [14th October 2011]
|
58
|
+
|
59
|
+
- Screwup fix release.
|
60
|
+
|
61
|
+
## 0.7.4 [13th October 2011]
|
62
|
+
|
63
|
+
- Default index location is now in tmp directory. [parndt - Philip Arndt]
|
64
|
+
- Fixed a bug where namespaced models would have directory names containing colons. [ugisozols - Uģis Ozols]
|
65
|
+
|
66
|
+
## 0.7.3 [3rd July 2011]
|
67
|
+
|
68
|
+
- Support for non-default primary keys. [ttoomey - Theron Toomey]
|
69
|
+
- Fixed issue with file-locking on JRuby. [banderso - Ben Anderson]
|
70
|
+
|
71
|
+
## 0.7.2 [31st March 2011]
|
72
|
+
|
73
|
+
- Fixed bug with ranking of records [Christopher Souvey - bug report]
|
74
|
+
- Fixed a bug with the slicing of records before AR order is applied. [Christopher Souvey - bug report]
|
75
|
+
- Fixed bug with slicing of id-only results.
|
76
|
+
- Error now raised when combining ids_only with find options other than limit and offset.
|
77
|
+
- Can now disable auto-indexing. Useful for large test suites.
|
78
|
+
|
79
|
+
## 0.7.1 [22nd February 2011]
|
80
|
+
|
81
|
+
- Removed file locking on Microsoft Windows as it is unsupported.
|
82
|
+
|
83
|
+
## 0.7.0 [11th February 2011]
|
84
|
+
|
85
|
+
- Threadsafe support. Index files are now locked for changes, and atomically written.
|
86
|
+
- Configurable case-sensitivity.
|
87
|
+
- Improved performance of index builds.
|
88
|
+
- Now warns on old version of the index.
|
89
|
+
- Upgrade instructions added to README. [ionas - Florent Guilleux]
|
90
|
+
|
91
|
+
## 0.6.7 [7th February 2011]
|
92
|
+
|
93
|
+
- find_by_index and paginate_search are no longer deprecated.
|
94
|
+
- Improved documentation.
|
95
|
+
- Storage is now its own class to allow future development of locking and pluggable backends.
|
96
|
+
|
97
|
+
## 0.6.6 [31st August 2010]
|
98
|
+
|
99
|
+
- Now Heroku compatible out of the box, index is created in tmp when root dir is non-writable. [parndt - Philip Arndt - Great suggestion]
|
100
|
+
- Fixed a require path issue on 1.9.2.
|
101
|
+
- Fixed an issue with index_file location on Rails 3.0.0 final.
|
102
|
+
|
103
|
+
## 0.6.5 [19th August 2010]
|
104
|
+
|
105
|
+
- Reintroduced support for older version of Ruby which do not implement Array#exclude? [bug report by Andy Eggers]
|
106
|
+
- Using Bundler to manage development dependencies.
|
107
|
+
|
108
|
+
## 0.6.4 [16th August 2010]
|
109
|
+
|
110
|
+
- Added starts-with query type [nilbus - Edward Anderson]
|
111
|
+
- Various fixes and improvements.
|
112
|
+
- Real names given for all contributors.
|
113
|
+
|
114
|
+
## 0.6.3 [5th July 2010]
|
115
|
+
|
116
|
+
- Index file path can now be defined as a Pathname as well as an array. [parndt - Philip Arndt]
|
117
|
+
- Can now define which records are indexed and which are not via an :if proc. [madpilot - Myles Eftos]
|
118
|
+
- Lots of tidying up. [parndt - Philip Arndt]
|
119
|
+
- Rails 3 fixes. [myabc - Alex Coles]
|
120
|
+
|
121
|
+
## 0.6.2 [11th June 2010]
|
122
|
+
|
123
|
+
- Now available as a Gem as well as the original plugin. [parndt - Philip Arndt - Thanks for doing most of the hard work.]
|
124
|
+
|
125
|
+
## 0.6.0 [10th June 2010]
|
126
|
+
|
127
|
+
- Now supports Rails 3.x.x as well as Rails 2.x.x.
|
128
|
+
- Added global configuration options.
|
129
|
+
- Now recommending using with_query scope for searching.
|
130
|
+
- Deprecated find_with_index and will_paginate_search methods.
|
131
|
+
|
132
|
+
## 0.5.3 [6th June 2010]
|
133
|
+
|
134
|
+
- Now supports non-standard table names automatically. [nandalopes - Fernanda Lopes]
|
135
|
+
|
136
|
+
## 0.5.2 [3rd May 2010]
|
137
|
+
|
138
|
+
- Fix for Errno::ERANGE error related to certain Math.log calculations. [parndt - Philip Arndt]
|
139
|
+
- Improved index detection in a shared-directory environment. [bob-p - Thomas Pomfret]
|
140
|
+
|
141
|
+
## 0.5.1 [11 June 2009]
|
142
|
+
|
143
|
+
- Fixed Ruby 1.8.6 compatibility.
|
144
|
+
|
145
|
+
## 0.5.0 [24 April 2009]
|
146
|
+
|
147
|
+
- Ruby 1.9 and Rails 2.3 compatibility.
|
148
|
+
- Index location can now be set. Provides Heroku compatibility.
|
149
|
+
- Better errors on bad options.
|
150
|
+
- ActiveRecord order argument overrides ranking returned by find_by_index.
|
151
|
+
- Various test environment improvements
|
152
|
+
- Various Bugfixes
|
153
|
+
|
154
|
+
## 0.4.6 [10 August 2008]
|
155
|
+
|
156
|
+
- Rolled in pagination.
|
157
|
+
|
158
|
+
## 0.4.5 [04 February 2008]
|
159
|
+
|
160
|
+
- Fixed a bug where the find_options :limit would be added to the :offset, which caused incorrectly sized collections to be returned.
|
161
|
+
- Fixed an 'ambiguous column' error when using the :includes find_options key.
|
162
|
+
|
163
|
+
## 0.4.4 [29 November 2007]
|
164
|
+
|
165
|
+
- Fixed a bug causing the weighting section of the code to error out.
|
166
|
+
|
167
|
+
## 0.4.3 [27 September 2007]
|
168
|
+
|
169
|
+
- Fixed a bug causing records to be deleted from index during record updates.
|
170
|
+
|
171
|
+
## 0.4.2 [27 September 2007]
|
172
|
+
|
173
|
+
- Fixed a bug causing identically ranked records to be lost.
|
174
|
+
|
175
|
+
## 0.4.1 [22 September 2007]
|
176
|
+
|
177
|
+
- Fixed a bug in the main search method.
|
178
|
+
|
179
|
+
## 0.4.0 [22 September 2007]
|
180
|
+
|
181
|
+
- Search results now ranked by relevance.
|
182
|
+
|
183
|
+
## 0.3.3 [20 September 2007]
|
184
|
+
|
185
|
+
- Fixed index update bug where deleted atoms were not removed from index.
|
186
|
+
- Improved performance of quoted queries.
|
187
|
+
- Improved performance of index updates.
|
188
|
+
- When building a full index, records are retrieved and indexed in batches to reduce memory consumption.
|
189
|
+
|
190
|
+
## 0.3.2 [19 September 2007]
|
191
|
+
|
192
|
+
- Fixed index update bug.
|
193
|
+
|
194
|
+
## 0.3.1 [18 September 2007]
|
195
|
+
|
196
|
+
- Added RDoc documentation comments.
|
197
|
+
|
198
|
+
## 0.3.0 [18 September 2007]
|
199
|
+
|
200
|
+
- Minor bug fixes.
|
201
|
+
- min_word_size now works properly, with queries containing small words in
|
202
|
+
quotes or being preceded by a '+' symbol are now searched on.
|
203
|
+
|
204
|
+
## 0.2.2 [06 September 2007]
|
205
|
+
|
206
|
+
- Search now caches query results within a session. Call the search twice in an
|
207
|
+
action? Only runs once!
|
208
|
+
|
209
|
+
## 0.2.1 [05 September 2007]
|
210
|
+
|
211
|
+
- AR find options can now be passed to the search to allow finer control of
|
212
|
+
returned Model Objects.
|
213
|
+
|
214
|
+
## 0.2.0 [04 September 2007]
|
215
|
+
|
216
|
+
- Major performance improvements.
|
217
|
+
- Index segmentation can now be tuned.
|
218
|
+
|
219
|
+
## 0.1.1 [31 August 2007]
|
220
|
+
|
221
|
+
- Added a full set of tests.
|
222
|
+
- Fixed various set-manipulation based errors.
|
223
|
+
- Fixed a bug when searching for quoted phrases.
|
224
|
+
|
225
|
+
## 0.1.01 [31 August 2007]
|
226
|
+
|
227
|
+
- Fixed a casting bug occurring when adding non-string fields to the index.
|
228
|
+
|
229
|
+
## 0.1 [31 August 2007]
|
230
|
+
|
231
|
+
- Initial release.
|
data/Gemfile
CHANGED
@@ -1,9 +1,12 @@
|
|
1
1
|
source "http://rubygems.org"
|
2
2
|
|
3
3
|
group :test do
|
4
|
+
gem "sdoc"
|
4
5
|
gem "rake"
|
5
|
-
gem "
|
6
|
-
gem "
|
7
|
-
gem "
|
8
|
-
gem "
|
6
|
+
gem "minitest"
|
7
|
+
gem "mocha"#, "~> 0.9.11"
|
8
|
+
gem "sqlite3"#, "~> 1.3.5"
|
9
|
+
gem "activerecord"#, "~> 3.2.9"
|
10
|
+
gem "will_paginate"#, "~> 4.0"
|
11
|
+
gem "activesupport"
|
9
12
|
end
|
data/README.rdoc
CHANGED
data/Rakefile
CHANGED
@@ -28,6 +28,14 @@ Rake::TestTask.new('test:integration') do |t|
|
|
28
28
|
t.verbose = true
|
29
29
|
end
|
30
30
|
|
31
|
+
desc 'Run temp tests.'
|
32
|
+
Rake::TestTask.new('test:temp') do |t|
|
33
|
+
t.libs << 'test'
|
34
|
+
t.libs << 'lib'
|
35
|
+
t.pattern = 'test/integration/will_paginate_search_test.rb'
|
36
|
+
t.verbose = true
|
37
|
+
end
|
38
|
+
|
31
39
|
desc 'Run performance tests.'
|
32
40
|
Rake::TestTask.new('test:performance') do |t|
|
33
41
|
t.libs << 'test'
|
@@ -61,6 +69,8 @@ begin
|
|
61
69
|
gemspec.email = "dougal.s@gmail.com"
|
62
70
|
gemspec.homepage = "http://github.com/dougal/acts_as_indexed"
|
63
71
|
gemspec.authors = ["Douglas F Shearer"]
|
72
|
+
gemspec.files.exclude ".github/**/*"
|
73
|
+
gemspec.files.exclude ".travis.yml"
|
64
74
|
end
|
65
75
|
Jeweler::GemcutterTasks.new
|
66
76
|
rescue LoadError
|
data/TODO
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
|
2
|
+
- Way to config pluginables.
|
3
|
+
- Alternative Unicode normalizer
|
4
|
+
- Alternative stemming normalizer - PROBABLY NOT
|
5
|
+
- Sort out atom/word/token fuckupery
|
6
|
+
|
7
|
+
Ways to speed up updates?
|
8
|
+
- queue up operations on files the commit all-at-once OR
|
9
|
+
- Do atom subtraction and deletion for updated record and only write changes.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.9.0
|
data/acts_as_indexed.gemspec
CHANGED
@@ -2,24 +2,26 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: acts_as_indexed 0.9.0 ruby lib
|
5
6
|
|
6
7
|
Gem::Specification.new do |s|
|
7
|
-
s.name = "acts_as_indexed"
|
8
|
-
s.version = "0.
|
8
|
+
s.name = "acts_as_indexed".freeze
|
9
|
+
s.version = "0.9.0"
|
9
10
|
|
10
|
-
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
-
s.
|
12
|
-
s.
|
13
|
-
s.
|
14
|
-
s.
|
11
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib".freeze]
|
13
|
+
s.authors = ["Douglas F Shearer".freeze]
|
14
|
+
s.date = "2023-08-25"
|
15
|
+
s.description = "Acts As Indexed is a plugin which provides a pain-free way to add fulltext search to your Ruby on Rails app".freeze
|
16
|
+
s.email = "dougal.s@gmail.com".freeze
|
15
17
|
s.extra_rdoc_files = [
|
16
|
-
"
|
18
|
+
"CHANGELOG.md",
|
19
|
+
"README.rdoc",
|
20
|
+
"TODO"
|
17
21
|
]
|
18
22
|
s.files = [
|
19
|
-
".
|
20
|
-
"CHANGELOG",
|
23
|
+
"CHANGELOG.md",
|
21
24
|
"Gemfile",
|
22
|
-
"Gemfile.lock",
|
23
25
|
"MIT-LICENSE",
|
24
26
|
"README.rdoc",
|
25
27
|
"Rakefile",
|
@@ -61,9 +63,8 @@ Gem::Specification.new do |s|
|
|
61
63
|
"test/unit/tokenizer_test.rb",
|
62
64
|
"test/unit_test_helper.rb"
|
63
65
|
]
|
64
|
-
s.homepage = "http://github.com/dougal/acts_as_indexed"
|
65
|
-
s.
|
66
|
-
s.
|
67
|
-
s.summary = "Acts As Indexed is a plugin which provides a pain-free way to add fulltext search to your Ruby on Rails app"
|
66
|
+
s.homepage = "http://github.com/dougal/acts_as_indexed".freeze
|
67
|
+
s.rubygems_version = "3.3.7".freeze
|
68
|
+
s.summary = "Acts As Indexed is a plugin which provides a pain-free way to add fulltext search to your Ruby on Rails app".freeze
|
68
69
|
end
|
69
70
|
|
@@ -34,7 +34,10 @@ module ActsAsIndexed
|
|
34
34
|
named_scope :with_query, lambda { |query| { :conditions => ["#{table_name}.#{primary_key} IN (?)", search_index(query, {}, {:ids_only => true}) ] } }
|
35
35
|
end
|
36
36
|
|
37
|
-
|
37
|
+
unless respond_to?(:aai_fields) && respond_to?(:aai_config)
|
38
|
+
cattr_accessor :aai_config, :aai_fields
|
39
|
+
end
|
40
|
+
#cattr_accessor :aai_config, :aai_fields
|
38
41
|
|
39
42
|
self.aai_fields = options.delete(:fields)
|
40
43
|
raise(ArgumentError, 'no fields specified') if self.aai_fields.nil? || self.aai_fields.empty?
|
@@ -134,25 +137,58 @@ module ActsAsIndexed
|
|
134
137
|
|
135
138
|
return part_query if options[:ids_only]
|
136
139
|
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
records = find(:all, :conditions => [ "#{table_name}.#{primary_key} IN (?)", part_query])
|
141
|
-
|
142
|
-
if find_options.include?(:order)
|
143
|
-
records # Just return the records without ranking them.
|
140
|
+
# New 2023 way to find the records.
|
141
|
+
conditions = ["#{table_name}.#{primary_key} IN (?)", part_query]
|
142
|
+
records = where(conditions)
|
144
143
|
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
144
|
+
if find_options[:conditions]
|
145
|
+
records = records.where(find_options[:conditions])
|
146
|
+
end
|
147
|
+
if find_options[:joins]
|
148
|
+
records = records.joins(find_options[:joins])
|
149
|
+
end
|
150
|
+
if find_options[:includes]
|
151
|
+
records = records.includes(find_options[:includes])
|
152
|
+
end
|
153
|
+
if find_options[:limit]
|
154
|
+
records = records.limit(find_options[:limit])
|
155
|
+
end
|
156
|
+
if find_options[:offset]
|
157
|
+
records = records.offset(find_options[:offset])
|
158
|
+
end
|
159
|
+
if find_options[:order]
|
160
|
+
records = records.order(find_options[:order])
|
161
|
+
return records # Just return the records without ranking them.
|
162
|
+
end
|
151
163
|
|
152
|
-
|
153
|
-
|
164
|
+
# Results come back in random order from SQL, so order again.
|
165
|
+
ranked_records = {}
|
166
|
+
records.each do |r|
|
167
|
+
ranked_records[r] = @query_cache[query][r.id]
|
154
168
|
end
|
155
169
|
|
170
|
+
sort(ranked_records.to_a).map{ |r| r.first }
|
171
|
+
|
172
|
+
# Old way, deprecated and broken.
|
173
|
+
# with_scope :find => find_options do
|
174
|
+
# # Doing the find like this eliminates the possibility of errors occuring
|
175
|
+
# # on either missing records (out-of-sync) or an empty results array.
|
176
|
+
# records = find(:all, :conditions => [ "#{table_name}.#{primary_key} IN (?)", part_query])
|
177
|
+
#
|
178
|
+
# if find_options.include?(:order)
|
179
|
+
# records # Just return the records without ranking them.
|
180
|
+
#
|
181
|
+
# else
|
182
|
+
# # Results come back in random order from SQL, so order again.
|
183
|
+
# ranked_records = ActiveSupport::OrderedHash.new
|
184
|
+
# records.each do |r|
|
185
|
+
# ranked_records[r] = @query_cache[query][r.id]
|
186
|
+
# end
|
187
|
+
#
|
188
|
+
# sort(ranked_records.to_a).map{ |r| r.first }
|
189
|
+
# end
|
190
|
+
# end
|
191
|
+
|
156
192
|
end
|
157
193
|
|
158
194
|
# Builds an index from scratch for the current model class.
|
@@ -162,7 +198,7 @@ module ActsAsIndexed
|
|
162
198
|
return if aai_config.index_file.directory?
|
163
199
|
|
164
200
|
index = new_index
|
165
|
-
find_in_batches(
|
201
|
+
find_in_batches(batch_size: 500) do |records|
|
166
202
|
index.add_records(records)
|
167
203
|
end
|
168
204
|
end
|
@@ -174,10 +210,10 @@ module ActsAsIndexed
|
|
174
210
|
def sort(ranked_records)
|
175
211
|
ranked_records.sort { |a, b|
|
176
212
|
a_score = a.last
|
177
|
-
a_id = a.first.is_a?(
|
213
|
+
a_id = a.first.is_a?(Integer) ? a.first : a.first.id
|
178
214
|
|
179
215
|
b_score = b.last
|
180
|
-
b_id = b.first.is_a?(
|
216
|
+
b_id = b.first.is_a?(Integer) ? b.first : b.first.id
|
181
217
|
|
182
218
|
if a_score == b_score
|
183
219
|
a_id <=> b_id
|
@@ -194,4 +230,4 @@ module ActsAsIndexed
|
|
194
230
|
|
195
231
|
end
|
196
232
|
|
197
|
-
end
|
233
|
+
end
|
@@ -4,7 +4,7 @@ module ActsAsIndexed
|
|
4
4
|
|
5
5
|
# Sets the location for the index. Specify as an array. The default, for
|
6
6
|
# example, would be set as [Rails.root,'tmp','index].
|
7
|
-
attr_accessor :index_file
|
7
|
+
#attr_accessor :index_file
|
8
8
|
|
9
9
|
# Tuning value for the index partitioning. Larger values result in quicker
|
10
10
|
# searches, but slower indexing. Default is 3.
|
@@ -18,7 +18,7 @@ module ActsAsIndexed
|
|
18
18
|
# Proc that allows you to turn on or off index for a record.
|
19
19
|
# Useful if you don't want an object to be placed in the index, such as a
|
20
20
|
# draft post.
|
21
|
-
|
21
|
+
attr_writer :if_proc
|
22
22
|
|
23
23
|
# Enable or disable case sensitivity.
|
24
24
|
# Set to true to enable.
|
data/lib/acts_as_indexed.rb
CHANGED
data/lib/will_paginate_search.rb
CHANGED
@@ -44,7 +44,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
44
44
|
def test_updates_index
|
45
45
|
p = Post.create(:title => 'A special title', :body => 'foo bar bla bla bla')
|
46
46
|
assert find_with_index_ids('title').include?(p.id)
|
47
|
-
p.
|
47
|
+
p.update(:title => 'No longer special')
|
48
48
|
assert !find_with_index_ids('title').include?(p.id)
|
49
49
|
end
|
50
50
|
|
@@ -185,7 +185,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
185
185
|
# all records with that same atom from the index.
|
186
186
|
def test_update_record_bug
|
187
187
|
p = Post.find(6)
|
188
|
-
assert p.
|
188
|
+
assert p.update(:body => p.body + ' crane')
|
189
189
|
assert_equal 2, find_with_index_ids('crane').size
|
190
190
|
assert_equal 2, find_with_index_ids('ship').size
|
191
191
|
end
|
@@ -216,7 +216,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
216
216
|
|
217
217
|
assert_equal 1, Post.find_with_index('crane', {}, { :no_query_cache => true, :ids_only => true}).size
|
218
218
|
p = Post.find(6)
|
219
|
-
assert p.
|
219
|
+
assert p.update(:visible => true)
|
220
220
|
assert_equal 1, Post.find_with_index('crane', {}, { :no_query_cache => true, :ids_only => true}).size
|
221
221
|
end
|
222
222
|
|
@@ -227,7 +227,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
227
227
|
|
228
228
|
assert_equal 1, Post.find_with_index('crane', {}, { :no_query_cache => true, :ids_only => true}).size
|
229
229
|
p = Post.find(6)
|
230
|
-
assert p.
|
230
|
+
assert p.update(:visible => false)
|
231
231
|
assert_equal 0, Post.find_with_index('crane',{},{ :no_query_cache => true, :ids_only => true}).size
|
232
232
|
end
|
233
233
|
|
@@ -238,7 +238,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
238
238
|
|
239
239
|
assert_equal 1, Post.find_with_index('crane', {}, { :no_query_cache => true, :ids_only => true}).size
|
240
240
|
p = Post.find(5)
|
241
|
-
assert p.
|
241
|
+
assert p.update(:visible => true)
|
242
242
|
assert_equal 2, Post.find_with_index('crane',{},{ :no_query_cache => true, :ids_only => true}).size
|
243
243
|
end
|
244
244
|
|
@@ -249,7 +249,7 @@ class ActsAsIndexedTest < ActiveSupport::TestCase
|
|
249
249
|
|
250
250
|
assert_equal [6], Post.find_with_index('crane', {}, { :no_query_cache => true, :ids_only => true})
|
251
251
|
|
252
|
-
posts(:wikipedia_article_5).
|
252
|
+
posts(:wikipedia_article_5).update(:title => 'A new title')
|
253
253
|
assert_equal [6], Post.find_with_index('crane',{},{ :no_query_cache => true, :ids_only => true})
|
254
254
|
end
|
255
255
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'integration_test_helper
|
1
|
+
require 'integration_test_helper'
|
2
2
|
|
3
3
|
class WillPaginateSearchTest < ActiveSupport::TestCase
|
4
4
|
fixtures :posts
|
@@ -10,7 +10,6 @@ class WillPaginateSearchTest < ActiveSupport::TestCase
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def test_paginate_search
|
13
|
-
|
14
13
|
assert_equal [5, 2, 1, 3, 6, 4], paginate_search(1, 10)
|
15
14
|
assert_equal [5, 2, 1], paginate_search(1, 3)
|
16
15
|
assert_equal [3, 6, 4], paginate_search(2, 3)
|
@@ -1,6 +1,5 @@
|
|
1
|
-
require '
|
1
|
+
require 'minitest/autorun'
|
2
2
|
require 'fileutils'
|
3
|
-
require 'rubygems'
|
4
3
|
|
5
4
|
require 'bundler/setup'
|
6
5
|
require 'active_record'
|
@@ -29,19 +28,21 @@ require test_path.parent.join('lib', 'acts_as_indexed').to_s
|
|
29
28
|
|
30
29
|
ActiveRecord::Base.logger = Logger.new(test_path.join('test.log').to_s)
|
31
30
|
ActiveRecord::Base.configurations = YAML::load(IO.read(test_path.join('config', 'database.yml').to_s))
|
32
|
-
ActiveRecord::Base.establish_connection(ENV['DB'] ||
|
31
|
+
ActiveRecord::Base.establish_connection(ENV['DB'] || :sqlite3)
|
33
32
|
|
34
33
|
# Load Schema
|
35
34
|
load(test_path.join('db', 'schema.rb').to_s)
|
36
35
|
|
37
36
|
# Load model.
|
38
37
|
$LOAD_PATH.unshift(test_path.join('fixtures').to_s)
|
38
|
+
require 'post'
|
39
39
|
|
40
40
|
class ActiveSupport::TestCase #:nodoc:
|
41
41
|
include ActiveRecord::TestFixtures
|
42
42
|
self.fixture_path = Pathname.new(File.expand_path('../', __FILE__)).join('fixtures').to_s
|
43
|
-
self.
|
44
|
-
self.use_instantiated_fixtures
|
43
|
+
self.use_transactional_tests = true
|
44
|
+
self.use_instantiated_fixtures = false
|
45
|
+
#fixtures :all
|
45
46
|
|
46
47
|
def destroy_index
|
47
48
|
FileUtils.rm_rf(index_loc)
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require 'unit_test_helper
|
1
|
+
require 'unit_test_helper'
|
2
2
|
include ActsAsIndexed
|
3
3
|
|
4
4
|
class ConfigurationTest < ActiveSupport::TestCase
|
@@ -35,7 +35,7 @@ class ConfigurationTest < ActiveSupport::TestCase
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def test_index_file_depth_should_raise_on_lower_than_1_value
|
38
|
-
assert_nothing_raised
|
38
|
+
assert_nothing_raised { config.index_file_depth = 1 }
|
39
39
|
|
40
40
|
e = assert_raise(ArgumentError) { config.index_file_depth = 0 }
|
41
41
|
assert_equal 'index_file_depth cannot be less than one (1)', e.message
|
@@ -49,7 +49,7 @@ class ConfigurationTest < ActiveSupport::TestCase
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def test_min_word_size_should_raise_on_lower_than_1_value
|
52
|
-
assert_nothing_raised
|
52
|
+
assert_nothing_raised { config.min_word_size = 1 }
|
53
53
|
|
54
54
|
e = assert_raise(ArgumentError) { config.min_word_size = 0 }
|
55
55
|
assert_equal 'min_word_size cannot be less than one (1)', e.message
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'unit_test_helper.rb'
|
2
2
|
include ActsAsIndexed
|
3
3
|
|
4
|
-
class SearchAtomTest < ActiveSupport::TestCase
|
4
|
+
class SearchAtomTest < ActiveSupport::TestCase
|
5
5
|
|
6
6
|
def test_should_create_a_new_instance
|
7
7
|
assert SearchAtom.new
|
@@ -48,7 +48,7 @@ class SearchAtomTest < ActiveSupport::TestCase
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def test_positions_should_return_nil
|
51
|
-
|
51
|
+
assert_nil build_search_atom.positions(456)
|
52
52
|
end
|
53
53
|
|
54
54
|
def test_remove_record
|
data/test/unit_test_helper.rb
CHANGED
@@ -1,9 +1,11 @@
|
|
1
|
-
require '
|
1
|
+
require 'minitest/autorun'
|
2
2
|
require 'fileutils'
|
3
|
-
require 'rubygems'
|
4
3
|
|
5
|
-
require 'bundler/setup'
|
6
|
-
require 'mocha'
|
4
|
+
# require 'bundler/setup'
|
5
|
+
# require 'mocha'
|
6
|
+
# require 'mocha/integration/test_unit'
|
7
|
+
require 'mocha/minitest'
|
8
|
+
require 'active_support/test_case'
|
7
9
|
|
8
10
|
# Mock out the required environment variables.
|
9
11
|
# Do this before requiring AAI.
|
@@ -16,5 +18,6 @@ class Rails
|
|
16
18
|
end
|
17
19
|
end
|
18
20
|
|
19
|
-
test_path = Pathname.new(File.expand_path('../', __FILE__))
|
20
|
-
require test_path.parent.join('lib', 'acts_as_indexed').to_s
|
21
|
+
# test_path = Pathname.new(File.expand_path('../', __FILE__))
|
22
|
+
# require test_path.parent.join('lib', 'acts_as_indexed').to_s
|
23
|
+
require_relative '../lib/acts_as_indexed'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: acts_as_indexed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Douglas F Shearer
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-08-25 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Acts As Indexed is a plugin which provides a pain-free way to add fulltext
|
14
14
|
search to your Ruby on Rails app
|
@@ -16,15 +16,16 @@ email: dougal.s@gmail.com
|
|
16
16
|
executables: []
|
17
17
|
extensions: []
|
18
18
|
extra_rdoc_files:
|
19
|
+
- CHANGELOG.md
|
19
20
|
- README.rdoc
|
21
|
+
- TODO
|
20
22
|
files:
|
21
|
-
- .
|
22
|
-
- CHANGELOG
|
23
|
+
- CHANGELOG.md
|
23
24
|
- Gemfile
|
24
|
-
- Gemfile.lock
|
25
25
|
- MIT-LICENSE
|
26
26
|
- README.rdoc
|
27
27
|
- Rakefile
|
28
|
+
- TODO
|
28
29
|
- VERSION
|
29
30
|
- acts_as_indexed.gemspec
|
30
31
|
- gemfiles/rails2_3.gemfile
|
@@ -65,24 +66,23 @@ files:
|
|
65
66
|
homepage: http://github.com/dougal/acts_as_indexed
|
66
67
|
licenses: []
|
67
68
|
metadata: {}
|
68
|
-
post_install_message:
|
69
|
+
post_install_message:
|
69
70
|
rdoc_options: []
|
70
71
|
require_paths:
|
71
72
|
- lib
|
72
73
|
required_ruby_version: !ruby/object:Gem::Requirement
|
73
74
|
requirements:
|
74
|
-
- -
|
75
|
+
- - ">="
|
75
76
|
- !ruby/object:Gem::Version
|
76
77
|
version: '0'
|
77
78
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
78
79
|
requirements:
|
79
|
-
- -
|
80
|
+
- - ">="
|
80
81
|
- !ruby/object:Gem::Version
|
81
82
|
version: '0'
|
82
83
|
requirements: []
|
83
|
-
|
84
|
-
|
85
|
-
signing_key:
|
84
|
+
rubygems_version: 3.3.7
|
85
|
+
signing_key:
|
86
86
|
specification_version: 4
|
87
87
|
summary: Acts As Indexed is a plugin which provides a pain-free way to add fulltext
|
88
88
|
search to your Ruby on Rails app
|
data/.travis.yml
DELETED
data/CHANGELOG
DELETED
@@ -1,177 +0,0 @@
|
|
1
|
-
===0.8.3 [17 February 2013]
|
2
|
-
- Now tested on Ruby 2.0.
|
3
|
-
- Fixed issue where underscores were not stripped by the pre-tokenizer.
|
4
|
-
|
5
|
-
===0.8.2 [27 January 2013]
|
6
|
-
- Full review and update of test examples.
|
7
|
-
- Fixed bug where all records matching resulted in an ID rather than scored order. [phurni - Pascal Hurni]
|
8
|
-
- Fixed bug where records were returned in order of lowest-score first. [phurni - Pascal Hurni]
|
9
|
-
- Fixed bug where 1.8.7 would fail CI tests. [parndt - Philip Arndt]
|
10
|
-
- 70x performance improvement for non-changed record updates.
|
11
|
-
- Added a benchmark suite.
|
12
|
-
- Updated README install instructions. [gudata - Ivaylo Bardarov]
|
13
|
-
|
14
|
-
===0.8.1 [21 December 2012]
|
15
|
-
- Fixed bug where record count was not correctly updated on bulk add. [phurni - Pascal Hurni]
|
16
|
-
|
17
|
-
===0.8.0 [20 December 2012]
|
18
|
-
- Fixed bug where intentional hyphenation was treated as a negative query. Fixes #31.
|
19
|
-
- Fixed bug where will_paginate_search was not being required. Fixes #23.
|
20
|
-
- Fixed bug where quoted phrases were matched across field boundaries. [novalis - David Turner]
|
21
|
-
- Fixed bug where records with identical match-rankings were returned in different orders under different Ruby implementations.
|
22
|
-
- Storage is now process and thread-safe. Fixes issue #34. [rsamoilov - Roman Samoilov]
|
23
|
-
- Added configuration option to force is-Windows mode for storage. Fixes issues #32, #39.
|
24
|
-
- Added multiple Gemfiles for Travis CI. https://travis-ci.org/dougal/acts_as_indexed
|
25
|
-
- Acts as Indexed can now be tested stand-alone without a generated Rails app.
|
26
|
-
- ModelKlass.build_index is now a public method.
|
27
|
-
|
28
|
-
===0.7.8 [14 March 2011]
|
29
|
-
- Fixed bug with file renaming on Windows. Fixes issue #21. [gabynamiman - Gabriel Namiman]
|
30
|
-
|
31
|
-
===0.7.7 [14 November 2011]
|
32
|
-
- Fixed bug with out-of-date indexes on Windows. Fixes issue #20. [parndt - Philip Arndt]
|
33
|
-
|
34
|
-
===0.7.6 [24th October 2011]
|
35
|
-
- Removed support for atomic writes under Windows. Fixes issue #15.
|
36
|
-
|
37
|
-
===0.7.5 [14th October 2011]
|
38
|
-
- Screwup fix release.
|
39
|
-
|
40
|
-
===0.7.4 [13th October 2011]
|
41
|
-
- Default index location is now in tmp directory. [parndt - Philip Arndt]
|
42
|
-
- Fixed a bug where namespaced models would have directory names containing colons. [ugisozols - Uģis Ozols]
|
43
|
-
|
44
|
-
===0.7.3 [3rd July 2011]
|
45
|
-
- Support for non-default primary keys. [ttoomey - Theron Toomey]
|
46
|
-
- Fixed issue with file-locking on JRuby. [banderso - Ben Anderson]
|
47
|
-
|
48
|
-
===0.7.2 [31st March 2011]
|
49
|
-
- Fixed bug with ranking of records [Christopher Souvey - bug report]
|
50
|
-
- Fixed a bug with the slicing of records before AR order is applied. [Christopher Souvey - bug report]
|
51
|
-
- Fixed bug with slicing of id-only results.
|
52
|
-
- Error now raised when combining ids_only with find options other than limit and offset.
|
53
|
-
- Can now disable auto-indexing. Useful for large test suites.
|
54
|
-
|
55
|
-
===0.7.1 [22nd February 2011]
|
56
|
-
- Removed file locking on Microsoft Windows as it is unsupported.
|
57
|
-
|
58
|
-
===0.7.0 [11th February 2011]
|
59
|
-
- Threadsafe support. Index files are now locked for changes, and atomically written.
|
60
|
-
- Configurable case-sensitivity.
|
61
|
-
- Improved performance of index builds.
|
62
|
-
- Now warns on old version of the index.
|
63
|
-
- Upgrade instructions added to README. [ionas - Florent Guilleux]
|
64
|
-
|
65
|
-
===0.6.7 [7th February 2011]
|
66
|
-
- find_by_index and paginate_search are no longer deprecated.
|
67
|
-
- Improved documentation.
|
68
|
-
- Storage is now its own class to allow future development of locking and pluggable backends.
|
69
|
-
|
70
|
-
===0.6.6 [31st August 2010]
|
71
|
-
- Now Heroku compatible out of the box, index is created in tmp when root dir is non-writable. [parndt - Philip Arndt - Great suggestion]
|
72
|
-
- Fixed a require path issue on 1.9.2.
|
73
|
-
- Fixed an issue with index_file location on Rails 3.0.0 final.
|
74
|
-
|
75
|
-
===0.6.5 [19th August 2010]
|
76
|
-
- Reintroduced support for older version of Ruby which do not implement Array#exclude? [bug report by Andy Eggers]
|
77
|
-
- Using Bundler to manage development dependencies.
|
78
|
-
|
79
|
-
===0.6.4 [16th August 2010]
|
80
|
-
- Added starts-with query type [nilbus - Edward Anderson]
|
81
|
-
- Various fixes and improvements.
|
82
|
-
- Real names given for all contributors.
|
83
|
-
|
84
|
-
===0.6.3 [5th July 2010]
|
85
|
-
- Index file path can now be defined as a Pathname as well as an array. [parndt - Philip Arndt]
|
86
|
-
- Can now define which records are indexed and which are not via an :if proc. [madpilot - Myles Eftos]
|
87
|
-
- Lots of tidying up. [parndt - Philip Arndt]
|
88
|
-
- Rails 3 fixes. [myabc - Alex Coles]
|
89
|
-
|
90
|
-
===0.6.2 [11th June 2010]
|
91
|
-
- Now available as a Gem as well as the original plugin. [parndt - Philip Arndt - Thanks for doing most of the hard work.]
|
92
|
-
|
93
|
-
===0.6.0 [10th June 2010]
|
94
|
-
- Now supports Rails 3.x.x as well as Rails 2.x.x.
|
95
|
-
- Added global configuration options.
|
96
|
-
- Now recommending using with_query scope for searching.
|
97
|
-
- Deprecated find_with_index and will_paginate_search methods.
|
98
|
-
|
99
|
-
===0.5.3 [6th June 2010]
|
100
|
-
- Now supports non-standard table names automatically. [nandalopes - Fernanda Lopes]
|
101
|
-
|
102
|
-
===0.5.2 [3rd May 2010]
|
103
|
-
- Fix for Errno::ERANGE error related to certain Math.log calculations. [parndt - Philip Arndt]
|
104
|
-
- Improved index detection in a shared-directory environment. [bob-p - Thomas Pomfret]
|
105
|
-
|
106
|
-
===0.5.1 [11 June 2009]
|
107
|
-
- Fixed Ruby 1.8.6 compatibility.
|
108
|
-
|
109
|
-
===0.5.0 [24 April 2009]
|
110
|
-
- Ruby 1.9 and Rails 2.3 compatibility.
|
111
|
-
- Index location can now be set. Provides Heroku compatibility.
|
112
|
-
- Better errors on bad options.
|
113
|
-
- ActiveRecord order argument overrides ranking returned by find_by_index.
|
114
|
-
- Various test environment improvements
|
115
|
-
- Various Bugfixes
|
116
|
-
|
117
|
-
===0.4.6 [10 August 2008]
|
118
|
-
- Rolled in pagination.
|
119
|
-
|
120
|
-
===0.4.5 [04 February 2008]
|
121
|
-
- Fixed a bug where the find_options :limit would be added to the :offset, which caused incorrectly sized collections to be returned.
|
122
|
-
- Fixed an 'ambiguous column' error when using the :includes find_options key.
|
123
|
-
|
124
|
-
===0.4.4 [29 November 2007]
|
125
|
-
- Fixed a bug causing the weighting section of the code to error out.
|
126
|
-
|
127
|
-
===0.4.3 [27 September 2007]
|
128
|
-
- Fixed a bug causing records to be deleted from index during record updates.
|
129
|
-
|
130
|
-
===0.4.2 [27 September 2007]
|
131
|
-
- Fixed a bug causing identically ranked records to be lost.
|
132
|
-
|
133
|
-
===0.4.1 [22 September 2007]
|
134
|
-
- Fixed a bug in the main search method.
|
135
|
-
|
136
|
-
===0.4.0 [22 September 2007]
|
137
|
-
- Search results now ranked by relevance.
|
138
|
-
|
139
|
-
===0.3.3 [20 September 2007]
|
140
|
-
- Fixed index update bug where deleted atoms were not removed from index.
|
141
|
-
- Improved performance of quoted queries.
|
142
|
-
- Improved performance of index updates.
|
143
|
-
- When building a full index, records are retrieved and indexed in batches to reduce memory consumption.
|
144
|
-
|
145
|
-
===0.3.2 [19 September 2007]
|
146
|
-
- Fixed index update bug.
|
147
|
-
|
148
|
-
===0.3.1 [18 September 2007]
|
149
|
-
- Added RDoc documentation comments.
|
150
|
-
|
151
|
-
===0.3.0 [18 September 2007]
|
152
|
-
- Minor bug fixes.
|
153
|
-
- min_word_size now works properly, with queries containing small words in
|
154
|
-
quotes or being preceded by a '+' symbol are now searched on.
|
155
|
-
|
156
|
-
===0.2.2 [06 September 2007]
|
157
|
-
- Search now caches query results within a session. Call the search twice in an
|
158
|
-
action? Only runs once!
|
159
|
-
|
160
|
-
===0.2.1 [05 September 2007]
|
161
|
-
- AR find options can now be passed to the search to allow finer control of
|
162
|
-
returned Model Objects.
|
163
|
-
|
164
|
-
===0.2.0 [04 September 2007]
|
165
|
-
- Major performance improvements.
|
166
|
-
- Index segmentation can now be tuned.
|
167
|
-
|
168
|
-
===0.1.1 [31 August 2007]
|
169
|
-
- Added a full set of tests.
|
170
|
-
- Fixed various set-manipulation based errors.
|
171
|
-
- Fixed a bug when searching for quoted phrases.
|
172
|
-
|
173
|
-
===0.1.01 [31 August 2007]
|
174
|
-
- Fixed a casting bug occurring when adding non-string fields to the index.
|
175
|
-
|
176
|
-
===0.1 [31 August 2007]
|
177
|
-
- Initial release.
|
data/Gemfile.lock
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: http://rubygems.org/
|
3
|
-
specs:
|
4
|
-
activemodel (3.2.11)
|
5
|
-
activesupport (= 3.2.11)
|
6
|
-
builder (~> 3.0.0)
|
7
|
-
activerecord (3.2.11)
|
8
|
-
activemodel (= 3.2.11)
|
9
|
-
activesupport (= 3.2.11)
|
10
|
-
arel (~> 3.0.2)
|
11
|
-
tzinfo (~> 0.3.29)
|
12
|
-
activesupport (3.2.11)
|
13
|
-
i18n (~> 0.6)
|
14
|
-
multi_json (~> 1.0)
|
15
|
-
arel (3.0.2)
|
16
|
-
builder (3.0.4)
|
17
|
-
i18n (0.6.1)
|
18
|
-
mocha (0.9.12)
|
19
|
-
multi_json (1.5.0)
|
20
|
-
rake (10.0.3)
|
21
|
-
sqlite3 (1.3.6)
|
22
|
-
tzinfo (0.3.35)
|
23
|
-
will_paginate (3.0.3)
|
24
|
-
|
25
|
-
PLATFORMS
|
26
|
-
ruby
|
27
|
-
|
28
|
-
DEPENDENCIES
|
29
|
-
activerecord (~> 3.2.9)
|
30
|
-
mocha (~> 0.9.11)
|
31
|
-
rake
|
32
|
-
sqlite3 (~> 1.3.5)
|
33
|
-
will_paginate (~> 3.0.3)
|