sunspot 2.0.0 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (165) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +1 -0
  3. data/.rspec +2 -0
  4. data/Appraisals +7 -0
  5. data/Gemfile +0 -2
  6. data/History.txt +10 -0
  7. data/lib/sunspot.rb +55 -17
  8. data/lib/sunspot/adapters.rb +68 -18
  9. data/lib/sunspot/batcher.rb +1 -1
  10. data/lib/sunspot/configuration.rb +4 -2
  11. data/lib/sunspot/data_extractor.rb +36 -6
  12. data/lib/sunspot/dsl.rb +4 -3
  13. data/lib/sunspot/dsl/adjustable.rb +2 -2
  14. data/lib/sunspot/dsl/field_query.rb +69 -16
  15. data/lib/sunspot/dsl/field_stats.rb +25 -0
  16. data/lib/sunspot/dsl/fields.rb +28 -8
  17. data/lib/sunspot/dsl/fulltext.rb +9 -1
  18. data/lib/sunspot/dsl/group.rb +118 -0
  19. data/lib/sunspot/dsl/paginatable.rb +4 -1
  20. data/lib/sunspot/dsl/scope.rb +19 -10
  21. data/lib/sunspot/dsl/search.rb +1 -1
  22. data/lib/sunspot/dsl/spellcheckable.rb +14 -0
  23. data/lib/sunspot/dsl/standard_query.rb +63 -35
  24. data/lib/sunspot/field.rb +76 -4
  25. data/lib/sunspot/field_factory.rb +60 -11
  26. data/lib/sunspot/indexer.rb +70 -18
  27. data/lib/sunspot/query.rb +5 -4
  28. data/lib/sunspot/query/abstract_field_facet.rb +0 -2
  29. data/lib/sunspot/query/abstract_fulltext.rb +76 -0
  30. data/lib/sunspot/query/abstract_json_field_facet.rb +70 -0
  31. data/lib/sunspot/query/bbox.rb +5 -1
  32. data/lib/sunspot/query/common_query.rb +31 -6
  33. data/lib/sunspot/query/composite_fulltext.rb +58 -8
  34. data/lib/sunspot/query/date_field_json_facet.rb +25 -0
  35. data/lib/sunspot/query/dismax.rb +25 -71
  36. data/lib/sunspot/query/field_json_facet.rb +19 -0
  37. data/lib/sunspot/query/field_list.rb +15 -0
  38. data/lib/sunspot/query/field_stats.rb +61 -0
  39. data/lib/sunspot/query/function_query.rb +1 -2
  40. data/lib/sunspot/query/geo.rb +1 -1
  41. data/lib/sunspot/query/geofilt.rb +8 -3
  42. data/lib/sunspot/query/group.rb +46 -0
  43. data/lib/sunspot/query/group_query.rb +17 -0
  44. data/lib/sunspot/query/join.rb +88 -0
  45. data/lib/sunspot/query/more_like_this.rb +1 -1
  46. data/lib/sunspot/query/pagination.rb +12 -4
  47. data/lib/sunspot/query/range_json_facet.rb +28 -0
  48. data/lib/sunspot/query/restriction.rb +99 -13
  49. data/lib/sunspot/query/sort.rb +41 -0
  50. data/lib/sunspot/query/sort_composite.rb +7 -0
  51. data/lib/sunspot/query/spellcheck.rb +19 -0
  52. data/lib/sunspot/query/standard_query.rb +24 -2
  53. data/lib/sunspot/query/text_field_boost.rb +1 -3
  54. data/lib/sunspot/schema.rb +12 -3
  55. data/lib/sunspot/search.rb +4 -2
  56. data/lib/sunspot/search/abstract_search.rb +93 -43
  57. data/lib/sunspot/search/cursor_paginated_collection.rb +32 -0
  58. data/lib/sunspot/search/field_facet.rb +4 -4
  59. data/lib/sunspot/search/field_json_facet.rb +33 -0
  60. data/lib/sunspot/search/field_stats.rb +21 -0
  61. data/lib/sunspot/search/hit.rb +6 -1
  62. data/lib/sunspot/search/hit_enumerable.rb +4 -1
  63. data/lib/sunspot/search/json_facet_row.rb +40 -0
  64. data/lib/sunspot/search/json_facet_stats.rb +23 -0
  65. data/lib/sunspot/search/paginated_collection.rb +1 -0
  66. data/lib/sunspot/search/query_group.rb +74 -0
  67. data/lib/sunspot/search/standard_search.rb +70 -3
  68. data/lib/sunspot/search/stats_facet.rb +25 -0
  69. data/lib/sunspot/search/stats_json_row.rb +82 -0
  70. data/lib/sunspot/search/stats_row.rb +68 -0
  71. data/lib/sunspot/session.rb +62 -37
  72. data/lib/sunspot/session_proxy/class_sharding_session_proxy.rb +6 -4
  73. data/lib/sunspot/session_proxy/id_sharding_session_proxy.rb +16 -8
  74. data/lib/sunspot/session_proxy/master_slave_session_proxy.rb +2 -2
  75. data/lib/sunspot/session_proxy/retry_5xx_session_proxy.rb +1 -1
  76. data/lib/sunspot/session_proxy/sharding_session_proxy.rb +4 -2
  77. data/lib/sunspot/session_proxy/silent_fail_session_proxy.rb +1 -1
  78. data/lib/sunspot/session_proxy/thread_local_session_proxy.rb +6 -4
  79. data/lib/sunspot/setup.rb +42 -0
  80. data/lib/sunspot/type.rb +20 -0
  81. data/lib/sunspot/util.rb +78 -14
  82. data/lib/sunspot/version.rb +1 -1
  83. data/spec/api/adapters_spec.rb +40 -15
  84. data/spec/api/batcher_spec.rb +15 -15
  85. data/spec/api/binding_spec.rb +3 -3
  86. data/spec/api/class_set_spec.rb +6 -6
  87. data/spec/api/data_extractor_spec.rb +39 -0
  88. data/spec/api/hit_enumerable_spec.rb +32 -9
  89. data/spec/api/indexer/attributes_spec.rb +35 -30
  90. data/spec/api/indexer/batch_spec.rb +8 -7
  91. data/spec/api/indexer/dynamic_fields_spec.rb +8 -8
  92. data/spec/api/indexer/fixed_fields_spec.rb +16 -11
  93. data/spec/api/indexer/fulltext_spec.rb +8 -8
  94. data/spec/api/indexer/removal_spec.rb +24 -14
  95. data/spec/api/indexer_spec.rb +2 -2
  96. data/spec/api/query/advanced_manipulation_examples.rb +3 -3
  97. data/spec/api/query/connectives_examples.rb +26 -14
  98. data/spec/api/query/dsl_spec.rb +24 -6
  99. data/spec/api/query/dynamic_fields_examples.rb +18 -18
  100. data/spec/api/query/faceting_examples.rb +80 -61
  101. data/spec/api/query/fulltext_examples.rb +194 -40
  102. data/spec/api/query/function_spec.rb +116 -13
  103. data/spec/api/query/geo_examples.rb +8 -12
  104. data/spec/api/query/group_spec.rb +27 -5
  105. data/spec/api/query/highlighting_examples.rb +26 -26
  106. data/spec/api/query/join_spec.rb +19 -0
  107. data/spec/api/query/more_like_this_spec.rb +40 -27
  108. data/spec/api/query/ordering_pagination_examples.rb +37 -23
  109. data/spec/api/query/scope_examples.rb +39 -39
  110. data/spec/api/query/spatial_examples.rb +3 -3
  111. data/spec/api/query/spellcheck_examples.rb +20 -0
  112. data/spec/api/query/standard_spec.rb +3 -1
  113. data/spec/api/query/stats_examples.rb +66 -0
  114. data/spec/api/query/text_field_scoping_examples.rb +5 -5
  115. data/spec/api/query/types_spec.rb +4 -4
  116. data/spec/api/search/cursor_paginated_collection_spec.rb +35 -0
  117. data/spec/api/search/dynamic_fields_spec.rb +4 -4
  118. data/spec/api/search/faceting_spec.rb +55 -52
  119. data/spec/api/search/highlighting_spec.rb +7 -7
  120. data/spec/api/search/hits_spec.rb +43 -29
  121. data/spec/api/search/paginated_collection_spec.rb +19 -18
  122. data/spec/api/search/results_spec.rb +13 -13
  123. data/spec/api/search/search_spec.rb +3 -3
  124. data/spec/api/search/stats_spec.rb +94 -0
  125. data/spec/api/session_proxy/class_sharding_session_proxy_spec.rb +23 -16
  126. data/spec/api/session_proxy/id_sharding_session_proxy_spec.rb +16 -4
  127. data/spec/api/session_proxy/master_slave_session_proxy_spec.rb +10 -6
  128. data/spec/api/session_proxy/retry_5xx_session_proxy_spec.rb +11 -11
  129. data/spec/api/session_proxy/sharding_session_proxy_spec.rb +15 -14
  130. data/spec/api/session_proxy/silent_fail_session_proxy_spec.rb +3 -3
  131. data/spec/api/session_proxy/spec_helper.rb +1 -1
  132. data/spec/api/session_proxy/thread_local_session_proxy_spec.rb +40 -26
  133. data/spec/api/session_spec.rb +78 -38
  134. data/spec/api/sunspot_spec.rb +7 -4
  135. data/spec/helpers/integration_helper.rb +11 -1
  136. data/spec/helpers/query_helper.rb +1 -1
  137. data/spec/helpers/search_helper.rb +30 -0
  138. data/spec/integration/atomic_updates_spec.rb +58 -0
  139. data/spec/integration/dynamic_fields_spec.rb +31 -20
  140. data/spec/integration/faceting_spec.rb +252 -39
  141. data/spec/integration/field_grouping_spec.rb +47 -15
  142. data/spec/integration/field_lists_spec.rb +57 -0
  143. data/spec/integration/geospatial_spec.rb +34 -8
  144. data/spec/integration/highlighting_spec.rb +8 -8
  145. data/spec/integration/indexing_spec.rb +7 -6
  146. data/spec/integration/join_spec.rb +45 -0
  147. data/spec/integration/keyword_search_spec.rb +68 -38
  148. data/spec/integration/local_search_spec.rb +4 -4
  149. data/spec/integration/more_like_this_spec.rb +7 -7
  150. data/spec/integration/scoped_search_spec.rb +193 -74
  151. data/spec/integration/spellcheck_spec.rb +119 -0
  152. data/spec/integration/stats_spec.rb +88 -0
  153. data/spec/integration/stored_fields_spec.rb +1 -1
  154. data/spec/integration/test_pagination.rb +4 -4
  155. data/spec/integration/unicode_spec.rb +1 -1
  156. data/spec/mocks/adapters.rb +36 -0
  157. data/spec/mocks/connection.rb +5 -3
  158. data/spec/mocks/photo.rb +32 -1
  159. data/spec/mocks/post.rb +18 -3
  160. data/spec/spec_helper.rb +13 -8
  161. data/sunspot.gemspec +6 -4
  162. data/tasks/rdoc.rake +22 -14
  163. metadata +101 -44
  164. data/lib/sunspot/dsl/field_group.rb +0 -57
  165. data/lib/sunspot/query/field_group.rb +0 -37
data/spec/spec_helper.rb CHANGED
@@ -13,23 +13,28 @@ end
13
13
  require File.join(File.dirname(__FILE__), 'ext')
14
14
 
15
15
  RSpec.configure do |config|
16
+ config.filter_run :focus
17
+ config.run_all_when_everything_filtered = true
18
+
19
+ # Run specs in random order to surface order dependencies. If you find an
20
+ # order dependency and want to debug it, you can fix the order by providing
21
+ # the seed, which is printed after each run.
22
+ # --seed 1234
23
+ config.order = 'random'
24
+
16
25
  # Mock session available to all spec/api tests
17
- config.include MockSessionHelper,
18
- :type => :api,
19
- :example_group => {:file_path => /spec[\\\/]api/}
26
+ config.include MockSessionHelper, type: :api, file_path: /spec[\\\/]api/
20
27
 
21
28
  # Real Solr instance is available to integration tests
22
- config.include IntegrationHelper,
23
- :type => :integration,
24
- :example_group => {:file_path => /spec[\\\/]integration/}
29
+ config.include IntegrationHelper, type: :integration, file_path: /spec[\\\/]integration/
25
30
 
26
31
  # Nested under spec/api
27
32
  [:indexer, :query, :search].each do |spec_type|
28
33
  helper_name = "#{spec_type}_helper"
29
34
 
30
35
  config.include Sunspot::Util.full_const_get(Sunspot::Util.camel_case(helper_name)),
31
- :type => spec_type,
32
- :example_group => {:file_path => /spec[\\\/]api[\\\/]#{spec_type}/}
36
+ :type => spec_type,
37
+ :file_path => /spec[\\\/]api[\\\/]#{spec_type}/
33
38
  end
34
39
  end
35
40
 
data/sunspot.gemspec CHANGED
@@ -8,7 +8,8 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ['Mat Brown', 'Peer Allan', 'Dmitriy Dzema', 'Benjamin Krause', 'Marcel de Graaf', 'Brandon Keepers', 'Peter Berkenbosch',
10
10
  'Brian Atkinson', 'Tom Coleman', 'Matt Mitchell', 'Nathan Beyer', 'Kieran Topping', 'Nicolas Braem', 'Jeremy Ashkenas',
11
- 'Dylan Vaughn', 'Brian Durand', 'Sam Granieri', 'Nick Zadrozny', 'Jason Ronallo']
11
+ 'Dylan Vaughn', 'Brian Durand', 'Sam Granieri', 'Nick Zadrozny', 'Jason Ronallo', 'Ryan Wallace', 'Nicholas Jakobsen',
12
+ 'Bragadeesh J', 'Ethiraj Srinivasan']
12
13
  s.email = ["mat@patch.com"]
13
14
  s.homepage = "http://outoftime.github.com/sunspot"
14
15
  s.summary = 'Library for expressive, powerful interaction with the Solr search engine'
@@ -26,11 +27,12 @@ Gem::Specification.new do |s|
26
27
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
27
28
  s.require_paths = ["lib"]
28
29
 
29
- s.add_dependency 'rsolr', '~>1.0.7'
30
+ s.add_dependency 'rsolr', '>= 1.1.1', '< 3'
30
31
  s.add_dependency 'pr_geohash', '~>1.0'
31
32
 
32
- s.add_development_dependency 'rspec', '~>2.6.0'
33
- s.add_development_dependency 'hanna'
33
+ s.add_development_dependency 'rake', '< 12.3'
34
+ s.add_development_dependency 'rspec', '~> 3.7'
35
+ s.add_development_dependency 'appraisal', '2.2.0'
34
36
 
35
37
  s.rdoc_options << '--webcvs=http://github.com/outoftime/sunspot/tree/master/%s' <<
36
38
  '--title' << 'Sunspot - Solr-powered search for Ruby objects - API Documentation' <<
data/tasks/rdoc.rake CHANGED
@@ -1,19 +1,27 @@
1
- begin
2
- require 'hanna/rdoctask'
3
- rescue LoadError
4
- if require 'rubygems'
5
- retry
1
+ require 'sunspot/version'
2
+
3
+ rdoc_task =
4
+ begin
5
+ require 'rdoc/task'
6
+ RDoc::Task
7
+ rescue LoadError
8
+ begin
9
+ require 'rake/rdoctask'
10
+ Rake::RDocTask
11
+ rescue
12
+ nil
13
+ end
6
14
  end
7
- # It's OK if hanna isn't installed.
8
- end
9
15
 
10
- Rake::RDocTask.new(:doc) do |rdoc|
11
- version = Sunspot::VERSION
12
- rdoc.title = "Sunspot #{version} - Solr-powered search for Ruby objects - API Documentation"
13
- rdoc.main = 'README.md'
14
- rdoc.rdoc_files.include('README.md', 'lib/sunspot.rb', 'lib/sunspot/**/*.rb')
15
- rdoc.rdoc_dir = 'doc'
16
- rdoc.options << "--webcvs=http://github.com/outoftime/sunspot/tree/v#{version}/%s" << '--title' << 'Sunspot - Solr-powered search for Ruby objects - API Documentation'
16
+ if rdoc_task
17
+ rdoc_task.new(:doc) do |rdoc|
18
+ version = Sunspot::VERSION
19
+ rdoc.title = "Sunspot #{version} - Solr-powered search for Ruby objects - API Documentation"
20
+ rdoc.main = '../README.md'
21
+ rdoc.rdoc_files.include('../README.md', 'lib/sunspot.rb', 'lib/sunspot/**/*.rb')
22
+ rdoc.rdoc_dir = 'doc'
23
+ rdoc.options << "--webcvs=http://github.com/outoftime/sunspot/tree/v#{version}/%s" << '--title' << 'Sunspot - Solr-powered search for Ruby objects - API Documentation'
24
+ end
17
25
  end
18
26
 
19
27
  namespace :doc do
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sunspot
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
5
- prerelease:
4
+ version: 2.5.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Mat Brown
@@ -24,87 +23,104 @@ authors:
24
23
  - Sam Granieri
25
24
  - Nick Zadrozny
26
25
  - Jason Ronallo
26
+ - Ryan Wallace
27
+ - Nicholas Jakobsen
28
+ - Bragadeesh J
29
+ - Ethiraj Srinivasan
27
30
  autorequire:
28
31
  bindir: bin
29
32
  cert_chain: []
30
- date: 2013-02-26 00:00:00.000000000 Z
33
+ date: 2019-07-12 00:00:00.000000000 Z
31
34
  dependencies:
32
35
  - !ruby/object:Gem::Dependency
33
36
  name: rsolr
34
37
  requirement: !ruby/object:Gem::Requirement
35
- none: false
36
38
  requirements:
37
- - - ~>
39
+ - - ">="
38
40
  - !ruby/object:Gem::Version
39
- version: 1.0.7
41
+ version: 1.1.1
42
+ - - "<"
43
+ - !ruby/object:Gem::Version
44
+ version: '3'
40
45
  type: :runtime
41
46
  prerelease: false
42
47
  version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
48
  requirements:
45
- - - ~>
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: 1.1.1
52
+ - - "<"
46
53
  - !ruby/object:Gem::Version
47
- version: 1.0.7
54
+ version: '3'
48
55
  - !ruby/object:Gem::Dependency
49
56
  name: pr_geohash
50
57
  requirement: !ruby/object:Gem::Requirement
51
- none: false
52
58
  requirements:
53
- - - ~>
59
+ - - "~>"
54
60
  - !ruby/object:Gem::Version
55
61
  version: '1.0'
56
62
  type: :runtime
57
63
  prerelease: false
58
64
  version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
65
  requirements:
61
- - - ~>
66
+ - - "~>"
62
67
  - !ruby/object:Gem::Version
63
68
  version: '1.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "<"
74
+ - !ruby/object:Gem::Version
75
+ version: '12.3'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "<"
81
+ - !ruby/object:Gem::Version
82
+ version: '12.3'
64
83
  - !ruby/object:Gem::Dependency
65
84
  name: rspec
66
85
  requirement: !ruby/object:Gem::Requirement
67
- none: false
68
86
  requirements:
69
- - - ~>
87
+ - - "~>"
70
88
  - !ruby/object:Gem::Version
71
- version: 2.6.0
89
+ version: '3.7'
72
90
  type: :development
73
91
  prerelease: false
74
92
  version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
93
  requirements:
77
- - - ~>
94
+ - - "~>"
78
95
  - !ruby/object:Gem::Version
79
- version: 2.6.0
96
+ version: '3.7'
80
97
  - !ruby/object:Gem::Dependency
81
- name: hanna
98
+ name: appraisal
82
99
  requirement: !ruby/object:Gem::Requirement
83
- none: false
84
100
  requirements:
85
- - - ! '>='
101
+ - - '='
86
102
  - !ruby/object:Gem::Version
87
- version: '0'
103
+ version: 2.2.0
88
104
  type: :development
89
105
  prerelease: false
90
106
  version_requirements: !ruby/object:Gem::Requirement
91
- none: false
92
107
  requirements:
93
- - - ! '>='
108
+ - - '='
94
109
  - !ruby/object:Gem::Version
95
- version: '0'
96
- description: ! " Sunspot is a library providing a powerful, all-ruby API for the
97
- Solr search engine. Sunspot manages the configuration of persistent\n Ruby classes
98
- for search and indexing and exposes Solr's most powerful features through a collection
99
- of DSLs. Complex search operations\n can be performed without hand-writing any
100
- boolean queries or building Solr parameters by hand.\n"
110
+ version: 2.2.0
111
+ description: |2
112
+ Sunspot is a library providing a powerful, all-ruby API for the Solr search engine. Sunspot manages the configuration of persistent
113
+ Ruby classes for search and indexing and exposes Solr's most powerful features through a collection of DSLs. Complex search operations
114
+ can be performed without hand-writing any boolean queries or building Solr parameters by hand.
101
115
  email:
102
116
  - mat@patch.com
103
117
  executables: []
104
118
  extensions: []
105
119
  extra_rdoc_files: []
106
120
  files:
107
- - .gitignore
121
+ - ".gitignore"
122
+ - ".rspec"
123
+ - Appraisals
108
124
  - Gemfile
109
125
  - History.txt
110
126
  - LICENSE
@@ -120,12 +136,13 @@ files:
120
136
  - lib/sunspot/data_extractor.rb
121
137
  - lib/sunspot/dsl.rb
122
138
  - lib/sunspot/dsl/adjustable.rb
123
- - lib/sunspot/dsl/field_group.rb
124
139
  - lib/sunspot/dsl/field_query.rb
140
+ - lib/sunspot/dsl/field_stats.rb
125
141
  - lib/sunspot/dsl/fields.rb
126
142
  - lib/sunspot/dsl/fulltext.rb
127
143
  - lib/sunspot/dsl/function.rb
128
144
  - lib/sunspot/dsl/functional.rb
145
+ - lib/sunspot/dsl/group.rb
129
146
  - lib/sunspot/dsl/more_like_this_query.rb
130
147
  - lib/sunspot/dsl/paginatable.rb
131
148
  - lib/sunspot/dsl/query_facet.rb
@@ -133,53 +150,73 @@ files:
133
150
  - lib/sunspot/dsl/restriction_with_near.rb
134
151
  - lib/sunspot/dsl/scope.rb
135
152
  - lib/sunspot/dsl/search.rb
153
+ - lib/sunspot/dsl/spellcheckable.rb
136
154
  - lib/sunspot/dsl/standard_query.rb
137
155
  - lib/sunspot/field.rb
138
156
  - lib/sunspot/field_factory.rb
139
157
  - lib/sunspot/indexer.rb
140
158
  - lib/sunspot/query.rb
141
159
  - lib/sunspot/query/abstract_field_facet.rb
160
+ - lib/sunspot/query/abstract_fulltext.rb
161
+ - lib/sunspot/query/abstract_json_field_facet.rb
142
162
  - lib/sunspot/query/bbox.rb
143
163
  - lib/sunspot/query/boost_query.rb
144
164
  - lib/sunspot/query/common_query.rb
145
165
  - lib/sunspot/query/composite_fulltext.rb
146
166
  - lib/sunspot/query/connective.rb
147
167
  - lib/sunspot/query/date_field_facet.rb
168
+ - lib/sunspot/query/date_field_json_facet.rb
148
169
  - lib/sunspot/query/dismax.rb
149
170
  - lib/sunspot/query/field_facet.rb
150
- - lib/sunspot/query/field_group.rb
171
+ - lib/sunspot/query/field_json_facet.rb
172
+ - lib/sunspot/query/field_list.rb
173
+ - lib/sunspot/query/field_stats.rb
151
174
  - lib/sunspot/query/filter.rb
152
175
  - lib/sunspot/query/function_query.rb
153
176
  - lib/sunspot/query/geo.rb
154
177
  - lib/sunspot/query/geofilt.rb
178
+ - lib/sunspot/query/group.rb
179
+ - lib/sunspot/query/group_query.rb
155
180
  - lib/sunspot/query/highlighting.rb
181
+ - lib/sunspot/query/join.rb
156
182
  - lib/sunspot/query/more_like_this.rb
157
183
  - lib/sunspot/query/more_like_this_query.rb
158
184
  - lib/sunspot/query/pagination.rb
159
185
  - lib/sunspot/query/query_facet.rb
160
186
  - lib/sunspot/query/range_facet.rb
187
+ - lib/sunspot/query/range_json_facet.rb
161
188
  - lib/sunspot/query/restriction.rb
162
189
  - lib/sunspot/query/scope.rb
163
190
  - lib/sunspot/query/sort.rb
164
191
  - lib/sunspot/query/sort_composite.rb
192
+ - lib/sunspot/query/spellcheck.rb
165
193
  - lib/sunspot/query/standard_query.rb
166
194
  - lib/sunspot/query/text_field_boost.rb
167
195
  - lib/sunspot/schema.rb
168
196
  - lib/sunspot/search.rb
169
197
  - lib/sunspot/search/abstract_search.rb
198
+ - lib/sunspot/search/cursor_paginated_collection.rb
170
199
  - lib/sunspot/search/date_facet.rb
171
200
  - lib/sunspot/search/facet_row.rb
172
201
  - lib/sunspot/search/field_facet.rb
173
202
  - lib/sunspot/search/field_group.rb
203
+ - lib/sunspot/search/field_json_facet.rb
204
+ - lib/sunspot/search/field_stats.rb
174
205
  - lib/sunspot/search/group.rb
175
206
  - lib/sunspot/search/highlight.rb
176
207
  - lib/sunspot/search/hit.rb
177
208
  - lib/sunspot/search/hit_enumerable.rb
209
+ - lib/sunspot/search/json_facet_row.rb
210
+ - lib/sunspot/search/json_facet_stats.rb
178
211
  - lib/sunspot/search/more_like_this_search.rb
179
212
  - lib/sunspot/search/paginated_collection.rb
180
213
  - lib/sunspot/search/query_facet.rb
214
+ - lib/sunspot/search/query_group.rb
181
215
  - lib/sunspot/search/range_facet.rb
182
216
  - lib/sunspot/search/standard_search.rb
217
+ - lib/sunspot/search/stats_facet.rb
218
+ - lib/sunspot/search/stats_json_row.rb
219
+ - lib/sunspot/search/stats_row.rb
183
220
  - lib/sunspot/session.rb
184
221
  - lib/sunspot/session_proxy.rb
185
222
  - lib/sunspot/session_proxy/abstract_session_proxy.rb
@@ -202,6 +239,7 @@ files:
202
239
  - spec/api/batcher_spec.rb
203
240
  - spec/api/binding_spec.rb
204
241
  - spec/api/class_set_spec.rb
242
+ - spec/api/data_extractor_spec.rb
205
243
  - spec/api/hit_enumerable_spec.rb
206
244
  - spec/api/indexer/attributes_spec.rb
207
245
  - spec/api/indexer/batch_spec.rb
@@ -221,14 +259,18 @@ files:
221
259
  - spec/api/query/geo_examples.rb
222
260
  - spec/api/query/group_spec.rb
223
261
  - spec/api/query/highlighting_examples.rb
262
+ - spec/api/query/join_spec.rb
224
263
  - spec/api/query/more_like_this_spec.rb
225
264
  - spec/api/query/ordering_pagination_examples.rb
226
265
  - spec/api/query/scope_examples.rb
227
266
  - spec/api/query/spatial_examples.rb
228
267
  - spec/api/query/spec_helper.rb
268
+ - spec/api/query/spellcheck_examples.rb
229
269
  - spec/api/query/standard_spec.rb
270
+ - spec/api/query/stats_examples.rb
230
271
  - spec/api/query/text_field_scoping_examples.rb
231
272
  - spec/api/query/types_spec.rb
273
+ - spec/api/search/cursor_paginated_collection_spec.rb
232
274
  - spec/api/search/dynamic_fields_spec.rb
233
275
  - spec/api/search/faceting_spec.rb
234
276
  - spec/api/search/highlighting_spec.rb
@@ -237,6 +279,7 @@ files:
237
279
  - spec/api/search/results_spec.rb
238
280
  - spec/api/search/search_spec.rb
239
281
  - spec/api/search/spec_helper.rb
282
+ - spec/api/search/stats_spec.rb
240
283
  - spec/api/session_proxy/class_sharding_session_proxy_spec.rb
241
284
  - spec/api/session_proxy/id_sharding_session_proxy_spec.rb
242
285
  - spec/api/session_proxy/master_slave_session_proxy_spec.rb
@@ -254,16 +297,21 @@ files:
254
297
  - spec/helpers/mock_session_helper.rb
255
298
  - spec/helpers/query_helper.rb
256
299
  - spec/helpers/search_helper.rb
300
+ - spec/integration/atomic_updates_spec.rb
257
301
  - spec/integration/dynamic_fields_spec.rb
258
302
  - spec/integration/faceting_spec.rb
259
303
  - spec/integration/field_grouping_spec.rb
304
+ - spec/integration/field_lists_spec.rb
260
305
  - spec/integration/geospatial_spec.rb
261
306
  - spec/integration/highlighting_spec.rb
262
307
  - spec/integration/indexing_spec.rb
308
+ - spec/integration/join_spec.rb
263
309
  - spec/integration/keyword_search_spec.rb
264
310
  - spec/integration/local_search_spec.rb
265
311
  - spec/integration/more_like_this_spec.rb
266
312
  - spec/integration/scoped_search_spec.rb
313
+ - spec/integration/spellcheck_spec.rb
314
+ - spec/integration/stats_spec.rb
267
315
  - spec/integration/stored_fields_spec.rb
268
316
  - spec/integration/test_pagination.rb
269
317
  - spec/integration/unicode_spec.rb
@@ -287,38 +335,37 @@ files:
287
335
  homepage: http://outoftime.github.com/sunspot
288
336
  licenses:
289
337
  - MIT
338
+ metadata: {}
290
339
  post_install_message:
291
340
  rdoc_options:
292
- - --webcvs=http://github.com/outoftime/sunspot/tree/master/%s
293
- - --title
341
+ - "--webcvs=http://github.com/outoftime/sunspot/tree/master/%s"
342
+ - "--title"
294
343
  - Sunspot - Solr-powered search for Ruby objects - API Documentation
295
- - --main
344
+ - "--main"
296
345
  - README.rdoc
297
346
  require_paths:
298
347
  - lib
299
348
  required_ruby_version: !ruby/object:Gem::Requirement
300
- none: false
301
349
  requirements:
302
- - - ! '>='
350
+ - - ">="
303
351
  - !ruby/object:Gem::Version
304
352
  version: '0'
305
353
  required_rubygems_version: !ruby/object:Gem::Requirement
306
- none: false
307
354
  requirements:
308
- - - ! '>='
355
+ - - ">="
309
356
  - !ruby/object:Gem::Version
310
357
  version: '0'
311
358
  requirements: []
312
- rubyforge_project: sunspot
313
- rubygems_version: 1.8.23
359
+ rubygems_version: 3.0.2
314
360
  signing_key:
315
- specification_version: 3
361
+ specification_version: 4
316
362
  summary: Library for expressive, powerful interaction with the Solr search engine
317
363
  test_files:
318
364
  - spec/api/adapters_spec.rb
319
365
  - spec/api/batcher_spec.rb
320
366
  - spec/api/binding_spec.rb
321
367
  - spec/api/class_set_spec.rb
368
+ - spec/api/data_extractor_spec.rb
322
369
  - spec/api/hit_enumerable_spec.rb
323
370
  - spec/api/indexer/attributes_spec.rb
324
371
  - spec/api/indexer/batch_spec.rb
@@ -338,14 +385,18 @@ test_files:
338
385
  - spec/api/query/geo_examples.rb
339
386
  - spec/api/query/group_spec.rb
340
387
  - spec/api/query/highlighting_examples.rb
388
+ - spec/api/query/join_spec.rb
341
389
  - spec/api/query/more_like_this_spec.rb
342
390
  - spec/api/query/ordering_pagination_examples.rb
343
391
  - spec/api/query/scope_examples.rb
344
392
  - spec/api/query/spatial_examples.rb
345
393
  - spec/api/query/spec_helper.rb
394
+ - spec/api/query/spellcheck_examples.rb
346
395
  - spec/api/query/standard_spec.rb
396
+ - spec/api/query/stats_examples.rb
347
397
  - spec/api/query/text_field_scoping_examples.rb
348
398
  - spec/api/query/types_spec.rb
399
+ - spec/api/search/cursor_paginated_collection_spec.rb
349
400
  - spec/api/search/dynamic_fields_spec.rb
350
401
  - spec/api/search/faceting_spec.rb
351
402
  - spec/api/search/highlighting_spec.rb
@@ -354,6 +405,7 @@ test_files:
354
405
  - spec/api/search/results_spec.rb
355
406
  - spec/api/search/search_spec.rb
356
407
  - spec/api/search/spec_helper.rb
408
+ - spec/api/search/stats_spec.rb
357
409
  - spec/api/session_proxy/class_sharding_session_proxy_spec.rb
358
410
  - spec/api/session_proxy/id_sharding_session_proxy_spec.rb
359
411
  - spec/api/session_proxy/master_slave_session_proxy_spec.rb
@@ -371,16 +423,21 @@ test_files:
371
423
  - spec/helpers/mock_session_helper.rb
372
424
  - spec/helpers/query_helper.rb
373
425
  - spec/helpers/search_helper.rb
426
+ - spec/integration/atomic_updates_spec.rb
374
427
  - spec/integration/dynamic_fields_spec.rb
375
428
  - spec/integration/faceting_spec.rb
376
429
  - spec/integration/field_grouping_spec.rb
430
+ - spec/integration/field_lists_spec.rb
377
431
  - spec/integration/geospatial_spec.rb
378
432
  - spec/integration/highlighting_spec.rb
379
433
  - spec/integration/indexing_spec.rb
434
+ - spec/integration/join_spec.rb
380
435
  - spec/integration/keyword_search_spec.rb
381
436
  - spec/integration/local_search_spec.rb
382
437
  - spec/integration/more_like_this_spec.rb
383
438
  - spec/integration/scoped_search_spec.rb
439
+ - spec/integration/spellcheck_spec.rb
440
+ - spec/integration/stats_spec.rb
384
441
  - spec/integration/stored_fields_spec.rb
385
442
  - spec/integration/test_pagination.rb
386
443
  - spec/integration/unicode_spec.rb