Skip to content

Releases: superseriousbusiness/gotosocial

v0.15.0 Shagadelic Sloth

11 Apr 09:14
15733cd
Compare
Choose a tag to compare

Hey nerds! 🌷 🦥 🌸

First spring time release of GoToSocial, here's version 0.15.0 Shagadelic Sloth!

Release highlights

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

  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.15.0 or superseriousbusiness/gotosocial:latest)
  3. 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

Bugfixes

  • [chore/bugfix] Little DB fixes by @tsmethurst in #2726
  • [bugfix] Fix Swagger spec and add test script by @VyrCossont in #2698
  • [bugfix] add workaround for Xsqlite_interrupt() permanently breaking connection by @NyaaaWhatsUpDoc in #2731
  • [bugfix] Don't error when populating MovedTo if account not found by @tsmethurst in #2741
  • [bugfix] Fix whitespace move_id issue by @tsmethurst in #2742
  • [bugfix] bump modernc.org/sqlite to fixed version (v1.28.0 -> v1.29.4) by @NyaaaWhatsUpDoc in #2749
  • [bugfix] only check replyTo visibility during permission checks IF status is local by @NyaaaWhatsUpDoc in #2757
  • [bugfix] Don't return 500 when searching for unpermitted status by @tsmethurst in #2753
  • [bugfix] Parse links that contain non-ascii characters by @tsmethurst in #2762
  • [bugfix] add all possible busy result codes to the sqlite errBusy catching check by @NyaaaWhatsUpDoc in #2775
  • [bugfix] Mitigate empty public/local timeline query pages by @tsmethurst in #2784
  • [bugfix] Serve correct URI for AP following collection by @tsmethurst in #2787
  • [bugfix] httpclient not signing subsequent redirect requests by @NyaaaWhatsUpDoc in #2798
  • [bugfix] set the host header within the signing transport by @NyaaaWhatsUpDoc in #2799
  • [bugfix] Set domain for empty-domain Friendica accounts by @tsmethurst in #2800
  • 6db7d01 [bugfix] Ensure side effects for local -> local follows get processed (#2820)
  • 85bc140 [bugfix] temporarily replace modernc.org/sqlite-v1.29.5 with gitlab.com/NyaaaWhatsUpDoc/sqlite-v1.29.5-concurrency-workaround (#2811)
  • 83e7847 [bugfix] fix possible nil panic (#2809)
  • 8ed1b81 [bugfix] Sort follows chronologically (#2801)
  • 15ede4c [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 #2729
  • [chore] Downgrade sqlite v1.29.2 -> v1.28.0 by @tsmethurst in #2736
  • [chore] seperate snapshot from release in goreleaser by @CDN18 in #2740
  • [chore]: Bump github.com/gin-contrib/cors from 1.5.0 to 1.7.0 by @dependabot in #2745
  • [chore]: Bump github.com/jackc/pgx/v5 from 5.5.3 to 5.5.5 by @dependabot in #2747
  • [chore]: Bump github.com/go-jose/go-jose/v3 from 3.0.1 to 3.0.3 by @dependabot in #2733
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.67 to 7.0.69 by @dependabot in #2748
  • [chore] Update usage of OTEL libraries by @daenney in #2725
  • [chore] Expose move endpoint again, small settings panel fixes by @tsmethurst in #2752
  • [chore] Different error message for email validation from net/mail parsing on go 1.21.8 and above by @blakesmith in #2760
  • [chore]: Bump github.com/technologize/otel-go-contrib from 1.1.0 to 1.1.1 by @dependabot in #2765
  • [chore]: Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 by @dependabot in #2766
  • Bump follow-redirects from 1.15.4 to 1.15.6 in /web/source by @dependabot in #2763
  • [chore]: Bump github.com/tdewolff/minify/v2 from 2.20.18 to 2.20.19 by @dependabot in #2767
  • [chore]: Bump modernc.org/sqlite from 1.29.4 to 1.29.5 by @dependabot in #2768
  • [chore] Move local account settings to separate db table by @tsmethurst in #2770
  • [chore]: Bump github.com/gin-contrib/gzip from 0.0.6 to 1.0.0 by @dependabot in #2781
  • [chore]: Bump github.com/gin-contrib/cors from 1.7.0 to 1.7.1 by @dependabot in #2778
  • [chore]: Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.10.0 by @dependabot in #2779
  • [chore]: Bump github.com/gin-contrib/sessions from 0.0...
Read more

v0.15.0-rc2

08 Apr 09:59
6db7d01
Compare
Choose a tag to compare
v0.15.0-rc2 Pre-release
Pre-release

Hiya! Bugfixes! Here's the second RC, enjoy!

No db migrations or config file changes between v0.15.0-rc1 and this version, so upgrading is as simple as updating your docker container or stopping GtS, untarring the release, and starting GtS again.

For instructions to update to this release candidate from versions < v0.15.0-rc1, see the v0.15.0-rc1 release candidate notes, but replace v0.15.0-rc1 with v0.15.0-rc2 throughout.

Detailed Changelog

  • 6db7d01 [bugfix] Ensure side effects for local -> local follows get processed (#2820)
  • 85bc140 [bugfix] temporarily replace modernc.org/sqlite-v1.29.5 with gitlab.com/NyaaaWhatsUpDoc/sqlite-v1.29.5-concurrency-workaround (#2811)
  • 83e7847 [bugfix] fix possible nil panic (#2809)
  • 236604b [chore] Log less output on failed test (#2804)
  • 8ed1b81 [bugfix] Sort follows chronologically (#2801)
  • 15ede4c [bugfix] improved authenticate post inbox error handling (#2803)

v0.15.0-rc1 Shagadelic Sloth

02 Apr 14:08
65b5366
Compare
Choose a tag to compare
Pre-release

Hey nerds! 🌷 🦥 🌸

First spring time release of GoToSocial, here's the first release candidate for version 0.15.0 Shagadelic Sloth!

Release highlights

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-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.15.0-rc1 or superseriousbusiness/gotosocial:latest)
  3. 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

Bugfixes

Chores / version bumps

  • [chore] Fix a Swagger warning that only manifests during Go client code generation by @VyrCossont in #2729
  • [chore] Downgrade sqlite v1.29.2 -> v1.28.0 by @tsmethurst in #2736
  • [chore] seperate snapshot from release in goreleaser by @CDN18 in #2740
  • [chore]: Bump github.com/gin-contrib/cors from 1.5.0 to 1.7.0 by @dependabot in #2745
  • [chore]: Bump github.com/jackc/pgx/v5 from 5.5.3 to 5.5.5 by @dependabot in #2747
  • [chore]: Bump github.com/go-jose/go-jose/v3 from 3.0.1 to 3.0.3 by @dependabot in #2733
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.67 to 7.0.69 by @dependabot in #2748
  • [chore] Update usage of OTEL libraries by @daenney in #2725
  • [chore] Expose move endpoint again, small settings panel fixes by @tsmethurst in #2752
  • [chore] Different error message for email validation from net/mail parsing on go 1.21.8 and above by @blakesmith in #2760
  • [chore]: Bump github.com/technologize/otel-go-contrib from 1.1.0 to 1.1.1 by @dependabot in #2765
  • [chore]: Bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 by @dependabot in #2766
  • Bump follow-redirects from 1.15.4 to 1.15.6 in /web/source by @dependabot in #2763
  • [chore]: Bump github.com/tdewolff/minify/v2 from 2.20.18 to 2.20.19 by @dependabot in #2767
  • [chore]: Bump modernc.org/sqlite from 1.29.4 to 1.29.5 by @dependabot in #2768
  • [chore] Move local account settings to separate db table by @tsmethurst in #2770
  • [chore]: Bump github.com/gin-contrib/gzip from 0.0.6 to 1.0.0 by @dependabot in #2781
  • [chore]: Bump github.com/gin-contrib/cors from 1.7.0 to 1.7.1 by @dependabot in #2778
  • [chore]: Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.10.0 by @dependabot in #2779
  • [chore]: Bump github.com/gin-contrib/sessions from 0.0.5 to 1.0.0 by @dependabot in #2782
  • [chore/frontend] Adjust contrast, mute blurple a bit (meta update: blurple nerfed) by @tsmethurst in #2785
  • Bump express from 4.18.2 to 4.19.2 in /web/source by @dependabot in #2790
  • [chore] Vendor mkdocs fonts; update docs dependencies by @tsmeth...
Read more

v0.14.2 Spoiledest Sloth

11 Mar 10:00
Compare
Choose a tag to compare

Another day another bugfix release 😎

We fixed a bug in 0.14.0 and 0.14.1 that was causing 404 errors sometimes when viewing an account or its statuses, if that account had moved at some point.

No db migrations or config file changes between v0.14.1 and this version, so upgrading is as simple as updating your docker container or stopping GtS, untarring the release, and starting GtS again.

For instructions to update to this release from versions < v0.14.0, see the v0.14.0 release notes, but replace v0.14.0 with v0.14.2 throughout.

Thanks!

Detailed Changelog

  • 0bd95d7 [bugfix] Don't error when populating MovedTo if account not found (#2741)
  • 0326318 [chore] seperate snapshot from release in goreleaser (#2740)

v0.14.1 Spoileder Sloth

08 Mar 11:01
Compare
Choose a tag to compare

Hello! Here's a bugfix release!

There was a bug in 0.14.0 which was causing SQLite-backed instances to sometimes become unresponsive, with lots of errors in the logs containing interrupted(9) (see #2728).

We poked around and this looks like an issue in our SQLite dependency, so we stepped down to the most recent stable version, and also added some code to prevent the problem from rendering an instance unresponsive.

No db migrations or config file changes between v0.14.0 and this version, so upgrading is as simple as updating your docker container or stopping GtS, untarring the release, and starting GtS again.

For instructions to update to this release from versions < v0.14.0, see the v0.14.0 release notes, but replace v0.14.0 with v0.14.1 throughout.

Thanks!

Detailed Changelog

  • ce3ae09 [chore] Downgrade sqlite v1.29.2 -> v1.28.0 (#2736)
  • 6418785 [bugfix] add workaround for Xsqlite_interrupt() permanently breaking connection (#2731)

v0.14.0 Spoiled Sloth

06 Mar 09:41
7bc536d
Compare
Choose a tag to compare

Look at that! This sloth is spoiled rotten! 🦥 👀

Here's GoToSocial version 0.14.0 Spoiled Sloth!

Release highlights

  • Account aliasing. You can now set the alsoKnownAs field on your account via the settings panel, to indicate other accounts you own. This doesn't do much now, but it's the first step towards the Move implementation for account migration coming in v0.15.0. We originally wanted to include Move in this release but it needs more testing so we pushed it back. Hang in there :)
  • Much better thread sorting. Conversation threads on both the web view and client API use a new sorting mechanism which makes them way more readable. No longer will replies in a thread be scattered all over the place.
  • Better HTTP signature support. We fixed a longstanding issue with including vs not including query parameters in signed GET requests. We now try (and accept) both methods of constructing signatures. Which leads to...
  • Improved thread fetching. You'll see far fewer "orphaned" statuses in your timeline now, and you'll see more replies on statuses from other instances.
  • Syntax highlighting for code blocks on the web UI. When you include a code block in your markdown now, and correctly indicate the language the code is written in, it will be syntax highlighted when rendered on your profile in the web UI. This requires javascript, but it's a progressive enhancement feature. Visitors to your profile with javascript turned off will just see the code block without syntax highlighting :)
  • Improved "about this instance" page, with a link to the page in the nav bar. Previously the "about this instance" page was more or less hidden. We've now surfaced it better, so you can write all your terms and conditions and instance description stuff there. Relatedly....
  • Parse instance descriptions and terms and conditions as markdown. Previously it was very difficult to properly edit these fields, because you had to read + write HTML to do so. Now they're parsed as markdown. This means you can more easily include things like blockquotes, lists, etc.
  • Big refactor of HTML templates + CSS. We did a serious rework of HTML templates to fix indentation. Previously if you did "view source" on a GoToSocial profile page, you'd see a mess of sloppily-indented HTML. With this refactor, the HTML is now nicely indented and much more readable. We also did an accessibility pass and tested our HTML with various screen readers to try to make the web view a bit less annoying to navigate.
  • First pass at a basic spam filtering system. In light of spam waves happening on the fediverse recently we took a crack at implementing a filter to drop messages identified as spam. This is still in the experimental stage, but it's included in this release so you can try it out already. See the docs for details.

Migration notes

Upgrading

To upgrade to 0.14.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.14.0 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.13.0...v0.14.0#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! ⚠️

Instance description, short description, and terms

Because we changed the way instance description, short description, and terms are parsed and stored, you will need to re-enter these in the admin settings panel. After you've updated to this version, you can just copy-paste your existing descriptions and ToC from the index and about web pages of your instance, and paste them in to the appropriate fields in the settings panel.

(Custom) CSS and HTML

The big refactor of CSS and HTML means that custom CSS from 0.13.x versions of GoToSocial will likely not work as expected on versions >= 0.14.0. The HTML structure changed a bunch, and some of the class names and whatnot have changed as well. Sorry about that! But it needed to be done. For an example of custom css using the new class names and HTML structure, see the following:

/* Theme colors */
:root {
  --acid-green: rgb(63, 255, 0);
  --magenta: rgb(153, 50, 204);
  
  /* Override */
  --orange2: var(--acid-green);
}

html, body {  
  /* Funky scroll bar */
  scrollbar-color: var(--acid-green) var(--gray1);
}

/* Instance display name */
.page-header {
  grid-column: 2;
  align-self: start;
  margin: 1rem 0 1rem 0;
  background-color: var(--gray1);
  border: 0.25rem solid var(--magenta);
  border-radius: var(--br);
}

/* Header card */
.profile .profile-header {
  background-color: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* About + Pinned posts headers */
.profile .col-header {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

.profile .about-user .col-header {
  border-bottom: none;
  margin-bottom: 0;
}

/* Change about sections */
.profile .about-user .fields, .profile .about-user .bio, .profile .about-user .accountstats {
  background: var(--gray1);
  border-left: 0.25rem solid var(--magenta);
  border-right: 0.25rem solid var(--magenta);
}

/* Fiddle around with borders on about sections */
.profile .about-user .fields .field:first-child {
  border-top: 0.25rem dashed var(--magenta);
}
.profile .about-user .fields .field {
  border-bottom: 0.25rem dashed var(--magenta);
}
.profile .about-user .accountstats {
  border-top: 0.25rem dashed var(--magenta);
  border-bottom: 0.25rem solid var(--magenta);
}

/* Statuses + threads */

/* Thread column header */
.thread .col-header {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* Main status body */
.status, .status.expanded {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* Code snippets */
.status .text .content pre, .status .text .content code {
  background: black;
  color: var(--white2);
}

/* Block quotes */
.status .text .content blockquote {
  background-color: black;
}

/* Media wrapper for attachments */
.status .media .media-wrapper {
  background: var(--bg-nearly-opaque);
}
.status .media .media-wrapper details .unknown-attachment .placeholder {
  border: 0.2rem dashed var(--magenta);
}

/* Polls */
.status .text .poll {
  background-color: black;
  border: 0.25rem solid var(--magenta);
}

.status .text .poll .poll-info {
  background-color: black;
}

/* Status info bars */
.status .status-info, .status.expanded .status-info {
  background: black;
}

/* Back + next links */
.backnextlinks {
  background: var(--gray1);
  padding: 0.5rem;
  border: 0.25rem solid var(--magenta);
  border-radius: var(--br);
}

.page-footer {
  margin-top: 2rem;
  background-color: var(--gray1);
  border-top: 0.25rem solid var(--magenta);
}

Detailed changelog

Changelog for 0.13.0 vs 0.14.0. Some changes mentioned below may have already been included in 0.13.x releases.

Features / Performance

  • [performance] simpler throttling logic by @NyaaaWhatsUpDoc in #2407
  • [feature] Run ANALYZE after migrations on SQLite by @daenney in #2428
  • [feature] Push status edit messages into open streams by @Sentynel in #2418
  • [feature] request blocking by http headers by @NyaaaWhatsUpDoc in #2409
  • [feature] Parse instance descriptors as markdown, show T&C on /about by @tsmethurst in #2481
  • [feature] Allow webp emoji uploads / derefs by @tsmethurst in #2484
  • [feature] Log pubKeyID for incoming http-signed requests by @tsmethurst in #2501
  • [feature] Account alias / move API + db models by @tsmethurst in #2518
  • [feature] Move + alias account via settings panel by @tsmethurst in #2519
  • [performance] overhaul struct (+ result) caching library for simplicity, performance and multiple-result lookups by @NyaaaWhatsUpDoc in #2535
  • [feature] Allow "charset=utf8" in incoming AP POST requests by @tsmethurst in #2564
  • [feature] Ratelimit + serve emoji images on separate router group by @tsmethurst in #2548
  • [performance] cache library performance enhancements (updates go-structr => v0.2.0) by @NyaaaWhatsUpDoc in #2575
  • Improve context descendant sorting by @VyrCossont in #2579
  • [feature] Try HTTP signature validation with and without query params for incoming requests by @ts...
Read more

v0.14.0-rc3 Spoiled Sloth

04 Mar 11:00
f487fc5
Compare
Choose a tag to compare
Pre-release

Hi hi! Here's the third release candidate for 0.14.0 :) Please see the previous release candidate for update and migration notes, but replace rc2 with rc3 throughout. Thanks!

Detailed Changelog

  • f487fc5 [bugfix] Sanitize incoming PropertyValue fields (#2722)
  • 0b35257 [docs] Update HTTP signature docs a bit (#2721)
  • 66d9297 [bugfix/tracing] fix broken tracing due to conflicting schema url (#2712)
  • c7845c7 [chore]: Bump golang.org/x/crypto from 0.19.0 to 0.20.0 (#2716)
  • adb4cdc [chore]: Bump modernc.org/sqlite from 1.28.0 to 1.29.2 (#2718)
  • ea0efb8 [bugfix] update postgresqlstmt to correctly use postgres err hook (#2711)
  • 40ba936 [docs] Use human sizes for size limitations (#2706)
  • fcecd0c [bugfix] unwrap boosts when checking in-reply-to status (#2702)
  • c2a691f [chore] Disable the syslog long message over Unix datagram socket test on macOS (#2700)

v0.14.0-rc2 Spoiled Sloth

28 Feb 12:21
504c4f2
Compare
Choose a tag to compare
Pre-release

Look at that! This sloth is spoiled rotten! 🦥 👀

Here's the second release candidate for GoToSocial version 0.14.0 Spoiled Sloth!

What happened to the first release candidate, you say? Well, it didn't work properly. But this one does.

Release highlights

  • Account aliasing. You can now set the alsoKnownAs field on your account via the settings panel, to indicate other accounts you own. This doesn't do much now, but it's the first step towards the Move implementation for account migration coming in v0.15.0. We originally wanted to include Move in this release but it needs more testing so we pushed it back. Hang in there :)
  • Much better thread sorting. Conversation threads on both the web view and client API use a new sorting mechanism which makes them way more readable. No longer will replies in a thread be scattered all over the place.
  • Better HTTP signature support. We fixed a longstanding issue with including vs not including query parameters in signed GET requests. We now try (and accept) both methods of constructing signatures. Which leads to...
  • Improved thread fetching. You'll see far fewer "orphaned" statuses in your timeline now, and you'll see more replies on statuses from other instances.
  • Syntax highlighting for code blocks on the web UI. When you include a code block in your markdown now, and correctly indicate the language the code is written in, it will be syntax highlighted when rendered on your profile in the web UI. This requires javascript, but it's a progressive enhancement feature. Visitors to your profile with javascript turned off will just see the code block without syntax highlighting :)
  • Improved "about this instance" page, with a link to the page in the nav bar. Previously the "about this instance" page was more or less hidden. We've now surfaced it better, so you can write all your terms and conditions and instance description stuff there. Relatedly....
  • Parse instance descriptions and terms and conditions as markdown. Previously it was very difficult to properly edit these fields, because you had to read + write HTML to do so. Now they're parsed as markdown. This means you can more easily include things like blockquotes, lists, etc.
  • Big refactor of HTML templates + CSS. We did a serious rework of HTML templates to fix indentation. Previously if you did "view source" on a GoToSocial profile page, you'd see a mess of sloppily-indented HTML. With this refactor, the HTML is now nicely indented and much more readable. We also did an accessibility pass and tested our HTML with various screen readers to try to make the web view a bit less annoying to navigate.
  • First pass at a basic spam filtering system. In light of spam waves happening on the fediverse recently we took a crack at implementing a filter to drop messages identified as spam. This is still in the experimental stage, but it's included in this release so you can try it out already. See the docs for details.

Migration notes

Upgrading

To upgrade to 0.14.0-rc2 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.14.0-rc2 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.13.0...v0.14.0-rc2#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! ⚠️

Instance description, short description, and terms

Because we changed the way instance description, short description, and terms are parsed and stored, you will need to re-enter these in the admin settings panel. After you've updated to this version, you can just copy-paste your existing descriptions and ToC from the index and about web pages of your instance, and paste them in to the appropriate fields in the settings panel.

(Custom) CSS and HTML

The big refactor of CSS and HTML means that custom CSS from 0.13.x versions of GoToSocial will likely not work as expected on versions >= 0.14.0. The HTML structure changed a bunch, and some of the class names and whatnot have changed as well. Sorry about that! But it needed to be done. For an example of custom css using the new class names and HTML structure, see the following:

/* Theme colors */
:root {
  --acid-green: rgb(63, 255, 0);
  --magenta: rgb(153, 50, 204);
  
  /* Override */
  --orange2: var(--acid-green);
}

html, body {  
  /* Funky scroll bar */
  scrollbar-color: var(--acid-green) var(--gray1);
}

/* Instance display name */
.page-header {
  grid-column: 2;
  align-self: start;
  margin: 1rem 0 1rem 0;
  background-color: var(--gray1);
  border: 0.25rem solid var(--magenta);
  border-radius: var(--br);
}

/* Header card */
.profile .profile-header {
  background-color: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* About + Pinned posts headers */
.profile .col-header {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

.profile .about-user .col-header {
  border-bottom: none;
  margin-bottom: 0;
}

/* Change about sections */
.profile .about-user .fields, .profile .about-user .bio, .profile .about-user .accountstats {
  background: var(--gray1);
  border-left: 0.25rem solid var(--magenta);
  border-right: 0.25rem solid var(--magenta);
}

/* Fiddle around with borders on about sections */
.profile .about-user .fields .field:first-child {
  border-top: 0.25rem dashed var(--magenta);
}
.profile .about-user .fields .field {
  border-bottom: 0.25rem dashed var(--magenta);
}
.profile .about-user .accountstats {
  border-top: 0.25rem dashed var(--magenta);
  border-bottom: 0.25rem solid var(--magenta);
}

/* Statuses + threads */

/* Thread column header */
.thread .col-header {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* Main status body */
.status, .status.expanded {
  background: var(--gray1);
  border: 0.25rem solid var(--magenta);
}

/* Code snippets */
.status .text .content pre, .status .text .content code {
  background: black;
  color: var(--white2);
}

/* Block quotes */
.status .text .content blockquote {
  background-color: black;
}

/* Media wrapper for attachments */
.status .media .media-wrapper {
  background: var(--bg-nearly-opaque);
}
.status .media .media-wrapper details .unknown-attachment .placeholder {
  border: 0.2rem dashed var(--magenta);
}

/* Polls */
.status .text .poll {
  background-color: black;
  border: 0.25rem solid var(--magenta);
}

.status .text .poll .poll-info {
  background-color: black;
}

/* Status info bars */
.status .status-info, .status.expanded .status-info {
  background: black;
}

/* Back + next links */
.backnextlinks {
  background: var(--gray1);
  padding: 0.5rem;
  border: 0.25rem solid var(--magenta);
  border-radius: var(--br);
}

.page-footer {
  margin-top: 2rem;
  background-color: var(--gray1);
  border-top: 0.25rem solid var(--magenta);
}

Detailed changelog

Changelog for 0.13.0 vs 0.14.0-rc2. Some changes mentioned below may have already been included in 0.13.x releases.

Features / Performance

Read more

v0.14.0-rc1 Spoiled Sloth

28 Feb 10:25
f29d429
Compare
Choose a tag to compare
Pre-release

Whoops! We borked this release candidate. You should use v0.14.0-rc2 instead!

v0.13.3 Spideriest Sloth 2: The re-slothening

15 Feb 13:18
Compare
Choose a tag to compare

Hi everyone! This here's a security + bugfix release for GoToSocial!

Similar to the v0.13.2 release, this one closes a couple gaps with regard to ensuring that models of remote Activities or Objects can't be modified by Actors who don't own the Activity or Object.

It also fixes a couple different bugs with regard to your instance trying to dereference accounts who've blocked you, or whose instances have blocked you, leading to less weird-looking behavior from the user's side :)

Based on the changes included, Bookwyrm federation should hopefully work a little better now as well, but we haven't tested this.

If you're running on v0.13.2 or below, you should update to this release as soon as you have the time. There are no database migrations or frontend file changes, so this should be fairly easy!

Thanks!

Migration notes

Upgrading

See the release notes for 0.13.0 but replace 0.13.0 with 0.13.3 throughout.

config.yaml

No changes since 0.13.2, see 0.13.0 for migration notes from versions < 0.13.0.

Database Migrations

No changes since 0.13.2, see 0.13.0 for migration notes from versions < 0.13.0.

Detailed Changelog

  • fb3e3ca [chore] also allow text/xml in place of application/xml (#2640)
  • b9013a8 [bugfix] add stricter checks during all stages of dereferencing remote AS objects (#2639)
  • a3aa604 [bugfix] Don't return Account or Status if new and dereferencing failed, other small fixes (#2563)
  • ad6f756 [bugfix] Don't return Internal Server Error when searching for URIs that don't return AP JSON (#2550)
  • 1188971 [feature] Allow "charset=utf8" in incoming AP POST requests (#2564)
  • 5d44ad7 [chore] chore rationalise http return codes for activitypub handlers (#2540)