Commit graph

422 commits

Author SHA1 Message Date
default
755d997fb1 Updated copyright year. 2024-01-04 09:22:03 +01:00
default
e003f87c2d Moved most server state to a structure. 2024-01-03 11:01:25 +01:00
default
808849ba14 Don't collect our own shared inbox. 2023-12-19 12:08:06 +01:00
default
fd637549f3 Added a prefix to srv_archive_qitem(). 2023-12-17 15:27:39 +01:00
default
f8196b4ef6 New function srv_archive_qitem(). 2023-12-17 15:21:16 +01:00
default
f93b5ad091 Fixed a misleding log text. 2023-12-16 23:24:32 +01:00
default
bfdaf380ea More logging tweaks. 2023-12-11 10:41:41 +01:00
default
c693c7c62c Some logging tweaks. 2023-12-11 07:37:53 +01:00
default
09b926c168 More functions do not require the user argument. 2023-12-10 17:50:03 +01:00
default
755ef0ed97 Purge unused tags completely. 2023-12-08 08:34:51 +01:00
default
bad729c631 Started work to support shared inboxes. 2023-12-06 14:46:51 +01:00
default
80c5bac826 Backport from xs. 2023-11-17 08:51:53 +01:00
default
8a5067cae4 When purging tag indexes, also delete the .bak files. 2023-11-08 18:37:07 +01:00
default
b199f223e4 Tag indexes are also purged. 2023-11-08 18:15:51 +01:00
default
55d3ef5024 Tags can now be searched for from the server base URL. 2023-11-08 09:20:34 +01:00
default
895cf82a7d New code for indexing tags. 2023-11-08 08:14:34 +01:00
default
253e7f9eaa Don't allow creating users which user name strings only differ in case. 2023-10-13 06:33:12 +02:00
default
1b3f768a57 mastoapi: some tweaks to better match the returned data in timelines. 2023-10-09 11:49:45 +02:00
default
60e8953a69 Give more retry time to timedout connections. 2023-09-29 10:34:22 +02:00
default
f8c62fe210 Pinned posts are never purged. 2023-09-18 22:52:27 +02:00
default
5afa5ab071 Also purge the 'pinned' folder. 2023-09-18 13:35:08 +02:00
default
073a2d962a Discard output messages to blocked instances. 2023-09-02 08:41:29 +02:00
default
dfeb4668a7 Got rid of old d_char. 2023-08-31 07:00:15 +02:00
default
dae2e406d6 history_add() now creates an etag. 2023-08-19 09:59:58 +02:00
default
5c7b26bcdc static_get() and history_get() both share the same code. 2023-08-19 09:52:04 +02:00
default
5de1a9ce0c Rewritten history_get() prototype to match static_get(). 2023-08-19 09:31:13 +02:00
default
b3b4a4ef61 Return the history in reverse order, which has more sense. 2023-08-17 11:37:51 +02:00
default
2bea378610 mastoapi: Some tweaks to process posts with 'name' and 'image' fields. 2023-08-14 20:11:03 +02:00
default
cac1c6febd Rewritten actor_get() to not depend on a user. 2023-08-12 11:23:01 +02:00
default
499697258d Rewritten is_msg_public() to not depend on a user. 2023-08-12 09:43:01 +02:00
default
70b014606b Change filename order in srv_archive_error(). 2023-08-11 22:05:56 +02:00
default
3e5bb109d1 Renamed json dump functions to new xs spec. 2023-08-08 19:29:34 +02:00
default
a3f1387daa Only create the limited/ folder in calling limit(). 2023-08-07 06:38:19 +02:00
default
1763e3347e Added support for limiting followed users. 2023-08-06 18:40:50 +02:00
default
15f755960b Added xs_json_load() wherever possible. 2023-08-05 14:56:07 +02:00
default
381a2f5b7b Use xs_json_load() in some places. 2023-08-05 14:50:20 +02:00
default
f5a3dbf8d6 Use xs_json_dump_pp() wherever possible. 2023-08-03 09:02:08 +02:00
default
0f8c0cd694 Updated comment in headers. 2023-07-28 11:34:18 +02:00
default
eee1916858 Fixed prototypes. 2023-07-14 08:47:20 +02:00
default
545af948db New function post_message(), to send a message bypassing the output queue.
This is used when accepting Follow requests; this way, follows are
confirmed as fast as possible.

If the message cannot be immediately sent, it's queued as always.
2023-07-13 18:18:23 +02:00
default
3642cd25e4 Simplified inbox_list(). 2023-07-10 18:04:59 +02:00
default
e2789cece5 index_list() and index_list_desc() always return a list, even if empty. 2023-07-05 14:41:47 +02:00
default
08e474561e Tweaked static_get() logging. 2023-07-05 14:07:52 +02:00
default
eef3c419dd Posts can be pinned/unpinned from the web interface. 2023-07-05 14:06:21 +02:00
default
9c7cc7b710 index_list() and index_list_desc() don't return deleted entries. 2023-07-04 16:33:54 +02:00
default
bf08fba799 Call index_del() from _object_user_cache(). 2023-07-04 14:34:32 +02:00
default
d343b40ee5 Added HTTP caching to static data. 2023-07-02 11:11:01 +02:00
default
61957a86da Added instance blocking to data storage. 2023-06-29 08:07:10 +02:00
default
afebf086e7 Fixed unpinning indexing. 2023-06-28 21:47:00 +02:00
default
af180685bd Added some error control to pinning. 2023-06-28 20:52:09 +02:00
default
394240b9ba Also purge pinned.idx. 2023-06-28 20:39:16 +02:00
default
3559a0f1f2 New pinning in data storage. 2023-06-28 20:26:59 +02:00
default
e8be616793 Minor logging tweak. 2023-06-26 09:32:59 +02:00
default
42803e2116 Fixed crash in _object_fn_by_md5(). 2023-06-18 20:38:35 +02:00
default
5278232616 Delete unnecessary function information in _object_fn(). 2023-06-18 20:35:16 +02:00
default
b331f362be Improved checks to _object_fn_by_md5(). 2023-06-18 20:29:50 +02:00
default
51ef347334 Added some more checks to _object_fn_by_md5(). 2023-06-18 20:08:51 +02:00
default
551bf92b3b Added the caller function name to _object_fn_by_md5() and _object_fn(). 2023-06-18 19:53:33 +02:00
default
0a6a3a0a9a Avoid checking for deleted entries (starting with '-') in index_gc(). 2023-06-18 19:09:37 +02:00
default
723efdb251 Added some logging on corrupted md5 ids. 2023-06-16 10:04:29 +02:00
default
262de20aa8 Fixed voting / replying confusion. 2023-06-15 17:24:44 +02:00
default
09e0d99251 Increased log level for enqueue_request_replies(). 2023-06-15 09:35:03 +02:00
default
14b2f69768 If a ~/log/ folder exists, also write the log there. 2023-06-15 06:15:39 +02:00
default
2076267c03 Avoid returning 'ghost' no-longer-followers in followers_list(). 2023-06-15 04:56:44 +02:00
default
2bed69d00b Use the _a.json extension for actor object links into following/. 2023-06-15 04:29:26 +02:00
default
297b82c9c6 following_list() creates links to the actors if they don't exist. 2023-06-15 04:19:09 +02:00
default
e97092cf0c Maintain a link to the author object in the following/ subdirectory. 2023-06-15 04:11:39 +02:00
default
1307b6203c Use utimes() to 'touch' the actor file in actor_get(). 2023-06-14 20:59:00 +02:00
default
b77ef13d2c Don't enqueue a request_replies message if it's already there. 2023-06-07 13:09:19 +02:00
default
ecde1c219e New function enqueue_request_replies().
This way, the (potentially expensive and slow) call to
timeline_request_replies() is detached from actions like
replying a message from the web ui.
2023-06-07 12:04:59 +02:00
default
125317ac47 Some prototype update. 2023-06-07 11:08:14 +02:00
default
3b72b0f0ac New function was_question_voted(). 2023-05-31 22:06:31 +02:00
default
7659362448 Enqueue a close_question user q_item. 2023-05-29 11:07:38 +02:00
default
654e171b93 New macro ISO_DATE_SPEC. 2023-05-29 09:07:27 +02:00
default
5d8e370ec3 More prototype tunnings. 2023-05-24 13:05:43 +02:00
default
e6eb1adc65 Also find local users in /api/v1/search. 2023-05-15 13:04:30 +02:00
default
e9588a71ae Add /v1/account/search support. 2023-05-15 11:15:28 +02:00
default
e2e7bc2d71 Added a source (web, mastoapi, etc) to lastlog_write(). 2023-05-08 09:02:45 +02:00
default
753eadfd17 Added some const here and there. 2023-05-04 09:25:09 +02:00
default
511f5062b7 Deleted real unused parameters. 2023-05-04 09:19:26 +02:00
default
cf2b334d86 Ensure no actor data is left in actor_get(). 2023-05-03 08:15:38 +02:00
default
4595a36859 Partial support for mastoapi unfavourite / unreblog. 2023-05-01 17:20:49 +02:00
default
c21bbd5f7c New functions index_del_md5(), index_del() and object_unadmire(). 2023-05-01 17:02:44 +02:00
default
84902d8dcc Purge / gc the instance timeline index. 2023-05-01 08:32:48 +02:00
default
21a2a01937 Return immediately from actor_get() if it's a local user. 2023-04-30 07:37:39 +02:00
default
e31c4810a8 actor_get() returns an actor message for local users. 2023-04-30 06:49:51 +02:00
default
ede4d6f2dc Some instance timeline work. 2023-04-30 06:39:55 +02:00
default
049818a904 Public posts are also added to an instance public timeline index. 2023-04-29 07:36:18 +02:00
default
765f63772f New function mastoapi_purge() (still dummy). 2023-04-28 08:33:02 +02:00
default
043cd5c50b Fixed warning. 2023-04-23 08:59:14 +02:00
default
4fca7c8a7e Added mastoapi unfollow. 2023-04-23 08:51:02 +02:00
default
291f251ced Added mastoapi follow. 2023-04-23 08:44:26 +02:00
default
88850bdc46 Attend mastoapi relationships.
Now, the follow/unfollow buttons appear on each account's page.
2023-04-23 06:05:35 +02:00
default
2b80873a28 History functions fail on ids with /. 2023-04-22 08:02:23 +02:00
default
51bee249d4 Fail on static data ids with / in them. 2023-04-22 07:58:31 +02:00
default
66d5acc822 Use static_get_meta() when preparing the attachment. 2023-04-22 00:51:06 +02:00
default
8c4850df50 New functions to get and set metadata into static files. 2023-04-22 00:24:15 +02:00
default
8205159f8c Replaced strcpy() with strncpy().
To shut up some compiler whining.
2023-04-16 20:12:44 +02:00
default
0240c871f3 New function user_open_by_md5(). 2023-04-16 07:43:41 +02:00
default
9e7a77c10f New mastoapi to clear all notifications. 2023-04-14 19:39:31 +02:00