summaryrefslogtreecommitdiff
path: root/README.md
AgeCommit message (Collapse)AuthorFiles
2025-09-24[chore] ffmpeg webassembly fiddling (#4454)Libravatar kim1
This disables ffmpeg / ffprobe support on platforms where the wazero compiler is not available. The slowness introduced is hard to pindown for admins (and us!), so it's easier to just return an error message linking to docs on attempted media processing. It still allows the instance to run, just erroring if anything other than a jpeg is attempted to be processed. This should hopefully make it easier for users to notice these issues. Also further locks down our wazero 'allowFiles' fs and other media code to address: https://codeberg.org/superseriousbusiness/gotosocial/issues/4408 relates to: https://codeberg.org/superseriousbusiness/gotosocial/issues/4427 also relates to issues raised in #gotosocial-help on matrix closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4408 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4454 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-09-15[docs] Fix broken links and typos (#4418)Libravatar Markus Unterwaditzer1
# Description Fix links and typos in docs and settings page: * Fix https://codeberg.org/superseriousbusiness/gotosocial/issues/4328 * Fix https://codeberg.org/superseriousbusiness/gotosocial/issues/4360 Also fix broken issuetracker links as forgejo does not support search queries like "label:bug" The translation for Zh-cn still says "this project" according to google translate, I only fixed the link. ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [ ] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [ ] I/we have run tests and they pass locally with the changes. - [ ] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4418 Co-authored-by: Markus Unterwaditzer <markus-tarpit+git@unterwaditzer.net> Co-committed-by: Markus Unterwaditzer <markus-tarpit+git@unterwaditzer.net>
2025-06-09[docs] change ID links in ToC to match goldmark parser behavior (#4223)Libravatar Nicole Mikołajczyk1
Signed-off-by: Nicole Mikołajczyk <git@mkljczk.pl> # Description I'm not sure if this should be handled this way, but some of the TOC links don't work on Forgejo due to, I guess, the Markdown parser behavior. This, however, makes them not work on GitHub ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4223 Co-authored-by: Nicole Mikołajczyk <git@mkljczk.pl> Co-committed-by: Nicole Mikołajczyk <git@mkljczk.pl>
2025-05-29[feature/frontend] Add four new monospace themes (#4199)Libravatar tobi1
This pull request adds four new themes with auto light/dark switching options too! Tested for color contrast etc in firefox with all three local test rig accounts. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4199 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-06[docs] Clarify that boosting local-only posts maintains local-only status, ↵Libravatar filipesm1
in the documentation (#4145) # Description I would also really like to know if local-only posts can be accessed publicly via URL? I can add it to the PR when I know. ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4145 Co-authored-by: filipesm <hello@filipesm.eu> Co-committed-by: filipesm <hello@filipesm.eu>
2025-05-06[feature] support nested configuration files, and setting ALL configuration ↵Libravatar kim1
variables by CLI and env (#4109) This updates our configuration code generator to now also include map marshal and unmarshalers. So we now have much more control over how things get read from pflags, and stored / read from viper configuration. This allows us to set ALL configuration variables by CLI and environment now, AND support nested configuration files. e.g. ```yaml advanced: scraper-deterrence = true http-client: allow-ips = ["127.0.0.1"] ``` is the same as ```yaml advanced-scraper-deterrence = true http-client-allow-ips = ["127.0.0.1"] ``` This also starts cleaning up of our jumbled Configuration{} type by moving the advanced configuration options into their own nested structs, also as a way to show what it's capable of. It's worth noting however that nesting only works if the Go types are nested too (as this is how we hint to our code generator to generate the necessary flattening code :p). closes #3195 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4109 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-05-06[docs] Various little docs updates (#4144)Libravatar tobi1
Just various little docs fixes, including adding registry prefix `docker.io/` to Docker container tags. Closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4126 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4144 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-04-28[chore/docs] Put some politics in the code (#4076)Libravatar tobi1
The code didn't have enough politics so this fixes that. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4076 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-04-28[docs] Move docs links to codeberg (#4074)Libravatar tobi1
Update more links from github -> codeberg in the docs. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4074 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-04-27[chore] Rewrite all remaining Github linksLibravatar Daenney1
2025-04-26[chore] Fix daenney being bad at sed (#4060)Libravatar Daenney1
Co-authored-by: Daenney <daenney@users.noreply.github.com> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4060 Co-authored-by: Daenney <daenney@noreply.codeberg.org> Co-committed-by: Daenney <daenney@noreply.codeberg.org>
2025-04-26[feature] Move to code.superseriousbusiness.orgLibravatar Daenney1
2025-04-25[chore] Move deps to code.superseriousbusiness.org (#4054)Libravatar tobi1
2025-04-07[feature] add TOTP two-factor authentication (2FA) (#3960)Libravatar tobi1
* [feature] add TOTP two-factor authentication (2FA) * use byteutil.S2B to avoid allocations when comparing + generating password hashes * don't bother with string conversion for consts * use io.ReadFull * use MustGenerateSecret for backup codes * rename util functions
2025-03-10[chore] add warning message when wazero compiler not supported (#3894)Libravatar kim1
* add warning message when wazero compiler not supported, update supported platforms in README * whoops don't return a reason string for arm64, since it should always be supported
2025-03-02[chore] migrate oauth2 -> codeberg (#3857)Libravatar tobi1
2025-03-02[chore] github.com/superseriousbusiness/httpsig -> ↵Libravatar tobi1
codeberg.org/superseriousbusiness/httpsig (#3854)
2025-03-02[chore] github.com/superseriousbusiness/activity -> ↵Libravatar tobi1
codeberg.org/superseriousbusiness/activity (#3853)
2025-02-11[bug] respect `X-Robots-Tag` and `robots.txt` on api/v1/instance and ↵Libravatar alemi.dev1
nodeinfo (#3756) * feat: check X-Robots-Tag when accessing /api/v1/instance or /nodeinfo endpoints respect X-Robots-Tag * chore: go fmt ./... * Check robots.txt as well, add tests --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2025-02-06[chore] update readme support matrix (#3738)Libravatar kim1
* this updates our support matrix to better reflect latest wazero changes (thanks @ncruces!) * be more specific * whoops, remove the BSD section being referenced for the linux builds * fix markdown link, fix wording
2025-01-08[feature] Fetch + create domain permissions from subscriptions nightly (#3635)Libravatar tobi1
* peepeepoopoo * test domain perm subs * swagger * envparsing * dries your wets * start on docs * finish up docs * copy paste errors * rename actions package * rename force -> skipCache * move obfuscate parse nearer to where err is checked * make higherPrios a simple slice * don't use receiver for permsFrom funcs * add more context to error logs * defer finished log * use switch for permType instead of if/else * thanks linter, love you <3 * validate csv headers before full read * use bufio scanner
2024-12-02[chore] Replace Semaphore recommendation with Pinafore. (#3586)Libravatar Phil Hagelberg1
Neither Semaphore nor Pinafore are under active development, but Semaphore has archived its repository while Pinafore still gets occasional minor maintenance. Enafore has newer features, but it has accessibility bugs affecting screen readers that prevent it from being recommended at this time.
2024-11-19[docs] Include link to a live instance in README (#3549)Libravatar Thomas Karpiniec1
2024-11-05[chore] update docs assets path (#3514)Libravatar tobi1
2024-10-15[docs] remove duplicate entry from supported platforms (#3442)Libravatar tobi1
2024-10-14[docs] Document experimental, unsupported `nowasm` tag (#3436)v0.17.0-rc5Libravatar tobi1
* [docs] Document experimental, unsupported `nowasm` tag * change some awkward wording
2024-10-14[chore] Clarify supported platforms, add notes + docs (#3427)Libravatar tobi1
* [chore] Don't build for OpenBSD, add support level notes + tips * tweak a bit * add supported platforms matrix
2024-10-05[feature/frontend] Add Moonlight hunt theme (#3393)Libravatar tobi1
* [feature/frontend] Add Moonlight Hunt theme * make almost see through a bit less see through * update
2024-09-23[chore/docs] More little tweaks (#3336)Libravatar tobi1
* [chore/docs] More little tweaks * width * rule between theme figures (looks better on gh) * weee
2024-09-23[docs] Add rainforest theme to readme.md (#3334)Libravatar tobi1
2024-09-23[docs] Update readme alpha -> beta, add more feature examples (#3333)Libravatar tobi1
2024-09-16[bugfix] Use better plaintext representation of status for filtering (#3301)Libravatar tobi1
* [bugfix] Use better plaintext representation of status for filtering * add new deps to readme * lint * update tests * update regexes * address review comments * remove now unused xxhash * whoops, wrong logger * Merge branch 'main' into status_filtering_bugfix * put cache in caches struct * pain
2024-09-11[docs/chore] update list of library deps on readme (#3288)Libravatar kim1
2024-07-20[chore/frontend] Use smaller webp images for logo and default avatars (#3119)Libravatar tobi1
2024-07-19[docs] update README with our corporate sponsorship policy (#3112)Libravatar kim1
* update README with our corporate sponsorship policy * move location of corporate sponsorship * tweaks after discussion * update to maintain consistency
2024-07-12[feature] support processing of (many) more media types (#3090)Libravatar kim1
* initial work replacing our media decoding / encoding pipeline with ffprobe + ffmpeg * specify the video codec to use when generating static image from emoji * update go-storage library (fixes incompatibility after updating go-iotools) * maintain image aspect ratio when generating a thumbnail for it * update readme to show go-ffmpreg * fix a bunch of media tests, move filesize checking to callers of media manager for more flexibility * remove extra debug from error message * fix up incorrect function signatures * update PutFile to just use regular file copy, as changes are file is on separate partition * fix remaining tests, remove some unneeded tests now we're working with ffmpeg/ffprobe * update more tests, add more code comments * add utilities to generate processed emoji / media outputs * fix remaining tests * add test for opus media file, add license header to utility cmds * limit the number of concurrently available ffmpeg / ffprobe instances * reduce number of instances * further reduce number of instances * fix envparsing test with configuration variables * update docs and configuration with new media-{local,remote}-max-size variables
2024-06-13[docs] Rework README a bit, import into docs (#3006)Libravatar tobi1
2024-05-22[performance] update storage backend and make use of seek syscall when ↵Libravatar kim1
available (#2924) * update to use go-storage/ instead of go-store/v2/storage/ * pull in latest version from codeberg * remove test output :innocent: * add code comments * set the exclusive bit when creating new files in disk config * bump to actual release version * bump to v0.1.1 (tis a simple no-logic change) * update readme * only use a temporary read seeker when decoding video if required (should only be S3 now) * use fastcopy library to use memory pooled buffers when calling TempFileSeeker() * update to use seek call in serveFileRange()
2024-04-30[docs] Remove last references to RPi (#2885)Libravatar Daenney1
This updates the documentation to remove the last stray references to the copaganda Pi. It now uses the the term single-board computer. GtS can run fine on all kinds of SBCs and isn't limited to that one particular fruit version.
2024-04-26[performance] update remaining worker pools to use queues (#2865)Libravatar kim1
* start replacing client + federator + media workers with new worker + queue types * refactor federatingDB.Delete(), drop queued messages when deleting account / status * move all queue purging to the processor workers * undo toolchain updates * code comments, ensure dereferencer worker pool gets started * update gruf libraries in readme * start the job scheduler separately to the worker pools * reshuffle ordering or server.go + remove duplicate worker start / stop * update go-list version * fix vendoring * move queue invalidation to before wipeing / deletion, to ensure queued work not dropped * add logging to worker processing functions in testrig, don't start workers in unexpected places * update go-structr to add (+then rely on) QueueCtx{} type * ensure more worker pools get started properly in tests * fix remaining broken tests relying on worker queue logic * fix account test suite queue popping logic, ensure noop workers do not pull from queue * move back accidentally shuffled account deletion order * ensure error (non nil!!) gets passed in refactored federatingDB{}.Delete() * silently drop deletes from accounts not permitted to * don't warn log on forwarded deletes * make if else clauses easier to parse * use getFederatorMsg() * improved code comment * improved code comment re: requesting account delete checks * remove boolean result from worker start / stop since false = already running or already stopped * remove optional passed-in http.client * remove worker starting from the admin CLI commands (we don't need to handle side-effects) * update prune cli to start scheduler but not all of the workers * fix rebase issues * remove redundant return statements * i'm sorry sir linter
2024-04-02[chore] bump go structr cache version -> v0.6.0 (#2773)Libravatar kim1
* update go-structr library -> v0.6.0, add necessary wrapping types + code changes to support these changes * update readme with go-structr package changes * improved wrapping of the SliceCache type * add code comments for the cache wrapper types * remove test.out :innocent: --------- Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2024-01-31[feature] Try HTTP signature validation with and without query params for ↵Libravatar tobi1
incoming requests (#2591) * [feature] Verify signatures both with + without query params * Bump to tagged version
2024-01-26[performance] cache library performance enhancements (updates go-structr => ↵Libravatar kim1
v0.2.0) (#2575) * update go-structr => v0.2.0 * update readme * whoops, fix the link
2024-01-25[docs] Update Feditext URL (#2568)Libravatar Vyr Cossont1
Fixes #2567
2024-01-22[docs] use latest cavage link for http signatures (#2565)Libravatar tobi1
2024-01-15[chore] Move to codeberg's exif-terminator (#2536)Libravatar tobi1
2024-01-13[chore/docs] Replace specific year range of copyright notice (#2520)Libravatar tobi1
2023-10-19[docs] Update README.md (#2279)Libravatar tobi1
2023-09-21[feature] Implement explicit domain allows + allowlist federation mode (#2200)Libravatar tobi1
* love like winter! wohoah, wohoah * domain allow side effects * tests! logging! unallow! * document federation modes * linty linterson * test * further adventures in documentation * finish up domain block documentation (i think) * change wording a wee little bit * docs, example * consolidate shared domainPermission code * call mode once * fetch federation mode within domain blocked func * read domain perm import in streaming manner * don't use pointer to slice for domain perms * don't bother copying blocks + allows before deleting * admonish! * change wording just a scooch * update docs
2023-08-15[feature] Add snapshot binary builds + uploads (#2119)Libravatar tobi1
* [feature] Add snapshot binary builds + uploads * Update docs to include info on snapshot builds * review comments * little tweaks