Felix Ableitner
659572e00e
Create and Note always need to tag parent creator, for mastodon notifications
2021-11-15 23:54:25 +01:00
Felix Ableitner
12c51ab435
Activities in community should also be sent to actors in cc
2021-11-15 22:37:19 +01:00
Felix Ableitner
27dbcc168a
Make webfinger standard compliant
2021-11-15 21:27:00 +01:00
Nutomic
1b9414f292
More federation compat ( #1894 )
...
* Make HTTP signatures compatible with Pleroma
* Send Announce/Page, Announce/Note for Pleroma compatibility
* remove unused code
2021-11-11 14:49:15 -05:00
Dessalines
76220a4523
Fixing clippy lints. ( #1885 )
...
* Fixing clippy lints.
* Revert object id display
* Trying to fix clippy again
2021-11-09 18:16:37 +00:00
Felix Ableitner
252d87d332
Fix clippy error
2021-11-08 13:16:14 +01:00
Felix Ableitner
888e683856
For verify_is_public() we also need to check cc field
2021-11-06 18:44:34 +01:00
Felix Ableitner
a5a674a270
Add method ApubObject.verify()
2021-11-06 18:35:14 +01:00
Felix Ableitner
8ea21c39b7
Reduce stack memory usage in apub code
...
- use our own, smaller Endpoints struct
- wrap ObjectId.url in Box
- adjust usage of Box in different places
2021-11-06 14:53:39 +01:00
Felix Ableitner
c725514841
Change to_apub and from_apub to take by value and avoid cloning
2021-11-06 14:47:58 +01:00
Felix Ableitner
2edf8ba157
Move ObjectId to library
2021-11-05 21:37:46 +01:00
Felix Ableitner
bd3352423a
Remove ActivityFields trait, deserialize into another struct instead
2021-11-05 21:14:19 +01:00
Felix Ableitner
969a7f2d1b
Refactoring apub code
2021-11-05 21:12:10 +01:00
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.
2021-11-03 17:47:24 +00:00
Felix Ableitner
b396344eae
Merge two functions into one
2021-11-02 21:39:06 +01:00
Felix Ableitner
0bde2d595e
Add tests for parsing activities and collections
2021-11-02 12:44:51 +01:00
Felix Ableitner
aaaf039779
Move apub test files into tree structure
2021-10-29 16:54:19 +02:00
Felix Ableitner
03d8ac75ef
Move activity structs to protocol folder
2021-10-29 12:50:32 +02:00
Felix Ableitner
5ff044346f
Move object and collection structs to protocol folder
2021-10-29 12:50:32 +02:00
Felix Ableitner
d89156810d
Move @context out of object/activity definitions
2021-10-29 12:50:32 +02:00
Felix Ableitner
2d04ff93f5
Change activity.cc to Vec<Url> in public activities
2021-10-29 12:50:32 +02:00
Felix Ableitner
271785b7fb
When receiving activity, dont read community from cc (for pleroma compat and better verification)
2021-10-29 12:50:30 +02:00
Felix Ableitner
74523fb534
Make Note.context optional for pleroma compat (hack)
2021-10-29 12:45:54 +02:00
Felix Ableitner
03b8ae7215
Activity.to should always be a vec (and unspecified size for public activities)
2021-10-29 12:45:54 +02:00
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
2021-10-27 12:03:07 -04:00
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
2021-10-22 12:21:26 -04:00
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
2021-10-21 13:25:35 -04:00
Felix Ableitner
1aa0e1997b
Major refactor, adding newtypes for apub crate
...
- this allows moving FromApub/ToApub traits into apub lib
2021-10-20 12:28:09 +02:00
Felix Ableitner
f24999027e
Merge crates db_schema and db_queries
2021-10-20 12:28:08 +02:00
Nutomic
18badcfdb4
Federate reports ( #1830 )
...
* Federate reports
* add federation test cases for reports
2021-10-15 10:37:33 -04:00
Dessalines
2402515fcc
Dont allow posts to deleted / removed communities. Fixes #1827 ( #1828 )
...
* Dont allow posts to deleted / removed communities. Fixes #1827
* Fixing couldnt find community error.
* Adding check in createorupdate post and comment.
* make sure post wasn't deleted or removed.
* Adding a post not deleted or removed check to creatorupdatecomment.
* Using pub(crate)
2021-10-14 16:33:19 +00:00
Nutomic
f4c783cba5
Fix clippy warnings added in nightly ( #1833 )
2021-10-12 12:46:26 -04:00
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
2021-10-06 16:20:05 -04:00
Dessalines
8708ad1b44
Moving settings and secrets to context.
2021-09-27 11:25:26 +02:00
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)
2021-09-25 11:44:52 -04:00
Nutomic
2822f5a126
Change public activities to field to array ( #1739 )
2021-08-27 21:33:38 -04:00
Felix Ableitner
251e0d3b82
Move resolving of activitypub objects to separate api endpoint ( fixes #1584 )
2021-08-20 12:35:50 +02:00
Nutomic
f6f169b4eb
Rewrite remaining activities ( #1712 )
...
* Limit type/method visibility in apub code
* Simplify db_queries traits by removing generics
* Simplify delete activity implementation
* Rewrite delete activities
* Implement helper functions for websocket message sending
* When receiving delete reason as empty string, change to none
* Rewrite remaining activities
* Simplify inbox
* Remove struct ActivityCommonFields, derive ActivityFields trait instead
* Community should announce received activities to followers
2021-08-19 17:24:33 -04:00
Nutomic
28d6370c35
Rewrite delete activities ( #1699 )
...
* Limit type/method visibility in apub code
* Simplify db_queries traits by removing generics
* Simplify delete activity implementation
* Rewrite delete activities
* Implement helper functions for websocket message sending
* When receiving delete reason as empty string, change to none
2021-08-17 14:04:58 -04:00
Nutomic
353a1fe0a0
Rewrite activitypub following, person, community, pm ( #1692 )
...
* Rewrite following activities
* Rewrite person apub
* Rewrite community apub
* Rewrite private message activity sending
2021-08-12 08:48:09 -04:00
Dessalines
7b8cbbba85
Simplify config using macros ( #1686 )
...
Co-authored-by: Felix Ableitner <me@nutomic.com>
2021-08-04 21:13:51 +00:00
Nutomic
b8d7f00d58
Rewrite voting ( #1685 )
...
* Merge like/dislike activity handlers into vote
* Rewrite vote sending code
* Remove old send_create, send_update functions
2021-08-02 16:33:40 -04:00
Felix Ableitner
6b57d716e1
Rewrite private message apub and merge create/update
2021-07-31 22:58:11 +02:00
Felix Ableitner
dc363c8f35
Merge logic for post create and update
2021-07-31 19:26:17 +02:00
Felix Ableitner
3eb46868ff
Merge logic for comment create and update
2021-07-31 17:47:08 +02:00
Felix Ableitner
43ad99bbe8
Rewrite apub comment (de)serialization using structs (ref #1657 )
2021-07-31 16:57:37 +02:00
Felix Ableitner
433ab1e78b
Add docs for MediaType, PublicUrl values
2021-07-30 23:16:33 +02:00
Felix Ableitner
57b6ecaf40
Simplify lemmy_context() function (dont return errors)
2021-07-30 23:16:33 +02:00
Felix Ableitner
ff265c7ebc
Rewrite apub post (de)serialization using structs (ref #1657 )
2021-07-30 23:16:32 +02:00
Felix Ableitner
c1db86925f
Merge apub, apub_receive crates ( fixes #1621 )
2021-07-17 18:20:44 +02:00