summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Version 2.88 RELEASED.HEAD2.88masterGravatar grunfink30 hours1-1/+1
|
* Updated RELEASE_NOTES.Gravatar grunfink30 hours1-1/+1
|
* Fixed typo.Gravatar grunfink46 hours1-2/+1
|
* Updated RELEASE_NOTES.Gravatar grunfink2 days1-0/+2
|
* Updated documentation.Gravatar grunfink2 days1-0/+2
|
* Merge pull request 'Implement metadata stripping for uploaded photos and ↵Gravatar grunfink2 days4-2/+176
|\ | | | | | | | | | | videos' (#515) from draga79/snac2:master into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/515
| * Implement metadata stripping for uploaded videosGravatar Stefano Marinelli8 days2-16/+106
| | | | | | | | | | | | | | | | | | - Extend `strip_media` to support video files using `ffmpeg`. - Use `ffmpeg -map_metadata -1 -c copy` to strip global metadata. - Support formats: mp4, m4v, mov, webm, mkv, avi. - Add `ffmpeg_path` configuration option. - Implement robust relative path handling (`user/` heuristic) to support jailed environments. - Enforce strict checks on startup: fail if tools (mogrify/ffmpeg) are missing when enabled.
| * Implement configurable EXIF stripping for uploaded mediaGravatar Stefano Marinelli8 days4-2/+86
| | | | | | | | | | | | | | | | | | - 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`.
* | Revert "Updated documentation."Gravatar grunfink2 days1-2/+0
| | | | | | | | This reverts commit cef1d7a176b7603491dfec3f394c1b34bf765f2c.
* | Move the pronouns closer to the account name.Gravatar grunfink2 days1-15/+16
| |
* | Added emoji categories.Gravatar violette2 days4-11/+44
| |
* | Updated documentation.Gravatar grunfink2 days1-1/+11
| |
* | Updated RELEASE_NOTES.Gravatar grunfink2 days1-0/+2
| |
* | mastoapi: also return children of children.Gravatar violette2 days1-17/+34
| |
* | Strip all HTML tags from pronouns.Gravatar grunfink2 days1-3/+2
| |
* | Updated RELEASE_NOTES.Gravatar grunfink2 days1-0/+2
| |
* | Minor tweak.Gravatar grunfink2 days1-4/+6
| |
* | Use the metadata pronouns.Gravatar violette2 days3-0/+40
| |
* | Updated RELEASE_NOTES.Gravatar grunfink2 days1-0/+2
| |
* | Merge pull request 'user-specified word mutes and matching' (#518) from ↵Gravatar grunfink2 days2-1/+96
|\ \ | | | | | | | | | | | | | | | byte/snac2:user_mutes into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/518
| * | user-specified word mutes and matchingGravatar byte3 days2-1/+96
|/ /
* | Updated RELEASE_NOTES.Gravatar grunfink4 days1-0/+2
| |
* | Updated documentation.Gravatar grunfink4 days1-0/+3
| |
* | New command-line option top_ten.Gravatar grunfink4 days5-9/+102
| |
* | New file xs_list_tools.h.Gravatar grunfink4 days3-1/+171
| |
* | Also disable EmojiReact notifications, if so configured.Gravatar grunfink6 days1-0/+3
| |
* | Updated documentation.Gravatar grunfink6 days1-0/+2
| |
* | Updated RELEASE_NOTES.Gravatar grunfink6 days1-0/+4
| |
* | Don't show the EmojiReact dropdown if disabled.Gravatar grunfink6 days1-1/+1
| |
* | Don't show any EmojiReactions if they are disabled.Gravatar grunfink6 days1-1/+1
| |
* | If disable_emojireact is set to true in server.json, EmojiReacts are dropped ↵Gravatar grunfink6 days1-0/+5
| | | | | | | | on input.
* | Fixed crash.Gravatar grunfink8 days1-1/+1
| |
* | Version 2.87 RELEASED.2.87Gravatar grunfink8 days1-1/+1
| |
* | Updated RELEASE_NOTES.Gravatar grunfink8 days1-0/+4
| |
* | mastoapi: hide EmojiReacts from muted actors and block instances.Gravatar grunfink8 days1-0/+4
| |
* | Hide EmojiReacts from muted actors and blocked instances.Gravatar grunfink8 days1-0/+4
|/
* Version 2.86 RELEASED.2.86Gravatar grunfink9 days1-1/+1
|
* Updated RELEASE_NOTES.Gravatar grunfink9 days1-1/+1
|
* Bumped copyright year.Gravatar grunfink13 days39-40/+42
|
* truncate rss title at utf8 char boundaryGravatar Alexandre Oliva13 days2-1/+11
| | | | | Advance a whole utf8 char at a time while looking for where to truncate the title.
* Add boosts, likes and reacts to actor's people pageGravatar Alexandre Oliva13 days1-4/+24
| | | | | | | | | | | | | | | | | | | Show in an actor's page anything that the user could have seen from actor in timeline or notifications, namely: - posts by actor (use get_atto to identify the actor) - boosts by actor - user's posts with likes or emojireacts by actor That said, in this view, only the latest boost is shown for a post, so it might not seem like the boost is by actor. Likes and emojireacts aren't even shown, so the reason why a post appears might be puzzling. Use timeline_simple_list, since we don't show entire conversations, and we want to identify all posts with actor's interactions. Saturate show at max_timeline_entries, so that we don't silently skip entries.
* Updated RELEASE_NOTES.Gravatar grunfink2025-12-301-1/+1
|
* Fixed indentation in previous patch (my fault).Gravatar grunfink2025-12-301-1/+2
|
* Add posts by actor to people pageGravatar Alexandre Oliva2025-12-301-7/+78
| | | | | | | | | | | | | Select posts by the actor from the given timeline range. Since posts by the actor may be very sparse in the timeline, add a "More (x 10)" button to bump the show count, that controls how many timeline posts we'll filter *from*. We could conceivably keep searching the timeline until we find as many posts as requested or reach the end, but that could take a very long time. Just filtering the given ranges is much simpler, and probably sufficiently intuitive despite the potential initial surprise.
* introduce separate people/ pagesGravatar Alexandre Oliva2025-12-282-3/+52
| | | | | | | | | | | When you have lots of followers or followees or pending follows, constructing the entire people page to look up information about a single user can take a while and be quite wasteful when you want to look up a single user. Introduce and prefer people/<md5> over people#<md5>. While at that, fix a memory leak in webfinger search: the empty list was allocated twice.
* Merge pull request 'Update pt_BR translation' (#511) from ↵Gravatar grunfink2025-12-261-6/+6
|\ | | | | | | | | | | daltux/snac2:pt_BR-6 into master Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/511
| * Merge remote-tracking branch 'origin/master' into pt_BR-6Gravatar Daltux2025-12-263-44/+48
| |\
| * | Update pt_BR translationGravatar Daltux2025-12-261-6/+6
| | |
| * | Update pt_BR translationGravatar Daltux2025-12-211-6/+6
| | |
* | | Fixed failed search when blank surround the query string.Gravatar grunfink2025-12-261-1/+7
| | | | | | | | | | | | This time, without fucking up everything.