Commit graph

390 commits

Author SHA1 Message Date
23c9a0a106
fix: some impls dont include to in folreqs
i mean, it's obviously addressed to the target actor of this activity,
but it would cost nothing to put it in the `to` field... i do! added
special cases to make sure follow/accept/reject activities are at least
addressed to target actor
2024-05-02 14:36:56 +02:00
4a7425ef24
fix: mut 2024-05-02 13:31:09 +02:00
44de7040ec
fix: when updating must reset changing fields 2024-05-02 13:16:23 +02:00
4095b0eece
fix: add context extensions depending on type
if actor, add both counters and fe, if object add just fe:likedByMe, to
avoid sending useless text every time
2024-05-02 05:10:38 +02:00
0b21dd47e6
fix: skip local users while updating 2024-05-02 03:03:43 +02:00
5d58ef40a9
feat: added users update task 2024-05-02 03:02:36 +02:00
9bc7ddb0ae
chore: separate fetcher fetch from pull
fetch uses db and inserts, pull just gets the remote resource
2024-05-02 02:58:56 +02:00
01c02c5258
feat: impl Addressed on object and activity models 2024-05-02 02:58:45 +02:00
bcd8f27933
fix: use new apb fields 2024-05-02 00:47:11 +02:00
b1e4c4e79b
fix: add sensitive to context since we use it 2024-05-01 21:21:26 +02:00
dbf2450433
fix: select only user id column 2024-05-01 18:45:30 +02:00
84a446b494
fix: answer deletions with 200 2024-05-01 18:43:43 +02:00
bb4f6e9df0
fix: show follow/by for remote users too
this is super ugly because there's a ton of duplication but let's see if
it works first...
2024-05-01 18:37:26 +02:00
4527ff884e
feat: show in user queries if follow/by self 2024-05-01 17:47:37 +02:00
75d03195d9
feat: allow checking if identity is someone 2024-05-01 17:47:21 +02:00
e8b36cecdf
chore: should move this later 2024-04-30 16:51:30 +02:00
f2dc3f69f2
chore: refactor, moved cli tasks under directory 2024-04-30 16:48:28 +02:00
b0ebeb9fff
fix: mastodont sized 2024-04-30 16:48:00 +02:00
6f033de946
fix: try fetching following/followers, dont fail 2024-04-30 16:47:34 +02:00
938d219d7d
fix: whoops other way around 2024-04-30 15:33:41 +02:00
a6c3ef9a3e
feat: increment statuses count
be it when posting, receiving a Create or fetching an object, increment
relevant user statuses count
2024-04-30 14:22:44 +02:00
a966f7fcb5
fix: fetch remote users following/followers count 2024-04-30 14:17:29 +02:00
0bfa49fed6
chore: imports 2024-04-30 04:29:03 +02:00
3237a38d74
fix: insert liked element also in single obj view 2024-04-30 02:57:50 +02:00
8af2cd2664
fix: maybe don't filter whole queries 2024-04-30 02:05:28 +02:00
a4cdd2e67b
feat: show followers, following, statuses in users 2024-04-30 01:51:38 +02:00
45d16fa0a3
feat: query and show objects liked by you
it shows it in quite a jank way: inside the "audience" collections you
find your id as only item. it's weird af but technically valid ap i
think? will probably be replaced with a local api extension as soon as i
read about those
2024-04-30 01:50:25 +02:00
63ba54dad9
fix: activity redirects when fetching different id 2024-04-30 01:49:05 +02:00
3df01b5b0a
chore: helper to reconstruct ids 2024-04-30 01:48:30 +02:00
f0cdd4bd7a
feat: like and share relations with object 2024-04-30 00:53:57 +02:00
97ed5d60b1
feat: show users following/followers
use audience for followers, generator for following and replies for
total statuses count. restored followers, following and outbox as bare
links. silly AP!!!
2024-04-30 00:53:07 +02:00
5bdf139ef5
chore: imports 2024-04-29 22:02:18 +02:00
7f996aa2c1
feat: kinda botched way to ignore relays
basically relays send us a lot of announce activities to share posts
but we don't care about those activities: it's db bloat and it increases
the shares count. keep a table keeping track of followed relays and
lazily skip activities by them, just fetch. IMPORTANT relays are only
loaded at startup, so if you subscribe to a new relay restart your
server once it accepts!!!
2024-04-29 21:58:08 +02:00
a6e12468b7
fix: db fix tasks would get stuck on sqlite
i think because the db would end up locked, added brackets to be sure to
drop the streaming reference. also it could crash when updating records
not found, just spit a warn
2024-04-29 21:23:12 +02:00
e4b92584db
chore: imports, renamed future routes 2024-04-29 21:23:02 +02:00
3e0e4ff8d3
fix: also update comments count when fetching 2024-04-29 21:22:48 +02:00
35804730de
fix: temporarily don't set replies
we don't serve those routes yet
2024-04-29 21:02:41 +02:00
3129970fb5
feat: added fix task to recalculate stats
note that won't reset everything to 0, just force set every post which
has a count != 0
also this is kind of a bad way to do it. at least we stream objects, but
we could have it happen all inside our db with SELECT, DISTINCT and SUM,
i just don't know how to represent it in sea_orm. an intermediate
optimization may be selecting only certain columns but it's relevant
almost only for replies
2024-04-29 20:53:19 +02:00
4fe53f7011
fix: increment share and like counters for outbox 2024-04-29 20:40:20 +02:00
5ae9a140b4
feat: show likes and shares and replies in objects
it's done with anonymous inline collections, which hold a "totalItems"
field. for replies it's perfect, for likes it's stretched ("audience",
used as a Collection) and for shares it's really stretched ("generator",
used as a Collection). also using audience and generator as collections
seems weird because they should be objects but collections are objects
so it should be fine? i haven't seen these fields used anyway so it
should be safe to "claim" it for ourselves?
2024-04-29 20:30:29 +02:00
95f9d05875
fix: redirect after fetching if id is different
for example, pleroma servers objects under /notice/abcd... but the
object id itself is different, under /objects/<uuid>. when fetching
pleroma redirects, but we get unreliable behavior. redirect so that we
can force clients to use the proper id
2024-04-29 20:11:19 +02:00
ab91a4c7bc
fix: your inbox contains posts by you 2024-04-26 13:48:57 +02:00
ed0a4fd211
fix: always forget about this... 2024-04-24 05:21:04 +02:00
3156b8d2d2
feat: sensitive field
this is not part of activitystreams afaik and should not be in apub but
it's quite convenient to do it this way sooooooooooo for now will do
2024-04-24 05:19:39 +02:00
abf4e8b370
fix: always embed specific activities 2024-04-24 05:04:30 +02:00
2ba96e802e
fix: show own activities/objects 2024-04-24 04:08:07 +02:00
768081c251
fix: big refactor of timelines querying
should not be more reliable, consistent and all around less buggy, but
it may actually break some things so let's find out
2024-04-24 02:32:23 +02:00
165bf19f8c
feat: don't add next link when done paginating 2024-04-23 23:37:57 +02:00
ba07b2cb9d
fix(apb): correct node order when iterating
use a VecDeque under the hood to be able to pop_front()
2024-04-23 20:58:37 +02:00
4b4d52ef6f
feat: fetch related things
fetching an object will get its author
fetching an activity will get its object and author
2024-04-23 17:56:46 +02:00