Commit graph

1131 commits

Author SHA1 Message Date
375e232217
Prevent purged user getting refetched from home instance (fixes ) () 2023-11-22 09:36:20 -05:00
Dessalines
3e1f7f2efa
Adding creator_is_admin to PersonView, CommentView, and PostView. ()
* Adding creator_is_admin to PersonView, CommentView, and PostView.

* Removing left joins from comment_view.

* Removing joins from person_mention and comment_reply views.

* Removing extra left join from person_view.

* Reverting some changes in post_view.

* Fixing compile error.
2023-11-21 11:20:24 -05:00
Dessalines
28d779a960
Fixing issue with mods not being able to view reports. Fixes ()
* Fixing issue with mods not being able to view reports. Fixes 

* Addressing PR comments.
2023-11-21 16:33:49 +01:00
7ba1d98915
Prevent random test failure () 2023-11-21 10:08:19 -05:00
49377c195e
Fix deleted posts so they can only be seen by creator () 2023-11-21 08:59:47 -05:00
dullbananas
30f7135f32
Use rust 1.74.0 in CI and move clippy lints to Cargo.toml ()
* ci rust 1.74.0

* do it

* Update .woodpecker.yml

* Update Cargo.toml

* Update lint.sh

* Update lib.rs

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-11-21 08:51:22 -05:00
62357f4444
Fix banning of remote user (fixes ) () 2023-11-21 08:44:55 -05:00
Dessalines
82b30b5467
Adding Selectable and diesel postgres backend check. () 2023-11-21 08:42:28 -05:00
cetra3
1c03a86c17
Upgrade activitypub to 0.5.0-beta.5 ()
* Remove anyhow test

* Update lock

* Fix lints hopefully!
2023-11-21 10:26:12 +01:00
f786df151f
Include instance blocks in settings export () 2023-11-17 21:59:15 -05:00
25450ea090
Fix following local communities stuck on pending (fixes ) ()
* Fix following local communities stuck on pending (fixes )

* fmt

* remove import

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-11-17 04:55:26 -05:00
İsmail Karslı
2070381e81
Add upload_timeout to PictrsConfig ()
* Add upload timeout to PictrsConfig

* Bad space 🤔

* Update PictrsConfig upload timeout to include units.
2023-11-17 04:01:32 -05:00
7cb20200d8 Version 0.19.0-rc.5 2023-11-16 23:30:09 -05:00
fc56d0aa05
Use result instead of unwrap in apub tests () 2023-11-16 22:51:33 -05:00
SleeplessOne1917
e573010202
Fix report count endpoint error () 2023-11-16 08:50:15 -05:00
a00313e680
Merge /site_inbox into /inbox, remove unique constraint for inboxes ()
* Merge /site_inbox into /inbox (fixes )

Get rid of different inboxes, only use /inbox

Remove shared_inbox_url db columns

add code migration

move to db migration, fixes

machete

fix sql

drop inbox url unique constraints

Dont create auth cookie in backend ()

dont change individual inboxes to shared inbox

Dont send comment reply to user who has community blocked. Fixes  ()

* Dont send comment reply to user who has community blocked. Fixes 

* Adding source instance block check.

* Adding api test.

* Addressing PR comments.

* move site inbox rewrite to db

* fix test

* clippy

* clippy 2

* fix test
2023-11-16 14:22:40 +01:00
Dessalines
e2bf2ce530
Removing show_new_post_notifs. () 2023-11-15 10:20:01 +01:00
Dessalines
28c30cc502
Adding skip_serializing_none to federation state. () 2023-11-14 08:20:44 -05:00
1d23df37d8
Rename cache_remote_images setting to cache_external_link_previews (ref ) () 2023-11-13 09:19:09 -05:00
dullbananas
8e2cbc9a0f
Remove id column and use different primary key on some tables ()
* post_saved

* fmt

* remove unique and not null

* put person_id first in primary key and remove index

* use post_saved.find

* change captcha_answer

* remove removal of not null

* comment_aggregates

* comment_like

* comment_saved

* aggregates

* remove "\"

* deduplicate site_aggregates

* person_post_aggregates

* community_moderator

* community_block

* community_person_ban

* custom_emoji_keyword

* federation allow/block list

* federation_queue_state

* instance_block

* local_site_rate_limit, local_user_language, login_token

* person_ban, person_block, person_follower, post_like, post_read, received_activity

* community_follower, community_language, site_language

* fmt

* image_upload

* remove unused newtypes

* remove more indexes

* use .find

* merge

* fix site_aggregates_site function

* fmt

* Primary keys dess ()

* Also order reports by oldest first (ref ) ()

* Support signed fetch for federation (fixes ) ()

* Support signed fetch for federation (fixes )

* taplo

* add federation queue state to get_federated_instances api ()

* add federation queue state to get_federated_instances api

* feature gate

* move retry sleep function

* move stuff around

* Add UI setting for collapsing bot comments. Fixes  ()

* Add UI setting for collapsing bot comments. Fixes 

* Fixing clippy check.

* Only keep sent and received activities for 7 days (fixes , fixes ) ()

* Only check auth secure on release mode. ()

* Only check auth secure on release mode.

* Fixing wrong js-client.

* Adding is_debug_mode var.

* Fixing the desktop image on the README. ()

* Delete dupes and add possibly missing unique constraint on person_aggregates.

* Fixing clippy lints.

---------

Co-authored-by: Nutomic <me@nutomic.com>
Co-authored-by: phiresky <phireskyde+git@gmail.com>

* fmt

* Update community_block.rs

* Update instance_block.rs

* Update person_block.rs

* Update person_block.rs

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Nutomic <me@nutomic.com>
Co-authored-by: phiresky <phireskyde+git@gmail.com>
2023-11-13 08:14:07 -05:00
SleeplessOne1917
1dc6c60760
Make import and export settings endpoints reachable ()
* Make import and export settings endpoints reachable

* Preserve original routes
2023-11-13 08:08:07 -05:00
Dessalines
e00b0c9da2
Dont send comment reply to user who has community blocked. Fixes ()
* Dont send comment reply to user who has community blocked. Fixes 

* Adding source instance block check.

* Adding api test.

* Addressing PR comments.
2023-11-09 12:03:25 +01:00
aaaf17486d
Dont create auth cookie in backend () 2023-11-08 07:55:09 -05:00
Dessalines
98ed0e51cc
Only check auth secure on release mode. ()
* Only check auth secure on release mode.

* Fixing wrong js-client.

* Adding is_debug_mode var.
2023-11-07 11:03:13 +01:00
Dessalines
97a4fb9a72
Add UI setting for collapsing bot comments. Fixes ()
* Add UI setting for collapsing bot comments. Fixes 

* Fixing clippy check.
2023-11-06 16:09:12 -05:00
phiresky
b9b65c9c18
add federation queue state to get_federated_instances api ()
* add federation queue state to get_federated_instances api

* feature gate

* move retry sleep function

* move stuff around
2023-11-06 16:07:04 -05:00
8c85f35b19
Support signed fetch for federation (fixes ) ()
* Support signed fetch for federation (fixes )

* taplo
2023-11-06 16:02:01 -05:00
cf788334aa
Also order reports by oldest first (ref ) () 2023-11-06 05:29:30 -05:00
adef3479c0 Version 0.19.0-rc.4 2023-11-03 10:02:30 -04:00
Dessalines
eeec56c22d
Adding creator_is_moderator to CommentReplyView and PersonMentionView. () 2023-11-03 14:41:00 +01:00
1e59e7ab47
Show oldest registration applications first (ref ) ()
* Show oldest registration applications first (ref )

* fix tests
2023-11-02 07:38:46 -04:00
df53d2a0e8
Change logout endpoint to return SuccessResponse () 2023-10-31 08:41:52 -04:00
9007d49324
Remove unused deps ()
* Remove unused deps

* Adding cargo-machete to woodpecker.

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-10-31 11:11:12 +01:00
08739e2925
Move usage of env::var to lemmy_utils, simplify db init (ref ) () 2023-10-25 11:34:38 -04:00
Dessalines
1b751a8cac
Adding cors_origin to settings. Fixes ()
* Adding cors_origin to settings. Fixes 

* Fix result to option.

* Forgot to update config defaults.

* Setting a cors origin doku default.

* Adding comments for CORS.
2023-10-25 16:46:34 +02:00
Dessalines
64b00ee850
Dont allow bots to vote. Fixes ()
* Dont allow bots to vote. Fixes 

* Removing pointless function.
2023-10-25 10:14:12 -04:00
568233b062
Resolve federated objects from other instances via redirect (fixes ) ()
* Resolve federated objects from other instances via redirect (fixes )

* restore domain check using library change

* add test case, update apub lib

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-25 07:14:59 -04:00
45bed71c36
Include prometheus in default build, remove build feature (fixes ) ()
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-25 06:54:58 -04:00
Dessalines
766ca99fd5
Hide private messages from blocked users. ()
- Also fixes the unread count calls for CommentReply and PrivateMessage.
- Fixes 
2023-10-25 12:01:40 +02:00
Dessalines
bd9739b5b7
Upgrading deps. () 2023-10-25 05:32:21 -04:00
Dessalines
0b41ddca58
Fix issue with sending private messages to yourself. Fixes ()
* Fix issue with sending private messages to yourself. Fixes 

* Fix clippy.
2023-10-25 05:09:10 -04:00
Dessalines
c0aee244e7
Hide public rss items for private instance. Fixes () 2023-10-25 10:41:52 +02:00
Dessalines
221365bc9a
Fix bug when leaving admin team, setting accepted application as true… ()
* Fix bug when leaving admin team, setting accepted application as true. Fixes 

* Addressing PR comments.
2023-10-24 17:30:47 -04:00
Dessalines
2df21b9d83
Dont serialize karma. () 2023-10-24 17:26:09 -04:00
d55bd2f2bc
Allow Arabic and Cyrillic usernames/community names (fixes ) ()
* Allow Arabic and Cyrillic usernames/community names (fixes )

* update comment
2023-10-24 16:25:52 -04:00
HackerNCoder
722d9efc13
Use starts_with for forbidden unicode (Fix ) ()
* Use starts_with for forbidden unicode (Fix )

* Require 3 visible chars in display name

* Run cargo fmt and scripts/lint

* Undo invisibly_starts_with_at

* Remove 3 min chars.count() check for display name
2023-10-24 16:57:40 +02:00
Dessalines
09a67472e7
Allow torrent magnet links as post urls. Fixes () 2023-10-24 16:48:00 +02:00
Dessalines
053dcf8c10
Fixing matrix id regex. Fixes () 2023-10-24 16:47:02 +02:00
Dessalines
5d48ee3dc8
Add creator_is_moderator to Comment and PostViews. Fixes ()
* Add creator_is_moderator to Comment and PostViews. Fixes 

* Fixing community_moderator join.

* Addressing PR comments.
2023-10-24 08:37:03 -04:00
Dessalines
5540257b36
Fixing problem with SaveUserSettings, when either the Person or Local… ()
* Fixing problem with SaveUserSettings, when either the Person or LocalUser update is null.

- Fixes 
- Also upgrading api_test deps

* Move function into test.
2023-10-24 11:20:23 +02:00
Dessalines
1596aee724
Adding /version route. Fixes ()
* Adding /version route. Fixes 

* Using a simple version string.

* Use nginx rewriting to solve version.

* Forgot to remove version.

* Using an actix redirect.
2023-10-24 10:49:52 +02:00
Dessalines
5bfa4e9358
Make sure my_vote is consistently missing if not voted. Fixes ()
* Make sure my_vote is consistently missing if not voted. Fixes 

* Fix clippy.

* Fix tests.
2023-10-23 12:40:29 -04:00
6235ff45b5
Return status 401 on logout with invalid auth (fixes ) ()
* Return status 401 on logout with invalid auth (fixes )

* format
2023-10-23 12:17:26 -04:00
ec0a707110
Avoid using proxy for pictrs requests (fixes ) ()
* Avoid using proxy for pictrs requests (fixes )

* fmt
2023-10-20 11:09:34 -04:00
dfc74835b1
Hide deleted user accounts, add tests for PersonView (fixes ) ()
* Hide deleted user accounts, add tests for PersonView (fixes )

* clippy
2023-10-20 10:01:29 -04:00
6bcb12b14f Version 0.19.0-rc.3 2023-10-19 20:34:48 -04:00
Dessalines
236c7e24fd
Making mark post read fields optional. ()
* Making mark post read fields optional.

* Remove unecessary &

* Fix clippy.

* Addressing PR comments.

* serde(default)

* Revert "serde(default)"

This reverts commit d56afd3075a3baccb2b0eda1cc739406b83963aa.

---------

Co-authored-by: Felix Ableitner <me@nutomic.com>
2023-10-19 20:16:23 -04:00
Dessalines
cae25486e4
Adding ts-rs directives for login_token. ()
* Adding ts-rs directives for login_token.

* Fixing ts-rs derive.
2023-10-19 20:16:12 -04:00
Dessalines
c1db65c6e5
Fix up convert more responses to SuccessResponse ()
* Revert "Convert more responses to SuccessResponse. Fixes  ()"

This reverts commit 8deb4e5752.

* Removing purgeitem and deletecustomemoji response.

* Adding back in utils building.
2023-10-19 20:15:55 -04:00
Dessalines
8deb4e5752
Convert more responses to SuccessResponse. Fixes ()
* Convert more responses to SuccessResponse. Fixes 

* Upgrading lemmy-js-client.
2023-10-19 13:21:05 -04:00
9ef28eb53b
Remove unused static () 2023-10-19 11:57:39 -04:00
dullbananas
a14657d124
Refactor rate limiter and improve rate limit bucket cleanup ()
* Update rate_limiter.rs

* Update mod.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update mod.rs

* Update scheduled_tasks.rs

* Shrink `RateLimitBucket`

* Update rate_limiter.rs

* Update mod.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update mod.rs

* Update rate_limiter.rs

* fmt

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* Update rate_limiter.rs

* rerun ci

* Update rate_limiter.rs

* Undo changes to  fields

* Manually undo changes to RateLimitBucket fields

* fmt

* Bucket cleanup loop in rate_limit/mod.rs

* Remove rate limit bucket cleanup from scheduled_tasks.rs

* Remove ;

* Remove UNINITIALIZED_TOKEN_AMOUNT

* Update rate_limiter.rs

* fmt

* Update rate_limiter.rs

* fmt

* Update rate_limiter.rs

* fmt

* Update rate_limiter.rs

* stuff

* MapLevel trait

* fix merge

* Prevent negative numbers in buckets

* Clean up MapLevel::check

* MapLevel::remove_full_buckets

* stuff

* Use remove_full_buckets to avoid allocations

* stuff

* remove tx

* Remove RateLimitConfig

* Rename settings_updated_channel to rate_limit_cell

* Remove global rate limit cell

* impl Default for RateLimitCell

* bucket_configs doc comment to explain EnumMap

* improve test_rate_limiter

* rename default to with_test_config

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Nutomic <me@nutomic.com>
2023-10-19 15:31:51 +02:00
6d27bfed08
Handle invalid ban expires values (fixes ) ()
* Handle invalid ban expires values (fixes )

* Adding a few missing expire time checks. Fixing up time conversions. ()

* Adding a few missing expire time checks. Fixing up time conversions.

* Increase settings export wait time.

* get rid of RemoveCommunity.expires

* fmt

* tests

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-17 13:25:35 -04:00
d827af725a
List distinguished comments first (fixes ) ()
* List distinguished comments first (fixes )

* then_order_by

* Fixing assert.

* move line

* then

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-10-17 13:22:50 -04:00
3a19af5215
Allow marking multiple posts as read in single api call (fixes ) ()
* Allow marking multiple posts as read in single api call (fixes )

* cleanup

* limit array length

* fix test

* review

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-17 12:35:51 -04:00
3f62135083
Add validate_auth api endpoint (fixes ) ()
* Add validate_auth api endpoint (fixes )

* clippy

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-17 11:25:48 -04:00
SleeplessOne1917
cf1c32d2ab
Enable animated avatars setting ()
* feat: Add user setting for toggling avatar gif animations

* Add forgotten post listing mode option to settings form

* Fix compilation error

* Fix formatting

* Change name of column to be more general purpose

* Fix sql format.

* Fix comments

* Running format.

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-17 10:52:34 -04:00
56322c75f0
Read community follower count from home instance (fixes ) ()
* Read community follower count from home instance (fixes )

* fmt

* prettier

* fix tests

* fmt

* rename fn

* fmt

* Run prettier

* increase timeout

* ci

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-10-17 10:34:38 -04:00
332e698336
Cleanup public api ()
* Convert PersonSortType to purely internal

* Remove hot rank and other db optimizations from public api
2023-10-16 19:37:28 -04:00
6cfbb8fc3b
Remove empty API responses ()
* Remove empty API responses

* also remove change password response

* fix invalidate

* Run clippy.

* Fixing api_test lints.

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-16 12:36:53 -04:00
256ee61908
Ignore activities in remote communities without local followers ()
* Ignore activities in remote communities without local followers (fixes )

* x

* comments

* prettier

* fix api test

* fix test

* cleanup

* fix remaining test

* clippy

* decrease delay
2023-10-16 06:03:49 -04:00
Dessalines
3be56ef2e0
Trying to fix export ci, try 1. () 2023-10-16 12:01:59 +02:00
9e099726e6
Cleanup checks for community actions (fixes , fixes ) ()
* Cleanup checks for community actions (fixes , fixes )

* allow restoring deleted community

* review changes

* remove unneeded sql

* remove joins

* change mod log check
2023-10-13 09:48:18 -04:00
608bb6b1b4
Convert titles for posts from Mastodon to plaintext (fixes ) ()
* Convert titles for posts from Mastodon to plaintext (fixes )

* Fix prettier.

* Trigger build

* Convert titles for posts from Mastodon to plaintext (fixes )

* Fix prettier.

* Fix sanizize.

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-10-12 20:36:02 -04:00
Maxime Poulin
3a1be8c041
Fix legacy pagination for Subscribed feed ()
This is the fix suggested in 

I've manually tested both legacy pagination (`page=2&limit=20`) as well as the new pagination (`cursor_next=XXXXXXX&limit=20`) using the same endpoint as , and both methods appear to work as expected.
2023-10-11 16:53:18 +02:00
291ff19718
Only sanitize strings when generating RSS feeds and emails (fixes ) ()
* Only sanitize strings when generating RSS feeds and emails (fixes )

* clippy

* fix test
2023-10-11 16:48:19 +02:00
6d7b38f4de
Implement user data import/export ()
* Implement endpoints for user data import/export

* add test

* exclude avatar/banner

* increase import url count, add rate limit

* also export/import saved posts

* rate limit

* rename

* saved posts also exist

* rename routes

* fix test

* error handling

* clippy

* limit parallelism

* clippy

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-11 16:47:22 +02:00
6d1a7c8ae0
Wipe bio when user is banned with remove content (fixes ) () 2023-10-10 11:11:11 -04:00
Hamzah Mansour
6470ea81a7
add keyboard navigation setting ()
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-10-10 12:17:27 +02:00
dc327652a5
Add db table for login tokens which allows for invalidation ()
* wip

* stuff

* fmt

* fmt 2

* fmt 3

* fix default feature

* use Authorization header

* store ip and user agent for each login

* add list_logins endpoint

* serde(skip) for token

* fix api tests

* A few suggestions for login_token ()

* A few suggestions.

* Fixing SQL format.

* review

* review

* rename cookie

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-09 12:46:12 +02:00
b7d570cf35
Make input length checks consistent with HTML maxlength attribute ()
* Make input length checks consistent with HTML maxlength attr (fixes )

* ci

* Extricating min and max length checks ()

* revert string change

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-10-05 16:39:07 -04:00
a5b8583aab Version 0.19.0-beta.7 2023-10-05 16:01:12 -04:00
0115613f90
Specify password length limits in error (fixes ) ()
* Specify password length limits in error (fixes )

* convert to comment
2023-10-05 07:40:22 -04:00
6950dd90e5
Return HTTP status 503 to all requests during startup (fixes ) ()
* Return HTTP status 503 to all requests during startup (fixes )

* add message

* fmt

* remove err

* dont run startup server if http disabled

* ci
2023-10-04 18:19:58 -04:00
626c7ebc85
Handle empty reason for registration application denial (fixes ) ()
* Handle empty reason for registration application denial (fixes )

* clippy

* clippy
2023-10-04 15:20:22 +02:00
50b7322ff3
Mention max length for site name in config (fixes ) ()
* Mention max length for site name in config (fixes )

* ci
2023-10-04 15:09:25 +02:00
d45a2a6441
Increase timeout for image upload to 30s (fixes ) () 2023-09-29 11:20:14 -04:00
210c470ebd
Notify admin about registration application after email verification (fixes ) () 2023-09-28 10:06:45 -04:00
9bb99bec5e
Increase default database connections (fixes ) () 2023-09-28 09:56:39 -04:00
9275041f42 Version 0.19.0-rc.1 2023-09-26 23:01:19 -04:00
50589115e0
Fix federation of admin actions (fixes ) ()
* Fix federation of admin actions (fixes )

* clippy

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
2023-09-25 21:39:18 -04:00
SleeplessOne1917
bee6b7a1bb Update translations 2023-09-25 06:38:23 -04:00
SleeplessOne1917
13b20b0502 Address PR feedback 2023-09-25 06:37:45 -04:00
SleeplessOne1917
ed8dae99f1 Merge branch 'main' into bearer-token 2023-09-24 17:47:17 -04:00
SleeplessOne1917
37655f0f18 chore: Run rust format 2023-09-22 21:39:03 -04:00
SleeplessOne1917
519e800b33 feat: Replace ad hoc auth header with internet standard bearer token
auth header
2023-09-22 21:26:27 -04:00
Dessalines
b16661a17d
Merge branch 'main' into comment-fix 2023-09-21 11:20:49 -04:00
phiresky
5941dc2924 Merge remote-tracking branch 'origin/main' into add_federation_worker_index 2023-09-21 11:57:13 +00:00
phiresky
2c283d90ca Revert "Revert "re-remove debug comments""
This reverts commit 6d519ef376.
2023-09-21 11:45:33 +00:00
phiresky
dec25f9ee8 ensure overlap 2023-09-21 11:11:54 +00:00
phiresky
6d519ef376 Revert "re-remove debug comments"
This reverts commit ae37ca0137.
2023-09-21 11:07:36 +00:00
f858d8cbce
Remove explicit auth params ()
* Remove explicit auth params (ref )

Only take auth via header or cookie. This requires a new version
of lemmy-js-client for api tests to pass.

* rework api_crud

* remove remaining auth params, move logic to session middleware

* fmt, fix test

* update js client

* remove auth param from api tests

* Pass auth as header

* add !

* url vars, setHeader

* cleanup

* fmt

* update

* Updating for new lemmy-js-client.

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-09-21 06:42:28 -04:00
SleeplessOne1917
bb552d7659
Merge branch 'main' into comment-fix 2023-09-20 17:38:47 +00:00
phiresky
2dbaf67b7c
Merge branch 'main' into add_federation_worker_index 2023-09-20 18:06:44 +02:00
phiresky
ae37ca0137 re-remove debug comments 2023-09-20 15:33:09 +00:00
phiresky
a808d3208a use max(id) instead of seq max value to prevent uncommitted transactions from causing skipped activities 2023-09-20 14:57:18 +00:00
22608ae983
Rework the way 2FA is enabled/disabled (fixes ) ()
* Rework the way 2FA is enabled/disabled (fixes )

* postgres format

* change algo to sha1 for better compat

* review comments

* review

* clippy

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-09-20 10:49:54 -04:00
phiresky
3d649e1d3e remove synchronous federation flag 2023-09-20 14:22:17 +00:00
phiresky
1a0c866b51 logging temporary 2023-09-20 13:37:18 +00:00
Dessalines
77b2d236b9
Forgot to add ts export to pagination cursor. () 2023-09-20 15:28:56 +02:00
phiresky
a59a94492d more debug log 2023-09-20 12:30:38 +00:00
phiresky
78a8a7b8b7 clippy 2023-09-20 11:41:34 +00:00
phiresky
2e7d2d1956 wait for post api test function, better announce activity id 2023-09-20 11:23:02 +00:00
50f81cf157
User can block instances (fixes ) ()
* User can block instances (fixes )

* update comments

* review comments

* use route

* update

* add api test

* update tests

* fix

* fix test

* ci

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-09-20 11:56:13 +02:00
Dessalines
89b7c981f5
Fixing GetPostsResponse serialization. () 2023-09-20 11:49:26 +02:00
SleeplessOne1917
671676d7e4 Remove unused import 2023-09-18 19:40:01 -04:00
SleeplessOne1917
c471692949
Merge branch 'main' into comment-fix 2023-09-18 19:31:46 -04:00
SleeplessOne1917
be961075c7 Do not filter removed and deleted comments on the backend 2023-09-18 19:31:12 -04:00
Dessalines
c25734e4ca
Merge branch 'main' into add_federation_worker_index 2023-09-18 19:19:24 -04:00
8c419103b2 Fixing formatting. 2023-09-18 19:19:13 -04:00
Dessalines
4f85adc393
Merge branch 'main' into add_federation_worker_index 2023-09-18 19:16:49 -04:00
SleeplessOne1917
f93d08a147 Make moderators be able to see removed comments in communities they moderate 2023-09-18 19:09:17 -04:00
Apple Sheeple
c05458adcd Sanitize registration application answer
Signed-off-by: Apple Sheeple <AppleSheeple@github>
2023-09-18 22:39:29 +03:00
Apple Sheeple
5fff7504e5 Reject registration application if sanitizing the username modifies it
This removes the possibility of using a mix of sanitized and
 non-sanitized values for `username` in code.

Signed-off-by: Apple Sheeple <AppleSheeple@github>
2023-09-18 22:39:20 +03:00
phiresky
9e886fba4a delay shorter 2023-09-18 16:49:55 +00:00
phiresky
88931227b0 Merge remote-tracking branch 'origin/main' into add_federation_worker_index 2023-09-18 16:45:23 +00:00
phiresky
27141553b6 fix after revert 2023-09-18 14:28:49 +00:00
phiresky
08401fc85f Revert "remove synchronous federation"
This reverts commit 2767ab4a6fed9aa8d197eda0c6a25a1d617d192d.
2023-09-18 14:25:35 +00:00
Apple Sheeple
b431c9bdf9 Sanitize apub post body
Signed-off-by: Apple Sheeple <AppleSheeple@github>
2023-09-18 16:00:29 +02:00
phiresky
544d30f0d4
Fix Posts List Performance + cursor-based pagination ()
* add token-based pagination + fast subscribed post view

* add migrations

* fix failing heuristic

* revert

* output pagination token as next_page, fix off-by-one, restructure

* more cleanup

* clean

* format sql

* fix comment

* fix tests

* e

* empty

* move last page thing

* restructure a bit for readability

* rename page_cursor

* update for scaled sort

* fix

* sql format

* fix

* get rid of macros

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-09-18 15:44:48 +02:00
SleeplessOne1917
6d02a9914c Update translation 2023-09-18 07:38:00 -04:00
SleeplessOne1917
05b1ebdc7c Fix comments created by ser not showing up 2023-09-18 02:59:59 -04:00
SleeplessOne1917
eab1862e9a Make deleted and removed comments show when they have childern 2023-09-17 23:38:07 -04:00
phiresky
b09ffa7197 instead of changing fed delays in debug mode, change them via env variable 2023-09-13 11:23:13 +00:00
phiresky
dca43dcfd9 fix a bug where after an hour community follows would be overwritten completely by an incremental upgrade 2023-09-13 10:54:10 +00:00
4f1240487e Fixing high CPU usage on federation worker recheck. Fixes 2023-09-12 15:54:49 -04:00
phiresky
375d9a2a3c
Persistent, performant, reliable federation queue ()
* persistent activity queue

* fixes

* fixes

* make federation workers function callable from outside

* log federation instances

* dead instance detection not needed here

* taplo fmt

* split federate bin/lib

* minor fix

* better logging

* log

* create struct to hold cancellable task for readability

* use boxfuture for readability

* reset submodule

* fix

* fix lint

* swap

* remove json column, use separate array columns instead

* some review comments

* make worker a struct for readability

* minor readability

* add local filter to community follower view

* remove separate lemmy_federate entry point

* fix remaining duration

* address review comments mostly

* fix lint

* upgrade actitypub-fed to simpler interface

* fix sql format

* increase delays a bit

* fixes after merge

* remove selectable

* fix instance selectable

* add comment

* start federation based on latest id at the time

* rename federate process args

* dead instances in one query

* filter follow+report activities by local

* remove synchronous federation

remove activity sender queue

* lint

* fix federation tests by waiting for results to change

* fix fed test

* fix comment report

* wait some more

* Apply suggestions from code review

Co-authored-by: SorteKanin <sortekanin@gmail.com>

* fix most remaining tests

* wait until private messages

* fix community tests

* fix community tests

* move arg parse

* use instance_id instead of domain in federation_queue_state table

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: SorteKanin <sortekanin@gmail.com>
2023-09-09 12:25:03 -04:00
3b67642ec2
Add ts(skip) attributes to fix js client code generation ()
* Add ts(skip) attributes to fix js client code generation

* use feature flag
2023-09-08 08:35:58 -04:00
Dessalines
9785b20843
Adding a scaled sort, to boost smaller communities. ()
* Adding a scaled sort, to boost smaller communities.

- Previously referred to as *best* .
- Fixes 

* Fixing scheduled task update.

* Converting hot_rank integers to floats.

* Altering hot_rank psql function to default to zero after a week.

* Setting scaled_rank to zero, where hot_rank is zero.

* Adding image_upload table.
2023-09-06 13:43:27 -04:00
SorteKanin
4121fc4d56
Include domain in errors () 2023-09-06 13:29:15 -04:00
71d61138bc
Replace ammonia lib with manual html escaping (fixes ) ()
* Replace ammonia lib with manual html escaping (fixes )

* prettier

* clippy

* remove sanitize unit test

* fix tests

* fix schema
2023-09-06 10:56:26 -04:00
Anon
fe3ebea95a
Add logging for pictrs uploads ()
* Add logging for pictrs uploads

* cleanup
2023-09-06 09:13:30 -04:00
Dessalines
797d26fdf4
Change AddAdmin to use person_id instead of local_user_id ()
- Front ends don't have easy access to local_user_id on moddable
  items like comments and posts.
2023-09-06 11:37:03 +02:00
a0ea8dbc00
Auto resolve reports trigger ()
* Revert "Automatically resolve report when post/comment is removed ()"

This reverts commit f7f6766650.

* Automatically resolve reports using db trigger

* lint

* use mod log tables

* fix migration

* fix ci

* fix clippy
2023-09-05 05:35:10 -04:00
366d9d1e2e
Get rid of remaining Perform/SendActivity traits (fixes ) ()
* Get rid of remaining Perform/SendActivity traits (fixes )

* fix api tests

* ci
2023-09-05 05:33:46 -04:00
dullbananas
a1a9c3e4c0
Make use of variables less redundant and inconsistent in distinguish.rs ()
* Make use of variables less redundant and inconsistent in distinguish.rs

* fmt
2023-09-04 11:06:54 +02:00
dullbananas
5b5ac0f37d
Remove left joins and use only one call to select method in post_view.rs ()
* Use same joins for read and list in post_view.rs

* fmt

* rerun ci

* rerun ci

* Update post_view.rs

* rerun ci

* rerun ci

* Update post_view.rs

* Use `exists`

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* rerun ci

* Update post_view.rs

* person_id_join parameter

* rerun ci

* fmt

* Update post_view.rs

* rerun ci

* Update post_view.rs

* rerun ci

* fmt

* Update post_view.rs

* fmt

* Use into_sql

* Update post_view.rs

* Use inferred query source for BoxableExpression

* Update post_view.rs

* Update post_view.rs

* Update community.rs

* Update community.rs

* Update post_view.rs

* fmt

* Update community.rs

* Update community.rs

* Update community.rs

* Update community.rs

* Update community.rs

* Update post_view.rs

* Update community.rs

* fmt

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* Update post_view.rs

* fmt

* Update post_view.rs

* Update post_view.rs

* fix

* trigger ci

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: phiresky <phireskyde+git@gmail.com>
2023-09-04 11:05:00 +02:00
Nick Webster
a57658d99c
Adding a new config flag to disable pictrs caching for thumbnails ()
* add logic to prevent downloading remote pictrs images

* apply formatting

* Do not attempt a pictrs fetch if the remote image is also on a pictrs instance

* Do not attempt a pictrs fetch if the remote image is also on a pictrs instance and cache_federated_images is false

* Generalising the no caching option to handle all remote images

* rustfmt

* Return None if the URL is not an image

* Updating defaults.hjson

* fixing typo

* Fixing typo

* Skip cloning the Url unless we need to

* using a HEAD request for checking the content type, saving bandwidth/improving perf

* Removing early returns

* Switching back to GET requests for Content-Type because pictrs does not handle HEAD requests

* Simplifying logic and using metadata_image instead of url if we do not get a pictrs thumbnail

* Removing unused import

* Return None as a thumbnail if caching is disabled

* formatting

---------

Co-authored-by: Djones4822 <david.jones4822@gmail.com>
2023-08-31 10:36:39 -04:00
dullbananas
15930cbf4d
Use Queryable instead of JoinView ()
* Update utils.rs

* Update traits.rs

* Update comment_report_view.rs

* Update comment_view.rs

* Update local_user_view.rs

* Update post_report_view.rs

* Update post_view.rs

* Update private_message_report_view.rs

* Update private_message_view.rs

* Update registration_application_view.rs

* Update site_view.rs

* Update structs.rs

* Update comment_reply_view.rs

* Update community_block_view.rs

* Update community_follower_view.rs

* Update community_moderator_view.rs

* Update community_person_ban_view.rs

* Update community_person_ban_view.rs

* Update community_view.rs

* Update person_block_view.rs

* Update person_mention_view.rs

* Update person_view.rs

* Update structs.rs

* Update admin_purge_comment_view.rs

* Update admin_purge_community_view.rs

* Update admin_purge_person_view.rs

* Update admin_purge_post_view.rs

* Update mod_add_community_view.rs

* Update mod_add_view.rs

* Update mod_ban_from_community_view.rs

* Update mod_ban_view.rs

* Update mod_feature_post_view.rs

* Update mod_hide_community_view.rs

* Update mod_lock_post_view.rs

* Update mod_remove_comment_view.rs

* Update mod_remove_community_view.rs

* Update mod_remove_post_view.rs

* Update mod_transfer_community_view.rs

* Update structs.rs

* Update utils.rs

* Update private_message_view.rs

* Update comment_report_view.rs

* Update registration_application_view.rs

* Update utils.rs

* fix

* fix db_views

* fix

* Update comment_view.rs
2023-08-31 15:26:10 +02:00
Dessalines
56e26fc3d4
Adding a post_view mode. Fixes ()
* Adding a post_view mode. Fixes 

* Fix test.

* Addressing PR comments.

* Adding a post_view mode. Fixes 

* Fix test.

* Addressing PR comments.

* Fixing column order.

* Fix default Ok returns.

* Removing return Err(... where feasible.
2023-08-31 09:01:08 -04:00