Hello earthlings!
Here's the v0.3.4 Salacious Sloth release of GoToSocial that all the cool kids have been talking about!
This is the tenth ALPHA release of GoToSocial 🎆
Highlights
- Unused avatars and headers are cleaned up now, in addition to old media attachments. This will lead to some disk space savings :)
- We did a lot of performance improvements in this release! Things will feel nippier in general thanks to improved database indexes.
- We tightened up some of the block checking logic, so you should see fewer posts mentioning or replying to domains or accounts that you have blocked.
- We have a new endpoint for manually triggering media cleanup, check the swagger docs :)
- Custom emojis endpoint is now implemented. We don't yet federate custom emojis, but this brings us a step closer to that functionality.
Migration notes
This release adds a couple of indexes to the database during a migration step. You don't need to do anything special for this, just let it run (it will likely take less than a minute), and don't interrupt it.
Detailed Changelog
Features
- caa0cde [feature] implement custom_emojis endpoint (#563)
- b915a41 [feature] Basic config validation (#562)
- b143877 [feature] Unused avatar and header cleanup (#574)
- 6e947ff [feature] Media cleanup endpoint (#560)
Performance
- 1cdc163 [performance] Don't retry/backoff invalid http requests that will never succeed (#609)
- 0f01f72 [performance] Bump default workers to CPUs * 2 (#608)
- f4b0d76 [performance] Add further indexes to mitigate laggy queries (#586)
Bug fixes
- 5668ce1 [bugfix] Fix HTML escaping in instance title (#607)
- 196d542 [bugfix] Don't serialize instance account if not set (#603)
- 2d748a6 [bugfix] Only search remote if protocol is http(s) (#601)
- 21557c9 [bugfix] Set refetch to true in iterateDescendants (#600)
- f0c9f41 [bugfix] Fix multiple dereferences of boosted status causing media duplication (#589)
- f5a4f43 [bugfix] Fix
error extracting status content: no content found
(#598) - a09e101 [bugfix] If status URL is empty, use URI instead and don't log unnecessary error (#597)
- 62d4d75 [bugfix] Stop some statuses from being home timelined when they shouldn't be (#585)
- b2810fe [bugfix] Clean up boosts of status when the status itself is deleted (#579)
Security
- f848aaa [security] Set SameSite to
strict
instead of browser default (#606) - 469da93 [security] Check all involved IRIs during block checking (#593)
- 223025f [security] transport.Controller{} and transport.Transport{} security and performance improvements (#564)
Chores
- a54efa0 [chore] Serialize times as UTC ISO8601 instead of RFC3339 (#602)
- 5ef41ba [chore] Timeline test updates (#578)
- 27a3c1d testrig: override bind address from environment variable (#577)
- 4ac508f [chore] Update LE server to use copy of main http.Server{} to maintain server timeouts etc (#571)
- 9f2a2ab [bugfix] update syslog tests to listen/connect specifically to ipv4 loopback (#561)
Documentation
- 1461adf [docs] document a checklist for how to go about a release (#592)
- d6abe10 [docs] Add Caddy instructions to the documentation (#594)
- 6838b32 [docs] Mention
AmbientCapabilities=CAP_NET_BIND_SERVICE
in example systemd service (#576) - 545b16a [documentation] Nlnet application (#572)