Skip to content

Releases: superseriousbusiness/gotosocial

v0.9.0-rc2

21 May 17:50
2063d01
Compare
Choose a tag to compare
v0.9.0-rc2 Pre-release
Pre-release

Kapow, the second release candidate for GoToSocial 0.9.0!

We fixed (hopefully!) the bugs that showed up in the first release candidate. Thank you everyone who helped us find them! We also snuck in a cheeky new feature 🦥 😈

Migration notes

Upgrading

To upgrade to 0.9.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.9.0-rc2 or superseriousbusiness/gotosocial:latest)
  3. Start GoToSocial.

config.yaml

See previous release notes!

Database Migrations

This release contains one or more 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 (compared to 0.9.0-rc1)

  • 2063d01 [bugfix] Add back removed ValidateRequest() before backoff-retry loop (#1805)
  • 107237c [feature] Make client IP logging configurable (#1799)
  • 68e54cb [bugfix] Start + stop caches properly for testrig + pruning (#1804)
  • 99ddaba [bugfix] Fix incorrect default for empty emoji domain (#1803)
  • c7702c4 [chore] Change time comparison in webfinger test (#1798)
  • e91cabb [bugfix] Fix NegotiateFormat with multiple accept headers (#1797)
  • 2478d83 [bugfix] Fix proxy_pass in named location (#1794)
  • 19dab83 [docs] add missing observability settings to example config (#1790)
  • 32aefd5 [docs] remove nginx trailing slash (#1789)
  • 89c1d58 [chore]: Bump golang.org/x/crypto from 0.8.0 to 0.9.0 (#1784)
  • 17b9a93 [bugfix] Fix duplicating fields on profile edit (#1788)
  • e1b7ab2 [chore]: Bump golang.org/x/oauth2 from 0.7.0 to 0.8.0 (#1785)

v0.9.0-rc1

14 May 13:26
2b7c815
Compare
Choose a tag to compare
v0.9.0-rc1 Pre-release
Pre-release

HELLO! This is the first release candidate for version 0.9.0 of GoToSocial!

This release is pretty cool, if you're into, like, software and stuff. Nerd stuff. You know. We worked real hard on it and it feels closer and closer to beta software :)

Highlights!!

  • PROFILE FIELDS will now be federated. This means you can set key/value fields on your profile, just like other Fedi softwares already have, and they will federate in and out properly! It may take up to 2 days to start seeing fields on remote profiles, be patient ;)
  • Kickass new layout for web view of profiles, including fields!
  • Initial support for request tracing (https://github.com/superseriousbusiness/gotosocial/blob/main/docs/configuration/observability.md)
  • "subscribe" to an account you follow to receive notifications when they create a new post!
  • Automatic remote status refetching to get up-to-date replies + edits.
  • Performance improvements for message sending: you can now configure the rate at which messages will be federated outwards, better spacing out CPU usage.
  • Caching performance improvements.
  • Suspend accounts from within the admin panel by clicking through from reports.
  • Code now significantly stinkier. It's an olfactory delight.

Migration notes

Upgrading

To upgrade to 0.9.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.9.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.8.1...v0.9.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

  • 89dcbd5 [frontend] Basic user moderation actions (#1728)
  • 6c9d8e7 [feature] status refetch support (#1690)
  • 9cc9ffc [frontend] Profiles with fields & more (#1764)
  • 6392e00 [feature] initial tracing support (#1623)
  • 0e29f1f [feature] Enable federation in/out of profile PropertyValue fields (#1722)
  • 6d13858 [feature] Implement the preferences client API (#1740)
  • 3ff1391 [performance] replace domain block cache with an in-memory radix trie (#1714)
  • 68b91d2 [performance] tweak http client error handling (#1718)
  • 8b1e228 [feature] Add GET endpoint for single notification (#1719)
  • 6a29c5f [performance] improved request batching (removes need for queueing) (#1687)
  • 093cf2a [feature] Receive notification when followed account posts (if desired) (#1680)

Bugfixes

  • 2b7c815 [bugfix] update go-cache to v3.3.3 (#1778)
  • b47661f [bugfix] Downstep otel to fix freebsd compile issue (#1773)
  • 8eda005 [bugfix] Ensure account fields can be set by JSON (#1762)
  • 878ed48 [bugfix] Don't try to get user when serializing local instance account (#1757)
  • 11e843a [bugfix] fix possible domain blockcache nil ptr + add debug String() func (#1755)
  • 8275d70 [bugfix] update go-cache version to support multi-keying (#1756)
  • 37b4d9d [bugfix] Punycode fixes (#1743)
  • b7dd32d [bugfix] Return languages in api/v1/instance (#1741)
  • 5027d0c [bugfix] Serve correct 'application/jrd+json' content type for webfinger requests (#1738)
  • 4a012ac [bugfix] Rework notifs to use min_id for paging up (#1734)
  • a6ec2a5 [bugfix] Fix invalid og:description on account w/ empty note (#1733)
  • ead286a [bugfix] tweak httpclient error handling again ... (#1721)
  • fdd2487 [bugfix] add From to email header (#1717)
  • 6b4f6dc [bugfix] Fix remaining mangled URI escaping issues in statuses + accounts (#1712)
  • fd3bf92 [bugfix] fix small config typos (#1707)
  • cb1f935 [bugfix] Fix the bookmarks list API endpoint returning an empty array (#1700)
  • c01d2f9 [chore]: Bump golang.org/x/oauth2 from 0.6.0 to 0.7.0 (#1684)
  • 1d8f9c6 [chore]: Bump golang.org/x/crypto from 0.7.0 to 0.8.0 (#1685)
  • 014d7ac [chore]: Bump github.com/spf13/cobra from 1.6.1 to 1.7.0 (#1686)
  • 158facf [chore]: Bump golang.org/x/image from 0.6.0 to 0.7.0 (#1682)

Chores

  • 514eb8c [frogend/chore] Fix profile domain (#1779)
  • 3046dab [frogend/chore] Update backnextlinks (#1774)
  • ec325fe [chore] Update a bunch of database dependencies (#1772)
  • 66df974 [frogend/bugfix] fix dynamicSpoiler elements (#1771)
  • b315aa1 [frogend/chore] remove break-all on profile fields (#1770)
  • ba5a464 [chore] Prefer JSON errors in API endpoints (#1766)
  • 265cc32 [frogend] use more semantic headers for profile page (#1765)
  • 65cd1ac [chore] tidy + update StatusToAPIStatus (#1754)
  • cbb9e2d [chore/performance] Make sender multiplier configurable (#1750)
  • 9b4b4d4 [chore] update readthedocs deps, use conda (#1742)
  • c41c1f9 [chore] Hide vendor from diffs (#1729)
  • 66f09a8 [chore]: Bump modernc.org/sqlite from 1.22.0 to 1.22.1 (#1726)
  • e9de7be [chore]: Bump github.com/go-playground/validator/v10 (#1724)
  • ab7f518 [chore]: Bump github.com/KimMachineGun/automemlimit from 0.2.5 to 0.2.6 (#1723)
  • 5904e3b [chore]: Bump github.com/miekg/dns from 1.1.53 to 1.1.54 (#1727)
  • 49395f2 [chore]: Bump modernc.org/sqlite from 1.21.1 to 1.22.0 (#1711)
  • f3066a1 [chore] Replacing all Pinafore mentions to Semaphore ones (#1689)
  • a3d2774 [chore]: Bump codeberg.org/gruf/go-cache/v3 from 3.2.3 to 3.2.5 (#1701)
  • c5f61c4 [chore]: Bump mvdan.cc/xurls/v2 from 2.4.0 to 2.5.0 (#1702)
  • ef3004b [chore]: Bump github.com/minio/minio-go/v7 from 7.0.50 to 7.0.52 (#1703)

Documentation

  • 1d8dec3 [docs] Add implementation notes for report (Flag) functionality (#1324)
  • 0e03507 [docs] update instance splash and profile screenshots (#1775)
  • ae9d432 [docs] Migrates Chart Location (#1708)
  • 922bd89 [docs] Explain that markdown is enabled on the user settings page. (#1699)

New Contributors

v0.8.1 Even More Scurrilous Sloth

19 Apr 13:11
Compare
Choose a tag to compare

Hello! Cheeky small bugfix release. 0.8.0 accidentally broke bookmarks on Postgres and this fixes that, thanks @handlerug !

Migration Notes

Upgrade from 0.8.0

Easy upgrade, no database migrations.

There are two small typo fixes in the example config.yaml file, so you may need to make these changes in your config.yaml too. See here: fd3bf92

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

Upgrade from prior to 0.8.0

Follow instructions for updating to 0.8.0 (https://github.com/superseriousbusiness/gotosocial/releases/v0.8.0), but replace version numbers with 0.8.1 instead.

Detailed Changelog

  • 4dbf9a2 [bugfix] fix small config typos (#1707)
  • 0744477 [bugfix] Fix the bookmarks list API endpoint returning an empty array (#1700)

v0.8.0 Scurrilous Sloth

09 Apr 16:06
f28ed21
Compare
Choose a tag to compare

Hello hello! Guess what! It's time! Time for what, you say? Time for the scurrilous sloth to emerge from his tree and federate posts to all and sundry!

(In other words: this is the latest release of GoToSocial!)

We're really proud of this one, it adds some cool new stuff, and fixes a bunch of annoying bugs and performance hiccups.

Highlights of this release:

  • Redesign of the settings/admin navigation bar.
  • Email test endpoint + email notifications for reports.
  • Pinned posts!! You can now pin and unpin posts, and your server will fetch pinned posts from remote profiles too. May take up to 48 hours to update pinned posts when they change, hang in there.
  • Many performance improvements + better caching.

Migration notes

Upgrading

To upgrade to 0.8.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.8.0 or superseriousbusiness/gotosocial:latest)
  3. Start GoToSocial.

config.yaml

The configuration file has changed since the previous release. We recommend copying the new file from example/config.yaml and pasting values into it from your previous config.yaml. You can see a diff of the config file here: v0.7.1...v0.8.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!

Detailed Changelog

Features / Performance

  • 0746ef7 [frontend] Settings navigation design (#1652)
  • de6e3e5 [performance] refactoring + add fave / follow / request / visibility caching (#1607)
  • 7d09863 [feature] Add list command to admin account (#1648)
  • 7db81cd [feature] Email notifications for new / closed moderation reports (#1628)
  • 196cd88 [feature] Allow admins to send test emails (#1620)
  • e323a93 [feature] Support multiple subscriptions on single websocket connection (#1489)
  • a312238 [feature] Provide .well-known/host-meta endpoint (#1604)
  • e397272 [feature] Discover webfinger through host-meta (#1588)
  • f518f64 [feature] Add (api only) support for profile fields (#1483)
  • d2f6de0 [feature] Allow loading TLS certs from disk (#1586)
  • a8e6bdf [performance] cache media attachments (#1525)
  • e6cde25 [feature] Advertise rich text formats, support content_type field (#1370)
  • 24cec4e [feature] Federate pinned posts (aka featuredCollection) in and out (#1560)
  • 9cfb69f [feature] Make OIDC admin groups configurable (#1555)
  • c27b4d7 [feature] Client API endpoints + v. basic web view for pinned posts (#1547)

Bugfixes

  • f28ed21 [bugfix] Fix single author threads not appearing in home timeline (#1679)
  • fb41d2d [bugfix] warn on maxprocs error instead of failing (#1678)
  • e46323c [bugfix] visibility caching and hometimeline (#1675)
  • 3510454 [bugfix/chore] Refactor timeline code (#1656)
  • c54510b [bugfix] Normalize status content (don't parse status content as IRI) (#1665)
  • 4f322f5 [bugfix] Always serialize orderedItems as array (#1673)
  • 8d2a76c [bugfix] Add proper constraints on status faves, dedupe (#1674)
  • b847af1 [bugfix] Add idempotency-key to allowed CORS headers (#1670)
  • 3f9b233 [bugfix/frontend] Preload css styles (#1638)
  • 60639a6 [bugfix] Fix multiple "updated_at" columns for media updates (#1660)
  • d9bbcc6 [bugfix] Fix report serialization errors caused by user delete (#1659)
  • 344c7e5 [bugfix] Fix relationship not updating 'following' on accept follow request (#1658)
  • 6cf6613 [bugfix] Remove unique constraint on public_key (#1653)
  • 66bedc4 [bugfix] Use account ID host as accDomain if 2nd webfinger lookup fails (#1630)
  • cb2f84e [frontend/fix] Mobile css tweaks (#1605)
  • 9ba35c6 [bug] Handle 410 on webfinger properly (#1601)
  • d8d5818 [bugfix] internal server error on search not found (#1590)
  • ef07475 use updateattachment when updating to ensure cache is invalidated (#1587)
  • 5be59f4 [bugfix] Federate status delete using just the URI (#1584)
  • 88eefd0 [bugfix] Clamp admin report limit <1 to 100 (#1583)
  • 29f8c51 [bugfix] Fix unpinning statuses not working (#1582)
  • fe6c8b8 [bugfix] on deref new account, check db again for account on ErrAlreadyExists (#1581)
  • bfccf4e [bugfix] add ON CONFLICT statements to status updates (#1580)
  • 689a10f [bugfix] Fix deleted status causing issues when getting bookmark (#1551)

Chores

  • 36a2131 [chore] Update templates license headers (#1672)
  • 9c209fe [chore]: Bump modernc.org/sqlite from 1.21.0 to 1.21.1 (#1669)
  • 839fd56 [chore]: Bump github.com/miekg/dns from 1.1.52 to 1.1.53 (#1668)
  • 57dc742 [chore]: Bump github.com/KimMachineGun/automemlimit from 0.2.4 to 0.2.5 (#1666)
  • a5c920a bump go-store version (includes minio) (#1657)
  • 9e1756c [chore]: Bump github.com/tdewolff/minify/v2 from 2.12.4 to 2.12.5 (#1649)
  • 1603a7f [chore] License sloth logo + default avatars under CC by-sa 4.0 (#1651)
  • 883dc54 bump go-runners version to fix possible race in Processing{Media,Emoji} (#1646)
  • e8595f0 [chore] Refactor account deleting/block logic, tidy up some other processing things (#1599)
  • 276d773 [chore]: Bump github.com/miekg/dns from 1.1.51 to 1.1.52 (#1636)
  • 78aebf5 [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.22 to 1.0.23 (#1635)
  • ac74256 [chore]: Bump go.uber.org/automaxprocs from 1.5.1 to 1.5.2 (#1633)
  • 4096e70 [chore]: Bump github.com/go-playground/validator/v10 (#1637)
  • d5529d6 [chore] fix + update swagger docs (#1622)
  • 19e0584 [chore]: Bump github.com/ulule/limiter/v3 from 3.11.0 to 3.11.1 (#1616)
  • e448260 [chore]: Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#1618)
  • 86dafa6 [chore]: Bump github.com/abema/go-mp4 from 0.10.0 to 0.10.1 (#1617)
  • 34f4538 [chore]: Bump golang.org/x/image from 0.5.0 to 0.6.0 (#1615)
  • 0a86462 [chore]: Bump codeberg.org/gruf/go-kv from 1.6.0 to 1.6.1 (#1619)
  • 6e10175 update license headers (#1612)
  • 5e2bf0b [chore] Improve copyright header handling (#1608)
  • a772d4d [chore] Fix opengraph properties (#1611)
  • d0dee8d [chore] improved enrichAccount() logging (#1602)
  • b344c2c [chore] Update uptrace/bun and modernc/sqlite dependencies (#1598)
  • 24f6a44 [chore]: Bump github.com/jackc/pgx/v4 from 4.17.2 to 4.18.1 (#1595)
  • 9f36507 [chore]: Bump golang.org/x/oauth2 from 0.5.0 to 0.6.0 (#1597)
  • b004b4d [chore]: Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#1593)
  • 06524ac [chore]: Bump golang.org/x/text from 0.7.0 to 0.8.0 (#1594)
  • 65aeeb4 [chore] Print human readable config (#1589)
  • baf933c [chore] move client/federator workerpools to Workers{} (#1575)
  • 87c5c42 [chore/performance] simplify storage driver to use storage.Storage directly (#1576)
  • e4c5f9a [chore] Improve unsupported_grant_type error (#1572)
  • d550f0e [chore] Bump oauth2/v4 -> v4.6.6.6-SSB (#1571)
  • 4bb3f59 [chore] bump go, build, and lint version (#1570)
  • 8696a8c [chore]: Bump github.com/miekg/dns from 1.1.50 to 1.1.51 (#1566)
  • 6c2bd14 [chore] Better diff for envparsing test (#1562)
  • 5a45b6e [chore]: Bump golang.org/x/oauth2 from 0.4.0 to 0.5.0 (#1564)
  • 752c38b [chore]: Bump github.com/minio/minio-go/v7 from 7.0.48 to 7.0.49 (#1567)
  • e1b704e [chore] Use latest containers when building (#1554)
  • 55300cb [chore] Inform user on how to get testrig (#1557)
  • 83be140 [chore] Update vscode launch configuration (#1556)
  • ecdc837 [chore] Update gin to v1.9.0 (#1553)
  • 074f352 [chore] improve opengraph descripiton tag (#1550)
  • b6fbdc6 [chore] Deinterface processor and subprocessors (#1501)

Documentation

New Contributors

Full Changelog: v0.7.1...v0.8.0

v0.8.0-rc1

06 Apr 15:21
e46323c
Compare
Choose a tag to compare
v0.8.0-rc1 Pre-release
Pre-release

Hello everyone! This is the first release candidate for version 0.8.0 of GoToSocial!

This release candidate brings a whole boatload of features and fixes with it :) You can read a detailed changelog below.

Highlights include:

  • Redesign of the settings/admin navigation bar.
  • Email test endpoint + email notifications for reports.
  • Pinned posts!
  • Many performance improvements + better caching.

Migration notes

Upgrading

To upgrade to 0.8.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.8.0-rc1 or superseriousbusiness/gotosocial:latest)
  3. Start GoToSocial.

config.yaml

The configuration file has changed since the previous release. We recommend copying the new file from example/config.yaml and pasting values into it from your previous config.yaml. You can see a diff of the config file here: v0.7.1...v0.8.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

  • 0746ef7 [frontend] Settings navigation design (#1652)
  • de6e3e5 [performance] refactoring + add fave / follow / request / visibility caching (#1607)
  • 7d09863 [feature] Add list command to admin account (#1648)
  • 7db81cd [feature] Email notifications for new / closed moderation reports (#1628)
  • 196cd88 [feature] Allow admins to send test emails (#1620)
  • e323a93 [feature] Support multiple subscriptions on single websocket connection (#1489)
  • a312238 [feature] Provide .well-known/host-meta endpoint (#1604)
  • e397272 [feature] Discover webfinger through host-meta (#1588)
  • f518f64 [feature] Add (api only) support for profile fields (#1483)
  • d2f6de0 [feature] Allow loading TLS certs from disk (#1586)
  • a8e6bdf [performance] cache media attachments (#1525)
  • e6cde25 [feature] Advertise rich text formats, support content_type field (#1370)
  • 24cec4e [feature] Federate pinned posts (aka featuredCollection) in and out (#1560)
  • 9cfb69f [feature] Make OIDC admin groups configurable (#1555)
  • c27b4d7 [feature] Client API endpoints + v. basic web view for pinned posts (#1547)

Bugfixes

  • e46323c [bugfix] visibility caching and hometimeline (#1675)
  • 3510454 [bugfix/chore] Refactor timeline code (#1656)
  • c54510b [bugfix] Normalize status content (don't parse status content as IRI) (#1665)
  • 4f322f5 [bugfix] Always serialize orderedItems as array (#1673)
  • 8d2a76c [bugfix] Add proper constraints on status faves, dedupe (#1674)
  • b847af1 [bugfix] Add idempotency-key to allowed CORS headers (#1670)
  • 3f9b233 [bugfix/frontend] Preload css styles (#1638)
  • 60639a6 [bugfix] Fix multiple "updated_at" columns for media updates (#1660)
  • d9bbcc6 [bugfix] Fix report serialization errors caused by user delete (#1659)
  • 344c7e5 [bugfix] Fix relationship not updating 'following' on accept follow request (#1658)
  • 6cf6613 [bugfix] Remove unique constraint on public_key (#1653)
  • 66bedc4 [bugfix] Use account ID host as accDomain if 2nd webfinger lookup fails (#1630)
  • cb2f84e [frontend/fix] Mobile css tweaks (#1605)
  • 9ba35c6 [bug] Handle 410 on webfinger properly (#1601)
  • d8d5818 [bugfix] internal server error on search not found (#1590)
  • ef07475 use updateattachment when updating to ensure cache is invalidated (#1587)
  • 5be59f4 [bugfix] Federate status delete using just the URI (#1584)
  • 88eefd0 [bugfix] Clamp admin report limit <1 to 100 (#1583)
  • 29f8c51 [bugfix] Fix unpinning statuses not working (#1582)
  • fe6c8b8 [bugfix] on deref new account, check db again for account on ErrAlreadyExists (#1581)
  • bfccf4e [bugfix] add ON CONFLICT statements to status updates (#1580)
  • 689a10f [bugfix] Fix deleted status causing issues when getting bookmark (#1551)

Chores

  • 36a2131 [chore] Update templates license headers (#1672)
  • 9c209fe [chore]: Bump modernc.org/sqlite from 1.21.0 to 1.21.1 (#1669)
  • 839fd56 [chore]: Bump github.com/miekg/dns from 1.1.52 to 1.1.53 (#1668)
  • 57dc742 [chore]: Bump github.com/KimMachineGun/automemlimit from 0.2.4 to 0.2.5 (#1666)
  • a5c920a bump go-store version (includes minio) (#1657)
  • 9e1756c [chore]: Bump github.com/tdewolff/minify/v2 from 2.12.4 to 2.12.5 (#1649)
  • 1603a7f [chore] License sloth logo + default avatars under CC by-sa 4.0 (#1651)
  • 883dc54 bump go-runners version to fix possible race in Processing{Media,Emoji} (#1646)
  • e8595f0 [chore] Refactor account deleting/block logic, tidy up some other processing things (#1599)
  • 276d773 [chore]: Bump github.com/miekg/dns from 1.1.51 to 1.1.52 (#1636)
  • 78aebf5 [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.22 to 1.0.23 (#1635)
  • ac74256 [chore]: Bump go.uber.org/automaxprocs from 1.5.1 to 1.5.2 (#1633)
  • 4096e70 [chore]: Bump github.com/go-playground/validator/v10 (#1637)
  • d5529d6 [chore] fix + update swagger docs (#1622)
  • 19e0584 [chore]: Bump github.com/ulule/limiter/v3 from 3.11.0 to 3.11.1 (#1616)
  • e448260 [chore]: Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#1618)
  • 86dafa6 [chore]: Bump github.com/abema/go-mp4 from 0.10.0 to 0.10.1 (#1617)
  • 34f4538 [chore]: Bump golang.org/x/image from 0.5.0 to 0.6.0 (#1615)
  • 0a86462 [chore]: Bump codeberg.org/gruf/go-kv from 1.6.0 to 1.6.1 (#1619)
  • 6e10175 update license headers (#1612)
  • 5e2bf0b [chore] Improve copyright header handling (#1608)
  • a772d4d [chore] Fix opengraph properties (#1611)
  • d0dee8d [chore] improved enrichAccount() logging (#1602)
  • b344c2c [chore] Update uptrace/bun and modernc/sqlite dependencies (#1598)
  • 24f6a44 [chore]: Bump github.com/jackc/pgx/v4 from 4.17.2 to 4.18.1 (#1595)
  • 9f36507 [chore]: Bump golang.org/x/oauth2 from 0.5.0 to 0.6.0 (#1597)
  • b004b4d [chore]: Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#1593)
  • 06524ac [chore]: Bump golang.org/x/text from 0.7.0 to 0.8.0 (#1594)
  • 65aeeb4 [chore] Print human readable config (#1589)
  • baf933c [chore] move client/federator workerpools to Workers{} (#1575)
  • 87c5c42 [chore/performance] simplify storage driver to use storage.Storage directly (#1576)
  • e4c5f9a [chore] Improve unsupported_grant_type error (#1572)
  • d550f0e [chore] Bump oauth2/v4 -> v4.6.6.6-SSB (#1571)
  • 4bb3f59 [chore] bump go, build, and lint version (#1570)
  • 8696a8c [chore]: Bump github.com/miekg/dns from 1.1.50 to 1.1.51 (#1566)
  • 6c2bd14 [chore] Better diff for envparsing test (#1562)
  • 5a45b6e [chore]: Bump golang.org/x/oauth2 from 0.4.0 to 0.5.0 (#1564)
  • 752c38b [chore]: Bump github.com/minio/minio-go/v7 from 7.0.48 to 7.0.49 (#1567)
  • e1b704e [chore] Use latest containers when building (#1554)
  • 55300cb [chore] Inform user on how to get testrig (#1557)
  • 83be140 [chore] Update vscode launch configuration (#1556)
  • ecdc837 [chore] Update gin to v1.9.0 (#1553)
  • 074f352 [chore] improve opengraph descripiton tag (#1550)
  • b6fbdc6 [chore] Deinterface processor and subprocessors (#1501)

Documentation

New Contributors

Full Changelog: v0.7.1...v0.8.0-rc1

v0.7.1 Even Stormier Sloth

21 Feb 10:30
adb5966
Compare
Choose a tag to compare

Hello hello! This is a small bugfix release for Stormy Sloth!

Highlights:

  • /about page
  • new postgres installations actually work now
  • png thumbnails preserve transparency
  • oob token requests will redirect to the correct page, showing the token
  • small api fixes to make 'role' property on accounts more mastodon-api compatible
  • don't perform storage cleanup on startup (should alleviate issues where people were having to wait three minutes for their instances to start up)
  • code is now 90% gayer and anti-capitalister

Migration notes

If you're migrating from 0.7.0 you don't really have to do anything special at all! If you're migrating to 0.7.1 from a previous version, check the release notes for 0.7.0 :)

Detailed Changelog

Features

Bugfixes

  • adb5966 [bugfix] Remove initial storage cleanup (#1545)
  • e8a04b7 [bugfix] Fix account roles (#1542)
  • f559d46 [bugfix] Fix failure to look up remote profiles with duplicate emojis in some cases (#1534)
  • a0068e8 [bugfix] In Postgres, drop shortcodedomain constraint before creating new emoji table (#1528)
  • fe66a2a [bugfix] Keep png transparency (#1522)
  • 59b2e10 [bugfix] fix oob token route, update templates+css for oob and errors (#1519)
  • d39280e [bug] Pass context in logging middleware (#1514)
  • 1ca5c62 [bug] maxprocs set logger to nil (#1512)

Docs

Chores

  • e824e14 [chore]: Bump golang.org/x/crypto from 0.5.0 to 0.6.0 (#1541)
  • 7039889 [chore] Move request validation earlier in client (#1531)
  • 51c156c [chore] pull in latest go-kv, go-cache (#1530)
  • a684fc4 [chore] transport improvements (#1524)
  • 3649b23 [chore]: Bump golang.org/x/net from 0.5.0 to 0.7.0 (#1523)
  • 83d8a44 [chore] update gruf's libs on readme (#1520)
  • a822198 [chore]: Bump golang.org/x/image from 0.4.0 to 0.5.0 (#1516)
  • b4d1888 [chore] Update more log calls to include context (#1517)

New Contributors

v0.7.0 Stormy Sloth

17 Feb 09:49
b599309
Compare
Choose a tag to compare

Hello everyone! After much testing and prodding and poking, we're ready to release v0.7.0 Stormy Sloth into the world!

This is the umpteenth alpha release of GoToSocial (we stopped counting), and it brings a massive amount of new stuff, fixes, and tweaks.

Thank you for your continued support, and enjoy the release!

Release Highlights

  • Basic video support (mp4 only). You can finally upload videos, and view videos from remote instances too. Not all mp4 files work, currently -- this is something we'll investigate for next release most likely.
  • Support for federating reports in and out of GoToSocial, and viewing reports via the admin settings panel (this feature was sponsored by NLnet).
  • Support for webp attachments, avatars, and headers.
  • Users can now create, remove, and view status bookmarks!
  • Domain blocks now apply on a wildcard basis, so you can block a second level domain (like example.org) and it will apply to subdomains too (like poop.example.org etc).
  • HTTP request throttling -- only a certain number of http requests are served at a time now. This should vastly improve responsiveness under load on small instances.
  • Much better logic for pruning old avatars + headers, leading to gb of disk space savings.
  • So many bug fixes and performance improvements.

Migration notes

Upgrading

To upgrade to 0.7.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.7.0 or superseriousbusiness/gotosocial:latest)
  3. Start GoToSocial.

config.yaml

The configuration file has changed since the previous release. We recommend copying the new file from example/config.yaml and pasting values into it from your previous config.yaml. You can see a diff of the config file here: v0.6.0...v0.7.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!

Sqlite format changes

0.7.0 now uses SQLite's WAL journal mode by default. This means there will be some new SQLite related files in your GoToSocial directory:

  • sqlite.db-shm
  • sqlite.db-wal

When you do SQLite backups, you should back these files up too (you do have backups, right?).

If you use Postgres rather than SQLite, you can ignore this.

Updating from 0.7.0-rc2

0.7.0-rc2 was slightly broken. If you're getting lots of 'not found' errors for avatars and headers, after running 0.7.0-rc2, see here for steps to fix it: #1505

If you skipped over rc2, ignore this :)

Detailed Changelog

Features

  • 83b522a [feature/Frogend] basic report admin interface (#1424)
  • a59dc85 [feature/frogend] (Mastodon) domain block CSV import (#1390)
  • 382512a [feature] Implement /api/v2/instance endpoint (#1409)
  • 3283900 [feature] Federate reports to remote instance as Flag (if desired) (#1386)
  • 08f8fea [feature/frontend] filterable local emoji list (#1385)
  • 17eecfb [feature] Public list of suspended domains (#1362)
  • 993aae5 [feature] Accept incoming federated Flag activity (#1382)
  • faeb7de [feature] Implement reports admin API so admins can view + close reports (#1378)
  • e974724 [feature] Implement /api/v1/reports endpoints on client API (#1330)
  • 73be244 [feature] Add RSS autodiscovery on profiles that enable RSS (#1373)
  • acc333c [feature] Inherit resource limits from cgroups (#1336)
  • 627b8ee [feature] Tune sqlite pragmas (#1349)
  • 3512325 [feature] Add local user and post count to nodeinfo responses (#1325)
  • d648793 [feature] Implement Report database model and utility functions (#1310)
  • 90a14ab [feature] HTTP request throttling middleware (#1297)
  • 1659f75 [feature] For video attachments, store + return fps, bitrate, duration (#1282)
  • 2bbc64b [feature] Enable basic video support (mp4 only) (#1274)
  • d10388c [feature] support Sec-Websocket-Protocol in streaming API (#1254)
  • 69dd5fe [feature] domain block wildcarding (#1178)
  • 58c87bd [feature] allow uncaching of other media types (#1234)
  • 4b8d7bd [feature/frogend] Emoji copy "Steal this look" (#1222)
  • cb2b2fd [feature] support configuring database caches (#1246)
  • 5e060d0 [feature] Start implementing refetch of lost media files via /api/v1/admin/media_refetch (#1221)
  • 477ae50 [feature] Allow users to create + delete bookbarks, and view bookmarked statuses (#1168)
  • 199b685 [feature] overhaul the oidc system (#961)
  • 1a3f26f [feature] media: add webp support (#1155)

Bugfixes

  • b599309 [bugfix] Set 'discoverable' properly on API accounts (#1511)
  • 6ee0dc8 [bugfix] Set cache-control max-age dynamically for s3 (#1510)
  • 40b584c [bugfix] Fix 410 Gone race on account deletes (#1507)
  • b8e1ab3 [bugfix] use woff(2) fonts for Noto Sans (#1509)
  • 6c6f042 [bugfix] Return empty result rather than 500 error when searching for blocked domains (#1498)
  • 561ad71 [bugfix] Fix up error getting account avatar/header errors, other small fixes (#1496)
  • c223c75 [bugfix] Set appropriate cache-control when using presigned s3 links (#1480)
  • e5e257c [bugfix] Fix error on searching for account w/accountDomain by host (#1465)
  • 52fbb3e [bugfix] fix 'steal this look' form, uncheck entries after processing (#1454)
  • 4e4da19 [bugfix] Use SignatureCheck middleware for web profile endpoints too (#1451)
  • ad6ab03 [bugfix] don't trash emoji in profile fields on edit (#1440)
  • ac2bdbb [bugfix] fix file range length calculation being off by 1 (#1448)
  • 6a6647d [bugfix] Ignore missing files when cleaning up media (#1435)
  • 75e1b9c [bugfix] fix old password hash staying in cache (#1432)
  • 80c26d6 [bugfix] Allow instance thumbnail description to be set separately from image (#1417)
  • 04ac3f8 [bugfix] Fix password change keys (#1416)
  • abe9447 [bugfix] fix cache startup (#1414)
  • 271da01 [bugfix] Read Bookwyrm Articles more thoroughly (#1410)
  • d4cddf4 [bugfix] Parse video metadata more accurately; allow Range in fileserver (#1342)
  • 132c738 [bugfix] Mount bookmarks endpoint correctly (#1338)
  • 1bda6a2 [bugfix] return early in websocket upgrade handler (#1315)
  • 2bf9bfa [bugfix] fix panic during status delete loop by breaking out early on len(statuses) == 0 (#1317)
  • de74cc6 [bugfix/frogend] replace ch units to prevent layout shift on page load (#1301)
  • eabb906 [bugfix] fix media create error not being checked (#1283)
  • 6ebdc30 [bugfix] Close reader gracefully when streaming recache of remote media to fileserver api caller (#1281)
  • 2b0342b [bugfix] use match-sorter for filtering domain blocks (#1270)
  • 1d24c1c [bugfix] Use null for empty api status language (#1268)
  • 8703933 [bugfix] fix unordered favorites (#1245)
  • 04636a3 [bugfix] attach bookmarks module to api (#1238)
  • 199672e [bugfix] fix unordered favorites (#1236)

Performance

  • acc9592 [performance] processing media and scheduled jobs improvements (#1482)
  • 40bc03e [chore/performance] Update media prune logic, add extra CLI command (#1474)
  • 70739d3 [performance] remove throttling timers (#1466)
  • 95715f9 [performance] Don't fetch avatar + header if uri hasn't changed (#1463)
  • 02767bf [performance] remove local copying of file for satisfying range headers (#1421)
  • 5318054 [performance] media processing improvements (#1288)

Chores

  • 4cba90c [chore] Split the bug template in two (#1500)
  • 700ed77 [chore] Webkit frontend fixes (#1492)
  • 041c8e6 [chore] Do cache-control in a less silly way to avoid writing header twice (#1481)
  • efbc5da [chore]: Bump github.com/minio/minio-go/v7 from 7.0.47 to 7.0.48 (#1486)
  • 33b77b3 [chore]: Bump golang.org/x/image from 0.3.0 to 0.4.0 (#1485)
  • 7231752 [chore]: Bump modernc.org/sqlite from 1.20.3 to 1.20.4 (#1484)
  • 6ac1dda [chore] small changes missed in previous dereferencer.GetAccount() PRs (#1467)
  • 65b1941 [chore] Fix report username wrapping (#1464)
  • 27e95fd [chore/bugfix] Serve + throttle publickey separately from rest of ActivityPub API (#1461)
  • 0ed50c1 [chore/frogend] domain blocklist layout on smaller screens (#1436)
  • b63b1b6 [chore] Update bug report template (#1437)
  • 47daddc [chore/frogend] Restructure form data default values / update from Query data (#1422)
  • 0a98743 [chore]: Bump codeberg.org/gruf/go-runners from 1.4.0 to 1.5.1 (#1428)
  • 1df25a3 [chore]: Bump github.com/yuin/goldmark from 1.5.3 to 1.5.4 (#1427)
  • dae14cc [chore]: Bump github.com/ulule/limiter/v3 from 3.10.0 to 3.11.0 (#1429)
  • 7f32457 [chore] stub /api/v1/featured_tags endpoint (#1420)
  • 33aee1b [chore] reformat GetAccount() functionality, support updating accounts based on last_fetch (#1411)
  • 49beb17 [chore] Text formatting overhaul (#1406)
  • 4ee4cd2 [chore/performance] use only 1 sqlite db connection regardless of multiplier (#1408)
  • b80be48 [chore] Use 'immediate' lock for sqlite transactions (#1404)
  • eccb380 [chore] Silence maxprocs logging (#1402)
  • 356e238 [chore]: Bump github.com/go-playground/validator/v10 (#1400)
  • 7bcdf35 [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.21 to 1.0.22 (#1399)
  • 782169d [chore] set max open / idle conns + conn max lifetime for both postgres and sqlite (#1369)
  • 27d4e36 [chore] Settings refactor fix4 (#1383)
  • 36f62d6 [chore] remove funky duplicate attachment in testrig (#1379)
  • 605dfca [chore] bump go version to 1.19.5 (#1377)
  • 98a09b5 [chore]: Bump ...
Read more

v0.7.0-rc3

14 Feb 11:04
700ed77
Compare
Choose a tag to compare
v0.7.0-rc3 Pre-release
Pre-release

Hello hello! This is the third and probably final release candidate for version 0.7.0 of GoToSocial 🦥

We fixed and tidied up a few remaining issues from the previous release candidate:

  • Css should be more consistent on ios browsers now.
  • Avatar and header fetching + refreshing should work more resiliently.
  • Fixed broken cache-control headers when using non-proxying s3.

Enjoy! As usual, please read the release notes for the previous two release candidates.

If you find any issues particular to this release candidate, please let us know on the github repo.

Thank you! ❤️

Changelog

  • 700ed77 [chore] Webkit frontend fixes (#1492)
  • 6c6f042 [bugfix] Return empty result rather than 500 error when searching for blocked domains (#1498)
  • 561ad71 [bugfix] Fix up error getting account avatar/header errors, other small fixes (#1496)
  • acc9592 [performance] processing media and scheduled jobs improvements (#1482)
  • 76d1b48 [docs] move federating with gotosocial documentation into single file (#1494)
  • 041c8e6 [chore] Do cache-control in a less silly way to avoid writing header twice (#1481)
  • eeca198 [docs] Update user/admin settings docs (#1491)
  • efbc5da [chore]: Bump github.com/minio/minio-go/v7 from 7.0.47 to 7.0.48 (#1486)
  • 33b77b3 [chore]: Bump golang.org/x/image from 0.3.0 to 0.4.0 (#1485)
  • 7231752 [chore]: Bump modernc.org/sqlite from 1.20.3 to 1.20.4 (#1484)
  • c223c75 [bugfix] Set appropriate cache-control when using presigned s3 links (#1480)

v0.7.0-rc2

11 Feb 14:04
40bc03e
Compare
Choose a tag to compare
v0.7.0-rc2 Pre-release
Pre-release

Hello everyone! This is the second release candidate for version 0.7.0 of GoToSocial.

Thanks for helping us find bugs! We've fixed the worst offenders, and will fix a couple more before the actual release, but we wanted to get this into people's hands already :)

Enjoy!

Migration notes

Please read the notes for the previous release candidate first!!!

Then hark to this: we've changed the media prune stuff to not run on startup anymore; instead it will just run every night, in a way more thorough manner. We managed to get a year-old instance down to 1gb total of storage use after running a prune with media-remote-cache-days set to 0, so it's pretty cool!

Changelog

  • 40bc03e [chore/performance] Update media prune logic, add extra CLI command (#1474)
  • 70739d3 [performance] remove throttling timers (#1466)
  • 6ac1dda [chore] small changes missed in previous dereferencer.GetAccount() PRs (#1467)
  • e5e257c [bugfix] Fix error on searching for account w/accountDomain by host (#1465)
  • 95715f9 [performance] Don't fetch avatar + header if uri hasn't changed (#1463)
  • 65b1941 [chore] Fix report username wrapping (#1464)
  • 27e95fd [chore/bugfix] Serve + throttle publickey separately from rest of ActivityPub API (#1461)
  • 52fbb3e [bugfix] fix 'steal this look' form, uncheck entries after processing (#1454)
  • 4e4da19 [bugfix] Use SignatureCheck middleware for web profile endpoints too (#1451)
  • 0ed50c1 [chore/frogend] domain blocklist layout on smaller screens (#1436)
  • b63b1b6 [chore] Update bug report template (#1437)
  • ad6ab03 [bugfix] don't trash emoji in profile fields on edit (#1440)
  • ac2bdbb [bugfix] fix file range length calculation being off by 1 (#1448)
  • 6a6647d [bugfix] Ignore missing files when cleaning up media (#1435)

v0.7.0-rc1

06 Feb 09:02
02767bf
Compare
Choose a tag to compare
v0.7.0-rc1 Pre-release
Pre-release

Hello everyone!

This is the first release candidate for version 0.7.0 of GoToSocial, for eager beavers to get their hands on! 🦫 🦥

Migration notes

This release candidate contains several database migrations and config file changes.

When you first run this version, it will clear out a LOT of old media files, which may take somewhere between 5 and 30 minutes and cause some heavy CPU usage. Just let it do its thing, and after a while it will return to normal and you will have a lot more disk space free!

GoToSocial now requires access to your /tmp directory for processing video files. In-progress videos will be stored in there extremely briefly (a few seconds at most).

For SQLite users: you'll notice that SQLite now runs in WAL mode by default, which means it'll create a couple extra database files in your GtS directory. This is normal, don't worry!

Installation

For binary users: you can install this release candidate as you would any other release; just download the tar and untar it on your server as usual.

For docker users: use the tag superseriousbusiness/gotosocial:0.7.0-rc1

Changelog

Full change log is below, we'll do a nicer-formatted version for the release proper.

Enjoy!

  • 02767bf [performance] remove local copying of file for satisfying range headers (#1421)
  • 75e1b9c [bugfix] fix old password hash staying in cache (#1432)
  • 83b522a [feature/Frogend] basic report admin interface (#1424)
  • 47daddc [chore/frogend] Restructure form data default values / update from Query data (#1422)
  • 0a98743 [chore]: Bump codeberg.org/gruf/go-runners from 1.4.0 to 1.5.1 (#1428)
  • 1df25a3 [chore]: Bump github.com/yuin/goldmark from 1.5.3 to 1.5.4 (#1427)
  • dae14cc [chore]: Bump github.com/ulule/limiter/v3 from 3.10.0 to 3.11.0 (#1429)
  • 7f32457 [chore] stub /api/v1/featured_tags endpoint (#1420)
  • 80c26d6 [bugfix] Allow instance thumbnail description to be set separately from image (#1417)
  • 04ac3f8 [bugfix] Fix password change keys (#1416)
  • abe9447 fix cache startup (#1414)
  • 33aee1b [chore] reformat GetAccount() functionality, support updating accounts based on last_fetch (#1411)
  • a59dc85 [feature/frogend] (Mastodon) domain block CSV import (#1390)
  • 49beb17 [chore] Text formatting overhaul (#1406)
  • 271da01 [bugfix] Read Bookwyrm Articles more thoroughly (#1410)
  • 382512a [feature] Implement /api/v2/instance endpoint (#1409)
  • 4ee4cd2 [chore/performance] use only 1 sqlite db connection regardless of multiplier (#1408)
  • b80be48 [chore] Use 'immediate' lock for sqlite transactions (#1404)
  • eccb380 [chore] Silence maxprocs logging (#1402)
  • dc766f9 [docs] Add an example on how to setup redirect with Traefik (#1395)
  • 356e238 [chore]: Bump github.com/go-playground/validator/v10 (#1400)
  • 7bcdf35 [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.21 to 1.0.22 (#1399)
  • 43cbe3b [docs] Simplify Apache httpd proxy documentation (#1396)
  • 3283900 [feature] Federate reports to remote instance as Flag (if desired) (#1386)
  • c59ec6f [docs] Add Flag documentation to federation docs (#1393)
  • 1fa574f [docs] Tidy up federation docs into 'federating with gotosocial' section (#1392)
  • 8d18888 [chore/docs] add instance-expose-suspended-web to instance docs (#1391)
  • 08f8fea [feature/frontend] filterable local emoji list (#1385)
  • 782169d [chore] set max open / idle conns + conn max lifetime for both postgres and sqlite (#1369)
  • 17eecfb [feature] Public list of suspended domains (#1362)
  • 993aae5 [feature] Accept incoming federated Flag activity (#1382)
  • faeb7de [feature] Implement reports admin API so admins can view + close reports (#1378)
  • 27d4e36 [chore] Settings refactor fix4 (#1383)
  • 36f62d6 [chore] remove funky duplicate attachment in testrig (#1379)
  • e974724 [feature] Implement /api/v1/reports endpoints on client API (#1330)
  • 605dfca [chore] bump go version to 1.19.5 (#1377)
  • 98a09b5 [chore]: Bump github.com/spf13/viper from 1.14.0 to 1.15.0 (#1375)
  • 3e4dc6b [chore]: Bump github.com/abema/go-mp4 from 0.9.0 to 0.10.0 (#1374)
  • 73be244 [feature] Add RSS autodiscovery on profiles that enable RSS (#1373)
  • 13ec15d [chore] extending maximumPasswordLength to 256 (#1372)
  • 0ceacd7 [chore] bump db dependencies (#1366)
  • b375d3b [chore] Add name to instance field for autosuggestion (#1359)
  • 747683b [chore] Settings refactor fix 2 (#1357)
  • 13e3aaa [chore] Fix new emoji preview title/alt text (#1354)
  • 9b139b6 [frogend] Settings refactor (#1318)
  • 974ec80 [chore] Change default sqlite busy timeout to 5m (#1352)
  • acc333c [feature] Inherit resource limits from cgroups (#1336)
  • 627b8ee [feature] Tune sqlite pragmas (#1349)
  • a6c6bdb [chore]: Bump codeberg.org/gruf/go-errors/v2 from 2.0.2 to 2.1.1 (#1346)
  • d4cddf4 [bugfix] Parse video metadata more accurately; allow Range in fileserver (#1342)
  • fe3e9ed [chore]: Bump github.com/minio/minio-go/v7 from 7.0.44 to 7.0.47 (#1348)
  • 2a46980 [chore]: Bump golang.org/x/oauth2 from 0.3.0 to 0.4.0 (#1347)
  • 6b15b83 [docs] Remove videos from the list of missing features in the FAQ. (#1344)
  • 132c738 [bugfix] Mount bookmarks endpoint correctly (#1338)
  • eafd73c [chore] Remove omitempty on account source; refactor tests to use prettyprint json (#1337)
  • 5318054 [performance] media processing improvements (#1288)
  • 3512325 [feature] Add local user and post count to nodeinfo responses (#1325)
  • d648793 [feature] Implement Report database model and utility functions (#1310)
  • 36aa685 [chore] Bump json5 from 1.0.1 to 1.0.2 in /web/source (#1308)
  • ac562fa [chore]: Bump github.com/coreos/go-oidc/v3 from 3.4.0 to 3.5.0 (#1322)
  • 0ca6a9d [chore]: Bump golang.org/x/image from 0.2.0 to 0.3.0 (#1320)
  • 86ae0b1 [chore]: Bump golang.org/x/text from 0.5.0 to 0.6.0 (#1321)
  • 345b765 [chore]: Bump golang.org/x/net from 0.4.0 to 0.5.0 (#1319)
  • 1bda6a2 [bugfix] return early in websocket upgrade handler (#1315)
  • 98edd75 [docs] Rewrite sponsorship + funding section, add NLnet (#1305)
  • 9859a43 [docs] Add s3 ssl variable to storage docs (#1294)
  • 2bf9bfa [bugfix] fix panic during status delete loop by breaking out early on len(statuses) == 0 (#1317)
  • 6791920 [chore/frogend] update status blockquote css (#1302)
  • 2a1205a [docs] AWS S3 config details added (#1300)
  • adbc877 [chore] pull in latest go-cache, go-runners versions (#1306)
  • 0dbe6c5 [chore] Update/add license headers for 2023 (#1304)
  • ff46dd4 [chore] Fix emoji notnull constraint on initial gtsmodel (#1303)
  • de74cc6 [bugfix/frogend] replace ch units to prevent layout shift on page load (#1301)
  • 90a14ab [feature] HTTP request throttling middleware (#1297)
  • 0b8eafe [docs] Fix documentation edit link (#1298)
  • 71dfea7 [chore] shuffle middleware to split rate limitting into client/s2s/fileserver, share gzip middleware globally (#1290)
  • 9ecb1c8 [docs] Add troubleshooting section for Apache (#1291)
  • 941893a [chore] The Big Middleware and API Refactor (tm) (#1250)
  • 560ff12 [chore]: Bump github.com/abema/go-mp4 from 0.8.0 to 0.9.0 (#1287)
  • b966d3b [chore]: Bump github.com/gin-gonic/gin from 1.8.1 to 1.8.2 (#1286)
  • abd594b [chore]: Bump codeberg.org/gruf/go-bytesize from 1.0.0 to 1.0.2 (#1285)
  • 1659f75 [feature] For video attachments, store + return fps, bitrate, duration (#1282)
  • eabb906 [bugfix] fix media create error not being checked (#1283)
  • 6ebdc30 [bugfix] Close reader gracefully when streaming recache of remote media to fileserver api caller (#1281)
  • 0871f5d [chore] note broken go v1.19.4 in contributing.md (#1278)
  • 2bbc64b [feature] Enable basic video support (mp4 only) (#1274)
  • 0f38e7c [chore] fix some little config whoopsies (#1272)
  • da751c0 update go-cache to v3.2.0 with support for ignoring errors (#1273)
  • eb08529 [chore/bugfix] Switch markdown from blackfriday to goldmark (#1267)
  • 2b0342b [bugfix] use match-sorter for filtering domain blocks (#1270)
  • 1d24c1c [bugfix] Use null for empty api status language (#1268)
  • bae7398 [docs] Update Apache docs to use 127.0.0.1 instead of localhost (#1266)
  • 0f8d938 [chore] Add svg version of sloth logo as logo.svg (#1265)
  • 418bfbf [docs] Update nginx docs to use 127.0.0.1 instead of localhost (#1264)
  • d10388c [feature] support Sec-Websocket-Protocol in streaming API (#1254)
  • 69dd5fe [feature] domain block wildcarding (#1178)
  • 8703933 [bugfix] fix unordered favorites (#1245)
  • 58c87bd [feature] allow uncaching of other media types (#1234)
  • a7e71d7 [chore]: Bump golang.org/x/image from 0.1.0 to 0.2.0 (#1252)
  • 4b8d7bd [frogend] Emoji copy "Steal this look" (#1222)
  • ce615b5 [docs] Serve static assets with nginx (#1251)
  • cb2b2fd [feature] support configuring database caches (#1246)
  • d2a09c1 [docs] Caching webfinger with nginx (#1242)
  • 5e060d0 [feature] Start implementing refetch of lost media files via /api/v1/admin/media_refetch (#1221)
  • 24b4f9b [chore] make single pull request template (#1239)
  • 04636a3 [bugfix] attach bookmarks module to api (#1238)
  • 610c270 [docs] Update CONTRIBUTING.md, add pull request templates (#1216)
  • 199672e [bugfix] fix unordered favorites (#1236)
  • 477ae50 [feature] Allow users to create + delete bookbarks, and view bookmarked statuses (#1168)
  • e58d2d8 [chore] move caches to a separate State{} structure (#1078)
  • dd1a4cd [chore] Remove deprecated linters (#1228)
  • aea16bb [docs] Update README.md (#1126)
  • 923d333 [docs] encourage using loopback bind address (#1166)
  • 199b685 [feature] overhaul the oidc system (#961)
  • 1a3f26f [feature] media: add webp support (#1155)