Commit graph

380 commits

Author SHA1 Message Date
4f8132a642
fix: dispatcher check doesn't include trailing 2024-04-23 05:01:59 +02:00
8150b9082d
fix: proper addressing, ctx.base() with trailing /
maybe aode-relay (and rust IRI parser) goes mad if there's no
trailing slash? idk, i'm speculating
2024-04-23 04:56:29 +02:00
63d78e7ff5
fix: delete with filters instead of activemodel 2024-04-23 04:24:27 +02:00
43d5571b27
feat: better error mappings to http 2024-04-23 04:07:32 +02:00
377ed9665d
fix: set published before converting to model
user may not have set it and we overwrite it anyway. id instead is
necessary, so if it's not given we should return 500
2024-04-23 03:59:27 +02:00
867740b2e6
fix: actually hook up all outbox actions 2024-04-23 03:45:50 +02:00
852b45f8dd
fix: also fix context for fetched objects 2024-04-23 03:04:54 +02:00
46de9aebd6
feat: implemented update, delete, announce outbox 2024-04-22 22:52:19 +02:00
8dece0f004
feat: implemented authed inbox 2024-04-22 22:52:05 +02:00
3c6b2ae3e6
fix: don't embed remote objects when dispatching
weak check but should still save some bytes
2024-04-22 22:42:00 +02:00
b62b461305
fix: dispatcher fetch app key for app deliveries 2024-04-22 04:23:11 +02:00
1d8b69dda7
fix: try setting digest always
aode relay complains that digest is missing on fetches? idk, let's try
putting an empty digest, will aode work? will mastodon/akkoma still
work? will this fix some *keys too???
2024-04-22 04:11:59 +02:00
4d0fb9b684
fix: pass actor, inbox gets resolved automatically 2024-04-22 04:03:47 +02:00
32707bda0c
feat: added command to follow relays 2024-04-22 03:56:07 +02:00
87a5a77e19
chore: imports 2024-04-22 02:52:18 +02:00
f2f7b51fdc
feat: order by publish date, not discovery
also centralized ordering inside select_* queries
2024-04-22 02:49:04 +02:00
b6f10e9cc1
fix: webfinger for application returns itself 2024-04-22 01:51:37 +02:00
dfec715594
chore: comments, clearer code 2024-04-22 01:01:42 +02:00
e9a19b3cb4
feat: fetch threads recursively up to 16 2024-04-22 00:43:17 +02:00
d575ef0bef
fix: add endpoints and preferred username to app 2024-04-22 00:37:21 +02:00
e8dd15f8bd
fix: also context gives full objects
would clear local cached image oof
2024-04-22 00:16:40 +02:00
96524dbd6f
fix: cheap fix for mastodon contexts 2024-04-22 00:01:09 +02:00
cc287d3aa4
feat: show attachments in inbox, outbox and /object
attachments are lazy loaded, so it may be efficient if not all posts
have media, but it should probably be eager loaded anyway eventually
2024-04-21 23:22:55 +02:00
c595f5f5e3
feat: process and store remote attachment urls 2024-04-21 22:58:33 +02:00
cd9d3f9db4
fix: use preferred_username before using url 2024-04-21 21:15:58 +02:00
624492bcfb
feat: introduced arbitrary fetch route for users 2024-04-21 19:15:47 +02:00
48bba8af40
feat: root url redirects browsers to /web 2024-04-21 19:01:51 +02:00
4e5e8f8532
fix: use WrappedObject type for context query 2024-04-21 17:11:50 +02:00
645e14cc32
fix: ops wrong relation direction 2024-04-21 16:39:56 +02:00
a083edef6e
fix: sqlite won't update columns anyway
since this migration breaks all sqlite dbs, i changed the original
migration so that future ones won't panic when reaching here. note that,
if you are on sqlite, just `sqlite3 <your_db> .dump > backup.sql` and
then, after rebuilding and re-migrating db, `cat backup.sql | sqlite3 <your_db>`
2024-04-21 16:30:29 +02:00
46a2e53da0
fix: use wrapped object since we ask for more cols 2024-04-21 16:14:47 +02:00
5d501a3018
fix: renamed methods 2024-04-21 15:42:15 +02:00
379b4daa84
fix: don't create mock activities
basically remade addressing table so that activity too can be null
2024-04-21 15:41:29 +02:00
fa74c3dd0a
chore: imports 2024-04-20 04:34:47 +02:00
6c3aead68b
feat: handle announces 2024-04-20 04:33:23 +02:00
f3dcbffeca
feat: parse object comments count from replies 2024-04-20 04:26:31 +02:00
1ca97668a1
chore: new helper, renamed base->domain 2024-04-20 04:26:16 +02:00
4d4cbe0ef8
feat: create mock activities for fetched objects 2024-04-20 04:24:48 +02:00
2d10f29b56
fix: restore federation, remove embedded follow___
it was so good, why make **just these** only links?????
2024-04-19 18:31:20 +02:00
b338a7191f
fix: jfc mastodon stop sending me deletions!!!!!!! 2024-04-19 16:15:05 +02:00
01d0e4df85
fix: context and replies and follow___ /page 2024-04-19 06:57:01 +02:00
789fae1eae
fix: oops revert! breaks querying
probably im doing it wrong somewhere else but nonetheless fuck go back
2024-04-19 06:21:26 +02:00
bccf1f3a26
fix: ensure viewer has perms even for fetches
before, the first fetch would bypass addressing checks. now we always do
2 trips to db when viewing+fetching remote stuff: 1st to make sure we
  have it, second to make sure we can view it
2024-04-19 05:26:51 +02:00
d7ff6014c4
fix: select_object doesnt return embeddedactivity 2024-04-19 05:05:26 +02:00
4883597ee3
fix: don't rename columns while joining 2024-04-19 05:02:59 +02:00
629990fee8
fix: find objects not activities 2024-04-19 04:57:06 +02:00
ab5d0cb61a
fix: replies only in object view, page uris 2024-04-19 04:42:43 +02:00
67c4051226
feat: add context to outgoing posts 2024-04-19 04:25:17 +02:00
973a3060ac
feat: show replies collection inline with object 2024-04-19 04:04:19 +02:00
13533a58d9
feat: fetch replied posts, increase comment count 2024-04-19 04:03:57 +02:00
39add30876
chore: merge branch 'dev' of alemi.dev into dev 2024-04-19 03:32:56 +02:00
b3460690d9
feat: added /objects/.../replies collections
really not optimized, same with context, but may work?
2024-04-19 03:32:21 +02:00
b51f013138
feat: added context collections and endpoints 2024-04-19 03:29:28 +02:00
dfe116506a
chore: refactor
moved into models converters to ap objects, single conditions are now
direct column checks
2024-04-19 03:28:39 +02:00
fc6aedbca1 fix: track deletions and rejected activities 2024-04-18 14:01:55 +02:00
a4c555d0c5 fix: deliveries will try to resolve actor inbox 2024-04-18 07:02:42 +02:00
2073015b7f
feat: mock oauth login wellknown
looks like we will need oauth soon to be able to use even andstatus
2024-04-18 05:49:17 +02:00
f4252a2fbf
fix: insert addressings after fetching
also refactored fetcher into a trait of context
2024-04-18 05:25:56 +02:00
93b5c0cd4a
fix: only fetch remote objects to avoid recursion 2024-04-18 04:50:06 +02:00
3a79ca05a2
feat: local users can request to fetch remote stuff 2024-04-18 04:48:49 +02:00
b2e6703b0e
feat: also fetch liked posts 2024-04-18 04:38:21 +02:00
5f8d8be05a
fix: show in_reply_to and statuses count 2024-04-18 04:14:16 +02:00
a897edd310
feat: add statuses count and in_reply_to fields
migration + models update
2024-04-18 04:09:13 +02:00
094a8b957c
fix: increase follow counts on Accept
both for inbox and outbox
2024-04-18 03:41:27 +02:00
45a69f0332
feat: show following/followers counts for users 2024-04-18 03:06:56 +02:00
8721a44354
feat: helper methods to handle auth cases 2024-04-18 03:06:40 +02:00
8aa80c7670
fix: faker inserts addressing too 2024-04-17 22:08:41 +02:00
267840a317
fix: not all keys are #main-key 2024-04-16 19:19:49 +02:00
dab4550d08
fix: show outbox for remote users with url trick 2024-04-16 08:04:08 +02:00
3cf401467e
feat: login tells you who you are 2024-04-15 22:29:55 +02:00
d5a83a5c7c
fix: attempt to select only one addressing 2024-04-15 22:10:49 +02:00
ee26596568
feat: allow to resolve local views of remote things
basically any id prefixed with + will be:
 * prefixed with 'https://'
 * have all '@' replaced with '/'
 * not be normalized with local domain patterns
thus allowing to look up kind of any url in our db

this is kinda reinventing the wheel, but i really don't want to have
local-only ids and would much rather have a local-only way to display
them, because at least everyone can understand it and look up anything
remote easily
2024-04-15 21:36:31 +02:00
f1ff946245
fix: also store public addrs for remote activities
oopsss thank you @prefetcher
2024-04-15 21:29:30 +02:00
a5454af7a3
chore: skeleton routes for likes&co and context 2024-04-15 01:56:54 +02:00
586f8d3f97
chore: unused imports 2024-04-14 16:57:36 +02:00
fd98864606
chore: some work on mastodon statuses route 2024-04-14 16:49:38 +02:00
b1b0aee2f9
feat: process some Undo activities, small refactor 2024-04-14 16:47:36 +02:00
b99ca9fa7e
feat: ignore deletions for GONE users
mastodon is quite spammy omg
2024-04-14 16:05:44 +02:00
19598aaffd
fix: order
was it just me being silly displaying it??? lol
2024-04-14 06:43:21 +02:00
8a14600311
fix: proper addressing creation for likes 2024-04-14 05:53:36 +02:00
b11da7f3c0
fix: oops i mixed up some fields 2024-04-14 03:48:37 +02:00
a735e16f73
fix: image and icon live under url 2024-04-14 03:39:52 +02:00
8b10bde544
feat: more consistent way to view remote users 2024-04-14 02:36:59 +02:00
6613f337ce
feat: cors and tracing layers 2024-04-13 22:31:46 +02:00
4d44688564
feat: dump json to stdout after fetching 2024-04-13 22:17:35 +02:00
c9a20b4e65
feat: node.fetch() is now signed 2024-04-13 22:13:36 +02:00
2e8d4323ee
fix: don't repeat (request-target) 2024-04-13 21:35:53 +02:00
027040604c
feat: improved http signatures code 2024-04-13 21:22:19 +02:00
f29d3baeb9
fix: name is nullable, preferredUsername is not 2024-04-13 16:43:19 +02:00
7f66851136
fix: Path<()>, not Path<>, Path<> 2024-04-13 06:55:16 +02:00
fc488e6b2f
feat: route for viewing specifically remote users
WIP, will probably go away in favor of a uniform route
2024-04-13 06:50:04 +02:00
9c9b5ec380
fix: standard base64 2024-04-13 06:06:05 +02:00
5d3c222774
fix: verify_oneshot, maybe makes a difference? 2024-04-13 06:02:50 +02:00
652af15771
fix: include method in request target 2024-04-13 05:36:29 +02:00
437859008c
feat: reimplemented from scratch http sig verify 2024-04-13 05:26:50 +02:00
6614f63f56
fix: added inbox and outbox to main app actor 2024-04-13 04:42:46 +02:00
72774d01ed
fix: also in case of digest 2024-04-13 04:31:50 +02:00
5f66ca4946
fix: oh my god if it was this ... 2024-04-13 04:31:36 +02:00
80d324ae03
fix: use method, don't hardcode "post" 2024-04-13 04:24:22 +02:00
1caaa08f78
fix: fetcher specifies application/json 2024-04-13 04:21:33 +02:00