github superseriousbusiness/gotosocial v0.18.0-rc1

pre-release19 hours ago

Here's the first release candidate of GoToSocial v0.18.0!

Please read the migration notes carefully for instructions on how to upgrade to this version. This version contains several very long migrations so you will need to be patient when upgrading, and backup your database first!!

Release highlights

  • Status edit support: one of our most-requested features! You can now edit your own statuses, and see instance edit history from other accounts too (if your instance has them stored).
  • Push notifications: probably the second most-requested feature! GoToSocial can now send push notifications to clients via their configured push providers.
    You may need to uninstall / reinstall client applications, or log out and back in again, for this feature to work. (And if you're using Tusky, make sure you've got ntfy installed).
  • Global instance css customization: admins can now apply custom CSS across their entire instance via the settings panel.
  • Domain permission subscriptions: it's now possible to configure your instance to subscribe to CSV, JSON, or plaintext lists of domain permissions.
    Each night, your instance will fetch and automatically create domain permissions (or permission drafts) based on what it finds in a subscribed list.
    See the domain permission subscription documentation for more information.
  • Trusted-proxies helper: instances with improperly configured trusted-proxies settings will now show a warning on the homepage, so admins can make sure their instance is configured correctly.
  • Better outbox sorting: messages from GoToSocial are now delivered more quickly to people you mention, so conversations across instances should feel snappier.
  • Log in button: there's now a login button in the top right of the instance homepage, which leads to a helpful page about clients, with a link to the settings panel. Should make things less confusing for new users!
  • Granular stats controls: with the instance-stats-mode setting, admins can now choose if and how their instance serves stats via the nodeinfo endpoints. Existing behavior from v0.17.0 is the default.

Migration notes

Upgrading

To upgrade to v0.18.0-rc1 from a previous release:

Binary/tar

  1. Stop GoToSocial.
  2. Back up your database! If you're running on SQLite, this is as simple as copying your sqlite.db file, eg., cp sqlite.db sqlite.db.backup.
  3. Download and untar the new release, including the web assets and html templates.
  4. Edit your config.yaml file if necessary (see below).
  5. Start GoToSocial.
  6. Wait patiently for any migrations to run, do not interrupt migrations or you could leave your db in a broken state and will have to restore from backup!
  7. Enjoy your updated instance.

Docker

  1. Stop GoToSocial.
  2. Back up your database! If you're running on SQLite, this is as simple as copying your sqlite.db file, eg., cp sqlite.db sqlite.db.backup.
  3. Pull the new docker container (superseriousbusiness/gotosocial:0.18.0-rc1 or superseriousbusiness/gotosocial:latest)
  4. Edit your config.yaml file or environment variables if necessary (see below).
  5. Start GoToSocial.
  6. Wait patiently for any migrations to run, do not interrupt migrations or you could leave your db in a broken state and will have to restore from backup!
  7. Enjoy your updated instance.

config.yaml

The configuration file has changed since the previous release.

  • Added instance-subscriptions-process-from.
  • Added instance-subscriptions-process-every.
  • Added instance-stats-mode.

You can see a diff of the config file here: v0.17.3...v0.18.0-rc1#diff-c071e03510b2c57e193a44503fd9528a785f0f411497cc75841a9f8d0b1ac622

Database Migrations

⚠️⚠️⚠️

This release may contain 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 up to an hour or more (on slower hardware).

Please be patient!

⚠️⚠️⚠️

Which release archive/container should I use?

GoToSocial releases binary builds for 64-bit Linux, FreeBSD, and NetBSD operating systems. We also release Docker builds for 64-bit Linux.

OS Architecture Support level Binary archive Docker
Linux x86-64/AMD64 (64-bit) 🟢 Full linux_amd64.tar.gz superseriousbusiness/gotosocial:0.18.0-rc1
Linux Armv8/ARM64 (64-bit) 🟢 Full linux_arm64.tar.gz superseriousbusiness/gotosocial:0.18.0-rc1
FreeBSD x86-64/AMD64 (64-bit) 🟢 Full freebsd_amd64.tar.gz Not provided
FreeBSD Armv8/ARM64 (64-bit) 🟢 Full freebsd_arm64.tar.gz Not provided
NetBSD x86-64/AMD64 (64-bit) 🟢 Full netbsd_amd64.tar.gz Not provided
NetBSD Armv8/ARM64 (64-bit) 🟢 Full netbsd_arm64.tar.gz Not provided

nowasm

For your convenience, we also provide UNSUPPORTED, EXPERIMENTAL BUILDS, created using the nowasm tag, in the downloads list below. There is no Docker build for nowasm.

GoToSocial releases built with nowasm use the Go-native, modernc version of SQLite instead of the WASM one, and will use on-system ffmpeg and ffprobe binaries for media processing.

Using a nowasm build is currently the only way to run GoToSocial on a 32-bit system.

For more information on running a nowasm build, see the nowasm documentation page.

Changelog

Features and performance

Bug fixes

Chores & version bumps

Documentation

Other

Don't miss a new gotosocial release

NewReleases is sending notifications on new releases.