Skip to content

v0.12.0-rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@gotosocialorg gotosocialorg released this 17 Oct 11:52
· 426 commits to main since this release
637f188

Hello!

Here's the first release candidate for version 0.12.0 of GoToSocial, codename SPAGHETTI SLOTH 🍝

Release highlights

This release brings initial support for different federation modes, starting with allowlist federation mode. You can now set your federation mode to allowlist, and then add and remove domain allows via the admin settings panel. You can read documentation on this feature here: https://docs.gotosocial.org/en/latest/admin/federation_modes/.

We revamped some other bits of the settings panel too, including adding a setting for the 'discoverable' flag, which is documented here: https://docs.gotosocial.org/en/latest/user_guide/settings/#mark-account-as-discoverable-by-search-engines-and-directories

And as usual we did a whole bunch of bug fixing, performance tweaks, and that sort of thing! It's a bit of a cliche to put that in release notes, but there you go.

We also started implementing some background functionality for poll support, but we didn't quite finish that in time for this release, so polls are not yet enabled. Next time!

Migration notes

Settings panel

You may get an error when using the new settings panel code for the first time, since we moved some stuff around. To resolve this, please try clearing cookies for the page using your browser settings, refreshing the page, and then logging in again.

Building frontend from source

If you build the frontend assets (settings panel, css, etc) yourself from source, please be aware that the instructions for building have changed slightly: https://github.com/superseriousbusiness/gotosocial/blob/main/CONTRIBUTING.md#stylesheet--web-dev

Upgrading

To upgrade to 0.12.0 from a previous release:

Binary/tar

  1. Stop GoToSocial
  2. Untar the new release, including the web assets and html templates.
  3. Edit your config.yaml file as necessary (see below).
  4. Start GoToSocial

Docker

  1. Stop GoToSocial.
  2. Pull the new docker container (superseriousbusiness/gotosocial:0.12.0-rc1 or superseriousbusiness/gotosocial:latest)
  3. Start GoToSocial.

config.yaml

The configuration file has changed since the previous release. You can see a diff of the config file here: v0.11.1...v0.12.0-rc1#diff-c071e03510b2c57e193a44503fd9528a785f0f411497cc75841a9f8d0b1ac622

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 (on slower hardware). Please be patient!

Detailed Changelog

Features + Performance

  • 637f188 [feature] Allow import/export/creation of domain allows via admin panel (#2264)
  • 6e50883 [performance] updates markdown parsing to reduce allocations in the same way as the plain text formatter (#2252)
  • c6e00af [feature] tentatively start adding polls support (#2249)
  • 736cd37 [frontend] Add discoverable flag to settings panel (#2235)
  • 0cce2c0 [feature] Block a bunch of "AI" crawlers (#2239)
  • 183eaa5 [feature] Implement explicit domain allows + allowlist federation mode (#2200)
  • fc11dee [feature] add paging to AP following / followers endpoints (#2198)
  • 7293d60 [feature] add paging to account follows, followers and follow requests endpoints (#2186)
  • 4b59451 [feature] Allow admins to expire remote public keys; refetch expired keys on demand (#2183)
  • 2cac5a4 [feature] Support Actor URIs for webfinger queries (#2187)
  • 14ef098 [feature] Support OTLP HTTP, drop Jaeger (#2184)
  • 5f10885 [feature] Don't trace non-existing routes (#2172)
  • 3ed1ca6 [feature] Store admin actions in the db, prevent conflicting actions (#2167)
  • 7b48437 [feature] list commands for both attachment and emojis (#2121)
  • 8f38dc2 [feature] Add rate limit exceptions option, use ISO8601 for rate limit reset (#2151)
  • 94d1663 [performance] Rework home timeline query to use cache more (#2148)
  • 4ae16bc [feature] Make log format configurable (#2130)
  • 638f023 [performance] Tweak media attachment cleanup; replace stale index (#2143)
  • 1e2db7a [feature/bugfix] Probe S3 storage for CSP uri, add config flag for extra URIs (#2134)
  • 92de8fb [feature] Instance rules (#2125)
  • 42bb352 [feature] Add snapshot binary builds + uploads (#2119)

Bugfixes

  • 2b6b9cd [bugfix] Fix paging for empty items (#2236)
  • b6b8f82 [bugfix] Move follow.show_reblogs check further up to avoid showing unwanted reblogs in home timeline (#2234)
  • 9f9fcf7 [bugfix] support both CollectionPage AND OrderedCollectionPage in status replies (#2220)
  • ba0a31d [bugfix] fix flakey paging test (#2210)
  • 916c6d0 [bugfix] fix checks for deref the same status descendants / ascendants (#2181)
  • 4eb77ff [bugfix] move SQLite pragmas into connection string (#2171)
  • 1ee99fc [bugfix] wrap bun.Tx to add our own error processing (#2169)
  • 083e8f3 [bugfix/frontend] Normalize header sizes (#2152)
  • d5d6ad4 [bugfix] fix double firing bun.DB query hooks (#2124)

Chores + version bumps

  • 48725f7 [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.25 to 1.0.26 (#2266)
  • 39e22a9 [chore]: Bump golang.org/x/net from 0.16.0 to 0.17.0 (#2262)
  • 37fe8ae [chore]: Bump golang.org/x/oauth2 from 0.12.0 to 0.13.0 (#2258)
  • 274dfb5 [chore]: Bump golang.org/x/image from 0.12.0 to 0.13.0 (#2256)
  • abd598e [chore]: Bump github.com/abema/go-mp4 from 1.0.0 to 1.1.1 (#2257)
  • 5aeceb5 [chore]: Bump golang.org/x/net from 0.15.0 to 0.16.0 (#2260)
  • d173fcd [chore] Convert some settings / admin panel JS to TypeScript (#2247)
  • 297b6ee [chore] internal/ap: add pollable AS types, code reformatting, general niceties (#2248)
  • a1ab2c2 [chore]: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.18.0 to 1.19.0 (#2246)
  • 118b546 [chore]: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#2244)
  • 21f0517 [chore]: Bump modernc.org/sqlite from 1.25.0 to 1.26.0 (#2243)
  • 088daef [chore]: Bump go.opentelemetry.io/otel/sdk from 1.18.0 to 1.19.0 (#2242)
  • 536d9e4 [chore/bugfix] Deinterface text.Formatter, allow underscores in hashtags (#2233)
  • 2a9927d [chore] Enable S256 code challenge (#2224)
  • e93cc7a [chore]: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#2221)
  • d45a75e [chore]: Bump golang.org/x/oauth2 from 0.11.0 to 0.12.0 (#2223)
  • 380d83f [chore]: Bump github.com/abema/go-mp4 from 0.13.0 to 1.0.0 (#2222)
  • 8f67dd5 [chore] deinterface the typeutils.Converter and update to use state structure (#2217)
  • 1b848aa [chore] fix typo in slice.go (#2219)
  • c6fdcd5 [chore]: Bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.17.0 to 1.18.0 (#2207)
  • f302ebb [chore]: Bump github.com/miekg/dns from 1.1.55 to 1.1.56 (#2204)
  • 50b713e [chore] bump bun (and related libraries) versions to v1.1.16 (#2209)
  • 7011f57 [chore] bump bun v1.1.14 -> v1.1.15 (#2195)
  • 23dd6f6 [chore]: Bump golang.org/x/net from 0.14.0 to 0.15.0 (#2193)
  • ecbce17 [chore]: Bump github.com/tdewolff/minify/v2 from 2.12.8 to 2.12.9 (#2194)
  • f0a3fca [chore]: Bump golang.org/x/crypto from 0.12.0 to 0.13.0 (#2190)
  • b093947 [chore] much improved paging package (#2182)
  • 9f2199f [chore] Add script for downloading latest snapshot tar.gz (#2157)
  • 4f3daee [chore]: Bump golang.org/x/image from 0.11.0 to 0.12.0 (#2178)
  • c0bddd2 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.62 to 7.0.63 (#2180)
  • ddd3c2e [chore]: Bump golang.org/x/text from 0.12.0 to 0.13.0 (#2177)
  • 2ec313a [chore]: Bump github.com/google/uuid from 1.3.0 to 1.3.1 (#2166)
  • e6407ec [chore]: Bump github.com/KimMachineGun/automemlimit from 0.2.6 to 0.3.0 (#2165)
  • 13f1c85 [chore/frontend] Make line-height a wee little bit bigger (#2159)
  • 70d87f0 [chore]: Bump codeberg.org/gruf/go-kv from 1.6.3 to 1.6.4 (#2142)
  • 59b5ed6 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.61 to 7.0.62 (#2141)
  • 36dceac [chore]: Bump github.com/yuin/goldmark from 1.5.5 to 1.5.6 (#2140)
  • e70629e [chore]: Bump github.com/jackc/pgx/v5 from 5.4.2 to 5.4.3 (#2112)
  • 5a4ceeb [chore]: Bump github.com/abema/go-mp4 from 0.12.0 to 0.13.0 (#2113)
  • 8f4b779 [chore]: Bump modernc.org/sqlite from 1.24.0 to 1.25.0 (#2114)
  • e9c3663 [chore] ensure worker contexts have request ID (#2120)

Docs