docbrown/app
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
..
assets Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
black_box Small adjustment to blackbox.rb (#10961) 2020-10-20 21:14:56 -04:00
controllers [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
decorators Make definition of new user configurable (#12999) 2021-03-23 14:13:06 +07:00
errors Prevent suspended users from self-deleting and returning (#12503) 2021-02-11 09:28:59 +07:00
helpers Make definition of new user configurable (#12999) 2021-03-23 14:13:06 +07:00
javascript [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
lib Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
liquid_tags improve keyboard accessibility of modals 12427 10610 (#12511) 2021-02-24 16:01:10 +00:00
mailers Email confirmation to abuse reports (#12557) 2021-02-03 22:59:50 +03:00
middlewares Move TimeZoneSetter middleware in proper place (#11336) 2020-11-09 17:11:10 +01:00
models [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
policies Remove buffer gem and related code: step 1 (#12993) 2021-03-24 09:58:38 +07:00
queries/admin Filter by a few other roles when adding potential mods (#11187) 2020-11-02 15:05:19 -05:00
refinements Drop profile columns from user (#10707) 2020-12-03 08:14:38 +07:00
sanitizers Video max width (#12436) 2021-01-26 15:12:37 +01:00
serializers [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
services [Search 2.0] Reading list (#13052) 2021-03-24 15:40:00 +01:00
uploaders Bump carrierwave from 2.1.1 to 2.2.0 (#12802) 2021-02-25 10:53:25 +01:00
validators Add validations to SiteConfig model (#12341) 2021-01-26 09:12:24 +07:00
view_objects Move GeneratedImage to Images::GenerateSocialmage (#11691) 2020-12-02 11:03:14 +07:00
views add skip link functionality to coc, terms and privacy pages (#13112) 2021-03-24 13:33:43 +00:00
workers reenable article rescoring when moderators flag users (#12983) 2021-03-16 14:04:13 -05:00