Hey nerds! :tulip: :sloth: :cherry_blossom:
First spring time release of GoToSocial, here's version 0.15.0 Shagadelic Sloth!
Release highlights
- Incoming and outgoing Move Activities are now processed properly. This means you will automatically follow other people when they move their accounts, and you can also Move your own account from your GtS instance to somewhere else, or move your account from somewhere else to your GtS instance!
User docs here: https://docs.gotosocial.org/en/latest/user_guide/settings/#migration
Federation docs (for devs) here: https://docs.gotosocial.org/en/latest/federation/federating_with_gotosocial/#actor-migration-aliasing - You can hide your followers and following collections now! When hidden, your followers/following count will no longer appear on your profile, and your collections of followers/following will be hidden from other servers (and other accounts on your server).
User docs here: https://docs.gotosocial.org/en/latest/user_guide/settings/#hide-who-you-follow-are-followed-by - V1 Filter support! Depending on the client you're using, you will now be able to add filters to hide certain phrases from your timeline.
- Preset user-selectable CSS themes are here! In the settings page, you can now choose a theme for your profile, which will change how it appears in the web view of your account! For now we added 5 different themes to choose from, screenshots below!
User docs: https://docs.gotosocial.org/en/latest/user_guide/settings/#select-theme
Docs for admins (how to add your own themes to your instance): https://docs.gotosocial.org/en/latest/admin/themes/
Blurple light: Light blue/purple/pink theme.
Blurple dark: Dark blue/purple theme.
Midnight trip: chunky purple and neon-green theme with magenta ombre.
Soft: a light pink, blue, and white theme.
Sunset: yellow / orange / aubergine theme with a sunset ombre.
Migration notes
Upgrading
To upgrade to 0.15.0 from a previous release:
Binary/tar
- Stop GoToSocial
- Untar the new release, including the web assets and html templates.
- Edit your config.yaml file as necessary (see below).
- Start GoToSocial
Docker
- Stop GoToSocial.
- Pull the new docker container (
superseriousbusiness/gotosocial:0.15.0
orsuperseriousbusiness/gotosocial:latest
) - Start GoToSocial.
config.yaml
No config file changes in this release compared to 0.14.2.
Database Migrations
⚠️ This release contains several database migrations which will run the first time you start up this new version. Be sure not to interrupt this migration process. This will take anywhere between a couple seconds and ten minutes or more (on slower hardware). Please be patient! ⚠️
Detailed changelog
Features / performance
- [feature] Filters v1 by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2594
- [feature/chore] Add Move database functions + cache by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2647
- [feature] Process incoming
Move
activity by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2724 - [feature] Process outgoing Move from clientAPI by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2750
- [feature] Add healthcheck endpoints
/livez
and/readyz
by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2783 - [feature] User-selectable preset CSS themes for accounts by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2777
- [feature] Add
enable
command to mirror existingdisable
command; update docs by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2792 - [feature] Option to hide followers/following by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2788
Bugfixes
- [chore/bugfix] Little DB fixes by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2726
- [bugfix] Fix Swagger spec and add test script by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2698
- [bugfix] add workaround for Xsqlite_interrupt() permanently breaking connection by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2731
- [bugfix] Don't error when populating MovedTo if account not found by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2741
- [bugfix] Fix whitespace move_id issue by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2742
- [bugfix] bump modernc.org/sqlite to fixed version (v1.28.0 -> v1.29.4) by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2749
- [bugfix] only check replyTo visibility during permission checks IF status is local by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2757
- [bugfix] Don't return 500 when searching for unpermitted status by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2753
- [bugfix] Parse links that contain non-ascii characters by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2762
- [bugfix] add all possible busy result codes to the sqlite errBusy catching check by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2775
- [bugfix] Mitigate empty public/local timeline query pages by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2784
- [bugfix] Serve correct URI for AP following collection by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2787
- [bugfix] httpclient not signing subsequent redirect requests by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2798
- [bugfix] set the host header within the signing transport by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2799
- [bugfix] Set domain for empty-domain Friendica accounts by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2800
- 6db7d014d [bugfix] Ensure side effects for local -> local follows get processed (#2820)
- 85bc140b5 [bugfix] temporarily replace
modernc.org/sqlite-v1.29.5
withgitlab.com/NyaaaWhatsUpDoc/sqlite-v1.29.5-concurrency-workaround
(#2811) - 83e7847cd [bugfix] fix possible nil panic (#2809)
- 8ed1b8142 [bugfix] Sort follows chronologically (#2801)
- 15ede4c1e [bugfix] improved authenticate post inbox error handling (#2803)
Chores / version bumps
- [chore] Fix a Swagger warning that only manifests during Go client code generation by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2729
- [chore] Downgrade sqlite v1.29.2 -> v1.28.0 by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2736
- [chore] seperate snapshot from release in goreleaser by @CDN18 in https://github.com/superseriousbusiness/gotosocial/pull/2740
- [chore]: Bump github.com/gin-contrib/cors from 1.5.0 to 1.7.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2745
- [chore]: Bump github.com/jackc/pgx/v5 from 5.5.3 to 5.5.5 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2747
- [chore]: Bump github.com/go-jose/go-jose/v3 from 3.0.1 to 3.0.3 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2733
- [chore]: Bump github.com/minio/minio-go/v7 from 7.0.67 to 7.0.69 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2748
- [chore] Update usage of OTEL libraries by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/2725
- [chore] Expose move endpoint again, small settings panel fixes by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2752
- [chore] Different error message for email validation from net/mail parsing on go 1.21.8 and above by @blakesmith in https://github.com/superseriousbusiness/gotosocial/pull/2760
- [chore]: Bump github.com/technologize/otel-go-contrib from 1.1.0 to 1.1.1 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2765
- [chore]: Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2766
- Bump follow-redirects from 1.15.4 to 1.15.6 in /web/source by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2763
- [chore]: Bump github.com/tdewolff/minify/v2 from 2.20.18 to 2.20.19 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2767
- [chore]: Bump modernc.org/sqlite from 1.29.4 to 1.29.5 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2768
- [chore] Move local account settings to separate db table by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2770
- [chore]: Bump github.com/gin-contrib/gzip from 0.0.6 to 1.0.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2781
- [chore]: Bump github.com/gin-contrib/cors from 1.7.0 to 1.7.1 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2778
- [chore]: Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.10.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2779
- [chore]: Bump github.com/gin-contrib/sessions from 0.0.5 to 1.0.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2782
- [chore/frontend] Adjust contrast, mute blurple a bit (meta update: blurple nerfed) by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2785
- Bump express from 4.18.2 to 4.19.2 in /web/source by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/2790
- [chore] Vendor mkdocs fonts; update docs dependencies by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2789
- [chore] bump go structr cache version -> v0.6.0 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2773
- [chore] Try to parse public key as both Actor + bare key by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2710
- 15733cddb [chore]: Bump github.com/yuin/goldmark from 1.7.0 to 1.7.1 (#2819)
- 4d16c3ada [chore]: Bump golang.org/x/oauth2 from 0.18.0 to 0.19.0 (#2816)
- 236604bd6 [chore] Log less output on failed test (#2804)
Docs
- [docs/chore] Swagger fixes for filters by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2730
- [docs] Add note about privileged ports by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2735
- Swagger: add Link header to all endpoints that use it for paging by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2751
- [docs] Add database maintenance section; update info message on ANALYZE run (sqlite) by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/2756
- Swagger: correct names and formats for several array params by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2758
- Swagger: add missing paging params to bookmarks list by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/2759
- [docs] Add IPv6 example for rate limit exceptions by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/2761
- e20c7c21e [docs] update deployment considerations docs with latest findings (#2821)
New Contributors
- @CDN18 made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/2740
- @blakesmith made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/2760
Full Changelog: https://github.com/superseriousbusiness/gotosocial/compare/v0.14.2...v0.15.0