Commit Graph
596 Commits
Author SHA1 Message Date
grunfink 8dd51011df Use the translated month names in date labels. 2026-02-02 18:10:01 +01:00
grunfink 7d24c6ff94 Added translatable month names. 2026-02-02 17:51:40 +01:00
byte 56ca23c68c notifications filter 2026-01-25 16:56:04 +01:00
byte 68489ed0d3 fixing leak in reallocated string 2026-01-25 00:36:42 +00:00
Stefano Marinelli 688c54c873 Implement configurable EXIF stripping for uploaded media
- Add `strip_exif` configuration option to enable metadata removal.
- Add `mogrify_path` configuration to specify external tool location.
- Implement strip_media using `mogrify -strip`.
- Support multiple image formats: jpg, png, webp, heic, heif, avif, tiff, gif, bmp.
- Add strict startup check: fail to start if `strip_exif` is enabled but `mogrify` is missing/broken.
- Update documentation in `doc/snac.8`.
2026-01-06 11:02:36 +01:00
grunfink 11af00194e Bumped copyright year. 2026-01-01 17:01:03 +01:00
grunfink 219f3e6808 Fixed leak in emoji_reacted(). 2025-12-18 08:54:21 +01:00
grunfink fd45b94c09 Fixed leak in timeline_admire(). 2025-12-18 08:41:28 +01:00
grunfink 7c065cbc98 Fixed some xs_dup() leaks. 2025-12-18 08:09:10 +01:00
violette 85ed0eb0d5 Added emoji reactions (contributed by violette). 2025-12-18 07:58:24 +01:00
rako a45c1ce152 Fix user matching
In order to be a proper prefix, the actor url must end with a '/'
otherwise it can match another user that starts with the same prefix:
for example 'testuser' will match anything made by 'testuser2'
2025-11-30 21:19:13 +01:00
grunfink 46bb87c2b5 Moved is_msg_mine() to data.c. 2025-11-29 06:17:27 +01:00
grunfink 1a42fdc8bd Keep track of deleted users and return 410 Gone for them. 2025-10-24 05:02:28 +02:00
grunfink 212284c792 xs_http.h: new file. 2025-10-13 13:07:06 +02:00
grunfink ab698c2bd6 Merge pull request 'implementing scopes' (#474) from byte/snac2:feature/visibility into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/474
2025-09-28 15:46:56 +02:00
grunfink cddb2724d5 New function actor_failure() (again, but much better). 2025-09-28 14:40:24 +02:00
grunfink 5d95ffa9f6 Revert "New function actor_failure()."
This reverts commit 335b90a9d1.
2025-09-28 14:37:07 +02:00
grunfink 335b90a9d1 New function actor_failure(). 2025-09-28 14:26:18 +02:00
byte dcf5acaf53 implementing visibility scopes 2025-09-20 17:16:54 +02:00
grunfink b276667224 Set default max_failing_days to 15 days. 2025-09-13 09:37:14 +02:00
grunfink eb8c96f06f New configuration directive 'max_failing_days'. 2025-09-13 08:13:11 +02:00
grunfink f971a59599 Fixed bug in instance_failure() path. 2025-09-12 21:56:53 +02:00
grunfink 08f99232e0 New function instance_failure(). 2025-09-12 21:48:34 +02:00
grunfink 7796bf39f0 Always do a deferred fsck at startup. 2025-09-07 08:30:18 +02:00
grunfink ef701e8bb4 Changed fsck debug level. 2025-09-07 08:19:20 +02:00
grunfink c541296f25 New command-line option 'fsck'. 2025-09-07 08:03:38 +02:00
grunfink 5693c81d69 Always add a user's posts to the public timeline, even if it's not really public. 2025-09-03 21:20:59 +02:00
grunfink 43740810cd Revert "Also keep a 'personal' folder for better organization."
This reverts commit 0c3665fc49.
2025-09-03 20:48:31 +02:00
grunfink 0c3665fc49 Also keep a 'personal' folder for better organization. 2025-09-03 19:36:33 +02:00
grunfink 4661d7f5bc Renamed function list_content() to list_members(). 2025-09-03 06:38:07 +02:00
grunfink d40e47f709 New function enqueue_collect_outbox(). 2025-09-03 06:12:50 +02:00
grunfink ff52f779b7 New function enqueue_collect_replies(). 2025-08-18 19:54:53 +02:00
grunfink 5885589e58 content_search() also looks in the attributedTo field. 2025-08-12 11:31:23 +02:00
grunfink 3ffb539482 New function unhide(). 2025-08-03 21:00:36 +02:00
grunfink 375b787154 New server knob 'propagate_local_purge'. 2025-07-30 18:07:12 +02:00
grunfink 92f44e07cf New function delete_purged_posts(). 2025-07-25 18:44:04 +02:00
grunfink 9b134e9076 Added 'alias' and 'alias_raw' as forced update in user_persist(). 2025-06-18 09:00:09 +02:00
grunfink f580014c50 Renamed webhook 'inReplyTo' to 'reply'. 2025-06-16 18:24:47 +02:00
grunfink d87d294b7d In enqueue_notify_webhook(), also add the inReplyTo object if there is one. 2025-06-16 18:16:45 +02:00
grunfink c8848f6e9f More webhook checks. 2025-05-30 19:59:40 +02:00
grunfink 706816b432 Added uid, basedir and baseurl to the notify webhook message. 2025-05-30 19:43:55 +02:00
grunfink f055c8b694 Added a new server knob disable_notify_webhook. 2025-05-30 19:34:11 +02:00
grunfink 5a2aef8666 More notify_webhook work. 2025-05-30 12:12:19 +02:00
grunfink c8f6e1865d New function enqueue_notify_webhook(). 2025-05-30 11:30:37 +02:00
grunfink 5bc4511594 New function timeline_here(). 2025-05-27 21:14:23 +02:00
grunfink 631e44a64a Renamed timeline_here() to timeline_here_by_md5(), as it always should have been. 2025-05-27 21:08:57 +02:00
shtrophic 11b4a46d54 Increase verbosity for srv_debug() in tag_index() 2025-05-25 11:38:15 +02:00
grunfink 56816b3051 Minor memory leak fixes. 2025-05-22 11:18:48 +02:00
grunfink 096bb21710 Merge pull request 'use utf-8 lowercase function for tags #396' (#400) from postscriptum/snac2:utf8-lower-tags into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/400
2025-05-22 11:15:07 +02:00
postscriptum e567736640 add missed replacement to the content_match function 2025-05-22 04:16:28 +03:00