Commit graph

359 commits

Author SHA1 Message Date
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
2031d8de41
fix: upub error reports status codes as-is 2024-04-13 04:08:45 +02:00
861cd2297b
fix: why is it throwing 500??? 2024-04-13 03:47:04 +02:00
b4e82b551b
fix: going back to manual http signatures
at least those worked, what the fuck is up with this lib technology...
2024-04-13 03:41:36 +02:00
d60d29bf98
fix: continue as anon if can't fetch user 2024-04-13 03:31:37 +02:00
c342b7c936
fix: object view
quite wasteful to do it like this but for some reason previous way
didn't work??
2024-04-13 03:28:52 +02:00
bb16a5b7d2
fix: return response rather than parsing
so that deliveries work
2024-04-13 03:21:25 +02:00
855434ee12
fix: try using again the new lib? 2024-04-13 03:09:47 +02:00
3a48e91655
fix: force overrule signature algorithm
really what?????
2024-04-13 03:03:54 +02:00
70c978caa0
fix: having more fun with http signatures 2024-04-13 02:55:10 +02:00
ff55d2fea4
fix: mastodon compat 2024-04-13 02:35:18 +02:00
46bbeea3ab
feat: verify inbox http signatures 2024-04-13 01:49:23 +02:00
d66f09d130
feat: inbox requests remote server auth 2024-04-13 01:49:04 +02:00
5863bdf04e
feat: signed fetches, improved signatures code
should make sure that it still works
2024-04-13 00:44:53 +02:00
95ab7a50ef
chore: refactored a little 2024-04-12 22:56:29 +02:00
576e809b69
fix: timelines ordering
what??? ASCENDING goes from most recent to least recent?? maybe
ascending oldness??????
2024-04-12 22:41:04 +02:00
d3d5f98dfd
feat: authorized fetch on activities and objects 2024-04-12 22:21:23 +02:00
4e34446894
fix: oops must be generic impl 2024-04-12 21:55:19 +02:00
5de807b3d9
fix: don't clear audiences
still quite jank way to do it but at least should work again?
2024-04-12 21:42:06 +02:00
ca59c30e70
fix: auth filter conditions any, not all 2024-04-12 21:18:01 +02:00
0fa88e51e6
feat: added all inboxes and outboxes
base POST to /outbox still returns NOT IMPLEMENTED tho
2024-04-12 20:01:47 +02:00
af8d11e75b
feat: inbox/outbox security and obj embedding 2024-04-12 19:36:00 +02:00