thinking-sphinx 3.1.4 → 6.0.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.
Files changed (347) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +99 -0
  3. data/.github/actions/test/action.yml +46 -0
  4. data/.github/workflows/ci.yml +75 -0
  5. data/.gitignore +7 -2
  6. data/.travis.yml +31 -16
  7. data/Appraisals +68 -12
  8. data/CHANGELOG.markdown +782 -0
  9. data/Gemfile +13 -4
  10. data/Procfile.support +2 -0
  11. data/README.textile +41 -27
  12. data/Rakefile +2 -0
  13. data/bin/console +15 -0
  14. data/bin/loadsphinx +99 -0
  15. data/bin/testmatrix +48 -0
  16. data/lib/thinking/sphinx.rb +2 -0
  17. data/lib/thinking-sphinx.rb +2 -0
  18. data/lib/thinking_sphinx/active_record/association.rb +2 -0
  19. data/lib/thinking_sphinx/active_record/association_proxy/attribute_finder.rb +3 -1
  20. data/lib/thinking_sphinx/active_record/association_proxy/attribute_matcher.rb +2 -0
  21. data/lib/thinking_sphinx/active_record/association_proxy.rb +3 -2
  22. data/lib/thinking_sphinx/active_record/attribute/sphinx_presenter.rb +3 -1
  23. data/lib/thinking_sphinx/active_record/attribute/type.rb +20 -4
  24. data/lib/thinking_sphinx/active_record/attribute/values.rb +2 -0
  25. data/lib/thinking_sphinx/active_record/attribute.rb +2 -0
  26. data/lib/thinking_sphinx/active_record/base.rb +43 -11
  27. data/lib/thinking_sphinx/active_record/callbacks/association_delta_callbacks.rb +21 -0
  28. data/lib/thinking_sphinx/active_record/callbacks/delete_callbacks.rb +15 -9
  29. data/lib/thinking_sphinx/active_record/callbacks/delta_callbacks.rb +20 -5
  30. data/lib/thinking_sphinx/active_record/callbacks/update_callbacks.rb +18 -4
  31. data/lib/thinking_sphinx/active_record/column.rb +2 -0
  32. data/lib/thinking_sphinx/active_record/column_sql_presenter.rb +7 -1
  33. data/lib/thinking_sphinx/active_record/database_adapters/abstract_adapter.rb +2 -0
  34. data/lib/thinking_sphinx/active_record/database_adapters/mysql_adapter.rb +9 -1
  35. data/lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb +2 -0
  36. data/lib/thinking_sphinx/active_record/database_adapters.rb +3 -1
  37. data/lib/thinking_sphinx/active_record/depolymorph/association_reflection.rb +32 -0
  38. data/lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb +32 -0
  39. data/lib/thinking_sphinx/active_record/depolymorph/conditions_reflection.rb +40 -0
  40. data/lib/thinking_sphinx/active_record/depolymorph/overridden_reflection.rb +50 -0
  41. data/lib/thinking_sphinx/active_record/depolymorph/scoped_reflection.rb +26 -0
  42. data/lib/thinking_sphinx/active_record/field.rb +2 -0
  43. data/lib/thinking_sphinx/active_record/filter_reflection.rb +13 -71
  44. data/lib/thinking_sphinx/active_record/index.rb +7 -5
  45. data/lib/thinking_sphinx/active_record/interpreter.rb +6 -4
  46. data/lib/thinking_sphinx/active_record/join_association.rb +5 -1
  47. data/lib/thinking_sphinx/active_record/log_subscriber.rb +22 -3
  48. data/lib/thinking_sphinx/active_record/polymorpher.rb +2 -0
  49. data/lib/thinking_sphinx/active_record/property.rb +2 -0
  50. data/lib/thinking_sphinx/active_record/property_query.rb +4 -1
  51. data/lib/thinking_sphinx/active_record/property_sql_presenter.rb +2 -0
  52. data/lib/thinking_sphinx/active_record/simple_many_query.rb +2 -0
  53. data/lib/thinking_sphinx/active_record/source_joins.rb +68 -0
  54. data/lib/thinking_sphinx/active_record/sql_builder/clause_builder.rb +2 -0
  55. data/lib/thinking_sphinx/active_record/sql_builder/query.rb +13 -0
  56. data/lib/thinking_sphinx/active_record/sql_builder/statement.rb +2 -0
  57. data/lib/thinking_sphinx/active_record/sql_builder.rb +5 -18
  58. data/lib/thinking_sphinx/active_record/sql_source/template.rb +5 -3
  59. data/lib/thinking_sphinx/active_record/sql_source.rb +35 -9
  60. data/lib/thinking_sphinx/active_record.rb +14 -1
  61. data/lib/thinking_sphinx/attribute_types.rb +72 -0
  62. data/lib/thinking_sphinx/batched_search.rb +2 -0
  63. data/lib/thinking_sphinx/callbacks/appender.rb +63 -0
  64. data/lib/thinking_sphinx/callbacks.rb +29 -0
  65. data/lib/thinking_sphinx/capistrano/v2.rb +2 -0
  66. data/lib/thinking_sphinx/capistrano/v3.rb +2 -0
  67. data/lib/thinking_sphinx/capistrano.rb +2 -0
  68. data/lib/thinking_sphinx/commander.rb +27 -0
  69. data/lib/thinking_sphinx/commands/base.rb +53 -0
  70. data/lib/thinking_sphinx/commands/clear_real_time.rb +22 -0
  71. data/lib/thinking_sphinx/commands/clear_sql.rb +18 -0
  72. data/lib/thinking_sphinx/commands/configure.rb +15 -0
  73. data/lib/thinking_sphinx/commands/index_real_time.rb +15 -0
  74. data/lib/thinking_sphinx/commands/index_sql.rb +25 -0
  75. data/lib/thinking_sphinx/commands/merge.rb +27 -0
  76. data/lib/thinking_sphinx/commands/merge_and_update.rb +57 -0
  77. data/lib/thinking_sphinx/commands/prepare.rb +15 -0
  78. data/lib/thinking_sphinx/commands/rotate.rb +13 -0
  79. data/lib/thinking_sphinx/commands/running.rb +15 -0
  80. data/lib/thinking_sphinx/commands/start_attached.rb +22 -0
  81. data/lib/thinking_sphinx/commands/start_detached.rb +21 -0
  82. data/lib/thinking_sphinx/commands/stop.rb +24 -0
  83. data/lib/thinking_sphinx/commands.rb +20 -0
  84. data/lib/thinking_sphinx/configuration/consistent_ids.rb +2 -0
  85. data/lib/thinking_sphinx/configuration/defaults.rb +2 -0
  86. data/lib/thinking_sphinx/configuration/distributed_indices.rb +3 -1
  87. data/lib/thinking_sphinx/configuration/duplicate_names.rb +36 -0
  88. data/lib/thinking_sphinx/configuration/minimum_fields.rb +17 -12
  89. data/lib/thinking_sphinx/configuration.rb +90 -74
  90. data/lib/thinking_sphinx/connection/client.rb +74 -0
  91. data/lib/thinking_sphinx/connection/jruby.rb +58 -0
  92. data/lib/thinking_sphinx/connection/mri.rb +26 -0
  93. data/lib/thinking_sphinx/connection.rb +13 -114
  94. data/lib/thinking_sphinx/core/field.rb +2 -0
  95. data/lib/thinking_sphinx/core/index.rb +22 -2
  96. data/lib/thinking_sphinx/core/interpreter.rb +2 -0
  97. data/lib/thinking_sphinx/core/property.rb +2 -0
  98. data/lib/thinking_sphinx/core/settings.rb +2 -0
  99. data/lib/thinking_sphinx/core.rb +2 -0
  100. data/lib/thinking_sphinx/deletion.rb +33 -13
  101. data/lib/thinking_sphinx/deltas/default_delta.rb +3 -1
  102. data/lib/thinking_sphinx/deltas/delete_job.rb +16 -4
  103. data/lib/thinking_sphinx/deltas/index_job.rb +14 -2
  104. data/lib/thinking_sphinx/deltas.rb +2 -0
  105. data/lib/thinking_sphinx/distributed/index.rb +25 -3
  106. data/lib/thinking_sphinx/distributed.rb +2 -0
  107. data/lib/thinking_sphinx/errors.rb +47 -3
  108. data/lib/thinking_sphinx/excerpter.rb +2 -0
  109. data/lib/thinking_sphinx/facet.rb +4 -3
  110. data/lib/thinking_sphinx/facet_search.rb +4 -2
  111. data/lib/thinking_sphinx/float_formatter.rb +2 -0
  112. data/lib/thinking_sphinx/frameworks/plain.rb +2 -0
  113. data/lib/thinking_sphinx/frameworks/rails.rb +2 -0
  114. data/lib/thinking_sphinx/frameworks.rb +2 -0
  115. data/lib/thinking_sphinx/guard/file.rb +3 -1
  116. data/lib/thinking_sphinx/guard/files.rb +2 -0
  117. data/lib/thinking_sphinx/guard/none.rb +7 -0
  118. data/lib/thinking_sphinx/guard.rb +3 -0
  119. data/lib/thinking_sphinx/hooks/guard_presence.rb +34 -0
  120. data/lib/thinking_sphinx/index.rb +2 -0
  121. data/lib/thinking_sphinx/index_set.rb +27 -4
  122. data/lib/thinking_sphinx/indexing_strategies/all_at_once.rb +9 -0
  123. data/lib/thinking_sphinx/indexing_strategies/one_at_a_time.rb +16 -0
  124. data/lib/thinking_sphinx/interfaces/base.rb +13 -0
  125. data/lib/thinking_sphinx/interfaces/daemon.rb +27 -0
  126. data/lib/thinking_sphinx/interfaces/real_time.rb +46 -0
  127. data/lib/thinking_sphinx/interfaces/sql.rb +53 -0
  128. data/lib/thinking_sphinx/interfaces.rb +10 -0
  129. data/lib/thinking_sphinx/logger.rb +2 -0
  130. data/lib/thinking_sphinx/masks/group_enumerators_mask.rb +6 -4
  131. data/lib/thinking_sphinx/masks/pagination_mask.rb +2 -0
  132. data/lib/thinking_sphinx/masks/scopes_mask.rb +8 -0
  133. data/lib/thinking_sphinx/masks/weight_enumerator_mask.rb +3 -1
  134. data/lib/thinking_sphinx/masks.rb +2 -0
  135. data/lib/thinking_sphinx/middlewares/active_record_translator.rb +32 -9
  136. data/lib/thinking_sphinx/middlewares/geographer.rb +2 -0
  137. data/lib/thinking_sphinx/middlewares/glazier.rb +14 -1
  138. data/lib/thinking_sphinx/middlewares/ids_only.rb +2 -0
  139. data/lib/thinking_sphinx/middlewares/inquirer.rb +3 -1
  140. data/lib/thinking_sphinx/middlewares/middleware.rb +2 -0
  141. data/lib/thinking_sphinx/middlewares/sphinxql.rb +18 -16
  142. data/lib/thinking_sphinx/middlewares/stale_id_checker.rb +3 -1
  143. data/lib/thinking_sphinx/middlewares/stale_id_filter.rb +4 -2
  144. data/lib/thinking_sphinx/middlewares/valid_options.rb +25 -0
  145. data/lib/thinking_sphinx/middlewares.rb +7 -3
  146. data/lib/thinking_sphinx/panes/attributes_pane.rb +2 -0
  147. data/lib/thinking_sphinx/panes/distance_pane.rb +2 -0
  148. data/lib/thinking_sphinx/panes/excerpts_pane.rb +2 -0
  149. data/lib/thinking_sphinx/panes/weight_pane.rb +3 -1
  150. data/lib/thinking_sphinx/panes.rb +2 -0
  151. data/lib/thinking_sphinx/processor.rb +71 -0
  152. data/lib/thinking_sphinx/query.rb +2 -0
  153. data/lib/thinking_sphinx/railtie.rb +29 -2
  154. data/lib/thinking_sphinx/rake_interface.rb +14 -69
  155. data/lib/thinking_sphinx/real_time/attribute.rb +9 -1
  156. data/lib/thinking_sphinx/real_time/callbacks/real_time_callbacks.rb +17 -7
  157. data/lib/thinking_sphinx/real_time/field.rb +2 -0
  158. data/lib/thinking_sphinx/real_time/index/template.rb +19 -1
  159. data/lib/thinking_sphinx/real_time/index.rb +11 -5
  160. data/lib/thinking_sphinx/real_time/interpreter.rb +10 -6
  161. data/lib/thinking_sphinx/real_time/populator.rb +12 -14
  162. data/lib/thinking_sphinx/real_time/processor.rb +36 -0
  163. data/lib/thinking_sphinx/real_time/property.rb +3 -5
  164. data/lib/thinking_sphinx/real_time/transcribe_instance.rb +38 -0
  165. data/lib/thinking_sphinx/real_time/transcriber.rb +63 -15
  166. data/lib/thinking_sphinx/real_time/translator.rb +39 -0
  167. data/lib/thinking_sphinx/real_time.rb +22 -1
  168. data/lib/thinking_sphinx/scopes.rb +6 -0
  169. data/lib/thinking_sphinx/search/batch_inquirer.rb +2 -0
  170. data/lib/thinking_sphinx/search/context.rb +11 -0
  171. data/lib/thinking_sphinx/search/glaze.rb +2 -0
  172. data/lib/thinking_sphinx/search/merger.rb +2 -0
  173. data/lib/thinking_sphinx/search/query.rb +9 -1
  174. data/lib/thinking_sphinx/search/stale_ids_exception.rb +7 -3
  175. data/lib/thinking_sphinx/search.rb +30 -2
  176. data/lib/thinking_sphinx/settings.rb +128 -0
  177. data/lib/thinking_sphinx/sinatra.rb +3 -1
  178. data/lib/thinking_sphinx/subscribers/populator_subscriber.rb +19 -5
  179. data/lib/thinking_sphinx/tasks.rb +55 -28
  180. data/lib/thinking_sphinx/test.rb +3 -1
  181. data/lib/thinking_sphinx/utf8.rb +2 -0
  182. data/lib/thinking_sphinx/wildcard.rb +3 -1
  183. data/lib/thinking_sphinx/with_output.rb +13 -0
  184. data/lib/thinking_sphinx.rb +35 -4
  185. data/spec/acceptance/association_scoping_spec.rb +7 -5
  186. data/spec/acceptance/attribute_access_spec.rb +29 -12
  187. data/spec/acceptance/attribute_updates_spec.rb +5 -3
  188. data/spec/acceptance/batch_searching_spec.rb +6 -4
  189. data/spec/acceptance/big_integers_spec.rb +9 -7
  190. data/spec/acceptance/excerpts_spec.rb +11 -10
  191. data/spec/acceptance/facets_spec.rb +29 -16
  192. data/spec/acceptance/geosearching_spec.rb +22 -10
  193. data/spec/acceptance/grouping_by_attributes_spec.rb +30 -28
  194. data/spec/acceptance/index_options_spec.rb +18 -16
  195. data/spec/acceptance/indexing_spec.rb +5 -3
  196. data/spec/acceptance/merging_spec.rb +90 -0
  197. data/spec/acceptance/paginating_search_results_spec.rb +21 -3
  198. data/spec/acceptance/real_time_updates_spec.rb +103 -5
  199. data/spec/acceptance/remove_deleted_records_spec.rb +64 -8
  200. data/spec/acceptance/search_counts_spec.rb +4 -2
  201. data/spec/acceptance/search_for_just_ids_spec.rb +4 -2
  202. data/spec/acceptance/searching_across_models_spec.rb +15 -6
  203. data/spec/acceptance/searching_across_schemas_spec.rb +12 -10
  204. data/spec/acceptance/searching_on_fields_spec.rb +11 -9
  205. data/spec/acceptance/searching_with_filters_spec.rb +35 -20
  206. data/spec/acceptance/searching_with_sti_spec.rb +11 -9
  207. data/spec/acceptance/searching_within_a_model_spec.rb +44 -17
  208. data/spec/acceptance/sorting_search_results_spec.rb +21 -19
  209. data/spec/acceptance/spec_helper.rb +2 -13
  210. data/spec/acceptance/specifying_sql_spec.rb +118 -62
  211. data/spec/acceptance/sphinx_scopes_spec.rb +30 -21
  212. data/spec/acceptance/sql_deltas_spec.rb +35 -9
  213. data/spec/acceptance/support/database_cleaner.rb +3 -1
  214. data/spec/acceptance/support/sphinx_controller.rb +25 -9
  215. data/spec/acceptance/support/sphinx_helpers.rb +17 -2
  216. data/spec/acceptance/suspended_deltas_spec.rb +14 -12
  217. data/spec/fixtures/database.yml +1 -1
  218. data/spec/internal/app/indices/admin_person_index.rb +6 -0
  219. data/spec/internal/app/indices/album_index.rb +9 -0
  220. data/spec/internal/app/indices/animal_index.rb +2 -0
  221. data/spec/internal/app/indices/article_index.rb +10 -3
  222. data/spec/internal/app/indices/bird_index.rb +2 -0
  223. data/spec/internal/app/indices/book_index.rb +4 -1
  224. data/spec/internal/app/indices/car_index.rb +2 -0
  225. data/spec/internal/app/indices/city_index.rb +2 -0
  226. data/spec/internal/app/indices/colour_index.rb +7 -0
  227. data/spec/internal/app/indices/product_index.rb +3 -2
  228. data/spec/internal/app/indices/tee_index.rb +3 -1
  229. data/spec/internal/app/indices/user_index.rb +2 -0
  230. data/spec/internal/app/models/admin/person.rb +6 -0
  231. data/spec/internal/app/models/album.rb +25 -0
  232. data/spec/internal/app/models/animal.rb +3 -0
  233. data/spec/internal/app/models/article.rb +4 -0
  234. data/spec/internal/app/models/bird.rb +3 -0
  235. data/spec/internal/app/models/book.rb +9 -5
  236. data/spec/internal/app/models/car.rb +3 -1
  237. data/spec/internal/app/models/categorisation.rb +10 -1
  238. data/spec/internal/app/models/category.rb +2 -0
  239. data/spec/internal/app/models/city.rb +4 -0
  240. data/spec/internal/app/models/colour.rb +4 -0
  241. data/spec/internal/app/models/event.rb +2 -0
  242. data/spec/internal/app/models/flightless_bird.rb +2 -0
  243. data/spec/internal/app/models/genre.rb +2 -0
  244. data/spec/internal/app/models/hardcover.rb +2 -0
  245. data/spec/internal/app/models/mammal.rb +2 -0
  246. data/spec/internal/app/models/manufacturer.rb +2 -0
  247. data/spec/internal/app/models/product.rb +3 -1
  248. data/spec/internal/app/models/tag.rb +2 -0
  249. data/spec/internal/app/models/tagging.rb +2 -0
  250. data/spec/internal/app/models/tee.rb +7 -0
  251. data/spec/internal/app/models/tweet.rb +2 -0
  252. data/spec/internal/app/models/user.rb +4 -0
  253. data/spec/internal/config/database.yml +12 -1
  254. data/spec/internal/db/schema.rb +13 -1
  255. data/spec/spec_helper.rb +12 -1
  256. data/spec/support/json_column.rb +35 -0
  257. data/spec/support/multi_schema.rb +5 -1
  258. data/spec/support/mysql.rb +25 -0
  259. data/spec/support/sphinx_yaml_helpers.rb +8 -1
  260. data/spec/thinking_sphinx/active_record/association_spec.rb +3 -1
  261. data/spec/thinking_sphinx/active_record/attribute/type_spec.rb +43 -38
  262. data/spec/thinking_sphinx/active_record/base_spec.rb +31 -29
  263. data/spec/thinking_sphinx/active_record/callbacks/delete_callbacks_spec.rb +81 -10
  264. data/spec/thinking_sphinx/active_record/callbacks/delta_callbacks_spec.rb +56 -29
  265. data/spec/thinking_sphinx/active_record/callbacks/update_callbacks_spec.rb +27 -10
  266. data/spec/thinking_sphinx/active_record/column_spec.rb +15 -13
  267. data/spec/thinking_sphinx/active_record/column_sql_presenter_spec.rb +39 -0
  268. data/spec/thinking_sphinx/active_record/database_adapters/abstract_adapter_spec.rb +7 -5
  269. data/spec/thinking_sphinx/active_record/database_adapters/mysql_adapter_spec.rb +26 -12
  270. data/spec/thinking_sphinx/active_record/database_adapters/postgresql_adapter_spec.rb +15 -13
  271. data/spec/thinking_sphinx/active_record/database_adapters_spec.rb +50 -48
  272. data/spec/thinking_sphinx/active_record/field_spec.rb +9 -7
  273. data/spec/thinking_sphinx/active_record/filter_reflection_spec.rb +113 -80
  274. data/spec/thinking_sphinx/active_record/index_spec.rb +41 -37
  275. data/spec/thinking_sphinx/active_record/interpreter_spec.rb +62 -59
  276. data/spec/thinking_sphinx/active_record/polymorpher_spec.rb +16 -14
  277. data/spec/thinking_sphinx/active_record/property_sql_presenter_spec.rb +69 -67
  278. data/spec/thinking_sphinx/active_record/sql_builder_spec.rb +146 -154
  279. data/spec/thinking_sphinx/active_record/sql_source_spec.rb +185 -109
  280. data/spec/thinking_sphinx/attribute_types_spec.rb +52 -0
  281. data/spec/thinking_sphinx/commands/clear_real_time_spec.rb +46 -0
  282. data/spec/thinking_sphinx/commands/clear_sql_spec.rb +52 -0
  283. data/spec/thinking_sphinx/commands/configure_spec.rb +31 -0
  284. data/spec/thinking_sphinx/commands/index_real_time_spec.rb +33 -0
  285. data/spec/thinking_sphinx/commands/index_sql_spec.rb +86 -0
  286. data/spec/thinking_sphinx/commands/merge_and_update_spec.rb +106 -0
  287. data/spec/thinking_sphinx/commands/merge_spec.rb +48 -0
  288. data/spec/thinking_sphinx/commands/prepare_spec.rb +31 -0
  289. data/spec/thinking_sphinx/commands/running_spec.rb +30 -0
  290. data/spec/thinking_sphinx/commands/start_detached_spec.rb +67 -0
  291. data/spec/thinking_sphinx/commands/stop_spec.rb +63 -0
  292. data/spec/thinking_sphinx/configuration/minimum_fields_spec.rb +60 -0
  293. data/spec/thinking_sphinx/configuration_spec.rb +247 -94
  294. data/spec/thinking_sphinx/connection/mri_spec.rb +49 -0
  295. data/spec/thinking_sphinx/connection_spec.rb +15 -13
  296. data/spec/thinking_sphinx/deletion_spec.rb +17 -17
  297. data/spec/thinking_sphinx/deltas/default_delta_spec.rb +28 -21
  298. data/spec/thinking_sphinx/deltas_spec.rb +14 -12
  299. data/spec/thinking_sphinx/errors_spec.rb +59 -27
  300. data/spec/thinking_sphinx/excerpter_spec.rb +12 -9
  301. data/spec/thinking_sphinx/facet_search_spec.rb +24 -22
  302. data/spec/thinking_sphinx/hooks/guard_presence_spec.rb +30 -0
  303. data/spec/thinking_sphinx/index_set_spec.rb +59 -18
  304. data/spec/thinking_sphinx/index_spec.rb +28 -26
  305. data/spec/thinking_sphinx/interfaces/daemon_spec.rb +60 -0
  306. data/spec/thinking_sphinx/interfaces/real_time_spec.rb +109 -0
  307. data/spec/thinking_sphinx/interfaces/sql_spec.rb +122 -0
  308. data/spec/thinking_sphinx/masks/pagination_mask_spec.rb +22 -20
  309. data/spec/thinking_sphinx/masks/scopes_mask_spec.rb +20 -18
  310. data/spec/thinking_sphinx/middlewares/active_record_translator_spec.rb +45 -21
  311. data/spec/thinking_sphinx/middlewares/geographer_spec.rb +11 -9
  312. data/spec/thinking_sphinx/middlewares/glazier_spec.rb +12 -9
  313. data/spec/thinking_sphinx/middlewares/inquirer_spec.rb +9 -7
  314. data/spec/thinking_sphinx/middlewares/sphinxql_spec.rb +60 -58
  315. data/spec/thinking_sphinx/middlewares/stale_id_checker_spec.rb +7 -4
  316. data/spec/thinking_sphinx/middlewares/stale_id_filter_spec.rb +39 -17
  317. data/spec/thinking_sphinx/middlewares/valid_options_spec.rb +51 -0
  318. data/spec/thinking_sphinx/panes/attributes_pane_spec.rb +3 -1
  319. data/spec/thinking_sphinx/panes/distance_pane_spec.rb +6 -4
  320. data/spec/thinking_sphinx/panes/excerpts_pane_spec.rb +8 -6
  321. data/spec/thinking_sphinx/panes/weight_pane_spec.rb +4 -2
  322. data/spec/thinking_sphinx/rake_interface_spec.rb +17 -235
  323. data/spec/thinking_sphinx/real_time/attribute_spec.rb +15 -13
  324. data/spec/thinking_sphinx/real_time/callbacks/real_time_callbacks_spec.rb +114 -28
  325. data/spec/thinking_sphinx/real_time/field_spec.rb +16 -14
  326. data/spec/thinking_sphinx/real_time/index_spec.rb +83 -32
  327. data/spec/thinking_sphinx/real_time/interpreter_spec.rb +44 -42
  328. data/spec/thinking_sphinx/real_time/transcribe_instance_spec.rb +35 -0
  329. data/spec/thinking_sphinx/real_time/transcriber_spec.rb +109 -0
  330. data/spec/thinking_sphinx/real_time/translator_spec.rb +17 -0
  331. data/spec/thinking_sphinx/scopes_spec.rb +11 -5
  332. data/spec/thinking_sphinx/search/glaze_spec.rb +17 -15
  333. data/spec/thinking_sphinx/search/query_spec.rb +19 -10
  334. data/spec/thinking_sphinx/search_spec.rb +30 -28
  335. data/spec/thinking_sphinx/wildcard_spec.rb +18 -11
  336. data/spec/thinking_sphinx_spec.rb +10 -7
  337. data/thinking-sphinx.gemspec +17 -10
  338. metadata +157 -49
  339. data/HISTORY +0 -248
  340. data/gemfiles/.gitignore +0 -1
  341. data/gemfiles/rails_3_2.gemfile +0 -11
  342. data/gemfiles/rails_4_0.gemfile +0 -11
  343. data/gemfiles/rails_4_1.gemfile +0 -11
  344. data/gemfiles/rails_4_2.gemfile +0 -11
  345. data/lib/thinking_sphinx/controller.rb +0 -10
  346. data/lib/thinking_sphinx/middlewares/utf8.rb +0 -27
  347. data/lib/thinking_sphinx/sphinxql.rb +0 -23
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thinking-sphinx
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.4
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pat Allan
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-01 00:00:00.000000000 Z
11
+ date: 2026-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -16,42 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.1.0
19
+ version: 6.1.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 3.1.0
27
- - !ruby/object:Gem::Dependency
28
- name: builder
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 2.1.2
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: 2.1.2
26
+ version: 6.1.0
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: joiner
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - ">="
46
32
  - !ruby/object:Gem::Version
47
- version: 0.2.0
33
+ version: 0.6.0
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - ">="
53
39
  - !ruby/object:Gem::Version
54
- version: 0.2.0
40
+ version: 0.6.0
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: middleware
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,28 +58,28 @@ dependencies:
72
58
  requirements:
73
59
  - - ">="
74
60
  - !ruby/object:Gem::Version
75
- version: 1.0.2
61
+ version: 1.1.0
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - ">="
81
67
  - !ruby/object:Gem::Version
82
- version: 1.0.2
68
+ version: 1.1.0
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: riddle
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - ">="
73
+ - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: 1.5.11
75
+ version: '2.4'
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - ">="
80
+ - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: 1.5.11
82
+ version: '2.4'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: appraisal
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -114,63 +100,82 @@ dependencies:
114
100
  requirements:
115
101
  - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: 0.4.0
103
+ version: '1.1'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
108
  - - "~>"
123
109
  - !ruby/object:Gem::Version
124
- version: 0.4.0
110
+ version: '1.1'
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: database_cleaner
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
115
  - - "~>"
130
116
  - !ruby/object:Gem::Version
131
- version: 1.2.0
117
+ version: 2.0.2
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
122
  - - "~>"
137
123
  - !ruby/object:Gem::Version
138
- version: 1.2.0
124
+ version: 2.0.2
139
125
  - !ruby/object:Gem::Dependency
140
126
  name: rspec
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
129
  - - "~>"
144
130
  - !ruby/object:Gem::Version
145
- version: 2.13.0
131
+ version: 3.12.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 3.12.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: rspec-retry
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.5.6
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 2.13.0
152
+ version: 0.5.6
153
153
  description: An intelligent layer for ActiveRecord (via Rails and Sinatra) for the
154
154
  Sphinx full-text search tool.
155
155
  email:
156
156
  - pat@freelancing-gods.com
157
- executables: []
157
+ executables:
158
+ - console
159
+ - loadsphinx
160
+ - testmatrix
158
161
  extensions: []
159
162
  extra_rdoc_files: []
160
163
  files:
164
+ - ".circleci/config.yml"
165
+ - ".github/actions/test/action.yml"
166
+ - ".github/workflows/ci.yml"
161
167
  - ".gitignore"
162
168
  - ".travis.yml"
163
169
  - Appraisals
170
+ - CHANGELOG.markdown
164
171
  - Gemfile
165
- - HISTORY
166
172
  - LICENCE
173
+ - Procfile.support
167
174
  - README.textile
168
175
  - Rakefile
169
- - gemfiles/.gitignore
170
- - gemfiles/rails_3_2.gemfile
171
- - gemfiles/rails_4_0.gemfile
172
- - gemfiles/rails_4_1.gemfile
173
- - gemfiles/rails_4_2.gemfile
176
+ - bin/console
177
+ - bin/loadsphinx
178
+ - bin/testmatrix
174
179
  - lib/thinking-sphinx.rb
175
180
  - lib/thinking/sphinx.rb
176
181
  - lib/thinking_sphinx.rb
@@ -184,6 +189,7 @@ files:
184
189
  - lib/thinking_sphinx/active_record/attribute/type.rb
185
190
  - lib/thinking_sphinx/active_record/attribute/values.rb
186
191
  - lib/thinking_sphinx/active_record/base.rb
192
+ - lib/thinking_sphinx/active_record/callbacks/association_delta_callbacks.rb
187
193
  - lib/thinking_sphinx/active_record/callbacks/delete_callbacks.rb
188
194
  - lib/thinking_sphinx/active_record/callbacks/delta_callbacks.rb
189
195
  - lib/thinking_sphinx/active_record/callbacks/update_callbacks.rb
@@ -193,6 +199,11 @@ files:
193
199
  - lib/thinking_sphinx/active_record/database_adapters/abstract_adapter.rb
194
200
  - lib/thinking_sphinx/active_record/database_adapters/mysql_adapter.rb
195
201
  - lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb
202
+ - lib/thinking_sphinx/active_record/depolymorph/association_reflection.rb
203
+ - lib/thinking_sphinx/active_record/depolymorph/base_reflection.rb
204
+ - lib/thinking_sphinx/active_record/depolymorph/conditions_reflection.rb
205
+ - lib/thinking_sphinx/active_record/depolymorph/overridden_reflection.rb
206
+ - lib/thinking_sphinx/active_record/depolymorph/scoped_reflection.rb
196
207
  - lib/thinking_sphinx/active_record/field.rb
197
208
  - lib/thinking_sphinx/active_record/filter_reflection.rb
198
209
  - lib/thinking_sphinx/active_record/index.rb
@@ -204,24 +215,46 @@ files:
204
215
  - lib/thinking_sphinx/active_record/property_query.rb
205
216
  - lib/thinking_sphinx/active_record/property_sql_presenter.rb
206
217
  - lib/thinking_sphinx/active_record/simple_many_query.rb
218
+ - lib/thinking_sphinx/active_record/source_joins.rb
207
219
  - lib/thinking_sphinx/active_record/sql_builder.rb
208
220
  - lib/thinking_sphinx/active_record/sql_builder/clause_builder.rb
209
221
  - lib/thinking_sphinx/active_record/sql_builder/query.rb
210
222
  - lib/thinking_sphinx/active_record/sql_builder/statement.rb
211
223
  - lib/thinking_sphinx/active_record/sql_source.rb
212
224
  - lib/thinking_sphinx/active_record/sql_source/template.rb
225
+ - lib/thinking_sphinx/attribute_types.rb
213
226
  - lib/thinking_sphinx/batched_search.rb
214
227
  - lib/thinking_sphinx/callbacks.rb
228
+ - lib/thinking_sphinx/callbacks/appender.rb
215
229
  - lib/thinking_sphinx/capistrano.rb
216
230
  - lib/thinking_sphinx/capistrano/v2.rb
217
231
  - lib/thinking_sphinx/capistrano/v3.rb
232
+ - lib/thinking_sphinx/commander.rb
233
+ - lib/thinking_sphinx/commands.rb
234
+ - lib/thinking_sphinx/commands/base.rb
235
+ - lib/thinking_sphinx/commands/clear_real_time.rb
236
+ - lib/thinking_sphinx/commands/clear_sql.rb
237
+ - lib/thinking_sphinx/commands/configure.rb
238
+ - lib/thinking_sphinx/commands/index_real_time.rb
239
+ - lib/thinking_sphinx/commands/index_sql.rb
240
+ - lib/thinking_sphinx/commands/merge.rb
241
+ - lib/thinking_sphinx/commands/merge_and_update.rb
242
+ - lib/thinking_sphinx/commands/prepare.rb
243
+ - lib/thinking_sphinx/commands/rotate.rb
244
+ - lib/thinking_sphinx/commands/running.rb
245
+ - lib/thinking_sphinx/commands/start_attached.rb
246
+ - lib/thinking_sphinx/commands/start_detached.rb
247
+ - lib/thinking_sphinx/commands/stop.rb
218
248
  - lib/thinking_sphinx/configuration.rb
219
249
  - lib/thinking_sphinx/configuration/consistent_ids.rb
220
250
  - lib/thinking_sphinx/configuration/defaults.rb
221
251
  - lib/thinking_sphinx/configuration/distributed_indices.rb
252
+ - lib/thinking_sphinx/configuration/duplicate_names.rb
222
253
  - lib/thinking_sphinx/configuration/minimum_fields.rb
223
254
  - lib/thinking_sphinx/connection.rb
224
- - lib/thinking_sphinx/controller.rb
255
+ - lib/thinking_sphinx/connection/client.rb
256
+ - lib/thinking_sphinx/connection/jruby.rb
257
+ - lib/thinking_sphinx/connection/mri.rb
225
258
  - lib/thinking_sphinx/core.rb
226
259
  - lib/thinking_sphinx/core/field.rb
227
260
  - lib/thinking_sphinx/core/index.rb
@@ -246,8 +279,17 @@ files:
246
279
  - lib/thinking_sphinx/guard.rb
247
280
  - lib/thinking_sphinx/guard/file.rb
248
281
  - lib/thinking_sphinx/guard/files.rb
282
+ - lib/thinking_sphinx/guard/none.rb
283
+ - lib/thinking_sphinx/hooks/guard_presence.rb
249
284
  - lib/thinking_sphinx/index.rb
250
285
  - lib/thinking_sphinx/index_set.rb
286
+ - lib/thinking_sphinx/indexing_strategies/all_at_once.rb
287
+ - lib/thinking_sphinx/indexing_strategies/one_at_a_time.rb
288
+ - lib/thinking_sphinx/interfaces.rb
289
+ - lib/thinking_sphinx/interfaces/base.rb
290
+ - lib/thinking_sphinx/interfaces/daemon.rb
291
+ - lib/thinking_sphinx/interfaces/real_time.rb
292
+ - lib/thinking_sphinx/interfaces/sql.rb
251
293
  - lib/thinking_sphinx/logger.rb
252
294
  - lib/thinking_sphinx/masks.rb
253
295
  - lib/thinking_sphinx/masks/group_enumerators_mask.rb
@@ -264,12 +306,13 @@ files:
264
306
  - lib/thinking_sphinx/middlewares/sphinxql.rb
265
307
  - lib/thinking_sphinx/middlewares/stale_id_checker.rb
266
308
  - lib/thinking_sphinx/middlewares/stale_id_filter.rb
267
- - lib/thinking_sphinx/middlewares/utf8.rb
309
+ - lib/thinking_sphinx/middlewares/valid_options.rb
268
310
  - lib/thinking_sphinx/panes.rb
269
311
  - lib/thinking_sphinx/panes/attributes_pane.rb
270
312
  - lib/thinking_sphinx/panes/distance_pane.rb
271
313
  - lib/thinking_sphinx/panes/excerpts_pane.rb
272
314
  - lib/thinking_sphinx/panes/weight_pane.rb
315
+ - lib/thinking_sphinx/processor.rb
273
316
  - lib/thinking_sphinx/query.rb
274
317
  - lib/thinking_sphinx/railtie.rb
275
318
  - lib/thinking_sphinx/rake_interface.rb
@@ -281,8 +324,11 @@ files:
281
324
  - lib/thinking_sphinx/real_time/index/template.rb
282
325
  - lib/thinking_sphinx/real_time/interpreter.rb
283
326
  - lib/thinking_sphinx/real_time/populator.rb
327
+ - lib/thinking_sphinx/real_time/processor.rb
284
328
  - lib/thinking_sphinx/real_time/property.rb
329
+ - lib/thinking_sphinx/real_time/transcribe_instance.rb
285
330
  - lib/thinking_sphinx/real_time/transcriber.rb
331
+ - lib/thinking_sphinx/real_time/translator.rb
286
332
  - lib/thinking_sphinx/scopes.rb
287
333
  - lib/thinking_sphinx/search.rb
288
334
  - lib/thinking_sphinx/search/batch_inquirer.rb
@@ -291,13 +337,14 @@ files:
291
337
  - lib/thinking_sphinx/search/merger.rb
292
338
  - lib/thinking_sphinx/search/query.rb
293
339
  - lib/thinking_sphinx/search/stale_ids_exception.rb
340
+ - lib/thinking_sphinx/settings.rb
294
341
  - lib/thinking_sphinx/sinatra.rb
295
- - lib/thinking_sphinx/sphinxql.rb
296
342
  - lib/thinking_sphinx/subscribers/populator_subscriber.rb
297
343
  - lib/thinking_sphinx/tasks.rb
298
344
  - lib/thinking_sphinx/test.rb
299
345
  - lib/thinking_sphinx/utf8.rb
300
346
  - lib/thinking_sphinx/wildcard.rb
347
+ - lib/thinking_sphinx/with_output.rb
301
348
  - spec/acceptance/association_scoping_spec.rb
302
349
  - spec/acceptance/attribute_access_spec.rb
303
350
  - spec/acceptance/attribute_updates_spec.rb
@@ -309,6 +356,7 @@ files:
309
356
  - spec/acceptance/grouping_by_attributes_spec.rb
310
357
  - spec/acceptance/index_options_spec.rb
311
358
  - spec/acceptance/indexing_spec.rb
359
+ - spec/acceptance/merging_spec.rb
312
360
  - spec/acceptance/paginating_search_results_spec.rb
313
361
  - spec/acceptance/real_time_updates_spec.rb
314
362
  - spec/acceptance/remove_deleted_records_spec.rb
@@ -331,16 +379,19 @@ files:
331
379
  - spec/acceptance/suspended_deltas_spec.rb
332
380
  - spec/fixtures/database.yml
333
381
  - spec/internal/app/indices/admin_person_index.rb
382
+ - spec/internal/app/indices/album_index.rb
334
383
  - spec/internal/app/indices/animal_index.rb
335
384
  - spec/internal/app/indices/article_index.rb
336
385
  - spec/internal/app/indices/bird_index.rb
337
386
  - spec/internal/app/indices/book_index.rb
338
387
  - spec/internal/app/indices/car_index.rb
339
388
  - spec/internal/app/indices/city_index.rb
389
+ - spec/internal/app/indices/colour_index.rb
340
390
  - spec/internal/app/indices/product_index.rb
341
391
  - spec/internal/app/indices/tee_index.rb
342
392
  - spec/internal/app/indices/user_index.rb
343
393
  - spec/internal/app/models/admin/person.rb
394
+ - spec/internal/app/models/album.rb
344
395
  - spec/internal/app/models/animal.rb
345
396
  - spec/internal/app/models/article.rb
346
397
  - spec/internal/app/models/bird.rb
@@ -366,7 +417,9 @@ files:
366
417
  - spec/internal/db/schema.rb
367
418
  - spec/internal/tmp/.gitkeep
368
419
  - spec/spec_helper.rb
420
+ - spec/support/json_column.rb
369
421
  - spec/support/multi_schema.rb
422
+ - spec/support/mysql.rb
370
423
  - spec/support/sphinx_yaml_helpers.rb
371
424
  - spec/thinking_sphinx/active_record/association_spec.rb
372
425
  - spec/thinking_sphinx/active_record/attribute/type_spec.rb
@@ -375,6 +428,7 @@ files:
375
428
  - spec/thinking_sphinx/active_record/callbacks/delta_callbacks_spec.rb
376
429
  - spec/thinking_sphinx/active_record/callbacks/update_callbacks_spec.rb
377
430
  - spec/thinking_sphinx/active_record/column_spec.rb
431
+ - spec/thinking_sphinx/active_record/column_sql_presenter_spec.rb
378
432
  - spec/thinking_sphinx/active_record/database_adapters/abstract_adapter_spec.rb
379
433
  - spec/thinking_sphinx/active_record/database_adapters/mysql_adapter_spec.rb
380
434
  - spec/thinking_sphinx/active_record/database_adapters/postgresql_adapter_spec.rb
@@ -387,7 +441,21 @@ files:
387
441
  - spec/thinking_sphinx/active_record/property_sql_presenter_spec.rb
388
442
  - spec/thinking_sphinx/active_record/sql_builder_spec.rb
389
443
  - spec/thinking_sphinx/active_record/sql_source_spec.rb
444
+ - spec/thinking_sphinx/attribute_types_spec.rb
445
+ - spec/thinking_sphinx/commands/clear_real_time_spec.rb
446
+ - spec/thinking_sphinx/commands/clear_sql_spec.rb
447
+ - spec/thinking_sphinx/commands/configure_spec.rb
448
+ - spec/thinking_sphinx/commands/index_real_time_spec.rb
449
+ - spec/thinking_sphinx/commands/index_sql_spec.rb
450
+ - spec/thinking_sphinx/commands/merge_and_update_spec.rb
451
+ - spec/thinking_sphinx/commands/merge_spec.rb
452
+ - spec/thinking_sphinx/commands/prepare_spec.rb
453
+ - spec/thinking_sphinx/commands/running_spec.rb
454
+ - spec/thinking_sphinx/commands/start_detached_spec.rb
455
+ - spec/thinking_sphinx/commands/stop_spec.rb
456
+ - spec/thinking_sphinx/configuration/minimum_fields_spec.rb
390
457
  - spec/thinking_sphinx/configuration_spec.rb
458
+ - spec/thinking_sphinx/connection/mri_spec.rb
391
459
  - spec/thinking_sphinx/connection_spec.rb
392
460
  - spec/thinking_sphinx/deletion_spec.rb
393
461
  - spec/thinking_sphinx/deltas/default_delta_spec.rb
@@ -395,8 +463,12 @@ files:
395
463
  - spec/thinking_sphinx/errors_spec.rb
396
464
  - spec/thinking_sphinx/excerpter_spec.rb
397
465
  - spec/thinking_sphinx/facet_search_spec.rb
466
+ - spec/thinking_sphinx/hooks/guard_presence_spec.rb
398
467
  - spec/thinking_sphinx/index_set_spec.rb
399
468
  - spec/thinking_sphinx/index_spec.rb
469
+ - spec/thinking_sphinx/interfaces/daemon_spec.rb
470
+ - spec/thinking_sphinx/interfaces/real_time_spec.rb
471
+ - spec/thinking_sphinx/interfaces/sql_spec.rb
400
472
  - spec/thinking_sphinx/masks/pagination_mask_spec.rb
401
473
  - spec/thinking_sphinx/masks/scopes_mask_spec.rb
402
474
  - spec/thinking_sphinx/middlewares/active_record_translator_spec.rb
@@ -406,6 +478,7 @@ files:
406
478
  - spec/thinking_sphinx/middlewares/sphinxql_spec.rb
407
479
  - spec/thinking_sphinx/middlewares/stale_id_checker_spec.rb
408
480
  - spec/thinking_sphinx/middlewares/stale_id_filter_spec.rb
481
+ - spec/thinking_sphinx/middlewares/valid_options_spec.rb
409
482
  - spec/thinking_sphinx/panes/attributes_pane_spec.rb
410
483
  - spec/thinking_sphinx/panes/distance_pane_spec.rb
411
484
  - spec/thinking_sphinx/panes/excerpts_pane_spec.rb
@@ -416,6 +489,9 @@ files:
416
489
  - spec/thinking_sphinx/real_time/field_spec.rb
417
490
  - spec/thinking_sphinx/real_time/index_spec.rb
418
491
  - spec/thinking_sphinx/real_time/interpreter_spec.rb
492
+ - spec/thinking_sphinx/real_time/transcribe_instance_spec.rb
493
+ - spec/thinking_sphinx/real_time/transcriber_spec.rb
494
+ - spec/thinking_sphinx/real_time/translator_spec.rb
419
495
  - spec/thinking_sphinx/scopes_spec.rb
420
496
  - spec/thinking_sphinx/search/glaze_spec.rb
421
497
  - spec/thinking_sphinx/search/query_spec.rb
@@ -426,8 +502,12 @@ files:
426
502
  homepage: https://pat.github.io/thinking-sphinx/
427
503
  licenses:
428
504
  - MIT
429
- metadata: {}
430
- post_install_message:
505
+ metadata:
506
+ homepage_uri: https://pat.github.io/thinking-sphinx/
507
+ source_code_uri: https://github.com/pat/thinking-sphinx
508
+ changelog_uri: https://github.com/pat/thinking-sphinx/blob/develop/CHANGELOG.markdown
509
+ rubygems_mfa_required: 'true'
510
+ post_install_message:
431
511
  rdoc_options: []
432
512
  require_paths:
433
513
  - lib
@@ -435,16 +515,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
435
515
  requirements:
436
516
  - - ">="
437
517
  - !ruby/object:Gem::Version
438
- version: '0'
518
+ version: '3.0'
439
519
  required_rubygems_version: !ruby/object:Gem::Requirement
440
520
  requirements:
441
521
  - - ">="
442
522
  - !ruby/object:Gem::Version
443
523
  version: '0'
444
524
  requirements: []
445
- rubyforge_project: thinking-sphinx
446
- rubygems_version: 2.2.2
447
- signing_key:
525
+ rubygems_version: 3.5.22
526
+ signing_key:
448
527
  specification_version: 4
449
528
  summary: A smart wrapper over Sphinx for ActiveRecord
450
529
  test_files:
@@ -459,6 +538,7 @@ test_files:
459
538
  - spec/acceptance/grouping_by_attributes_spec.rb
460
539
  - spec/acceptance/index_options_spec.rb
461
540
  - spec/acceptance/indexing_spec.rb
541
+ - spec/acceptance/merging_spec.rb
462
542
  - spec/acceptance/paginating_search_results_spec.rb
463
543
  - spec/acceptance/real_time_updates_spec.rb
464
544
  - spec/acceptance/remove_deleted_records_spec.rb
@@ -481,16 +561,19 @@ test_files:
481
561
  - spec/acceptance/suspended_deltas_spec.rb
482
562
  - spec/fixtures/database.yml
483
563
  - spec/internal/app/indices/admin_person_index.rb
564
+ - spec/internal/app/indices/album_index.rb
484
565
  - spec/internal/app/indices/animal_index.rb
485
566
  - spec/internal/app/indices/article_index.rb
486
567
  - spec/internal/app/indices/bird_index.rb
487
568
  - spec/internal/app/indices/book_index.rb
488
569
  - spec/internal/app/indices/car_index.rb
489
570
  - spec/internal/app/indices/city_index.rb
571
+ - spec/internal/app/indices/colour_index.rb
490
572
  - spec/internal/app/indices/product_index.rb
491
573
  - spec/internal/app/indices/tee_index.rb
492
574
  - spec/internal/app/indices/user_index.rb
493
575
  - spec/internal/app/models/admin/person.rb
576
+ - spec/internal/app/models/album.rb
494
577
  - spec/internal/app/models/animal.rb
495
578
  - spec/internal/app/models/article.rb
496
579
  - spec/internal/app/models/bird.rb
@@ -516,7 +599,9 @@ test_files:
516
599
  - spec/internal/db/schema.rb
517
600
  - spec/internal/tmp/.gitkeep
518
601
  - spec/spec_helper.rb
602
+ - spec/support/json_column.rb
519
603
  - spec/support/multi_schema.rb
604
+ - spec/support/mysql.rb
520
605
  - spec/support/sphinx_yaml_helpers.rb
521
606
  - spec/thinking_sphinx/active_record/association_spec.rb
522
607
  - spec/thinking_sphinx/active_record/attribute/type_spec.rb
@@ -525,6 +610,7 @@ test_files:
525
610
  - spec/thinking_sphinx/active_record/callbacks/delta_callbacks_spec.rb
526
611
  - spec/thinking_sphinx/active_record/callbacks/update_callbacks_spec.rb
527
612
  - spec/thinking_sphinx/active_record/column_spec.rb
613
+ - spec/thinking_sphinx/active_record/column_sql_presenter_spec.rb
528
614
  - spec/thinking_sphinx/active_record/database_adapters/abstract_adapter_spec.rb
529
615
  - spec/thinking_sphinx/active_record/database_adapters/mysql_adapter_spec.rb
530
616
  - spec/thinking_sphinx/active_record/database_adapters/postgresql_adapter_spec.rb
@@ -537,7 +623,21 @@ test_files:
537
623
  - spec/thinking_sphinx/active_record/property_sql_presenter_spec.rb
538
624
  - spec/thinking_sphinx/active_record/sql_builder_spec.rb
539
625
  - spec/thinking_sphinx/active_record/sql_source_spec.rb
626
+ - spec/thinking_sphinx/attribute_types_spec.rb
627
+ - spec/thinking_sphinx/commands/clear_real_time_spec.rb
628
+ - spec/thinking_sphinx/commands/clear_sql_spec.rb
629
+ - spec/thinking_sphinx/commands/configure_spec.rb
630
+ - spec/thinking_sphinx/commands/index_real_time_spec.rb
631
+ - spec/thinking_sphinx/commands/index_sql_spec.rb
632
+ - spec/thinking_sphinx/commands/merge_and_update_spec.rb
633
+ - spec/thinking_sphinx/commands/merge_spec.rb
634
+ - spec/thinking_sphinx/commands/prepare_spec.rb
635
+ - spec/thinking_sphinx/commands/running_spec.rb
636
+ - spec/thinking_sphinx/commands/start_detached_spec.rb
637
+ - spec/thinking_sphinx/commands/stop_spec.rb
638
+ - spec/thinking_sphinx/configuration/minimum_fields_spec.rb
540
639
  - spec/thinking_sphinx/configuration_spec.rb
640
+ - spec/thinking_sphinx/connection/mri_spec.rb
541
641
  - spec/thinking_sphinx/connection_spec.rb
542
642
  - spec/thinking_sphinx/deletion_spec.rb
543
643
  - spec/thinking_sphinx/deltas/default_delta_spec.rb
@@ -545,8 +645,12 @@ test_files:
545
645
  - spec/thinking_sphinx/errors_spec.rb
546
646
  - spec/thinking_sphinx/excerpter_spec.rb
547
647
  - spec/thinking_sphinx/facet_search_spec.rb
648
+ - spec/thinking_sphinx/hooks/guard_presence_spec.rb
548
649
  - spec/thinking_sphinx/index_set_spec.rb
549
650
  - spec/thinking_sphinx/index_spec.rb
651
+ - spec/thinking_sphinx/interfaces/daemon_spec.rb
652
+ - spec/thinking_sphinx/interfaces/real_time_spec.rb
653
+ - spec/thinking_sphinx/interfaces/sql_spec.rb
550
654
  - spec/thinking_sphinx/masks/pagination_mask_spec.rb
551
655
  - spec/thinking_sphinx/masks/scopes_mask_spec.rb
552
656
  - spec/thinking_sphinx/middlewares/active_record_translator_spec.rb
@@ -556,6 +660,7 @@ test_files:
556
660
  - spec/thinking_sphinx/middlewares/sphinxql_spec.rb
557
661
  - spec/thinking_sphinx/middlewares/stale_id_checker_spec.rb
558
662
  - spec/thinking_sphinx/middlewares/stale_id_filter_spec.rb
663
+ - spec/thinking_sphinx/middlewares/valid_options_spec.rb
559
664
  - spec/thinking_sphinx/panes/attributes_pane_spec.rb
560
665
  - spec/thinking_sphinx/panes/distance_pane_spec.rb
561
666
  - spec/thinking_sphinx/panes/excerpts_pane_spec.rb
@@ -566,6 +671,9 @@ test_files:
566
671
  - spec/thinking_sphinx/real_time/field_spec.rb
567
672
  - spec/thinking_sphinx/real_time/index_spec.rb
568
673
  - spec/thinking_sphinx/real_time/interpreter_spec.rb
674
+ - spec/thinking_sphinx/real_time/transcribe_instance_spec.rb
675
+ - spec/thinking_sphinx/real_time/transcriber_spec.rb
676
+ - spec/thinking_sphinx/real_time/translator_spec.rb
569
677
  - spec/thinking_sphinx/scopes_spec.rb
570
678
  - spec/thinking_sphinx/search/glaze_spec.rb
571
679
  - spec/thinking_sphinx/search/query_spec.rb