| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\
| |
| |
| |
| |
| | |
videos' (#515) from draga79/snac2:master into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/515
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
- 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.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
- 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`.
|
| | |
| |
| |
| | |
This reverts commit cef1d7a176b7603491dfec3f394c1b34bf765f2c.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | |
| | | |
byte/snac2:user_mutes into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/518
|
| |/ / |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
on input.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Advance a whole utf8 char at a time while looking for where to
truncate the title.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |\
| |
| |
| |
| |
| | |
daltux/snac2:pt_BR-6 into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/511
|
| | |\ |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This time, without fucking up everything.
|