Skip to content

v0.10.0 Shrimple Sloth 🦐

Compare
Choose a tag to compare
@gotosocialorg gotosocialorg released this 21 Jul 13:46
· 943 commits to main since this release
89ee9d5

Hello! We did a release! Here it is! We fixed a bunch of broken stuff and added some more stuff that's probably broken and which we'll have to fix in the future! 😎

As always, big thank you to all contributors and well-wishers, and those who use the software and help it grow. The sloth thanks you.

Highlights

  • LISTS: this has been one of the most frequently requested features for GoToSocial since forever, so we're happy to be able to include it now! With this release, you can create lists, delete lists, add/remove accounts from lists, and view list timelines in your client app. It works pretty OK!
  • Partial search implementation: previously, you could only use search to look for exact URLs (https://example.org/users/someone) or to look for users by their exact namestring (@[email protected]). With this release, you can now also do partial text searches for:
    • statuses you've posted yourself (search in status content warning and body)
    • statuses posted in reply to you (search in status content warning and body)
    • accounts you don't yet follow (search in username and display name)
    • accounts you do follow (search in username, display name, and bio)
  • Profile field settings: you can now set up to 6 profile property/value fields in the settings panel.
  • Loads of bug fixes. We fixed some of the more annoying/longstanding bugs including missing profile + header pics, please see the section 'First run of media cleanup' below.

Migration notes

Upgrading

To upgrade to 0.10.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.10.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.9.0...v0.10.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!

First run of media cleanup

The first time your instance runs a media cleanup (normally at midnight every night), it will likely take a long time. We introduced some issues in 0.9.0 to do with avatars + headers, and the first media cleanup you do in this new version fixes those issues by iterating through all your stored media attachments and fixing ones whose file is missing. Just let it run, it will sort itself out!

Detailed changelog

Features/performance

  • f0dad43 [feature] Use Read/Write lock for config (#1969)
  • 2a99df0 [feature] enable + document explicit IP dialer allowing/denying (#1950)
  • 81f33c3 [feature] Add media list command (#1943)
  • ba0bc06 [feature] Add instance stats to /about (#1936)
  • 8e00431 [performance] update go-cache library (#1917)
  • 831ae09 [feature] Add partial text search for accounts + statuses (#1836)
  • 8fb5a7e [Frontend] Settings for profile fields (#1885)
  • 20978b1 [performance] wrap httpclient response body to ensure drained before close (#1854)
  • f5c004d [feature] Add List functionality (#1802)
  • fc524f8 [feature] Configurable custom css length (#1827)

Bugfixes

  • 89ee9d5 [bugfix] Return all accounts when list accounts limit <= 0 (#2014)
  • d6fa74e [bugfix] Change maximumPasswordLength to 72 bytes (#2012)
  • f431974 [bugfix] more robust list timeline invalidation (#1995)
  • 346ecab [bugfix] Add missing continue statement in prepareXBetweenIDs (#1996)
  • 12b6cdc [bugfix] Set Vary header correctly on cache-control (#1988)
  • 1951e6c [bugfix] Update account Update logic (#1984)
  • 8d92b24 [bugfix] Align default values in the configuration file with the code (#1971)
  • 0d267fd [bugfix] Properly handle range > content-length (#1979)
  • ca5492b [bugfix] Tidy up rss feed serving; don't error on empty feed (#1970)
  • 6dbb8ba [bugfix] Fix delete follow req instead of follow (#1962)
  • f40bb02 [bugfix] Delete mutual follow (requests) when receiving block from remote (#1960)
  • 672386a [bugfix] Don't overflow on very wide status'es (#1956)
  • ac564c1 [bugfix] Reorder web view logic, other small fixes (#1954)
  • 3d16962 [chore/bugfix] Break Websockets logic into smaller read/write functions, don't log expected errors (#1932)
  • 2a40c81 [bugfix] Try to fix the webfinger test, again (#1931)
  • d98b631 [bugfix] Use gtserror package for WrongType errs (#1930)
  • 52ebff5 [bugfix] Only mark status orphaned on 410 Gone (#1923)
  • 3e19f48 [bugfix] Ensure InReplyToID set properly, update dereference ancestors func (#1921)
  • 9a22102 [bugfix/chore] oauth entropy fix + media cleanup tasks rewrite (#1853)
  • 73bfb5f [bugfix] Parse POST-style forms in the list member removal endpoint (#1903)
  • d8e16a2 [chore/bugfix] Refactor ap/extract.go functions, return URIs more reliably (#1897)
  • 0fa06c0 [bugfix] Accept non-multipart forms for account updates (#1896)
  • e70bf8a [chore/bugfix] Domain block tidying up, Implement first pass of 207 Multi-Status (#1886)
  • 827cc4d [chore/bugfix] Demote failed inbox forwarding to warn log rather than error return (#1892)
  • 5e2897e [bugfix] Invalidate timeline entries for status when stats change (#1879)
  • b0015a3 [bugfix] Delete from list timeline on status deletion (#1878)
  • d7d6603 [bugfix] Fix slow joined home timeline query (#1867)
  • 1d4137f [bugfix] Fix first item of thread dereferencing always being skipped (#1858)
  • 1f39275 [bugfix] Allow lowercase emoji shortcode in frontend (#1851)
  • 2358cf4 [bugfix] Overwrite API client closed errors with 499 - Client Closed Request (#1857)
  • 9da20ee [bugfix] only attempt to populate account/statuses from DB if already exist (#1839)
  • 70262d4 [fix] Fix link to remote emoji pgae (#1845)
  • 46d4ec0 [bugfix/chore] Inbox post updates (#1821)
  • 45f961a [bugfix] allow usernames of length 1 (#1823)

Documentation

Chores / version bumps

  • 6de5ca4 [chore]: Bump golang.org/x/net from 0.11.0 to 0.12.0 (#1973)
  • 901770f [chore]: Bump golang.org/x/image from 0.8.0 to 0.9.0 (#1972)
  • f5d6503 Bump semver from 6.3.0 to 6.3.1 in /web/source (#1981)
  • a29b5af [chore]: Bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 (#1975)
  • 65c8970 [chore] Fix password typos (#1966)
  • 8868889 [chore] Skip webfinger test on CI (#1983)
  • d9c69f6 [chore/performance] Remove remaining 'whereEmptyOrNull' funcs (#1946)
  • 1218f97 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.58 to 7.0.59 (#1941)
  • e3e0f67 [chore]: Bump github.com/minio/minio-go/v7 from 7.0.56 to 7.0.58 (#1928)
  • 4ad933b [chore]: Bump github.com/miekg/dns from 1.1.54 to 1.1.55 (#1929)
  • 120743d [chore]: Bump github.com/tdewolff/minify/v2 from 2.12.6 to 2.12.7 (#1927)
  • 33ccb71 [chore]: Bump golang.org/x/image from 0.7.0 to 0.8.0 (#1926)
  • f56dd29 [chore]: Bump golang.org/x/oauth2 from 0.8.0 to 0.9.0 (#1908)
  • 84eb7ea [chore] Fix Swagger paths for lists API endpoints (#1904)
  • 70357a7 [chore]: Bump github.com/jackc/pgx/v5 from 5.3.1 to 5.4.1 (#1907)
  • b560fe1 [chore]: Bump golang.org/x/net from 0.10.0 to 0.11.0 (#1909)
  • 54f3387 [chore]: Bump golang.org/x/crypto from 0.9.0 to 0.10.0 (#1910)
  • 24fbdf2 [chore] Refactor AP authentication, other small bits of tidying up (#1874)
  • 5d19fb1 [chore]: Bump modernc.org/sqlite from 1.23.0 to 1.23.1 (#1884)
  • b401bd1 [chore] update latest deps, ensure readme up to date (#1873)
  • f1b70cc [chore]: Bump github.com/minio/minio-go/v7 from 7.0.55 to 7.0.56 (#1869)
  • 7638a68 [chore]: Bump github.com/stretchr/testify from 1.8.3 to 1.8.4 (#1872)
  • 97bc2e7 [chore] tidy + test timelines a bit better (#1865)
  • 21c1552 [chore] Update versions, fix lint errors (#1860)
  • 55aacaf [chore]: Bump github.com/gin-gonic/gin from 1.9.0 to 1.9.1 (#1855)
  • 23705b3 [chore/frontend] refactor header templating, add apple-touch-icon (#1850)
  • 049b02a [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.23 to 1.0.24 (#1843)
  • f620ee8 [chore]: Bump github.com/coreos/go-oidc/v3 from 3.5.0 to 3.6.0 (#1840)
  • e50b228 [chore]: Bump github.com/ulule/limiter/v3 from 3.11.1 to 3.11.2 (#1841)
  • 2e7043b [chore]: Bump github.com/stretchr/testify from 1.8.2 to 1.8.3 (#1842)
  • 9ed96bc [chore]: Bump github.com/minio/minio-go/v7 from 7.0.53 to 7.0.55 (#1844)
  • 5faeb4d [chore] tidy up media manager, add calling func to errors, build-script improvements (#1835)

New Contributors

Full Changelog: v0.9.0...v0.10.0