docbrown/spec
rhymes 83852038e4
[Search 2.0] Reading list (#13052)
* Step one in populating the reading list with PG

This first attempt tries to recycle the `Search::ArticleSerializer` which is only
used in input in ES, but we're using it in output in PG.
For this reason it's currently 15.55x times slower

* Serialize only what is requested by the frontend

`Search::ArticleSerializer` which is only used in ES in the indexing step aims
to add as much info as possible for broader purposes, in this case
(with serialization in output) we should aim to save only what's requested from
the frontend.

* Optimize selection of articles columns

* Select only needed columns for users

* Compute total of reading list items

* Attach the basic filtering based on PG on the search controller

* Restructure in methods

* Add tags support

* Use LIKE on articles.cached_tag_list

* Fix tags as nil

* Fix default pagination

* Add optional FTS for reading list

* Reworded the tags comment explaining why

* Add index to reactions.status

* Fix total counter in Preact readingList component

* Fix total count in reading list backend search

* Add GIN index to articles.cached_tag_list

* Add service tests

* Add search request specs

* Added missing early return

* Update spec/requests/search_spec.rb

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>

* Extract MAX_PER_PAGE constant and add comments

Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com>
2021-03-24 15:40:00 +01:00
..
black_box Routine rubocop fixes (#10237) 2020-09-08 12:06:47 -04:00
decorators Make definition of new user configurable (#12999) 2021-03-23 14:13:06 +07:00
factories Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
fixtures ✂️ Remove the approvals gem ✂️ (#12978) 2021-03-19 13:28:06 -07:00
generator Add service generator (#11265) 2020-11-10 09:09:35 +07:00
helpers Re-Add Reporter Email Form to /admin/reports (#13011) [deploy] 2021-03-22 08:19:05 -06:00
initializers Fix regression in Honeybadger.config.exceptions.ignore (#12796) 2021-02-23 19:08:29 +01:00
lib Added credits_awarded to badges (#13073) 2021-03-24 11:33:58 +03:00
liquid_tags ✂️ Remove the approvals gem ✂️ (#12978) 2021-03-19 13:28:06 -07:00
mailers Email confirmation to abuse reports (#12557) 2021-02-03 22:59:50 +03:00
models Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
policies Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
queries/admin Add all new functionality for trusted (#10816) 2020-10-15 17:00:49 -04:00
refinements Update data exporter to handle admin send (#10274) 2020-10-26 18:00:56 -04:00
requests [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
routing Add mobile push notifications to Forem (#12419) 2021-03-12 14:08:18 -06:00
serializers/search [deploy] Refactor:Remove Reaction Search Code (#10377) 2020-09-23 12:27:50 -05:00
services [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
support ✂️ Remove the approvals gem ✂️ (#12978) 2021-03-19 13:28:06 -07:00
system Disable the User Fills Out Comment system spec (#13103) 2021-03-23 15:06:55 -05:00
tasks Refactor:Send Welcome Broadcast Notifications From Sidekiq (#9923) 2020-08-21 12:57:08 -04:00
uploaders Bump carrierwave from 2.1.1 to 2.2.0 (#12802) 2021-02-25 10:53:25 +01:00
view_objects Enable Rubocop 0.89 cops and fix Lint/ violations (#9709) 2020-08-10 16:57:12 +02:00
views ✂️ Remove the approvals gem ✂️ (#12978) 2021-03-19 13:28:06 -07:00
workers [15-minute fix] Add ThrottledCall to DisplayAdEventsController (#12924) 2021-03-09 09:06:11 +07:00
rails_helper.rb Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
spec_helper.rb Manually load dotenv in test (#9971) 2020-08-24 20:19:03 +02:00