sunspot_solr 2.0.0.pre.120924 → 2.0.0.pre.120925

Sign up to get free protection for your applications and to get access to all the features.
Files changed (296) hide show
  1. data/{sunspot_solr/Gemfile → Gemfile} +0 -0
  2. data/{sunspot_solr/README.rdoc → README.rdoc} +0 -0
  3. data/{sunspot_solr/bin → bin}/sunspot-installer +0 -0
  4. data/{sunspot_solr/bin → bin}/sunspot-solr +0 -0
  5. data/{sunspot_solr/lib → lib}/sunspot/solr/installer.rb +0 -0
  6. data/{sunspot_solr/lib → lib}/sunspot/solr/installer/config_installer.rb +0 -0
  7. data/{sunspot_solr/lib → lib}/sunspot/solr/installer/task_helper.rb +0 -0
  8. data/{sunspot_solr/lib → lib}/sunspot/solr/java.rb +0 -0
  9. data/{sunspot_solr/lib → lib}/sunspot/solr/railtie.rb +0 -0
  10. data/{sunspot_solr/lib → lib}/sunspot/solr/server.rb +0 -0
  11. data/{sunspot_solr/lib → lib}/sunspot/solr/tasks.rb +0 -0
  12. data/{sunspot_solr/lib → lib}/sunspot_solr.rb +0 -0
  13. data/{sunspot_solr/solr → solr}/README.txt +0 -0
  14. data/{sunspot_solr/solr → solr}/etc/jetty.xml +0 -0
  15. data/{sunspot_solr/solr → solr}/etc/webdefault.xml +0 -0
  16. data/{sunspot_solr/solr → solr}/lib/jetty-6.1.26-patched-JETTY-1340.jar +0 -0
  17. data/{sunspot_solr/solr → solr}/lib/jetty-util-6.1.26-patched-JETTY-1340.jar +0 -0
  18. data/{sunspot_solr/solr → solr}/lib/jsp-2.1/ant-1.6.5.jar +0 -0
  19. data/{sunspot_solr/solr → solr}/lib/jsp-2.1/core-3.1.1.jar +0 -0
  20. data/{sunspot_solr/solr → solr}/lib/jsp-2.1/jsp-2.1.jar +0 -0
  21. data/{sunspot_solr/solr → solr}/lib/jsp-2.1/jsp-api-2.1.jar +0 -0
  22. data/{sunspot_solr/solr → solr}/lib/servlet-api-2.5-20081211.jar +0 -0
  23. data/{sunspot_solr/solr → solr}/solr/.gitignore +0 -0
  24. data/{sunspot_solr/solr → solr}/solr/README.txt +0 -0
  25. data/{sunspot_solr/solr → solr}/solr/conf/admin-extra.html +0 -0
  26. data/{sunspot_solr/solr → solr}/solr/conf/elevate.xml +0 -0
  27. data/{sunspot_solr/solr → solr}/solr/conf/mapping-ISOLatin1Accent.txt +0 -0
  28. data/{sunspot_solr/solr → solr}/solr/conf/protwords.txt +0 -0
  29. data/{sunspot_solr/solr → solr}/solr/conf/schema.xml +0 -0
  30. data/{sunspot_solr/solr → solr}/solr/conf/scripts.conf +0 -0
  31. data/{sunspot_solr/solr → solr}/solr/conf/solrconfig.xml +0 -0
  32. data/{sunspot_solr/solr → solr}/solr/conf/spellings.txt +0 -0
  33. data/{sunspot_solr/solr → solr}/solr/conf/stopwords.txt +0 -0
  34. data/{sunspot_solr/solr → solr}/solr/conf/synonyms.txt +0 -0
  35. data/{sunspot_solr/solr → solr}/solr/conf/xslt/example.xsl +0 -0
  36. data/{sunspot_solr/solr → solr}/solr/conf/xslt/example_atom.xsl +0 -0
  37. data/{sunspot_solr/solr → solr}/solr/conf/xslt/example_rss.xsl +0 -0
  38. data/{sunspot_solr/solr → solr}/solr/conf/xslt/luke.xsl +0 -0
  39. data/{sunspot_solr/solr → solr}/start.jar +0 -0
  40. data/{sunspot_solr/solr → solr}/webapps/solr.war +0 -0
  41. data/{sunspot_solr/spec → spec}/server_spec.rb +0 -0
  42. data/{sunspot_solr/spec → spec}/spec_helper.rb +0 -0
  43. data/{sunspot_solr/sunspot_solr.gemspec → sunspot_solr.gemspec} +0 -0
  44. metadata +55 -303
  45. data/.gitignore +0 -11
  46. data/.travis.yml +0 -35
  47. data/README.md +0 -863
  48. data/Rakefile +0 -37
  49. data/ci/travis.sh +0 -67
  50. data/sunspot/.gitignore +0 -13
  51. data/sunspot/Gemfile +0 -5
  52. data/sunspot/History.txt +0 -258
  53. data/sunspot/LICENSE +0 -18
  54. data/sunspot/Rakefile +0 -13
  55. data/sunspot/TODO +0 -13
  56. data/sunspot/lib/light_config.rb +0 -40
  57. data/sunspot/lib/sunspot.rb +0 -579
  58. data/sunspot/lib/sunspot/adapters.rb +0 -349
  59. data/sunspot/lib/sunspot/batcher.rb +0 -62
  60. data/sunspot/lib/sunspot/class_set.rb +0 -23
  61. data/sunspot/lib/sunspot/composite_setup.rb +0 -202
  62. data/sunspot/lib/sunspot/configuration.rb +0 -53
  63. data/sunspot/lib/sunspot/data_extractor.rb +0 -50
  64. data/sunspot/lib/sunspot/dsl.rb +0 -5
  65. data/sunspot/lib/sunspot/dsl/adjustable.rb +0 -47
  66. data/sunspot/lib/sunspot/dsl/field_group.rb +0 -57
  67. data/sunspot/lib/sunspot/dsl/field_query.rb +0 -345
  68. data/sunspot/lib/sunspot/dsl/fields.rb +0 -103
  69. data/sunspot/lib/sunspot/dsl/fulltext.rb +0 -243
  70. data/sunspot/lib/sunspot/dsl/function.rb +0 -27
  71. data/sunspot/lib/sunspot/dsl/functional.rb +0 -44
  72. data/sunspot/lib/sunspot/dsl/more_like_this_query.rb +0 -56
  73. data/sunspot/lib/sunspot/dsl/paginatable.rb +0 -32
  74. data/sunspot/lib/sunspot/dsl/query_facet.rb +0 -36
  75. data/sunspot/lib/sunspot/dsl/restriction.rb +0 -25
  76. data/sunspot/lib/sunspot/dsl/restriction_with_near.rb +0 -160
  77. data/sunspot/lib/sunspot/dsl/scope.rb +0 -214
  78. data/sunspot/lib/sunspot/dsl/search.rb +0 -30
  79. data/sunspot/lib/sunspot/dsl/standard_query.rb +0 -122
  80. data/sunspot/lib/sunspot/field.rb +0 -193
  81. data/sunspot/lib/sunspot/field_factory.rb +0 -129
  82. data/sunspot/lib/sunspot/indexer.rb +0 -136
  83. data/sunspot/lib/sunspot/query.rb +0 -11
  84. data/sunspot/lib/sunspot/query/abstract_field_facet.rb +0 -55
  85. data/sunspot/lib/sunspot/query/bbox.rb +0 -15
  86. data/sunspot/lib/sunspot/query/boost_query.rb +0 -24
  87. data/sunspot/lib/sunspot/query/common_query.rb +0 -96
  88. data/sunspot/lib/sunspot/query/composite_fulltext.rb +0 -36
  89. data/sunspot/lib/sunspot/query/connective.rb +0 -206
  90. data/sunspot/lib/sunspot/query/date_field_facet.rb +0 -14
  91. data/sunspot/lib/sunspot/query/dismax.rb +0 -132
  92. data/sunspot/lib/sunspot/query/field_facet.rb +0 -41
  93. data/sunspot/lib/sunspot/query/field_group.rb +0 -37
  94. data/sunspot/lib/sunspot/query/filter.rb +0 -38
  95. data/sunspot/lib/sunspot/query/function_query.rb +0 -52
  96. data/sunspot/lib/sunspot/query/geo.rb +0 -53
  97. data/sunspot/lib/sunspot/query/geofilt.rb +0 -16
  98. data/sunspot/lib/sunspot/query/highlighting.rb +0 -62
  99. data/sunspot/lib/sunspot/query/more_like_this.rb +0 -61
  100. data/sunspot/lib/sunspot/query/more_like_this_query.rb +0 -12
  101. data/sunspot/lib/sunspot/query/pagination.rb +0 -42
  102. data/sunspot/lib/sunspot/query/query_facet.rb +0 -53
  103. data/sunspot/lib/sunspot/query/range_facet.rb +0 -15
  104. data/sunspot/lib/sunspot/query/restriction.rb +0 -308
  105. data/sunspot/lib/sunspot/query/scope.rb +0 -9
  106. data/sunspot/lib/sunspot/query/sort.rb +0 -109
  107. data/sunspot/lib/sunspot/query/sort_composite.rb +0 -34
  108. data/sunspot/lib/sunspot/query/standard_query.rb +0 -16
  109. data/sunspot/lib/sunspot/query/text_field_boost.rb +0 -17
  110. data/sunspot/lib/sunspot/schema.rb +0 -151
  111. data/sunspot/lib/sunspot/search.rb +0 -9
  112. data/sunspot/lib/sunspot/search/abstract_search.rb +0 -286
  113. data/sunspot/lib/sunspot/search/date_facet.rb +0 -35
  114. data/sunspot/lib/sunspot/search/facet_row.rb +0 -27
  115. data/sunspot/lib/sunspot/search/field_facet.rb +0 -88
  116. data/sunspot/lib/sunspot/search/field_group.rb +0 -70
  117. data/sunspot/lib/sunspot/search/group.rb +0 -54
  118. data/sunspot/lib/sunspot/search/highlight.rb +0 -38
  119. data/sunspot/lib/sunspot/search/hit.rb +0 -150
  120. data/sunspot/lib/sunspot/search/hit_enumerable.rb +0 -68
  121. data/sunspot/lib/sunspot/search/more_like_this_search.rb +0 -31
  122. data/sunspot/lib/sunspot/search/paginated_collection.rb +0 -57
  123. data/sunspot/lib/sunspot/search/query_facet.rb +0 -67
  124. data/sunspot/lib/sunspot/search/range_facet.rb +0 -37
  125. data/sunspot/lib/sunspot/search/standard_search.rb +0 -21
  126. data/sunspot/lib/sunspot/session.rb +0 -262
  127. data/sunspot/lib/sunspot/session_proxy.rb +0 -95
  128. data/sunspot/lib/sunspot/session_proxy/abstract_session_proxy.rb +0 -29
  129. data/sunspot/lib/sunspot/session_proxy/class_sharding_session_proxy.rb +0 -66
  130. data/sunspot/lib/sunspot/session_proxy/id_sharding_session_proxy.rb +0 -89
  131. data/sunspot/lib/sunspot/session_proxy/master_slave_session_proxy.rb +0 -43
  132. data/sunspot/lib/sunspot/session_proxy/retry_5xx_session_proxy.rb +0 -67
  133. data/sunspot/lib/sunspot/session_proxy/sharding_session_proxy.rb +0 -222
  134. data/sunspot/lib/sunspot/session_proxy/silent_fail_session_proxy.rb +0 -42
  135. data/sunspot/lib/sunspot/session_proxy/thread_local_session_proxy.rb +0 -37
  136. data/sunspot/lib/sunspot/setup.rb +0 -350
  137. data/sunspot/lib/sunspot/text_field_setup.rb +0 -29
  138. data/sunspot/lib/sunspot/type.rb +0 -393
  139. data/sunspot/lib/sunspot/util.rb +0 -252
  140. data/sunspot/lib/sunspot/version.rb +0 -3
  141. data/sunspot/log/.gitignore +0 -1
  142. data/sunspot/pkg/.gitignore +0 -1
  143. data/sunspot/script/console +0 -10
  144. data/sunspot/spec/api/adapters_spec.rb +0 -68
  145. data/sunspot/spec/api/batcher_spec.rb +0 -112
  146. data/sunspot/spec/api/binding_spec.rb +0 -50
  147. data/sunspot/spec/api/class_set_spec.rb +0 -24
  148. data/sunspot/spec/api/hit_enumerable_spec.rb +0 -47
  149. data/sunspot/spec/api/indexer/attributes_spec.rb +0 -149
  150. data/sunspot/spec/api/indexer/batch_spec.rb +0 -72
  151. data/sunspot/spec/api/indexer/dynamic_fields_spec.rb +0 -42
  152. data/sunspot/spec/api/indexer/fixed_fields_spec.rb +0 -57
  153. data/sunspot/spec/api/indexer/fulltext_spec.rb +0 -43
  154. data/sunspot/spec/api/indexer/removal_spec.rb +0 -53
  155. data/sunspot/spec/api/indexer/spec_helper.rb +0 -1
  156. data/sunspot/spec/api/indexer_spec.rb +0 -14
  157. data/sunspot/spec/api/query/advanced_manipulation_examples.rb +0 -35
  158. data/sunspot/spec/api/query/connectives_examples.rb +0 -201
  159. data/sunspot/spec/api/query/dsl_spec.rb +0 -18
  160. data/sunspot/spec/api/query/dynamic_fields_examples.rb +0 -165
  161. data/sunspot/spec/api/query/faceting_examples.rb +0 -497
  162. data/sunspot/spec/api/query/fulltext_examples.rb +0 -313
  163. data/sunspot/spec/api/query/function_spec.rb +0 -79
  164. data/sunspot/spec/api/query/geo_examples.rb +0 -68
  165. data/sunspot/spec/api/query/group_spec.rb +0 -32
  166. data/sunspot/spec/api/query/highlighting_examples.rb +0 -245
  167. data/sunspot/spec/api/query/more_like_this_spec.rb +0 -140
  168. data/sunspot/spec/api/query/ordering_pagination_examples.rb +0 -116
  169. data/sunspot/spec/api/query/scope_examples.rb +0 -275
  170. data/sunspot/spec/api/query/spatial_examples.rb +0 -27
  171. data/sunspot/spec/api/query/spec_helper.rb +0 -1
  172. data/sunspot/spec/api/query/standard_spec.rb +0 -29
  173. data/sunspot/spec/api/query/text_field_scoping_examples.rb +0 -30
  174. data/sunspot/spec/api/query/types_spec.rb +0 -20
  175. data/sunspot/spec/api/search/dynamic_fields_spec.rb +0 -33
  176. data/sunspot/spec/api/search/faceting_spec.rb +0 -360
  177. data/sunspot/spec/api/search/highlighting_spec.rb +0 -69
  178. data/sunspot/spec/api/search/hits_spec.rb +0 -147
  179. data/sunspot/spec/api/search/paginated_collection_spec.rb +0 -36
  180. data/sunspot/spec/api/search/results_spec.rb +0 -72
  181. data/sunspot/spec/api/search/search_spec.rb +0 -23
  182. data/sunspot/spec/api/search/spec_helper.rb +0 -1
  183. data/sunspot/spec/api/session_proxy/class_sharding_session_proxy_spec.rb +0 -85
  184. data/sunspot/spec/api/session_proxy/id_sharding_session_proxy_spec.rb +0 -30
  185. data/sunspot/spec/api/session_proxy/master_slave_session_proxy_spec.rb +0 -41
  186. data/sunspot/spec/api/session_proxy/retry_5xx_session_proxy_spec.rb +0 -78
  187. data/sunspot/spec/api/session_proxy/sharding_session_proxy_spec.rb +0 -77
  188. data/sunspot/spec/api/session_proxy/silent_fail_session_proxy_spec.rb +0 -24
  189. data/sunspot/spec/api/session_proxy/spec_helper.rb +0 -9
  190. data/sunspot/spec/api/session_proxy/thread_local_session_proxy_spec.rb +0 -39
  191. data/sunspot/spec/api/session_spec.rb +0 -232
  192. data/sunspot/spec/api/spec_helper.rb +0 -3
  193. data/sunspot/spec/api/sunspot_spec.rb +0 -29
  194. data/sunspot/spec/ext.rb +0 -11
  195. data/sunspot/spec/helpers/indexer_helper.rb +0 -17
  196. data/sunspot/spec/helpers/integration_helper.rb +0 -8
  197. data/sunspot/spec/helpers/mock_session_helper.rb +0 -13
  198. data/sunspot/spec/helpers/query_helper.rb +0 -26
  199. data/sunspot/spec/helpers/search_helper.rb +0 -68
  200. data/sunspot/spec/integration/dynamic_fields_spec.rb +0 -57
  201. data/sunspot/spec/integration/faceting_spec.rb +0 -330
  202. data/sunspot/spec/integration/field_grouping_spec.rb +0 -100
  203. data/sunspot/spec/integration/geospatial_spec.rb +0 -96
  204. data/sunspot/spec/integration/highlighting_spec.rb +0 -44
  205. data/sunspot/spec/integration/indexing_spec.rb +0 -55
  206. data/sunspot/spec/integration/keyword_search_spec.rb +0 -317
  207. data/sunspot/spec/integration/local_search_spec.rb +0 -64
  208. data/sunspot/spec/integration/more_like_this_spec.rb +0 -43
  209. data/sunspot/spec/integration/scoped_search_spec.rb +0 -386
  210. data/sunspot/spec/integration/stored_fields_spec.rb +0 -12
  211. data/sunspot/spec/integration/test_pagination.rb +0 -43
  212. data/sunspot/spec/integration/unicode_spec.rb +0 -15
  213. data/sunspot/spec/mocks/adapters.rb +0 -33
  214. data/sunspot/spec/mocks/blog.rb +0 -3
  215. data/sunspot/spec/mocks/comment.rb +0 -21
  216. data/sunspot/spec/mocks/connection.rb +0 -126
  217. data/sunspot/spec/mocks/mock_adapter.rb +0 -30
  218. data/sunspot/spec/mocks/mock_class_sharding_session_proxy.rb +0 -24
  219. data/sunspot/spec/mocks/mock_record.rb +0 -52
  220. data/sunspot/spec/mocks/mock_sharding_session_proxy.rb +0 -15
  221. data/sunspot/spec/mocks/photo.rb +0 -11
  222. data/sunspot/spec/mocks/post.rb +0 -86
  223. data/sunspot/spec/mocks/super_class.rb +0 -2
  224. data/sunspot/spec/mocks/user.rb +0 -13
  225. data/sunspot/spec/spec_helper.rb +0 -40
  226. data/sunspot/sunspot.gemspec +0 -37
  227. data/sunspot/tasks/rdoc.rake +0 -27
  228. data/sunspot/tasks/schema.rake +0 -19
  229. data/sunspot/tasks/todo.rake +0 -4
  230. data/sunspot_rails/.gitignore +0 -7
  231. data/sunspot_rails/.rspec +0 -1
  232. data/sunspot_rails/History.txt +0 -74
  233. data/sunspot_rails/LICENSE +0 -18
  234. data/sunspot_rails/MIT-LICENSE +0 -20
  235. data/sunspot_rails/README.rdoc +0 -265
  236. data/sunspot_rails/Rakefile +0 -17
  237. data/sunspot_rails/TODO +0 -8
  238. data/sunspot_rails/dev_tasks/rdoc.rake +0 -24
  239. data/sunspot_rails/dev_tasks/release.rake +0 -4
  240. data/sunspot_rails/dev_tasks/spec.rake +0 -107
  241. data/sunspot_rails/dev_tasks/todo.rake +0 -4
  242. data/sunspot_rails/gemfiles/rails-2.3.14 +0 -12
  243. data/sunspot_rails/gemfiles/rails-3.0.15 +0 -12
  244. data/sunspot_rails/gemfiles/rails-3.1.6 +0 -12
  245. data/sunspot_rails/gemfiles/rails-3.2.6 +0 -12
  246. data/sunspot_rails/generators/sunspot/sunspot_generator.rb +0 -9
  247. data/sunspot_rails/generators/sunspot/templates/sunspot.yml +0 -20
  248. data/sunspot_rails/install.rb +0 -1
  249. data/sunspot_rails/lib/generators/sunspot_rails.rb +0 -9
  250. data/sunspot_rails/lib/generators/sunspot_rails/install/install_generator.rb +0 -13
  251. data/sunspot_rails/lib/generators/sunspot_rails/install/templates/config/sunspot.yml +0 -19
  252. data/sunspot_rails/lib/sunspot/rails.rb +0 -69
  253. data/sunspot_rails/lib/sunspot/rails/adapters.rb +0 -88
  254. data/sunspot_rails/lib/sunspot/rails/configuration.rb +0 -352
  255. data/sunspot_rails/lib/sunspot/rails/init.rb +0 -5
  256. data/sunspot_rails/lib/sunspot/rails/log_subscriber.rb +0 -45
  257. data/sunspot_rails/lib/sunspot/rails/railtie.rb +0 -41
  258. data/sunspot_rails/lib/sunspot/rails/railties/controller_runtime.rb +0 -36
  259. data/sunspot_rails/lib/sunspot/rails/request_lifecycle.rb +0 -36
  260. data/sunspot_rails/lib/sunspot/rails/searchable.rb +0 -495
  261. data/sunspot_rails/lib/sunspot/rails/server.rb +0 -106
  262. data/sunspot_rails/lib/sunspot/rails/solr_instrumentation.rb +0 -19
  263. data/sunspot_rails/lib/sunspot/rails/solr_logging.rb +0 -62
  264. data/sunspot_rails/lib/sunspot/rails/spec_helper.rb +0 -26
  265. data/sunspot_rails/lib/sunspot/rails/stub_session_proxy.rb +0 -146
  266. data/sunspot_rails/lib/sunspot/rails/tasks.rb +0 -94
  267. data/sunspot_rails/lib/sunspot_rails.rb +0 -12
  268. data/sunspot_rails/spec/configuration_spec.rb +0 -209
  269. data/sunspot_rails/spec/model_lifecycle_spec.rb +0 -63
  270. data/sunspot_rails/spec/model_spec.rb +0 -601
  271. data/sunspot_rails/spec/rails_template/app/controllers/application_controller.rb +0 -10
  272. data/sunspot_rails/spec/rails_template/app/controllers/posts_controller.rb +0 -6
  273. data/sunspot_rails/spec/rails_template/app/models/author.rb +0 -10
  274. data/sunspot_rails/spec/rails_template/app/models/blog.rb +0 -14
  275. data/sunspot_rails/spec/rails_template/app/models/location.rb +0 -3
  276. data/sunspot_rails/spec/rails_template/app/models/photo_post.rb +0 -2
  277. data/sunspot_rails/spec/rails_template/app/models/post.rb +0 -13
  278. data/sunspot_rails/spec/rails_template/app/models/post_with_auto.rb +0 -12
  279. data/sunspot_rails/spec/rails_template/app/models/post_with_default_scope.rb +0 -13
  280. data/sunspot_rails/spec/rails_template/config/boot.rb +0 -127
  281. data/sunspot_rails/spec/rails_template/config/preinitializer.rb +0 -22
  282. data/sunspot_rails/spec/rails_template/config/routes.rb +0 -9
  283. data/sunspot_rails/spec/rails_template/config/sunspot.yml +0 -24
  284. data/sunspot_rails/spec/rails_template/db/schema.rb +0 -27
  285. data/sunspot_rails/spec/request_lifecycle_spec.rb +0 -61
  286. data/sunspot_rails/spec/schema.rb +0 -27
  287. data/sunspot_rails/spec/searchable_spec.rb +0 -12
  288. data/sunspot_rails/spec/server_spec.rb +0 -33
  289. data/sunspot_rails/spec/session_spec.rb +0 -57
  290. data/sunspot_rails/spec/shared_examples/indexed_after_save.rb +0 -8
  291. data/sunspot_rails/spec/shared_examples/not_indexed_after_save.rb +0 -8
  292. data/sunspot_rails/spec/spec_helper.rb +0 -48
  293. data/sunspot_rails/spec/stub_session_proxy_spec.rb +0 -122
  294. data/sunspot_rails/sunspot_rails.gemspec +0 -43
  295. data/sunspot_rails/tmp/.gitkeep +0 -0
  296. data/tools/gem_tasks.rb +0 -69
@@ -1,2 +0,0 @@
1
- class SuperClass < MockRecord
2
- end
@@ -1,13 +0,0 @@
1
- class User
2
- attr_accessor :name, :roles
3
-
4
- def id
5
- 1
6
- end
7
- end
8
-
9
- Sunspot.setup(User) do
10
- text :name
11
- string :name
12
- integer :role_ids, :multiple => true, :stored => true
13
- end
@@ -1,40 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'ostruct'
4
- require 'sunspot'
5
-
6
- require File.join(File.dirname(__FILE__), 'mocks', 'mock_record.rb')
7
- Dir.glob(File.join(File.dirname(__FILE__), 'mocks', '**', '*.rb')).each do |file|
8
- require file unless File.basename(file) == 'mock_record.rb'
9
- end
10
- Dir.glob(File.join(File.dirname(__FILE__), "helpers", "*.rb")).each do |file|
11
- require file
12
- end
13
- require File.join(File.dirname(__FILE__), 'ext')
14
-
15
- RSpec.configure do |config|
16
- # Mock session available to all spec/api tests
17
- config.include MockSessionHelper,
18
- :type => :api,
19
- :example_group => {:file_path => /spec[\\\/]api/}
20
-
21
- # Real Solr instance is available to integration tests
22
- config.include IntegrationHelper,
23
- :type => :integration,
24
- :example_group => {:file_path => /spec[\\\/]integration/}
25
-
26
- # Nested under spec/api
27
- [:indexer, :query, :search].each do |spec_type|
28
- helper_name = "#{spec_type}_helper"
29
-
30
- 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}/}
33
- end
34
- end
35
-
36
- def without_class(clazz)
37
- Object.class_eval { remove_const(clazz.name.to_sym) }
38
- yield
39
- Object.class_eval { const_set(clazz.name.to_sym, clazz) }
40
- end
@@ -1,37 +0,0 @@
1
- # encoding: utf-8
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "sunspot/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.name = "sunspot"
7
- s.version = Sunspot::VERSION
8
- s.platform = Gem::Platform::RUBY
9
- s.authors = ['Mat Brown', 'Peer Allan', 'Dmitriy Dzema', 'Benjamin Krause', 'Marcel de Graaf', 'Brandon Keepers', 'Peter Berkenbosch',
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']
12
- s.email = ["mat@patch.com"]
13
- s.homepage = "http://outoftime.github.com/sunspot"
14
- s.summary = 'Library for expressive, powerful interaction with the Solr search engine'
15
- s.description = <<-TEXT
16
- Sunspot is a library providing a powerful, all-ruby API for the Solr search engine. Sunspot manages the configuration of persistent
17
- Ruby classes for search and indexing and exposes Solr's most powerful features through a collection of DSLs. Complex search operations
18
- can be performed without hand-writing any boolean queries or building Solr parameters by hand.
19
- TEXT
20
-
21
- s.rubyforge_project = "sunspot"
22
-
23
- s.files = `git ls-files`.split("\n")
24
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
25
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
26
- s.require_paths = ["lib"]
27
-
28
- s.add_dependency 'rsolr', '~>1.0.7'
29
- s.add_dependency 'pr_geohash', '~>1.0'
30
-
31
- s.add_development_dependency 'rspec', '~>2.6.0'
32
- s.add_development_dependency 'hanna'
33
-
34
- s.rdoc_options << '--webcvs=http://github.com/outoftime/sunspot/tree/master/%s' <<
35
- '--title' << 'Sunspot - Solr-powered search for Ruby objects - API Documentation' <<
36
- '--main' << 'README.rdoc'
37
- end
@@ -1,27 +0,0 @@
1
- begin
2
- require 'hanna/rdoctask'
3
- rescue LoadError
4
- if require 'rubygems'
5
- retry
6
- end
7
- # It's OK if hanna isn't installed.
8
- end
9
-
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'
17
- end
18
-
19
- namespace :doc do
20
- desc 'Generate rdoc and move into pages directory'
21
- task :publish => :redoc do
22
- doc_dir = File.join(File.dirname(__FILE__), '..', 'doc')
23
- publish_dir = File.join(File.dirname(__FILE__), '..', '..', 'pages', 'docs')
24
- FileUtils.rm_rf(publish_dir) if File.exist?(publish_dir)
25
- FileUtils.cp_r(doc_dir, publish_dir)
26
- end
27
- end
@@ -1,19 +0,0 @@
1
- namespace :schema do
2
- desc 'Generate schema from template'
3
- task :compile do
4
- require File.join(File.dirname(__FILE__), '..', 'lib', 'sunspot', 'schema')
5
- File.open(
6
- File.join(
7
- File.dirname(__FILE__),
8
- '..',
9
- 'solr',
10
- 'solr',
11
- 'conf',
12
- 'schema.xml'
13
- ),
14
- 'w'
15
- ) do |file|
16
- file << Sunspot::Schema.new.to_xml
17
- end
18
- end
19
- end
@@ -1,4 +0,0 @@
1
- desc 'Show all TODO and related tags'
2
- task :todo do
3
- FileList['lib/**/*.rb'].egrep(/#.*(TODO|FIXME|XXX)/)
4
- end
@@ -1,7 +0,0 @@
1
- sunspot-solr.pid
2
- doc
3
- pkg/*
4
- log
5
- .bundle
6
- tmp/*
7
- gemfiles/*.lock
data/sunspot_rails/.rspec DELETED
@@ -1 +0,0 @@
1
- --color
@@ -1,74 +0,0 @@
1
- == 2.0.0
2
- * Finds orphaned objects in batches to avoid excessive memory use (Peer Allan)
3
- * Default batch size can be specified by setting `Sunspot.config.indexing.default_batch_size`
4
- (Peer Allan)
5
- * Explanation of `progress_bar` is written to stdout instead of stderr (Matt Gornick)
6
- * Fixes deprecated behavior of using InstanceMethods module with
7
- ActiveSupport::Concern (Everton J. Carpes)
8
-
9
- == 1.3.0 2011-11-26
10
- * `Model.index` correctly uses `:first_id` option (Hamza Khan-Cheema)
11
- * Solr request performance is instrumented in Rails (Paco Guzmán)
12
- * Reindexing tasks display a progress bar if `progress_bar` gem is available (Paul Carey)
13
- * Deprecated Rails syntax is removed from `Sunspot::Rails::Searchable` (Steve Schwartz)
14
- * Deprecated syntax is removed from rake tasks (Huned Botee)
15
- * `sunspot:reindex` rake task correctly handles namespaced models (João Gradim)
16
- * `bind_address` parameter can be specified in `sunspot.yml` to bind Solr to a
17
- specific interface (Sylvain Utard)
18
- * `disabled` parameter can be specified in `sunspot.yml` to stub out the
19
- connection to Solr (David B)
20
-
21
- == 1.2.1 2010-12-28
22
- * Decreased default reindexing batch size from 500 to 50
23
-
24
- == 1.2.0 2010-12-28
25
- * Compatible with both Rails 2 and Rails 3
26
- * Configure Sunspot with a SOLR_URL or WEBSOLR_URL environment variable, also
27
- provide a default port based on Rails.env.
28
- * Fix the 'Anonymous modules' ArgumentError for Ruby 1.9.2 and Rails 2.3
29
- * Fix SQL's ambiguous ID issue when tables are joined
30
-
31
- == 1.1.0 2010-04-01
32
- * Added include option to searchable options to allow definition of eager
33
- loading associations when indexing
34
-
35
- == 1.0.4 2010-03-19
36
- * Fix StubSessionProxy to match new internal API
37
-
38
- == 1.0.2 2010-03-11
39
- * Allow use of ActiveRecord object for coordinates extraction
40
- * Works with non-standard primary keys
41
- * Add :include, :select options to Searchable::search()
42
- * Allow specification of min_memory and max_memory in config/sunspot.yml
43
- * Searchable now more considerate of model namespaces
44
-
45
- == 1.0.1 2010-03-05
46
- * Fix Solr logging compatibility with RSolr 0.12.1
47
-
48
- == 1.0.0 2010-03-03
49
- * Sunspot::Rails::Server subclasses Sunspot::Server; no longer needs to shell out
50
- * Use Sunspot built-in session proxies in Sunspot::Rails
51
- * Sunspot::Rails adapter compatible with assumed inconsistency
52
- * Use session proxy for disconnecting Sunspot in specs
53
- * Allow specification of first ID for reindex batches.
54
- * Log Solr requests in Rails logger
55
- * Use class_inheritable_hash for sunspot_options
56
- * Add `index` class method, which is like `reindex` but doesn't clear first
57
- * Rename sunspot:solr:reindex to sunspot:reindex
58
- * Use Sunspot::Installer to bootstrap Rails Solr home
59
-
60
- == 0.10.7
61
- * Added Sunspot::Rails::Server class to start/stop/run/bootstrap the solr server
62
- * Added log_level key to sunspot.yml, see java docs for valid values (http://java.sun.com/j2se/1.5.0/docs/api/java/util/logging/Level.html)
63
- * Added log_file key to sunspot.yml. This defaults to RAILS_ROOT/log/solr_<environment>.log.
64
- * Added support for localsolr in sunspot_rails. You can add custom extension.jar files to your Rails.root/solr/lib directory
65
- * Added an option to not reindex an object when certain columns have changed.
66
-
67
- == 0.10.6
68
- * Added script/generate sunspot support to generate the required sunspot.yml
69
- file [Brandon Keepers]
70
-
71
- == 0.10.5
72
- * Added a auto_commit_after_request option to sunspot.yml. Sunspot will not
73
- automatically commit any changes in solr if you set this value to false.
74
- Strongly encouraged for production environment.
@@ -1,18 +0,0 @@
1
- Permission is hereby granted, free of charge, to any person obtaining
2
- a copy of this software and associated documentation files (the
3
- 'Software'), to deal in the Software without restriction, including
4
- without limitation the rights to use, copy, modify, merge, publish,
5
- distribute, sublicense, and/or sell copies of the Software, and to
6
- permit persons to whom the Software is furnished to do so, subject to
7
- the following conditions:
8
-
9
- The above copyright notice and this permission notice shall be
10
- included in all copies or substantial portions of the Software.
11
-
12
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
13
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
14
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
15
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
16
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
17
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
18
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,20 +0,0 @@
1
- Copyright (c) 2009 Mat Brown
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,265 +0,0 @@
1
- = Sunspot::Rails
2
-
3
- Sunspot::Rails is a Rails plugin that provides drop-in integration of the
4
- Sunspot[http://outoftime.github.com/sunspot] Solr search library with Rails. It
5
- provides the following features:
6
-
7
- * Configure Sunspot using config/sunspot.yml
8
- * Extend ActiveRecord for easy index configuration, search, and indexing
9
- * Automatically index ActiveRecord objects when they are saved, and remove them
10
- from the index when they are destroyed (can be disabled)
11
- * Automatically commit Solr changes at the end of each request (can be disabled)
12
- * Provide utility methods to find and fix orphaned documents and rebuild the
13
- Solr index for a given class
14
- * Provide rake tasks for starting and stopping the development Solr instance,
15
- using the configuration in sunspot.yml
16
-
17
- Sunspot::Rails has been tested with Rails versions 2.3 and 3.0
18
-
19
- == Installation in Rails 3
20
-
21
- In your <code>Gemfile</code>:
22
-
23
- gem 'sunspot_rails'
24
- # This is an optional packaged Solr:
25
- group :test, :development do
26
- gem 'sunspot_solr'
27
- end
28
-
29
- == Installation in Rails 2
30
-
31
- In your project's <code>config/environment.rb</code>, add the following gem dependencies:
32
-
33
- config.gem 'sunspot'
34
- config.gem 'sunspot_rails'
35
-
36
- And in your project's <code>config/development.rb</code> and <code>config/test.rb</code>,
37
- add the following gem dependency to install the optional packaged Solr:
38
-
39
- config.gem 'sunspot_solr'
40
-
41
- Install the gems with:
42
-
43
- rake gems:install
44
-
45
- Generate the file <code>config/sunspot.yml</code>:
46
-
47
- script/generate sunspot
48
-
49
- Rails doesn't automatically load rake tasks from plugins installed as gems
50
- (https://rails.lighthouseapp.com/projects/8994/tickets/59). If you installed
51
- Sunspot::Rails as a gem, add the following line to your project's Rakefile:
52
-
53
- require 'sunspot/rails/tasks'
54
-
55
- == Using Sunspot::Rails
56
-
57
- If you wish to make modifications to the Solr schema, you can create a custom
58
- Solr home in your project directory. In order to do so, create the directory
59
- <code>RAILS_ROOT/solr/conf</code>, and copy in the contents of the Solr gem's
60
- <code>solr/solr/conf</code> directory. If the files are in the right place,
61
- Sunspot::Rails will detect them and tell Solr to use your local configurations.
62
- Use caution when modifying <code>schema.xml</code> - Sunspot relies on the
63
- field naming scheme in the packaged schema file.
64
-
65
- To start up a Solr instance, issue the following (requires sunspot_solr to be
66
- installed):
67
-
68
- rake sunspot:solr:start
69
-
70
- Note that using the built-in Solr instance packaged with Sunspot is great for
71
- development, but is not recommended for production. See the Sunspot
72
- documentation for more information.
73
-
74
- == Usage
75
-
76
- === Setup
77
-
78
- In order for an ActiveRecord model to be indexable and searchable, it must be
79
- configured for search. For example:
80
-
81
- class Post < ActiveRecord::Base
82
- searchable do
83
- text :title, :body
84
- integer :blog_id
85
- time :updated_at
86
- string :sort_title do
87
- title.downcase.sub(/^(an?|the) /, '')
88
- end
89
- end
90
- end
91
-
92
- See the documentation for Sunspot.setup for full details on what can go in the
93
- configuration block.
94
-
95
- === Indexing
96
-
97
- By default, models are indexed whenever they are saved, and removed from the
98
- index whenever they are destroyed. This behavior can be disabled:
99
-
100
- class Post < ActiveRecord::Base
101
- searchable :auto_index => false, :auto_remove => false do
102
- # setup...
103
- end
104
- end
105
-
106
- Note that <b>using the <code>:auto_remove</code> option is not recommended
107
- </b>, as destroying an object without removing it from the index will
108
- create an orphaned document in the index, which is a Bad Thing. Turning off
109
- <code>:auto_index</code> is perfectly safe if you prefer to manage indexing manually
110
- (perhaps using a background job).
111
-
112
- If you have disabled lifecycle indexing hooks, you can invoke indexing
113
- operations directly on your model:
114
-
115
- post = Post.create
116
- post.index
117
- post.remove_from_index
118
-
119
- === Committing
120
-
121
- When data is changed in Solr, it is initially stored in memory and not made
122
- available to the currently running searcher instance. Issuing a +commit+ to Solr
123
- will cause it to write the changes to disk, and instantiate a new searcher
124
- instance. This operation is fairly expensive, so rather than issuing a commit
125
- every time a document is added or removed, Sunspot::Rails issues a commit at
126
- the end of any request where data has been added to or removed from Solr. If
127
- you need to immediately issue a commit, bang!-versions of the methods are
128
- available:
129
-
130
- post = Post.create
131
- post.index!
132
- # this is the same as...
133
- post.index
134
- Sunspot.commit
135
-
136
- When writing tests outside of the context of a controller request, you will want
137
- to use one of these two approaches.
138
-
139
- === Searching
140
-
141
- Do it like this:
142
-
143
- Post.search do
144
- with :blog_id, 1
145
- with(:updated_at).greater_than(Time.now - 2.weeks)
146
- order_by :sort_title, :asc
147
- paginate :page => 1, :per_page => 15
148
- end
149
-
150
- See the documentation for <code>Sunspot.search</code> for all the options
151
- available in the search block, and the information available in the result
152
- block.
153
-
154
- === Searching for IDs
155
-
156
- In some situations, you may want to get the IDs for models returned by a search
157
- without actually loading the models out of the database. For that, you can
158
- call +search_ids+, using the same block format as #search. This will return an
159
- array of IDs.
160
-
161
- === Searching for multiple types
162
-
163
- Sunspot is entirely agnostic about whether searches are for one or more types;
164
- the only restriction is that columns used for restriction, ordering, etc. are
165
- defined in the same way for all types being searched. Sunspot::Rails does not
166
- provide any additional support for this, since there is not anything useful to
167
- be added, so just use the interface provided by Sunspot:
168
-
169
- Sunspot.search(Post, Comment) do
170
- with :blog_id, 1
171
- order_by :created_at, :asc
172
- end
173
-
174
- Be sure to check out the Sunspot documentation for all the details.
175
-
176
- === Adding search functionality in mixins
177
-
178
- Sunspot does not require that search setup for a given class happen all in one
179
- place; it is perfectly acceptable to call the <code>Sunspot.setup</code> method
180
- more than once. This capability is particularly useful for adding search
181
- functionality in mixins. For instance, if you have a +Ratable+ module, you may
182
- wish to add additional search fields for searchable classes that mix in that
183
- module. For example:
184
-
185
- module Ratable
186
- def self.included(base)
187
- if base.searchable?
188
- base.searchable do
189
- float :average_rating do
190
- ratings.average(:value)
191
- end
192
- end
193
- end
194
- end
195
- end
196
-
197
- Note the use of <code>base.searchable?</code> - this ensures that only classes
198
- that already have search enabled will have the additional configuration added.
199
- The above pattern requires that the class be declared searchable before the
200
- module is mixed in; other patterns (such as passing a :searchable option to an
201
- acts_as_-style declaration) may be more flexible.
202
-
203
- === Utility methods
204
-
205
- If you need to completely reindex all of the instances of a given model class,
206
- you can issue:
207
-
208
- Post.reindex
209
-
210
- If for some reason models get deleted from the database, but not from the index,
211
- they will become index orphans - not a good situation. To get IDs that exist in
212
- the index but not the database, you can use the +index_orphans+ method; to
213
- remove those documents from the index, use +clean_index_orphans+. Note that
214
- neither of these operations should be needed if Sunspot and Sunspot::Rails are
215
- used as intended.
216
-
217
- == Testing Solr integration using RSpec
218
-
219
- To disable the sunspot-solr integration for your active record models, require
220
- the file `sunspot/rails/spec_helper`
221
-
222
- Then, in your spec, use the #disconnect_sunspot method:
223
-
224
- require 'sunspot/rails/spec_helper'
225
-
226
- describe Post do
227
- disconnect_sunspot
228
-
229
- it 'should have some behavior'
230
- # ...
231
- end
232
- end
233
-
234
- In all of the examples in this group, all Sunspot calls will be stubbed out. The
235
- Sunspot#search method will return a stub search object that mimics a search with
236
- no results.
237
-
238
- == Further Reading
239
-
240
- Reading the {Sunspot documentation}[http://outoftime.github.com/sunspot/docs] is
241
- highly recommended. Sunspot::Rails exists to wrap Sunspot with a Rails-friendly
242
- API, but almost all of the functionality you use in Sunspot::Rails is
243
- implemented in Sunspot.
244
-
245
- Posts about Sunspot on my blog are available at http://outofti.me/tagged/sunspot
246
-
247
- == Bugs
248
-
249
- Please submit bug reports to https://github.com/sunspot/sunspot/issues
250
-
251
- == Contributors
252
-
253
- - Mat Brown (mat@patch.com)
254
- - Peer Allan (peer.allan@gmail.com)
255
- - Michael Moen (michael@underpantsgnome.com)
256
- - Benjamin Krause (bk@benjaminkrause.com)
257
- - Adam Salter (adam@codebright.net)
258
- - Brandon Keepers (brandon@opensoul.org)
259
- - Paul Canavese (paul@canavese.org)
260
- - John Eberly (jeberly@elctech.com)
261
- - Gert Thiel (gertthiel@gmail.com)
262
-
263
- == License
264
-
265
- Sunspot::Rails is distributed under the MIT License, copyright (c) 2009 Mat Brown