codeberg superseriousbusiness/gotosocial v0.17.0-rc1

latest releases: v0.19.2, v0.19.1, v0.19.0...
pre-release11 months ago

⚠️ 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 few seconds and an hour or even more (on slower hardware / big databases). Please be patient! Back up your database file before updating! We had to rejig the entire statuses table to introduce interaction policies (see below). ⚠️

Release highlights

Hello everyone! This is the first release candidate for v0.17.0 of GoToSocial! We've absolutely jam-packed this release (candidate) with goodies:

  • Interaction policies: This release gives you the ability to set interaction policies on your statuses using the settings panel. Interaction policies let you determine who can reply to, like, or boost your statuses. You can accept or reject interactions as you wish; accepted replies will be added to your replies collection, and unwanted replies will be dropped. This feature is still a work-in-progress as we will almost certainly have some kinks to work out in terms of implementation etc, but we wanted to get it into people's hands as quickly as possible.
    User docs here: https://docs.gotosocial.org/en/latest/user_guide/settings/#default-interaction-policies
    Federation docs here: https://docs.gotosocial.org/en/latest/federation/posts/#interaction-policy
  • Much wider range of support for different media types: In this release we've embedded a webassembly build of ffmpeg into the GoToSocial binary, so that users can post many different types of media than previously, including mp3, flac, and other audio types, and many more video types. Admins: you don't need to have ffmpeg installed on your server for this to work.
  • Audio player: to complement the new media types, we adapted our current video player to also play audio, so people visiting your profile can play MP3s and FLACs. Album art is supported when embedded in the audio file!
  • Header/avatar alt text: You can now set alt-text for your avatar + header images, so that screenreader users visiting your profile can read a description of your beautiful face.
  • Better threading model for statuses: On the web view of a thread, conversations are now indented at different levels, to make it easier to see who's replying to whom.
  • Prefers-reduced-motion is now supported, so that folks with animations turned off in their operating system or browser aren't confronted with lots of animation when they open your profile.
  • Conversations view: You can now view a list of your direct message conversations, making it much easier to keep track of who you're talking to.
  • Import/export csv files: It's now possible to import Mastodon-compatible CSV files for accounts you follow and accounts you block, making it much easier to migrate across instances. Export of these files is supported too.
  • Exclusive lists: You can now mark lists as "exclusive", which means that posts from accounts in an exclusive list will show up only in that list and not in your home timeline.
  • Show/hide posts on your profile: Previously only Public posts were shown on your web profile. This is still the default, but you can now choose to show unlisted posts on your web profile too (the Mastodon default), or to show no posts at all.
  • Lots of new themes: solarized, brutalist, ecks pee, and more.
  • Store worker queue on restart: when you stop the instance, pending tasks are stored into the database, and loaded again when you start up the instance, so that no tasks get lost between restarts.

Migration notes

Upgrading

To upgrade to 0.17.0-rc1 from a previous release:

Binary/tar

  1. Stop GoToSocial
  2. Back up your database! For sqlite, this is as simple as copying your sqlite.db file.
  3. Untar the new release, including the web assets and html templates.
  4. Edit your config.yaml file as necessary (see below).
  5. Start GoToSocial
  6. Wait patiently for migrations to run and do not interrupt them.

Docker

  1. Stop GoToSocial.
  2. Back up your database! For sqlite, this is as simple as copying your sqlite.db file.
  3. Pull the new docker container (superseriousbusiness/gotosocial:0.17.0-rc1 or superseriousbusiness/gotosocial:latest)
  4. Edit your config.yaml file as necessary (see below).
  5. Start GoToSocial.
  6. Wait patiently for migrations to run and do not interrupt them.

config.yaml

The configuration file has changed since the previous release. You can see a diff of the config file here: https://github.com/superseriousbusiness/gotosocial/compare/v0.16.0...v0.17.0-rc1#diff-c071e03510b2c57e193a44503fd9528a785f0f411497cc75841a9f8d0b1ac622

  • Add db-postgres-connection-string.
  • Remove media-image-max-size and media-video-max-size.
  • Add media-local-max-size and media-remote-max-size.
  • Add media-ffmpeg-pool-size.
  • Add storage-s3-redirect-url.
  • Change http-client.timeout default from 10s to 30s to reduce occurrence of "could not download media" message.

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 few seconds and an hour or more (on slower hardware / big databases). Please be patient! Back up your database file before updating! ⚠️

Detailed changelist

Features + performance

  • [feature] Implement types[] param for notifications by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3009
  • [feature/frontend] Reports frontend v2 by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3022
  • [feature] add worker task serialization logic by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/2989
  • [feature] Rain Forest Theme by @xmgz in https://github.com/superseriousbusiness/gotosocial/pull/3021
  • [feature] Default to WASM-based SQLite driver by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3053
  • [feature] Set some security related headers by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3065
  • [feature/frontend] Allow setting alt-text for avatar + header by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3086
  • [feature] support processing of (many) more media types by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3090
  • [feature/frontend] Better visual separation between "main" thread and "replies" by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3093
  • [feature/frontend] Add player for audio files; use thumbnail for poster by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3099
  • [feature] more filetype support! by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3107
  • [feature] Allow users to set default interaction policies per status visibility by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3108
  • [feature] use webp for thumbnails by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3116
  • [feature/frontend] Respect prefers-reduced-motion for avatars, headers, and emojis by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3118
  • [feature] add flac support by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3121
  • [feature] Conversations API by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3013
  • [feature] Allow user to set "bot" flag; show bot icon on profile by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3135
  • [feature] Federate interaction policies + Accepts; enforce policies by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3138
  • [feature] Implement following hashtags by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3141
  • [feature] persist worker queues to db by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3042
  • [performance] limit ffprobe read time to at most 1s after start of file by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3155
  • [feature] Object store custom URL (S3) by @CDN18 in https://github.com/superseriousbusiness/gotosocial/pull/3046
  • [feature] Allow users to export data via the settings panel by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3140
  • [feature] Implement Mastodon-compatible roles by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3136
  • [feature] Allow import of following and blocks via CSV by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3150
  • [feature] Beef up our AI opt-outs by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3165
  • [feature] Use gifv type for short soundless mp4 videos by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3182
  • handle db-url by @winston0410 in https://github.com/superseriousbusiness/gotosocial/pull/3178
  • [performance] move thumbnail generation to go code where possible by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3183
  • [performance] use native Go code to probe JPEGs by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3206
  • [feature] Use local_only field, deprecate federated field by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3222
  • [performance] ffmpeg ffprobe wrapper improvements by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3225
  • [feature] Interaction requests client api + settings panel by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3215
  • [performance] use single-threaded image transforms by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3252
  • [feature/frontend] ecks pee theme by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3274
  • [feature/frontend] Add brutalist b&w theme by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3275
  • [feature/frontend] Add options to include Unlisted posts or hide all posts by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3272
  • [feature] Implement exclusive lists by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3280
  • [feature] Process Reject of interaction via fedi API, put rejected statuses in the "sin bin" 😈 by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3271
  • [feature/frontend] Add dark version of brutalist theme by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3294
  • [performance] cache more database calls, reduce required database calls overall by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3290
  • [feature] Allow users to submit interaction_policy on new statuses by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3314
  • [feature/frontend] Add solarized light + dark themes by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3325
  • [feature] Show info for pending replies, allow implicit accept of pending replies by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3322

Bugfixes

  • [bugfix] rename include_types[] to types[] by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3023
  • [bugfix] add Date and Message-ID headers for email by @jugendhacker in https://github.com/superseriousbusiness/gotosocial/pull/3031
  • [bugfix] Fix typo in instance cache copyF by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3052
  • [fix] use instance configured emoji maxsize on emoji update validation by @f0x52 in https://github.com/superseriousbusiness/gotosocial/pull/3056
  • [bugfix] update SignupURL routing in email template by @CDN18 in https://github.com/superseriousbusiness/gotosocial/pull/3055
  • [bugfix] Handle ErrHideStatus when preparing timeline statuses by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3071
  • [frontend] Better autocapitalize/spellcheck settings on forms by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3077
  • [bugfix] Don't throw error when parent statuses are missing (#2011) by @snowkat in https://github.com/superseriousbusiness/gotosocial/pull/3088
  • [bugfix] Fix panic in isStatusHomeTimelineable by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3096
  • [bugfix] give read-only access to /dev for ffmpeg to access /dev/urandom by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3109
  • [bugfix] update common get target account / status doing refresh async by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3124
  • [bugfix] media.Processor{}.GetFile() returning 404s on first call, correctly loading on 2nd by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3129
  • [bugfix] Explicitly propagate filter results from statuses to their boosts in API responses by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3130
  • Serialize empty conversation account list as empty list, not null by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3137
  • [bugfix] Use punycode for host part of resource query param when doing webfinger requests by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3133
  • [bugfix] ensure ffmpeg muxer gets set correctly by setting input file extension before clean by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3142
  • [bugfix] moves file rename to earlier in media pipeline so ffmpeg calls ALWAYS have a file extension by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3146
  • [bugfix] take into account rotation when generating thumbnail by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3147
  • Fix no rows in result set error in emoji list command by @rdelaage in https://github.com/superseriousbusiness/gotosocial/pull/3152
  • [bugfix] close files before error return by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3163
  • [bugfix] fix emoji recaching operations by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3167
  • [bugfix] send back Sec-Websocket-Protocol header for streaming WebSocket by @leahneukirchen in https://github.com/superseriousbusiness/gotosocial/pull/3169
  • [bugfix] ensure testrig package only compiled-in when debug enabled by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3185
  • [bugfix] updated pinned counts on status delete by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3188
  • [bugfix] incorrect AP serialize function used serializing worker data by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3196
  • [bugfix] relax missing preferred_username, instead using webfingered username by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3189
  • [bugfix] permit unspecified orientation data by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3205
  • [bugfix/frontend] Fix error on submitting domain perm with enter key by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3218
  • [bugfix/frontend] Small safari + gnome web fixes by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3219
  • [bugfix] Carry-over ApprovedByURI to avoid marking already-approved remote statuses as pending approval by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3231
  • [bugfix] Let prometheus client do its own compression handling by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3232
  • [bugfix] move WASM compilation stage much later in server init by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3242
  • [bugfix] Fix incorrect json-ld @context serialization by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3243
  • [bugfix/frontend] Fix TypeError: gtsError is undefined by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3245
  • [bugfix] fix new processing media / emoji not being added to dereferencer maps :facepalm: by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3269
  • [bugfix] Fix temp table deletion causing runaway allocations by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3278
  • [bugfix] Swagger: add missing filter_action param for v2 filter PUT by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3281
  • [bugfix] Update home timeline query to ignore exclusive list entries by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3289
  • [bugfix] Hoist filterable text field extraction out of loop by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3297
  • always set the status sensitive flag to true if it has a content-warn… by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3308
  • [bugfix] Use better plaintext representation of status for filtering by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3301
  • [bugfix] Be more lenient when parsing mastodown following.csv by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3311
  • [bugfix] Ensure id set on outgoing Reject + Accept by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3312
  • [bugfix] Fix incorrect policy value parsing by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3315
  • [bugfix] Fix pending approval check by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3316
  • [bugfix/email] Don't use plainAuth when no smtp username/password provided by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3332
  • [bugfix] add support for media with rotation contained in stream side data by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3335

Chores

  • [chore]: Bump github.com/yuin/goldmark from 1.7.1 to 1.7.2 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3018
  • [chore]: Bump github.com/tdewolff/minify/v2 from 2.20.33 to 2.20.34 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3017
  • [chore]: Bump github.com/miekg/dns from 1.1.59 to 1.1.61 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3014
  • [chore]: Bump golang.org/x/oauth2 from 0.20.0 to 0.21.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3015
  • [chore]: Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3016
  • [chore] update go-structr and go-mangler to no longer rely on modern-go/reflect2 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3026
  • [chore] updates go-mutexes to no longer rely on unsafe linkname by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3027
  • [chore] update remaining gruf libraries relying on linkname by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3028
  • [chore] update github.com/ncruces/go-sqlite3 -> v0.16.3 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3029
  • [chore] Update our robots.txt by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3033
  • [chore]: Bump github.com/yuin/goldmark from 1.7.2 to 1.7.3 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3034
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.71 to 7.0.72 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3037
  • [chore]: Bump github.com/gorilla/feeds from 1.1.2 to 1.2.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3035
  • [chore] media and emoji refactoring by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3000
  • [chore]: Bump golang.org/x/image from 0.17.0 to 0.18.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3044
  • [chore] Add envparsing test for advanced-header-filter-mode by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3051
  • [chore]: Bump github.com/yuin/goldmark from 1.7.3 to 1.7.4 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3059
  • [chore] Allow gtsmodel to depend on util by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3068
  • [chore] Update ncruces/go-sqlite3 to 0.17 by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3072
  • [chore] upstep activity to v1.7.0-gts by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3074
  • [chore]: Bump golang.org/x/crypto from 0.24.0 to 0.25.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3080
  • [chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.26 to 1.0.27 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3081
  • [chore]: Bump golang.org/x/net from 0.26.0 to 0.27.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3082
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.72 to 7.0.73 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3083
  • [chore/frontend] Put ActivityPub logo on index page by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3087
  • [chore] Bump ncruces/go-sqlite3 to 0.17.1 by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3085
  • [choore] Update robots.txt by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3092
  • [chore] Add interaction policy gtsmodels by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3075
  • [chore/frontend] Tweak threading a bit, inform about hidden replies by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3097
  • [chore] Go mod tidy / vendor by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3100
  • [chore] add step-by-step logging to long migration by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3102
  • [chore]: Bump github.com/coreos/go-oidc/v3 from 3.10.0 to 3.11.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3104
  • [chore]: Bump github.com/tdewolff/minify/v2 from 2.20.34 to 2.20.37 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3106
  • [chore] media pipeline improvements by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3110
  • [chore] Fix typo by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3113
  • [chore/frontend] Use smaller webp images for logo and default avatars by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3119
  • [chore] update go-ffmpreg to v0.2.3 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3120
  • [chore] Remove duplicate <hr> by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3123
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.73 to 7.0.74 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3125
  • [chore] Remove content and related fields from boosts by @VyrCossont in https://github.com/superseriousbusiness/gotosocial/pull/3131
  • [chore] Add some log lines to recent migrations warning not to interrupt by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3134
  • [chore] renames the GTS caches to DB caches by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3127
  • [chore] Add interaction filter to complement existing visibility filter by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3111
  • [chore] small tidying of dereferencer status permissivity by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3143
  • [chore] log delivery worker stop/start at debug level by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3145
  • [chore] add some more slice related utility functions + remove duplicates by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3149
  • [chore] replace UniqueStrings with Deduplicate by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3154
  • [chore] Take account of rotation data when calculating full size image dimensions by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3159
  • [chore] add back exif-terminator and use only for jpeg,png,webp by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3161
  • [chore] move PopulateAccountStats() nil check often performed into function itself by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3158
  • [chore/frontend] Update namerole rendering on skinny devices by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3166
  • [chore] Add media-ffmpeg-pool-size config var by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3164
  • [chore]: Bump golang.org/x/oauth2 from 0.21.0 to 0.22.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3171
  • [chore] updates our ffmpreg version, heh by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3181
  • [chore]: Bump golang.org/x/net from 0.27.0 to 0.28.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3194
  • [chore]: Bump golang.org/x/image from 0.18.0 to 0.19.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3191
  • [chore] update go-structr to v0.8.8 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3199
  • [chore] update go-fastcopy to v1.1.3 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3200
  • [chore] update go-ffmpreg to v0.2.5 (pulls in latest tetratelabs/wazero) by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3203
  • [chore] update go-sqlite3 to v0.18.0 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3204
  • [chore]: Bump github.com/prometheus/client_golang from 1.19.1 to 1.20.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3210
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.74 to 7.0.75 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3208
  • [chore]: Bump github.com/miekg/dns from 1.1.61 to 1.1.62 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3209
  • [chore] update default http client timeout to 30s by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3214
  • Bump micromatch from 4.0.5 to 4.0.8 in /web/source by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3227
  • Bump elliptic from 6.5.4 to 6.5.7 in /web/source by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3212
  • [chore/bugfix] Fix missing insertion of preapproved interaction requests by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3228
  • [chore] Tiny tweak to ApprovedByURI by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3234
  • [chore] Remove unused "env" wasm module by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3235
  • [chore]: Bump github.com/prometheus/client_golang from 1.20.0 to 1.20.2 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3239
  • [chore] Bump all otel deps by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3241
  • [chore/frontend] Present themes as dropdown instead of radio by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3244
  • [chore] Update robots.txt with more AI scrapers by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3248
  • [chore] Only call imaging.Resize when necessary, use even tinier blurhashes by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3247
  • [chore] Upgrade ncruces/go-sqlite3 to v0.18.1 by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3253
  • [chore] Close copied request body in SignDelivery by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3254
  • [chore]: Bump github.com/minio/minio-go/v7 from 7.0.75 to 7.0.76 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3262
  • [chore/performance] Avoid unnecessary "uncached" queries by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3265
  • [chore] Don't try to select zero uncached filters by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3266
  • [chore/performance] Further reduce nil uncached queries by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3267
  • [chore] More AI blocking by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3273
  • [chore] Change ecks pee font size to large by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3276
  • [chore]: Bump github.com/prometheus/client_golang from 1.20.2 to 1.20.3 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3282
  • [chore]: Bump golang.org/x/text from 0.17.0 to 0.18.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3286
  • [chore]: Bump golang.org/x/image from 0.19.0 to 0.20.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3285
  • [chore]: Bump golang.org/x/oauth2 from 0.22.0 to 0.23.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3284
  • [chore]: Bump golang.org/x/crypto from 0.26.0 to 0.27.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3283
  • [chore] status dereferencing improvements by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3255
  • [chore] update go-ffmpreg v0.2.5 -> v0.2.6 by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3287
  • [chore] update list of library deps on readme by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3288
  • [chore] Fix import/export links on settings panel by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3292
  • [chore] Update go-sqlite3 to 0.18.3 by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3295
  • [chore]: Bump github.com/jackc/pgx/v5 from 5.6.0 to 5.7.1 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3302
  • [chore]: Bump golang.org/x/net from 0.28.0 to 0.29.0 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3303
  • [chore] Bump otel deps -> v1.30.0/v0.52.0 by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3307
  • [chore] Reject replies to rejected replies by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3291
  • [chore] Refactor federatingDB.Undo, avoid 500 errors on Undo Like by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3310
  • [chore] improved federatingdb logging in cases of unknown iri / types by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3313
  • [chore/frontend] Tweak status styling a little by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3317
  • [chore] make csv export ordering determinate by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3318
  • [chore/frontend] Tweak blockquote formatting by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3326
  • [chore]: Bump github.com/prometheus/client_golang from 1.20.3 to 1.20.4 by @dependabot in https://github.com/superseriousbusiness/gotosocial/pull/3327
  • [chore/frontend] Make ecks pee theme even more ecks pee er by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3324
  • [chore] ensure consistent caller name fetching regardless of compiler inlining by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3323
  • [chore] header filter improvements by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3329
  • [chore] local instance count query caching, improved status context endpoint logging, don't log ErrHideStatus when timelining by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3330
  • [chore] add nometrics build tagging to metrics API endpoint by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3331
  • [chore/docs] More little tweaks by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3336
  • [chore] Roll otel deps back to v1.29.0 / v0.51.0 by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3337

Docs

  • [docs] traefik redirect regex documentation by @coxde in https://github.com/superseriousbusiness/gotosocial/pull/3032
  • [docs] restructure federation section by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3038
  • [docs] Tidy up API auth docs a little bit by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3050
  • [docs] Update how to enable http2 on nginx by @daenney in https://github.com/superseriousbusiness/gotosocial/pull/3066
  • [docs] update README with our corporate sponsorship policy by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3112
  • [docs] Add separate migration section + instructions for moving to GtS and not just away by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3139
  • [docs] Update system requirements, move things around a bit by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3157
  • [docs] Update readme alpha -> beta, add more feature examples by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3333
  • [docs] Add rainforest theme to readme.md by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3334

Security

  • [security] harden account update logic by @NyaaaWhatsUpDoc in https://github.com/superseriousbusiness/gotosocial/pull/3198
  • [security] Implement allowFiles fs for better isolation of ffmpeg / ffprobe by @tsmethurst in https://github.com/superseriousbusiness/gotosocial/pull/3251

New Contributors

  • @jugendhacker made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3031
  • @xmgz made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3021
  • @coxde made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3032
  • @snowkat made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3088
  • @leahneukirchen made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3169
  • @winston0410 made their first contribution in https://github.com/superseriousbusiness/gotosocial/pull/3178

Full Changelog: https://github.com/superseriousbusiness/gotosocial/compare/v0.16.0...v0.17.0-rc1

Don't miss a new gotosocial release

NewReleases is sending notifications on new releases.