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