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
0bde2d595e
Add tests for parsing activities and collections
2021-11-02 12:44:51 +01: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
358ef99ea2
Rewrite community followers and user outbox to use our own structs
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
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
03b8ae7215
Activity.to should always be a vec (and unspecified size for public activities)
2021-10-29 12:45:54 +02:00
Felix Ableitner
6792e376b4
Rewrite community outbox to use new fetcher
2021-10-29 12:45:53 +02:00
Felix Ableitner
bb085189e0
Merge traits ToApub and FromApub into ApubObject
2021-10-29 12:45:53 +02:00
Dessalines
f1f7c45017
Three instance inbox bug ( #1866 )
...
* 3 instance shared inbox bug test
* Fixing shared inbox bug. Fixes #1865
* A few fixes.
2021-10-28 20:46:24 +00: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
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
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
5a281445a3
Upgrade deps ( #1799 )
...
* Upgrade deps
* Fix web::scope
2021-09-29 14:50:00 -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
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
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
57b6ecaf40
Simplify lemmy_context() function (dont return errors)
2021-07-30 23:16:33 +02:00
Felix Ableitner
c1db86925f
Merge apub, apub_receive crates ( fixes #1621 )
2021-07-17 18:20:44 +02:00
Felix Ableitner
722cdb78ba
Split lemmy_apub crate into two parts apub and apub_receive
2021-03-30 22:29:16 +02:00
Felix Ableitner
249fcc5066
Split api crate into api_structs and api
2021-03-25 20:19:40 +01:00
Felix Ableitner
4f54108a9c
Merge branch 'main' into federated-moderation
2021-03-19 17:11:34 +01:00
Dessalines
c3efb9f7cf
Strictly typing DB id fields. Fixes #1498
2021-03-18 16:25:21 -04:00
Dessalines
9cb4dad4b4
A first pass.
2021-03-10 23:43:11 -05:00
Dessalines
ddf4a667b1
~80% done
2021-03-10 17:33:55 -05:00
Felix Ableitner
0c484e8c76
Move moderators collection to separate HTTP endpoint
2021-03-09 18:14:15 +01:00
Andrew Yoon
e78ba38e94
Use URL type in most outstanding struct fields ( #1468 )
...
* Use URL type in most outstanding struct fields
This fixes all known remaining cases where url fields are stored as
plain strings, with the exception of form fields where empty strings
are used as sentinels (see `diesel_option_overwrite_to_url`).
Tested for regressions in the federated docker setup attempting to
exercise all changed fields, including through apub federation.
Fixes #1385
* Add migration to fix blank-string post.url values to be null
This also then fixes #602
* Address review feedback
- Fixed some unwraps and err message formatting
- Bumped the `url` library to 2.2.1 to fix a bug with serde error
messages
- Add unit tests for the two diesel option override functions
- Fix migration teardown by adding a no-op
* Rename lemmy_db_queries::Url to lemmy_db_queries::DbUrl
* fix compile error
* box PostOrComment variants
2021-03-02 12:41:48 +00:00
Dessalines
462c4a2954
Rewrite settings implementation. Fixes #1270 ( #1433 )
...
* A first attempt at using deser-hjson. Fixes #1270
* Trying to fix tests, try 1
* Trying to fix tests, try 2
* A few fixes to deser_hjson
- Removing unwrap_or_defaults, using impl functions.
- Reorganized settings
* Make clippy happy
* hjson list strings must be quoted.
* Adding support for env vars.
* Moving to structs and defaults file.
* Moving settings default and struct.
2021-03-01 17:24:11 +00:00
Felix Ableitner
3bdd78f341
Rename `lemmy_structs` to `lemmy_api_structs`
2021-03-01 14:08:41 +01:00
nutomic
1a4e35eb50
Store activitypub endpoints in database ( #162 )
...
Address review comments
Store Activitypub urls in database (fixes #808 )
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.ml/LemmyNet/lemmy/pulls/162
Co-Authored-By: nutomic <nutomic@noreply.yerbamate.ml>
Co-Committed-By: nutomic <nutomic@noreply.yerbamate.ml>
2021-02-04 16:34:58 +00:00
Felix Ableitner
c09c462a6e
Serve activities in community outbox ( fixes #1216 )
2021-01-29 14:48:42 +01:00
Felix Ableitner
c51f750831
Use Url type for ap_id fields in database ( fixes #1364 )
2021-01-26 18:52:18 +01:00
Felix Ableitner
3b64c58198
Move most code into crates/ subfolder
2021-01-20 16:21:27 +01:00