Skip to content

v0.11.0-rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@gotosocialorg gotosocialorg released this 11 Aug 13:31
· 881 commits to main since this release
a1768a8

Hello comrades!

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

It's got a lot of stuff in it (when do our releases not have a lot of stuff in them?), so, we hope you like stuff!

important if you're using a non-proxying S3 setup, please use the second release candidate instead: https://github.com/superseriousbusiness/gotosocial/releases/tag/v0.11.0-rc2

Release highlights

We're making a habit of finally getting around to implementing features that people have been asking for forever. In this spirit, the following things are now implemented:

  • Hashtags! Wow, finally! You can write a post with hashtags, and that post will be federated out with those hashtags set on the post. It's like magic! And that's not all, no no, posts will federate in with the correct hashtags set on them as well, so you can view posts using that hashtag in your client application of choice. This won't retroactively apply for all posts sitting in your database, see the note about hashtags below under migration notes for more details.
  • Account notes! You can now set, view, and unset your own private notes on accounts (depending on what client you're using).
  • Markers! Client applications can now set and retrieve markers for timeline paging.
  • List replies policies now work as they should!
  • Lots of performance stuff: we tweaked our cacheing configuration, increased the amount of concurrent database connections that sqlite can use, and more. Things oughta feel a teensy bit faster :)

Migration notes

Upgrading

To upgrade to 0.11.0-rc1 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.11.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.10.0...v0.11.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!

Hashtags

Where are all the hashtags??

This update does not cause all hashtagged statuses currently in your database to show up in hashtag timelines, because that would require a large + annoying database migration with a huge amount of calls to remote instances all at once.

Instead, from this release onwards, your instance will begin to process hashtags correctly on new posts that it sees after you upgrade.

Your instance will also update existing posts that it sees again (because of boosts, or status searches, replies, etc) with appropriate hashtags.

In other words, don't expect to see a busy and bustling hashtag timeline immediately; it will populate over time!

Why can't I view hashtags at https://[my-instance]/tags/some_hashtag in my browser?

Simply put, we haven't decided yet whether we want to expose all hashtagged posts on a web page like Mastodon and other servers do. You can view hashtag timelines in your client, but it didn't feel right to start showing other people's posts on a hashtag web page that just anyone can access without authentication. We're still figuring out the best thing to do for those hashtag web endpoints that your instance now has :)

Detailed changelog

Features + performance

  • 3aedd93 [feature] Set Content-Security-Policy header (#2095)
  • 91cbcd5 [performance] remove last of relational queries to instead rely on caches (#2091)
  • 9770d54 [feature] List replies policy, refactor async workers (#2087)
  • 0f81274 [feature] Allow full BCP 47 in language inputs (#2067)
  • 9a291de [performance] add caching of status fave, boost of, in reply to ID lists (#2060)
  • 00adf18 [feature] simpler cache size configuration (#2051)
  • 2be83fd [feature] Allow users to skip http client tls verification for testing purposes (with appropriately loud warnings) (#2052)
  • 9bd03e1 [feature] Set timezone in Docker using TZ env variable (#2050)
  • 2796a2e [feature] Hashtag federation (in/out), hashtag client API endpoints (#2032)
  • ed2477e [performance] cache follow, follow request and block ID lists (#2027)
  • b874e92 [feature] Implement markers API (#1989)
  • 22ac460 [feature] Support setting private notes on accounts (#1982)
  • 5f3e095 [performance] retry db queries on busy errors (#2025)
  • 9eff0d4 [feature/performance] support uncaching remote emoji + scheduled cleanup functions (#1987)
  • f8f0312 [feature] Report Masto version in /api/v1/instance (#1977)
  • da82820 [feature] Lower remote media cache config duration (#2007)

Bugfixes

  • a1768a8 [bugfix] Suppress 'errNoEntries' warnings from InboxForwarding function call (#2102)
  • dc99e9e [bugfix] Fix using wrong key for clientID during oauth callback (#2101)
  • dc96562 [bugfix] Use custom bluemonday policy to disallow inline img tags (#2100)
  • a26af13 [bugfix] Populate followReq before accessing targetaccount pointer (#2099)
  • 5588d4e [bugfix] Use length in runes when trimming for RSS (#2094)
  • dbf487e [bugfix] Fix incorrect per-loop variable capture (#2092)
  • 0ddc2ed [bugfix] only set content-length AFTER rewinding body bytes (#2086)
  • 3920bc8 [bugfix] don't accept unrelated statuses (#2078)
  • 6f4ae8f [bugfix] update cache library with nil ptr fix (#2070)
  • e8a20f5 [bugfix] Rework MultiError to wrap + unwrap errors properly (#2057)
  • 2cee8f2 [bugfix] fix slow accounts / statuses using emojis lookups (#2056)
  • 24516b8 [bugfix] handle HEAD requests more elegantly (#2055)
  • cec29e2 [bugfix] Allow instance accounts to be shown in search results in certain circumstances (#2053)
  • de148e9 [bugfix/frontend] Decode URI component domain before showing on frontend (#2043)

Chores + version bumps

  • 992c7ce [chore] Add test to ensure show_reblogs on follow works as expected (#2093)
  • 4b05dcd [chore] Update robots.txt, give chatgpt the middle finger (#2085)
  • 9df4d38 [chore] Add Feditext as recommended client (#2081)
  • be3718f [chore] Use generic pointer function (#2080)
  • 517829a [chore]: Bump github.com/tdewolff/minify/v2 from 2.12.7 to 2.12.8 (#2073)
  • 303a6a6 [chore]: Bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 (#2076)
  • cc69250 [chore]: Bump github.com/abema/go-mp4 from 0.11.0 to 0.12.0 (#2075)
  • 0242f03 [chore]: Bump golang.org/x/crypto from 0.11.0 to 0.12.0 (#2077)
  • aaa5985 [chore]: Bump golang.org/x/image from 0.9.0 to 0.11.0 (#2074)
  • c1375ca [chore] Remove go-playground/validator (#2069)
  • a5a80b4 [chore]: Bump github.com/abema/go-mp4 from 0.10.2-0.20230727031202-a1a707db6ecd to 0.11.0 (#2042)
  • 9ed9d96 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.60 to 7.0.61 (#2041)
  • cf4bd70 [chore] Update activity dependency (#2031)
  • e747c14 [chore] fix merge issue (#2029)
  • 98c2b8f [chore] update go-mp4 to latest commit (#2028)
  • 81fe59d [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.24 to 1.0.25 (#2021)
  • b05f6c8 [chore]: Bump github.com/yuin/goldmark from 1.5.4 to 1.5.5 (#2023)
  • c9f3539 [chore]: Bump codeberg.org/gruf/go-cache/v3 from 3.4.1 to 3.4.3 (#2022)
  • 8b71567 [chore]: Bump github.com/jackc/pgconn from 1.14.0 to 1.14.1 (#2024)
  • b7891bb [chore]: Bump go.uber.org/automaxprocs from 1.5.2 to 1.5.3 (#2020)
  • 994d5e8 [chore] Disable the right webfinger test (#2018)
  • 5a29a03 [chore] Admin CLI + new account creation refactoring (#2008)
  • 43a2753 [chore]: Bump modernc.org/sqlite from 1.23.1 to 1.24.0 (#1993)
  • fa57c69 [chore]: Bump github.com/jackc/pgx/v5 from 5.4.1 to 5.4.2 (#1991)
  • 8313998 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.59 to 7.0.60 (#1992)
  • d53449c [chore]: Bump github.com/go-playground/form/v4 from 4.2.0 to 4.2.1 (#1994)
  • 8ac3a3f Bump word-wrap from 1.2.3 to 1.2.4 in /web/source (#2001)

Documentation