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)