Plume/migrations/sqlite
fdb-hiroshima 006b44f580 Add support for generic timeline (#525)
* Begin adding support for timeline

* fix some bugs with parser

* fmt

* add error reporting for parser

* add tests for timeline query parser

* add rejection tests for parse

* begin adding support for lists

also run migration before compiling, so schema.rs is up to date

* add sqlite migration

* end adding lists

still miss tests and query integration

* cargo fmt

* try to add some tests

* Add some constraint to db, and fix list test

and refactor other tests to use begin_transaction

* add more tests for lists

* add support for lists in query executor

* add keywords for including/excluding boosts and likes

* cargo fmt

* add function to list lists used by query

will make it easier to warn users when creating timeline with unknown lists

* add lang support

* add timeline creation error message when using unexisting lists

* Update .po files

* WIP: interface for timelines

* don't use diesel for migrations

not sure how it passed the ci on the other branch

* add some tests for timeline

add an int representing the order of timelines (first one will be on
top, second just under...)
use first() instead of limit(1).get().into_iter().nth(0)
remove migrations from build artifacts as they are now compiled in

* cargo fmt

* remove timeline order

* fix tests

* add tests for timeline creation failure

* cargo fmt

* add tests for timelines

* add test for matching direct lists and keywords

* add test for language filtering

* Add a more complex test for Timeline::matches, and fix TQ::matches for TQ::Or

* Make the main crate compile + FMT

* Use the new timeline system

- Replace the old "feed" system with timelines
- Display all timelines someone can access on their home page (either their personal ones, or instance timelines)
- Remove functions that were used to get user/local/federated feed
- Add new posts to timelines
- Create a default timeline called "My feed" for everyone, and "Local feed"/"Federated feed" with timelines

@fdb-hiroshima I don't know if that's how you pictured it? If you imagined it differently I can of course make changes.

I hope I didn't forgot anything…

* Cargo fmt

* Try to fix the migration

* Fix tests

* Fix the test (for real this time ?)

* Fix the tests ? + fmt

* Use Kind::Like and Kind::Reshare when needed

* Forgot to run cargo fmt once again

* revert translations

* fix reviewed stuff

* reduce code duplication by macros

* cargo fmt
2019-10-07 19:08:20 +02:00
..
2018-04-22-093322_create_instances align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-04-22-151330_create_user align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-04-23-101717_create_blogs align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-04-23-111655_create_blog_authors align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-04-23-132822_create_posts align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-04-23-142746_create_post_authors align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-05-01-124607_create_follow align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-05-09-192013_create_comments align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-05-10-154336_create_likes Introduce features to choose between SQlite or Postgres 2018-09-30 14:13:54 +02:00
2018-05-13-122311_create_notifications align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-05-19-091428_create_reshares align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-06-20-175532_create_mentions align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-09-02-111458_create_medias align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-09-05-174106_create_tags align types between sqlite & postgres 2018-09-30 14:13:53 +02:00
2018-10-06-161156_change_default_license Change default license to CC-BY-SA 2018-10-06 18:19:45 +01:00
2018-10-19-165450_create_apps Add a model for external apps 2018-10-30 18:13:49 +01:00
2018-10-20-164036_fix_hastag_typo Add support for hashtag on user interface 2018-10-20 19:27:49 +02:00
2018-10-21-163241_create_api_token Add an ApiToken model, and an endpoint to get one 2018-10-30 18:13:49 +01:00
2018-10-30-151545_add_post_cover Add a cover field to posts 2018-10-31 15:07:40 +01:00
2018-12-08-182930_constraints Add some constraint at database level (#342) 2018-12-09 18:44:26 +01:00
2018-12-17-180104_mention_no_ap_url Remove ap_url from mention (#362) 2018-12-18 15:03:47 +01:00
2018-12-17-221135_comment_visibility Comment visibility (#364) 2018-12-24 11:23:04 +01:00
2018-12-25-164502_media-cover-deletion Allow for media cover deletion (#387) 2019-01-05 22:11:54 +01:00
2019-03-05-082846_add_fqn Add a fqn field to blogs and users (#457) 2019-03-06 18:28:10 +01:00
2019-03-16-143637_summary-md Add markdown support for summary (#482) 2019-03-17 20:11:29 +01:00
2019-03-19-191712_blog_images Edit blogs, and add blog icons and banners (#460) 2019-03-22 19:51:36 +01:00
2019-03-25-205630_fix-comment-seers Fix issue with sqlite migrations for comment_seers (#503) 2019-03-26 08:57:46 +01:00
2019-04-28-201506_create_tantivy_index import migrations and don't require diesel_cli for admins (#555) 2019-04-29 16:30:20 +02:00
2019-06-04-102747_create_password_reset_requests_table Store password reset requests in database (#610) 2019-06-04 19:55:17 +01:00
2019-06-18-175952_moderator_role Make a distinction between moderators and admins (#619) 2019-09-13 12:28:36 +02:00
2019-06-21-154916_themes Make a distinction between moderators and admins (#619) 2019-09-13 12:28:36 +02:00
2019-06-22-145757_timeline Add support for generic timeline (#525) 2019-10-07 19:08:20 +02:00
2019-06-24-105533_use_timelines_for_feed Add support for generic timeline (#525) 2019-10-07 19:08:20 +02:00