lemmy.git
15 months agoremove performance-problematic and buggy duplicate site aggregates (#3732)
phiresky [Thu, 27 Jul 2023 21:35:53 +0000 (23:35 +0200)]
remove performance-problematic and buggy duplicate site aggregates (#3732)

15 months agoChange readme installation link (#3736)
Nutomic [Thu, 27 Jul 2023 13:42:52 +0000 (15:42 +0200)]
Change readme installation link (#3736)

Replaces https://github.com/LemmyNet/lemmy/pull/3551

15 months agoFederation tests replication round1 - demonstrate absent replication of comment delet...
RocketDerp [Thu, 27 Jul 2023 10:17:40 +0000 (03:17 -0700)]
Federation tests replication round1 - demonstrate absent replication of comment deletes (#3657)

* more robust test of unlike a comment, confirm replication to instance downstream from community home

* more robust 'delete a comment' test, confirm replication

* Far more robust "Report a comment" test. Many comments about situation, this is currently failing because gamma does not get the report

* typo and actually have Gamma comment check use gamma, not alpha

* prepare-drone-federation-test.sh has some more echo output and note about the LEMMY_DATABASE_URL format (#3651)

* Add http cache for webfingers (#3317)

* Add http cache for webfingers

* Remove the outgoing cache middleware & adjust the cache headers directive

* Use 1h & 3day cache header

* Update routes and adjust the cache headers location

* revert apub caching

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Felix Ableitner <me@nutomic.com>
* Rewrite activity lists to fix delete federation (fixes #3625)

* Revert "typo and actually have Gamma comment check use gamma, not alpha"

This reverts commit 7dfb6ee0f4885da3a2d10316422f5b510772806c.

* Revert "Far more robust "Report a comment" test. Many comments about situation, this is currently failing because gamma does not get the report"

This reverts commit 7bd3b20ae08a64324029491ddb3ce4295ba16787.

* prettier TypeScript

* revised comments, as ResolveObject isn't using routine replication

* fmt

* fix api tests

* remove comment

---------

Co-authored-by: cetra3 <cetra3@hotmail.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Felix Ableitner <me@nutomic.com>
15 months agoOmit local instance from federated instances list (#3712)
Bao [Thu, 27 Jul 2023 10:12:18 +0000 (05:12 -0500)]
Omit local instance from federated instances list (#3712)

Co-authored-by: Nutomic <me@nutomic.com>
15 months agoadd trigram index to search (#3719)
phiresky [Thu, 27 Jul 2023 10:11:00 +0000 (12:11 +0200)]
add trigram index to search (#3719)

* add trigram index to search

* add community index

15 months agoSanitize html (#3708)
Nutomic [Wed, 26 Jul 2023 18:01:15 +0000 (20:01 +0200)]
Sanitize html (#3708)

* HTML sanitization in apub code

* Sanitize API inputs

* fmt

* Dont allow html a, img tags

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
15 months agoAdd moderator view parameter to list posts (#3176)
biosfood [Wed, 26 Jul 2023 17:51:11 +0000 (19:51 +0200)]
Add moderator view parameter to list posts (#3176)

* add option to only show posts from moderated communities

* rename moderated_only to moderator_view and show blocked users in moderator view

* add test for moderator view

* bump lemmy-js-client version for moderation view tests

* fix yarn lockfile

* retry build

* Delete logfile

* retry checks

* remove unused select statement from list posts

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
15 months agoAdd controversial ranking (#3205)
Pavlos Smith [Wed, 26 Jul 2023 17:07:05 +0000 (20:07 +0300)]
Add controversial ranking (#3205)

* Added controversy rank property to posts and comments, and ability to sort by it

* Triggers instead of schedules tasks, integer -> double, TODO: comments don't seem to get updated with floats, divide SortTypes

* Created PersonSortType

* PersonSortType::MostComments case

* Removed unused PartialOrd trait

* Added new person sort type mappings

* SortType -> PersonSortType

* fixes

* cargo fmt

* fixes after merge with main

* Fixed bug in controversy rank trigger, removed TopX sorts from PersonSortType and added CommentScore instead

* Uncovered enum case

* clippy

* reset translation changes

* translations

* translations

* Added additional hot ordering on controversial posts and comments

* featured local and featured community added to controversy rank index, additional order_by removed (?), added post_score and post_count to PersonSortType

* Woodpecker rerun

* cargo fmt

* woodpecker rerun

* fixed controversy_rank order

* fix

* Readded migration as latest, removed second update statement for setting controversy rank

15 months agoMake resolve_object not require auth #3685 (#3716)
marsara9 [Wed, 26 Jul 2023 16:17:42 +0000 (12:17 -0400)]
Make resolve_object not require auth #3685 (#3716)

* Resolves issue #3685

If user isn't authenticated with resolve_object, only allow a local search instead of possibly making an http request.

* Making sure to validate auth before doing a potential remote lookup.

15 months agoSkip fragile API tests (#3723)
Nutomic [Wed, 26 Jul 2023 16:15:18 +0000 (18:15 +0200)]
Skip fragile API tests (#3723)

* Skip fragile API tests

These tests fail very often for no reason, eg in #3712 and #3696.
Better to disable them until they can be fixed.

* killall -s1

15 months agoUI Settings - Blur NSFW & Auto Expand (#3377)
Domenic Horner [Wed, 26 Jul 2023 11:53:45 +0000 (19:53 +0800)]
UI Settings - Blur NSFW & Auto Expand (#3377)

* add new flag to api

* add new ui settings for local user

* remove extraneous def

* add props to application reg.

* fix clippy updated these

* re-order db schema entries

* remove dupe

* update lemmy sdk

* update lemmy js client

---------

Co-authored-by: Nutomic <me@nutomic.com>
15 months agoEnable gzip for reqwest (#3696)
dullbananas [Wed, 26 Jul 2023 10:22:14 +0000 (03:22 -0700)]
Enable gzip for reqwest (#3696)

This will reduce bandwidth used by federation

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
15 months agoDont authenticate user after successful password reset #3714 (#3715)
Into the V0id [Tue, 25 Jul 2023 17:33:02 +0000 (17:33 +0000)]
Dont authenticate user after successful password reset #3714 (#3715)

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
15 months agodetailed error message for blocked domains (#3698) (#3701)
Freakazoid182 [Tue, 25 Jul 2023 17:26:54 +0000 (19:26 +0200)]
detailed error message for blocked domains (#3698) (#3701)

* detailed error message for blocked domains (#3698)

* Pass the domain as an error param

Not formatting the error message to support i18n

---------

Co-authored-by: Freek van Zee <freek.van.zee@mediamonks.com>
15 months agoBump version of dependency "webmention" (#3711)
Ben Wyatt [Tue, 25 Jul 2023 17:01:13 +0000 (12:01 -0500)]
Bump version of dependency "webmention" (#3711)

Webmention .4->.5 bumps a few internal dependencies that needed to be upgraded

15 months agoprevent ordering by comment path without post filter (#3717)
phiresky [Tue, 25 Jul 2023 16:46:00 +0000 (18:46 +0200)]
prevent ordering by comment path without post filter (#3717)

15 months agoUpdate Dockerfile to run process as non-privileged user. (#3709)
asimons04 [Mon, 24 Jul 2023 13:51:51 +0000 (09:51 -0400)]
Update Dockerfile to run process as non-privileged user. (#3709)

15 months agoChange logic for determining comment default language (fixes #3451) (#3672)
Nutomic [Fri, 21 Jul 2023 13:08:25 +0000 (15:08 +0200)]
Change logic for determining comment default language (fixes #3451) (#3672)

15 months agodisable rustfmt feature on rosetta-build (#3679)
Joel Beckmeyer [Fri, 21 Jul 2023 09:50:47 +0000 (05:50 -0400)]
disable rustfmt feature on rosetta-build (#3679)

15 months agoFix federation test errors with new lemmy-js-client (#3678)
Dessalines [Fri, 21 Jul 2023 09:47:56 +0000 (05:47 -0400)]
Fix federation test errors with new lemmy-js-client (#3678)

15 months agoAdding diesel migration check. Fixes #3676 (#3677)
Dessalines [Fri, 21 Jul 2023 09:46:10 +0000 (05:46 -0400)]
Adding diesel migration check. Fixes #3676 (#3677)

* Adding diesel migration check. Fixes #3676

* Fixing prettier.

15 months agoMake sure comments are sorted by hot_rank, then score. (#3667)
Dessalines [Fri, 21 Jul 2023 09:44:47 +0000 (05:44 -0400)]
Make sure comments are sorted by hot_rank, then score. (#3667)

15 months agoFix process shutdown (#3673)
Nutomic [Thu, 20 Jul 2023 15:36:48 +0000 (17:36 +0200)]
Fix process shutdown (#3673)

I noticed that stopping the Lemmy process with ctrl+c wasnt working
because the activity channel isnt properly closed. This is now fixed.

Later we should also move the channel from static into LemmyContext,
Im not doing that now to avoid conflicts with #3670.

15 months agoIgnore errors when fetching community mods (fixes #3460) (#3674)
Nutomic [Thu, 20 Jul 2023 15:34:07 +0000 (17:34 +0200)]
Ignore errors when fetching community mods (fixes #3460) (#3674)

15 months agoUpgrade activitypub library to 0.4.6 (fixes #3222) (#3675)
Nutomic [Thu, 20 Jul 2023 15:33:19 +0000 (17:33 +0200)]
Upgrade activitypub library to 0.4.6 (fixes #3222) (#3675)

15 months agoDenormalize community_id into post_aggregates for a 1000x speed-up when loading posts...
Sander Saarend [Thu, 20 Jul 2023 15:13:21 +0000 (18:13 +0300)]
Denormalize community_id into post_aggregates for a 1000x speed-up when loading posts (#3653)

* Denormalize community_id into post_aggregates for a 1000x speed-up when loading posts

* Remove unused index

* Add creator_id to post_aggregates

* Use post_aggregates as main table for PostQuery

* Make post_aggregates the main table for PostView

* Reformat SQL

15 months agoFixing hot_ranks and scores to append a published sort. (#3618)
Dessalines [Thu, 20 Jul 2023 14:44:23 +0000 (10:44 -0400)]
Fixing hot_ranks and scores to append a published sort. (#3618)

- #3428

15 months ago Handle displaying of deleted and removed posts/comments (fixes #2624) (#3286)
Nutomic [Thu, 20 Jul 2023 14:36:16 +0000 (16:36 +0200)]
 Handle displaying of deleted and removed posts/comments (fixes #2624)  (#3286)

* Handle displaying of deleted and removed posts/comments (fixes #2624)

* remove duplicate test

* fix tests

* no show_removed/show_deleted

* merge

* partially fix tests

* fix tests

* clippy

* fix tests

* get rid of build_post_response_deleted_allowed

15 months agoUse local_site.default_post_listing_type as the initial default listing type for...
Sander Saarend [Wed, 19 Jul 2023 15:04:43 +0000 (18:04 +0300)]
Use local_site.default_post_listing_type as the initial default listing type for new users (#3666)

15 months agoDont publish releases to crates.io (fixes #3272) (#3664)
Nutomic [Wed, 19 Jul 2023 14:25:46 +0000 (16:25 +0200)]
Dont publish releases to crates.io (fixes #3272) (#3664)

This is not needed anymore as from scratch installation now uses
`git clone` instead of `cargo install`.

https://github.com/LemmyNet/lemmy-docs/pull/241/files

15 months agoRemove SendActivity and Perform traits, rely on channel (#3596)
Nutomic [Wed, 19 Jul 2023 13:49:41 +0000 (15:49 +0200)]
Remove SendActivity and Perform traits, rely on channel (#3596)

* Remove SendActivity and Perform traits, rely on channel

These traits arent necessary anymore now that websocket is removed.
Removing them allows us to use normal actix http handler methods
which are much more flexible, and allow using different middlewares
as well as setting response attributes.

* compiling and create post federating

* clippy

* rename methods, join outgoing activities task

* fix api tests

* no unwrap

* conditional compile

* add back getrandom

* make crates optional

* fmt

15 months agoDon't panic when scheduled tasks can't connect to database (#3634)
Sander Saarend [Wed, 19 Jul 2023 13:00:44 +0000 (16:00 +0300)]
Don't panic when scheduled tasks can't connect to database (#3634)

* Don't panic when scheduled tasks can't connect to database

* Use map & map_err instead of match

* Empty commit for Woodpecker re-run

15 months agoAdd http cache for webfingers (#3317)
cetra3 [Wed, 19 Jul 2023 10:09:04 +0000 (19:39 +0930)]
Add http cache for webfingers (#3317)

* Add http cache for webfingers

* Remove the outgoing cache middleware & adjust the cache headers directive

* Use 1h & 3day cache header

* Update routes and adjust the cache headers location

* revert apub caching

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: Felix Ableitner <me@nutomic.com>
15 months agoprepare-drone-federation-test.sh has some more echo output and note about the LEMMY_D...
RocketDerp [Wed, 19 Jul 2023 08:28:10 +0000 (01:28 -0700)]
prepare-drone-federation-test.sh has some more echo output and note about the LEMMY_DATABASE_URL format (#3651)

16 months agoPost remove delete federation outbound fix0 (#3613)
RocketDerp [Mon, 17 Jul 2023 15:07:45 +0000 (08:07 -0700)]
Post remove delete federation outbound fix0 (#3613)

* add new function build_post_response_deleted_allowed

* PostDelete uses new function build_post_response_deleted_allowed

* RemovePost uses new build_post_response_deleted_allowed function

* code comments about mod or admin flag having other use

* reformat "cargo +nightly fmt --all"

16 months agoAdd Japanese README (#3620)
Ikko Eltociear Ashimine [Mon, 17 Jul 2023 15:05:14 +0000 (00:05 +0900)]
Add Japanese README (#3620)

* Add Japanese README

* add translate

* fix link

* Update README.ja.md

16 months agoCache & Optimize Woodpecker CI (#3450)
cetra3 [Mon, 17 Jul 2023 15:04:14 +0000 (00:34 +0930)]
Cache & Optimize Woodpecker CI (#3450)

* Try using drone cache plugin

* Try another path

* Include volume

* Fix formatting

* Include fmt

* Exclude cargo dir from prettier

* Don't override cargo

* Just do check

* Add cache key

* Use different cache plugin

* Add clippy

* Try minio

* Add quotes

* Try adding secrets

* Try again

* Again

* Use correct secret formation

* Add back clippy

* Use secret for the root bucket name

* Try drone cache instead

* Add region

* Add path-style option

* Include cargo clippy

* Include everything again

* Fix formatting

* Don't run clippy twice

* Add `allow` statements for tests to pass

* Adjust endpoint to be a secret

* Fix prettier

* Merge & fix tests

* Try to restart the woodpecker test

* Change the ENV var name

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoRemove TypedBuilder from db_views and db_views_actor (#3637)
dullbananas [Mon, 17 Jul 2023 10:20:25 +0000 (03:20 -0700)]
Remove TypedBuilder from db_views and db_views_actor (#3637)

* change pool fields to parameters for list

* remove my_person_id and admin fields

* Change recipient id to list param

* Remove TypedBuilder from db_views and db_views_actor

16 months agoOptimize hot rank updates (#3617)
Sander Saarend [Mon, 17 Jul 2023 09:05:55 +0000 (12:05 +0300)]
Optimize hot rank updates (#3617)

16 months agoSplit activity table into sent and received parts (fixes #3103) (#3583)
Nutomic [Fri, 14 Jul 2023 15:17:06 +0000 (17:17 +0200)]
Split activity table into sent and received parts (fixes #3103) (#3583)

* Split activity table into sent and received parts (fixes #3103)

The received activities are only stored in order to avoid processing
the same incoming activity multiple times. For this purpose it is
completely unnecessary to store the data. So we can split the
table into sent_activity and received_activity parts, where
only sent_activity table needs to store activity data. This should
reduce storage use significantly.

Also reduces activity storage duration to three months, we can reduce
this further if necessary.

Additionally the id columns of activity tables are removed because
they are completely unused and risk overflowing (fixes #3560).

* address review

* move insert_received_activity() methods to verify handlers

* remove unnecessary conflict line

* clippy

* use on conflict, add tests

16 months agowork around race condition on community fetch (#3414)
phiresky [Fri, 14 Jul 2023 12:57:36 +0000 (14:57 +0200)]
work around race condition on community fetch (#3414)

16 months agoMake `lemmy_api_common` wasm-compatible (#3587)
Dessalines [Fri, 14 Jul 2023 08:45:18 +0000 (04:45 -0400)]
Make `lemmy_api_common` wasm-compatible (#3587)

* Fixing lemmy_api_common optionals

* Adding taplo for .toml files.

* Versioning taplo in woodpecker.

* Addressing PR comments.

16 months agoAdd dev profile to strip symbols and disable debug info (ref #3610) (#3611)
Nutomic [Thu, 13 Jul 2023 18:50:17 +0000 (20:50 +0200)]
Add dev profile to strip symbols and disable debug info (ref #3610) (#3611)

* Add dev profile to strip symbols and disable debug info (ref #3610)

This significantly speeds up builds:
- with strip symbols and debug 0: 43s
- without: 169s

* add comment, no strip symbols

16 months agoCheck for dead federated instances (fixes #2221) (#3427)
Nutomic [Thu, 13 Jul 2023 14:12:01 +0000 (16:12 +0200)]
Check for dead federated instances (fixes #2221) (#3427)

* Check for dead federated instances (fixes #2221)

* move to apub crate, use timestamp

* make it compile

* clippy

* use moka to cache blocklists, dead instances, restore orig scheduled tasks

* remove leftover last_alive var

* error handling

* wip

* fix alive check for instances without nodeinfo, add coalesce

* clippy

* move federation blocklist cache to #3486

* unused deps

16 months agoFix wrong SMTP port when TLS is being used (fixes #3574) (#3607)
Manuel Bleichner [Thu, 13 Jul 2023 11:10:14 +0000 (13:10 +0200)]
Fix wrong SMTP port when TLS is being used (fixes #3574) (#3607)

Co-authored-by: Manuel Bleichner <manuel.bleichner@bvu.de>
16 months agoAdd workaround for #3102 until cross-compile work complete (#3472)
Nina Blanson [Thu, 13 Jul 2023 11:02:08 +0000 (06:02 -0500)]
Add workaround for #3102 until cross-compile work complete (#3472)

* Add workaround for #3102 until cross-compile work complete

* Minor cleanup

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoUpdated Lemmy Matrix Support link (#3599)
Jason Grim [Thu, 13 Jul 2023 10:31:35 +0000 (06:31 -0400)]
Updated Lemmy Matrix Support link (#3599)

16 months agoUpdate RELEASES.md (#3593)
nixoye [Wed, 12 Jul 2023 14:48:49 +0000 (11:48 -0300)]
Update RELEASES.md (#3593)

replaced the confusing api_key line that's commented out with the line that is now used in the new config.hjson in /lemmy-ansible/examples

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoAdd infinite scroll user option (#3572)
Simon Bordeyne [Wed, 12 Jul 2023 13:12:01 +0000 (15:12 +0200)]
Add infinite scroll user option (#3572)

16 months agoUse specific Rust nightly version for CI cargo fmt (fixes #3467) (#3577)
Nutomic [Wed, 12 Jul 2023 09:15:28 +0000 (11:15 +0200)]
Use specific Rust nightly version for CI cargo fmt (fixes #3467) (#3577)

* Use specific Rust nightly version for CI cargo fmt (fixes #3467)

* fix

* fix

16 months agoMake functions work with both connection and pool (#3420)
dullbananas [Tue, 11 Jul 2023 13:09:59 +0000 (06:09 -0700)]
Make functions work with both connection and pool (#3420)

* a lot

* merge

* Fix stuff broken by merge

* Get rid of repetitive `&mut *context.conn().await?`

* Add blank lines under each line with `conn =`

* Fix style mistakes (partial)

* Revert "Fix style mistakes (partial)"

This reverts commit 48a033b87f4fdc1ce14ff86cc019e1c703cd2741.

* Revert "Add blank lines under each line with `conn =`"

This reverts commit 773a6d3beba2cf89eac75913078b40c4f5190dd4.

* Revert "Get rid of repetitive `&mut *context.conn().await?`"

This reverts commit d2c6263ea13710177d49b2791278db5ad115fca5.

* Use DbConn for CaptchaAnswer methods

* DbConn trait

* Remove more `&mut *`

* Fix stuff

* Re-run CI

* try to make ci start

* fix

* fix

* Fix api_common::utils

* Fix apub::activities::block

* Fix apub::api::resolve_object

* Fix some things

* Revert "Fix some things"

This reverts commit 2bf8574bc8333d8d34ca542d61a0a5b50039c24d.

* Revert "Fix apub::api::resolve_object"

This reverts commit 3e4059aabbe485b2ff060bdeced8ef958ff62832.

* Revert "Fix apub::activities::block"

This reverts commit 3b02389abd780a7b1b8a2c89e26febdaa6a12159.

* Revert "Fix api_common::utils"

This reverts commit 7dc73de613a5618fa57eb06450f3699bbcb41254.

* Revert "Revert "Fix api_common::utils""

This reverts commit f740f115e5457e83e53cc223e48196a2c47a9975.

* Revert "Revert "Fix apub::activities::block""

This reverts commit 2ee206af7c885c10092cf209bf4a5b1d60327866.

* Revert "Revert "Fix apub::api::resolve_object""

This reverts commit 96ed8bf2e9dcadae760743929498312334e23d2e.

* Fix fetch_local_site_data

* Fix get_comment_parent_creator

* Remove unused perma deleted text

* Fix routes::feeds

* Fix lib.rs

* Update lib.rs

* rerun ci

* Attempt to create custom GetConn and RunQueryDsl traits

* Start over

* Add GetConn trait

* aaaa

* Revert "aaaa"

This reverts commit acc9ca1aed10c39efdd91cefece066e035a1fe80.

* Revert "Revert "aaaa""

This reverts commit 443a2a00a56d152bb7eb429efd0d29a78e21b163.

* still aaaaaaaaaaaaa

* Return to earlier thing

Revert "Add GetConn trait"

This reverts commit ab4e94aea5bd9d34cbcddf017339131047e75344.

* Try to use DbPool enum

* Revert "Try to use DbPool enum"

This reverts commit e4d1712646a52006b865a1fbe0dcf79976fdb027.

* DbConn and DbPool enums (db_schema only fails to compile for tests)

* fmt

* Make functions take `&mut DbPool<'_>` and make db_schema tests compile

* Add try_join_with_pool macro and run fix-clippy on more crates

* Fix some errors

* I did it

* Remove function variants that take connection

* rerun ci

* rerun ci

* rerun ci

16 months agoShrink capacity in `RateLimitStorage::remove_older_than` (#3536)
dullbananas [Mon, 10 Jul 2023 20:52:37 +0000 (13:52 -0700)]
Shrink capacity in `RateLimitStorage::remove_older_than` (#3536)

* Shrink capacity in `RateLimitStorage::remove_older_than`

* Update rate_limiter.rs

* rerun ci

* rerun ci

* rerun ci

* Update rate_limiter.rs

16 months agoFix #3366: Wrap plain-text error responses from the API in JSON (#3559)
Pawan Hegde [Mon, 10 Jul 2023 20:44:14 +0000 (02:14 +0530)]
Fix #3366: Wrap plain-text error responses from the API in JSON (#3559)

* Fix #3366: API does return plain HTML errors

* Fix Clippy errors

* Improve api response times by doing send_activity asynchronously (#3493)

* do send_activity after http response

* move to util function

* format

* fix prometheus

* make synchronous federation configurable

* cargo fmt

* empty

* empty

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
* Updating `login.rs` with generic `incorrect_login` response. (#3549)

* Adding v0.18.1 and v0.18.0 release notes. (#3530)

* Update RELEASES.md (#3556)

added instruction to find the location of your docker directory (especially useful for those who used ansible since they never had to setup docker manually)

* Use async email sender (#3554)

* Upgrade all dependencies (#3526)

* Upgrade all dependencies

* as base64

* Adding phiresky to codeowners. (#3576)

* Error enum fixed (#3487)

* Create error type enum

* Replace magic string slices with LemmyErrorTypes

* Remove unused enum

* Add rename snake case to error enum

* Rename functions

* clippy

* Fix merge errors

* Serialize in PascalCase instead of snake_case

* Revert src/lib

* Add serialization tests

* Update translations

* Fix compilation error in test

* Fix another compilation error

* Add code for generating typescript types

* Various fixes to avoid breaking api

* impl From<LemmyErrorType> for LemmyError

* with_lemmy_type

* trigger ci

---------

Co-authored-by: SleeplessOne1917 <abias1122@gmail.com>
* Only update site_aggregates for local site (#3516)

* Fix #3501 - Fix aggregation counts for elements removed and deleted (#3543)

Two bugs were found and fixed:
- previously elements removal and deletion were counted as two separate disappearances
- removing comments did not affect post aggregations

* Use LemmyErrorType also make error_type compulsory

* Add missing import for jsonify_plain_text_errors

* Fix formatting

* Trying to make woodpecker run again

---------

Co-authored-by: phiresky <phireskyde+git@gmail.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
Co-authored-by: rosenjcb <rosenjcb@gmail.com>
Co-authored-by: nixoye <12674582+nixoye@users.noreply.github.com>
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
Co-authored-by: Nutomic <me@nutomic.com>
Co-authored-by: SleeplessOne1917 <abias1122@gmail.com>
Co-authored-by: Sander Saarend <sander@saarend.com>
Co-authored-by: Piotr Juszczyk <74842304+pijuszczyk@users.noreply.github.com>
16 months agoFix #3501 - Fix aggregation counts for elements removed and deleted (#3543)
Piotr Juszczyk [Mon, 10 Jul 2023 15:30:30 +0000 (17:30 +0200)]
Fix #3501 - Fix aggregation counts for elements removed and deleted (#3543)

Two bugs were found and fixed:
- previously elements removal and deletion were counted as two separate disappearances
- removing comments did not affect post aggregations

16 months agoOnly update site_aggregates for local site (#3516)
Sander Saarend [Mon, 10 Jul 2023 15:20:39 +0000 (18:20 +0300)]
Only update site_aggregates for local site (#3516)

16 months agoError enum fixed (#3487)
Nutomic [Mon, 10 Jul 2023 14:50:07 +0000 (16:50 +0200)]
Error enum fixed (#3487)

* Create error type enum

* Replace magic string slices with LemmyErrorTypes

* Remove unused enum

* Add rename snake case to error enum

* Rename functions

* clippy

* Fix merge errors

* Serialize in PascalCase instead of snake_case

* Revert src/lib

* Add serialization tests

* Update translations

* Fix compilation error in test

* Fix another compilation error

* Add code for generating typescript types

* Various fixes to avoid breaking api

* impl From<LemmyErrorType> for LemmyError

* with_lemmy_type

* trigger ci

---------

Co-authored-by: SleeplessOne1917 <abias1122@gmail.com>
16 months agoAdding phiresky to codeowners. (#3576)
Dessalines [Mon, 10 Jul 2023 14:20:40 +0000 (10:20 -0400)]
Adding phiresky to codeowners. (#3576)

16 months agoUpgrade all dependencies (#3526)
Nutomic [Mon, 10 Jul 2023 13:00:55 +0000 (15:00 +0200)]
Upgrade all dependencies (#3526)

* Upgrade all dependencies

* as base64

16 months agoUse async email sender (#3554)
dullbananas [Mon, 10 Jul 2023 12:04:39 +0000 (05:04 -0700)]
Use async email sender (#3554)

16 months agoUpdate RELEASES.md (#3556)
nixoye [Mon, 10 Jul 2023 12:00:00 +0000 (09:00 -0300)]
Update RELEASES.md (#3556)

added instruction to find the location of your docker directory (especially useful for those who used ansible since they never had to setup docker manually)

16 months agoAdding v0.18.1 and v0.18.0 release notes. (#3530)
Dessalines [Mon, 10 Jul 2023 11:51:24 +0000 (07:51 -0400)]
Adding v0.18.1 and v0.18.0 release notes. (#3530)

16 months agoUpdating `login.rs` with generic `incorrect_login` response. (#3549)
rosenjcb [Mon, 10 Jul 2023 11:27:38 +0000 (04:27 -0700)]
Updating `login.rs` with generic `incorrect_login` response. (#3549)

16 months agoImprove api response times by doing send_activity asynchronously (#3493)
phiresky [Mon, 10 Jul 2023 10:27:49 +0000 (12:27 +0200)]
Improve api response times by doing send_activity asynchronously (#3493)

* do send_activity after http response

* move to util function

* format

* fix prometheus

* make synchronous federation configurable

* cargo fmt

* empty

* empty

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoVersion 0.18.1
Dessalines [Fri, 7 Jul 2023 13:24:49 +0000 (09:24 -0400)]
Version 0.18.1

16 months agoRevert "Make sure hot rank sorts for post and community filter by positive hot ranks...
Dessalines [Fri, 7 Jul 2023 09:29:07 +0000 (05:29 -0400)]
Revert "Make sure hot rank sorts for post and community filter by positive hot ranks. (#3497)" (#3521)

This reverts commit 6840fd64f9bee9fff263ed797350a316ebdb98c6.

16 months agoMake hot rank not crash on future (#3517)
phiresky [Fri, 7 Jul 2023 09:27:47 +0000 (11:27 +0200)]
Make hot rank not crash on future (#3517)

* make hot rank zero for future

* parallel safe

16 months agoUpgrade crossbeam-channel (#3512)
Nutomic [Thu, 6 Jul 2023 18:21:11 +0000 (20:21 +0200)]
Upgrade crossbeam-channel (#3512)

16 months agoUpdate prettier to 3.0.0 (#3509)
Dessalines [Thu, 6 Jul 2023 13:10:38 +0000 (09:10 -0400)]
Update prettier to 3.0.0 (#3509)

* Update prettier to 3.0.0

* Updating prettier dep.

* Explicity 3.0.0 version.

16 months agoVersion 0.18.1-rc.10
Felix Ableitner [Thu, 6 Jul 2023 12:46:46 +0000 (14:46 +0200)]
Version 0.18.1-rc.10

16 months agoimprove admin and mod check to not do seq scans and return unnecessary data (#3483)
phiresky [Thu, 6 Jul 2023 12:44:26 +0000 (14:44 +0200)]
improve admin and mod check to not do seq scans and return unnecessary data (#3483)

* improve admin and mod check

* fix clippy

* move admin index to existing code

* Revert "move admin index to existing code"

This reverts commit d0c58d5f4021e1775d0c1d30d8df6c7df87557c4.

* third attempt at the migration

* fix formatting

* rebuild

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoOnly allow http(s) scheme for urls (ref #3505) (#3508)
Nutomic [Thu, 6 Jul 2023 12:29:51 +0000 (14:29 +0200)]
Only allow http(s) scheme for urls (ref #3505) (#3508)

With this change only http(s) schemes are allowed for post.url
field. This is checked for incoming api and federation requests.
Existing posts in database which are sent to clients are not
checked. Neither does it check urls in markdown.

16 months agoChange security contact mail (#3506)
Nutomic [Thu, 6 Jul 2023 11:27:47 +0000 (13:27 +0200)]
Change security contact mail (#3506)

Old one isnt working apparently

16 months agoAllow cross-origin requests (#3421)
Diamond [Thu, 6 Jul 2023 11:25:19 +0000 (04:25 -0700)]
Allow cross-origin requests (#3421)

Co-authored-by: pfg <pfg@pfg.pw>
16 months agoMake sure hot rank sorts for post and community filter by positive hot ranks. (#3497)
Dessalines [Thu, 6 Jul 2023 11:22:48 +0000 (07:22 -0400)]
Make sure hot rank sorts for post and community filter by positive hot ranks. (#3497)

* Make sure hot rank sorts for post and community filter by positive hot ranks.

- Context #2994

* Adding a comment.

16 months agoFixes wrong community moderator ordering. (#3495)
Dessalines [Thu, 6 Jul 2023 10:27:25 +0000 (06:27 -0400)]
Fixes wrong community moderator ordering. (#3495)

16 months agoUse fixed prettier version for CI (#3507)
Nutomic [Thu, 6 Jul 2023 10:23:51 +0000 (12:23 +0200)]
Use fixed prettier version for CI (#3507)

3.0.0 was pushed to docker hub 2 hours ago, thats probably why
builds are breaking now.

16 months agoupgrade markdown-it to fix panic (#3490)
phiresky [Wed, 5 Jul 2023 17:08:53 +0000 (19:08 +0200)]
upgrade markdown-it to fix panic (#3490)

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoimprove performance of community followers inbox query (#3482)
phiresky [Wed, 5 Jul 2023 15:50:26 +0000 (17:50 +0200)]
improve performance of community followers inbox query (#3482)

* improve performance of community followers inbox query

* nightly format

* force woodpecker to retry

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoCache federation blocklist (#3486)
Nutomic [Wed, 5 Jul 2023 15:08:02 +0000 (17:08 +0200)]
Cache federation blocklist (#3486)

* Cache federation blocklist

* revert submodule change

16 months agoAdd Prometheus endpoint (#3456)
Andrew Fields [Wed, 5 Jul 2023 11:25:19 +0000 (06:25 -0500)]
Add Prometheus endpoint (#3456)

Add a server for serving Prometheus metrics. Include a configuration
block in the config file. Provide HTTP metrics on the API, along with
process-level metrics and DB pool metrics.

16 months agoAdding a person.admin index, and featured_local/community indexes. (#3479)
Dessalines [Wed, 5 Jul 2023 11:00:41 +0000 (07:00 -0400)]
Adding a person.admin index, and featured_local/community indexes. (#3479)

16 months agoAdd feature for enabling json logging (#3462)
Lemmus.org [Tue, 4 Jul 2023 11:11:47 +0000 (04:11 -0700)]
Add feature for enabling json logging (#3462)

16 months agofix(posts/comments/search): return error on invalid community name (#3418)
Louis GERARD [Tue, 4 Jul 2023 11:04:38 +0000 (13:04 +0200)]
fix(posts/comments/search): return error on invalid community name (#3418)

16 months agoImproved validation of display names (Fixes #3436) (#3437)
Josephos [Tue, 4 Jul 2023 10:41:58 +0000 (12:41 +0200)]
Improved validation of display names (Fixes #3436) (#3437)

* Fixed validation of display names

Fixed validation of display names: reject names beginning with invisible unicode characters.

* Formatting

Formatting fix.

* Expanded list of forbidden Unicode characters. Validation now checks for disallowed characters anywhere in the name.

* Formatting

* Added a comment detailing source of the list of invisible chars.

16 months agoFixing clippy. (#3471)
Dessalines [Tue, 4 Jul 2023 10:15:27 +0000 (06:15 -0400)]
Fixing clippy. (#3471)

16 months agoRemove not needed anymore http-signature-normalization-actix dependency (#3458)
Piotr Juszczyk [Tue, 4 Jul 2023 10:14:37 +0000 (12:14 +0200)]
Remove not needed anymore  http-signature-normalization-actix dependency (#3458)

16 months ago300 comment limit. (#3306)
Dessalines [Mon, 3 Jul 2023 22:02:57 +0000 (18:02 -0400)]
300 comment limit. (#3306)

* 300 comment limit.

* Another fix.

16 months agoVersion 0.18.1-rc.9
Dessalines [Mon, 3 Jul 2023 21:16:48 +0000 (17:16 -0400)]
Version 0.18.1-rc.9

16 months agoDo not decrement comment score twice when removing then deleting. (#3196)
JP Moresmau [Mon, 3 Jul 2023 18:13:53 +0000 (20:13 +0200)]
Do not decrement comment score twice when removing then deleting. (#3196)

Fixes #3004

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoRemove excessive content_type header configuration (#3470)
perillamint [Mon, 3 Jul 2023 17:43:45 +0000 (02:43 +0900)]
Remove excessive content_type header configuration (#3470)

16 months agoAdding rest of community sorts. Fixes #3374 (#3376)
Dessalines [Mon, 3 Jul 2023 17:09:15 +0000 (13:09 -0400)]
Adding rest of community sorts. Fixes #3374 (#3376)

* Adding rest of community sorts. Fixes #3374

* Addressing PR comments.

16 months agoDont compare db string errors (fixes #1393) (#3424)
Nutomic [Mon, 3 Jul 2023 15:59:49 +0000 (17:59 +0200)]
Dont compare db string errors (fixes #1393) (#3424)

* Dont compare db string errors (fixes #1393)

* cargo fmt

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
16 months agoAdd Open links in new tab setting (#3318)
Simon Bordeyne [Mon, 3 Jul 2023 15:10:25 +0000 (17:10 +0200)]
Add Open links in new tab setting (#3318)

* Add Open links in new tab setting

* reorder because it fixes tests ?

16 months agoFix awesome-lemmy owner (#3469)
David BELEY [Mon, 3 Jul 2023 14:44:55 +0000 (16:44 +0200)]
Fix awesome-lemmy owner (#3469)

16 months agoAdd awesome-lemmy to LemmyNet? (#3413)
David BELEY [Mon, 3 Jul 2023 13:15:45 +0000 (15:15 +0200)]
Add awesome-lemmy to LemmyNet? (#3413)

* Add LemmyNet/awesome-lemmy

* Delete other apps/projects from README.md

16 months agoUse serde(skip) instead of skip_serializing, add placeholder values (#3362)
Nutomic [Mon, 3 Jul 2023 13:14:01 +0000 (15:14 +0200)]
Use serde(skip) instead of skip_serializing, add placeholder values (#3362)

* Use serde(skip) instead of skip_serializing

The latter breaks lemmy_crawler as the field is not included in
the Lemmy API, but is required when attempting to parse API responses.
Should only use serde(skip) to avoid this problem

* use option

* add placeholders

* no unwrap

16 months agoMark follow as pending when subscribing to remote community (fixes #3384) (#3406)
Nutomic [Mon, 3 Jul 2023 10:03:20 +0000 (12:03 +0200)]
Mark follow as pending when subscribing to remote community (fixes #3384) (#3406)

16 months agoFix formatting for latest nightly (#ref 3467)
Felix Ableitner [Mon, 3 Jul 2023 09:45:53 +0000 (11:45 +0200)]
Fix formatting for latest nightly (#ref 3467)

16 months agoRemove PerformApub trait (#3423)
Nutomic [Mon, 3 Jul 2023 09:01:41 +0000 (11:01 +0200)]
Remove PerformApub trait (#3423)

* Remove PerformApub trait

This is completely useless now that websocket is gone. In the future
I also plan to remove Perform and PerformCrud traits, but it will be
difficult to do that while still compiling crates in parallel.

* params need to use query

16 months agoFix quoting of max-file in docker-compose.yml (#3442)
drumlinish [Mon, 3 Jul 2023 08:59:07 +0000 (10:59 +0200)]
Fix quoting of max-file in docker-compose.yml (#3442)