Commit Graph

60 Commits (ef1e164cc508faed6831cd541646eab8492c56a2)

Author SHA1 Message Date
Nutomic ef1e164cc5
Make activity queue worker count configurable, log stats (#2113) 2 years ago
Nutomic 762b85b27e
Reorganize federation tests (#2092)
* Reorganize apub protocol tests

* Reorder apub protocol struct members to clarify mandatory/optional fields
2 years ago
Nutomic dd865c5af5
Implement instance actor (#1798)
* Implement instance actor

* wip: make site bans federate

* finish implementation and unit tests for federated bans

* start adding api tests

* fix api test

* remve site from GetCommunityResponse

* only federate site bans originating from user's home instance

* dont expose site.private_key in api
2 years ago
Nutomic eea3308906
Add tests for lotide federation, make lotide groups fetchable (#2035)
* Add tests for lotide federation, make lotide groups fetchable

* Accept posts using Note type (and better error messages for tests)
2 years ago
Aode (lion) 97ebf2f6f3 Consolidate reqwest clients, use reqwest-middleware for tracing 3 years ago
Riley 35cbae61bc
Don't drop error context when adding a message to errors (#1958)
* Respond directly with LemmyError

Instrument Perform implementations for more precise traces
Use ApiError to format JSON errors when messages are present
Keep SpanTrace output in LemmyError Display impl

* Hide SpanTrace debug output from LemmyError

* Don't log when entering spans, only when leaving

* Update actix-web

* Update actix-rt

* Add newline after error info in LemmyError Display impl

* Propogate span information to blocking operations

* Instrument apub functions

* Use skip_all for more instrument attributes, don't skip 'self' in some api actions

* Make message a static string

* Send proper JSON over websocket

* Add 'message' to LemmyError display if present

* Use a quieter root span builder, don't pretty-print logs

* Keep passwords and emails out of logs

* Re-enable logging Login

* Instrument feeds

* Emit our own errors

* Move error log after status code recording

* Make Sensitive generic over the inner type

* Remove line that logged secrets
3 years ago
Riley 1579ee566f
background-jobs 0.11 (#1943) 3 years ago
Felix Ableitner afccd5cf69 Replace activitystreams crate with activitystreams-kinds 3 years ago
Aode (lion) 20cddf5e81 Support mastodon deletes 3 years ago
Felix Ableitner 888e683856 For verify_is_public() we also need to check cc field 3 years ago
Felix Ableitner a5a674a270 Add method ApubObject.verify() 3 years ago
Felix Ableitner c725514841 Change to_apub and from_apub to take by value and avoid cloning 3 years ago
Felix Ableitner 2edf8ba157 Move ObjectId to library 3 years ago
Felix Ableitner 969a7f2d1b Refactoring apub code 3 years ago
Dessalines a83113935d
Check if post or comment are deleted first. Fixes #1864 (#1867)
* Check if post or comment are deleted first. Fixes #1864

* Refactoring delete apub.

* Revert "Refactoring delete apub."

This reverts commit ba2c3d06cfb870efe792f4b2541036265b425156.
3 years ago
Felix Ableitner 41f7bcc0d2 Correctly use and document check_is_apub_id_valid() param use_strict_allowlist 3 years ago
Felix Ableitner 0bde2d595e Add tests for parsing activities and collections 3 years ago
Felix Ableitner aaaf039779 Move apub test files into tree structure 3 years ago
Felix Ableitner 5ff044346f Move object and collection structs to protocol folder 3 years ago
Felix Ableitner d89156810d Move @context out of object/activity definitions 3 years ago
Felix Ableitner 271785b7fb When receiving activity, dont read community from cc (for pleroma compat and better verification) 3 years ago
Nutomic 61189efe72
Rewrite collections to use new fetcher (#1861)
* Merge traits ToApub and FromApub into ApubObject

* Rewrite community outbox to use new fetcher

* Rewrite community moderators collection

* Rewrite tombstone
3 years ago
Nutomic 149a4e0de8
Breaking apub changes (#1859)
* Remove CommentInReplyToMigration

* Remove compat for RemovePostCommentOrCommunity

* Remove PublicUrlMigration

* Change type of pm to ChatMessage from Pleroma, make pm.to array

* Use person.summary instead of person.content for pleroma compat

* Also change group.content to summary

* Rewrite apub object test json to serve as nice examples

* Also add test case for parsing pleroma private message
3 years ago
Nutomic dd0ba10b44
Pleroma federation2 (#1855)
* Allow fetching person from Pleroma, including test case (ref #1461)

* Added test case for parsing community from apub json

- fixed a bug with objectid (de)serialization
- fixed a bug with outbox fetching (ref #1582)

* Added apub test for post

* Ignore errors when reading community outbox (fixes #1582)

* Dont fetch community outbox/moderators during tests

* added test for lemmy comment

* Added federation test for pleroma comment

* Added html2md crate to parse comment html from pleroma (fixes #1461)

* some fixes for update_apub_test_files.sh

* Add tests for ToApub, private message, remove update script

* Delete objects from db at the end of each test
3 years ago
Felix Ableitner 1aa0e1997b Major refactor, adding newtypes for apub crate
- this allows moving FromApub/ToApub traits into apub lib
3 years ago
Felix Ableitner f24999027e Merge crates db_schema and db_queries 3 years ago
Nutomic b96ce81f89
Move code to apub library (#1795)
* Remove dependency of apub_lib on LemmyContext

* Move ApubObject trait to library

* Reorganize files in apub lib

* Move ActorType, signatures, activity_queue to apub library
3 years ago
Dessalines 8708ad1b44 Moving settings and secrets to context. 3 years ago
Nutomic 527eefbe92
Rewrite fetcher (#1792)
* Use new fetcher implementation for post/comment

* rewrite person fetch to use new fetcher

* rewrite community to use new fetcher

* rename new_fetcher to dereference_object_id

* make ObjectId a newtype

* handle deletion in new fetcher

* rewrite apub object search to be generic

* move upsert() method out of ApubObject trait

* simplify ObjectId::new (and fix clippy)
3 years ago
Dessalines 6af75492a9
Swap out iframely (#1706)
* Replace Iframely. Fixes #1681

* Add post_link_tags to nginx

* Adding post_link_tags route

* Cleaning up post_link_tags

* Changing PostLink to SiteMetadata, adding it to the API.

* Fixing issue when local has no openssl certs.

* Fixing an issue with pictrs errors

* Revert "Fixing issue when local has no openssl certs."

This reverts commit dbf7d1b1ee03846e5ef7b7156e618424f1150e1d.

* Add ca-certs to dockerfile for volume mount.

* Cleaning up fetch_pictrs request

* Changing to fetch_site_data
3 years ago
Nutomic 353a1fe0a0
Rewrite activitypub following, person, community, pm (#1692)
* Rewrite following activities

* Rewrite person apub

* Rewrite community apub

* Rewrite private message activity sending
3 years ago
Dessalines 7b8cbbba85
Simplify config using macros (#1686)
Co-authored-by: Felix Ableitner <me@nutomic.com>
3 years ago
Felix Ableitner 43ad99bbe8 Rewrite apub comment (de)serialization using structs (ref #1657) 3 years ago
Felix Ableitner 433ab1e78b Add docs for MediaType, PublicUrl values 3 years ago
Felix Ableitner 57b6ecaf40 Simplify lemmy_context() function (dont return errors) 3 years ago
Felix Ableitner ff265c7ebc Rewrite apub post (de)serialization using structs (ref #1657) 3 years ago
Dessalines f54209c451
Running clippy --fix (#1647) 3 years ago
Dessalines f8cd6fd445 Making more fields optional in the API.
- Fixes #1569
3 years ago
Nutomic 8bb3ba4a16
Add option to disable strict allowlist (fixes #1486) (#1581)
* Add option to disable strict allowlist (fixes #1486)

* adjust docs
3 years ago
Felix Ableitner c572dc0cc6 Remote mods can update/delete/undelete communities 3 years ago
Dessalines 4c8f2e976e Merge remote-tracking branch 'yerba/split-api-crate' into test_merge_api_crates_reorg 3 years ago
Felix Ableitner 249fcc5066 Split api crate into api_structs and api 3 years ago
Dessalines 3ca2453fc6 Merge branch 'main' into move_matrix_and_admin_to_person 3 years ago
Felix Ableitner c7524d924b Fix federation tests 3 years ago
Dessalines c884510173 Creating default DB forms. Fixes #1511 3 years ago
Felix Ableitner 4f54108a9c Merge branch 'main' into federated-moderation 3 years ago
Felix Ableitner 4f7dca7c2b Fix three federation test cases 3 years ago
Felix Ableitner 71067a8cb5 For FromApub trait, use `is_mod_action: bool` instead 3 years ago
Felix Ableitner de14636e10 Fix code to allow sticky/lock from remote moderators 3 years ago
Dessalines 9cb4dad4b4 A first pass. 3 years ago