summaryrefslogtreecommitdiff
path: root/README.md
AgeCommit message (Collapse)AuthorFiles
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
2023-08-08[chore] Add Feditext as recommended client (#2081)Libravatar Daenney1
With Feditext now accepting beta users, this adds it as the third client to recommend so we have web and the dominant mobile platforms covered. This also removes the screenshots from the README, because it became a mess trying to add a third one. Either the cells become very narrow, or the table doubles in height. As the UI may also change over time, it might be better to point folks at the apps instead who'll hopefully have up to date screenshots in their storefronts.
2023-08-03[feature] simpler cache size configuration (#2051)Libravatar kim1
* add automatic cache max size generation based on ratios of a singular fixed memory target Signed-off-by: kim <grufwub@gmail.com> * remove now-unused cache max-size config variables Signed-off-by: kim <grufwub@gmail.com> * slight ratio tweak Signed-off-by: kim <grufwub@gmail.com> * remove unused visibility config var Signed-off-by: kim <grufwub@gmail.com> * add secret little ratio config trick Signed-off-by: kim <grufwub@gmail.com> * fixed a word Signed-off-by: kim <grufwub@gmail.com> * update cache library to remove use of TTL in result caches + slice cache Signed-off-by: kim <grufwub@gmail.com> * update other cache usages to use correct interface Signed-off-by: kim <grufwub@gmail.com> * update example config to explain the cache memory target Signed-off-by: kim <grufwub@gmail.com> * update env parsing test with new config values Signed-off-by: kim <grufwub@gmail.com> * do some ratio twiddling Signed-off-by: kim <grufwub@gmail.com> * add missing header * update envparsing with latest defaults Signed-off-by: kim <grufwub@gmail.com> * update size calculations to take into account result cache, simple cache and extra map overheads Signed-off-by: kim <grufwub@gmail.com> * tweak the ratios some more Signed-off-by: kim <grufwub@gmail.com> * more nan rampaging Signed-off-by: kim <grufwub@gmail.com> * fix envparsing script Signed-off-by: kim <grufwub@gmail.com> * update cache library, add sweep function to keep caches trim Signed-off-by: kim <grufwub@gmail.com> * sweep caches once a minute Signed-off-by: kim <grufwub@gmail.com> * add a regular job to sweep caches and keep under 80% utilisation Signed-off-by: kim <grufwub@gmail.com> * remove dead code Signed-off-by: kim <grufwub@gmail.com> * add new size library used to libraries section of readme Signed-off-by: kim <grufwub@gmail.com> * add better explanations for the mem-ratio numbers Signed-off-by: kim <grufwub@gmail.com> * update go-cache Signed-off-by: kim <grufwub@gmail.com> * library version bump Signed-off-by: kim <grufwub@gmail.com> * update cache.result{} size model estimation Signed-off-by: kim <grufwub@gmail.com> --------- Signed-off-by: kim <grufwub@gmail.com>
2023-06-05[chore] update latest deps, ensure readme up to date (#1873)Libravatar tobi1
* [chore] update latest deps, ensure readme up to date * remove double entry
2023-06-04[docs] Add Repology stats (#1859)Libravatar Daenney1
Instead of a manually curated list of distribution packages, this adds the Repology[1] widget instead. This also separates out the distribution packages from the self-hosting/deployment options into their own sections. [1]: https://repology.org/project/gotosocial/versions
2023-05-31[docs] clarify other federation modes not yet implemented (#1849)Libravatar tobi1
2023-05-26[docs] Update + simplify roadmap, revise beta estimate (#1826)Libravatar tobi1
2023-05-21[chore] Replace pinafore with semaphore (#1801)Libravatar Julian-Samuel Gebühr1
* Replace pinafore with semaphore * Typo
2023-04-24[docs] Migrates Chart Location (#1708)Libravatar 0hlov31
2023-03-27[chore] License sloth logo + default avatars under CC by-sa 4.0 (#1651)Libravatar tobi1
2023-02-19Update README.md (#1533)Libravatar kim1
2023-02-18[chore] update gruf's libs on readme (#1520)Libravatar kim1
also groups them into a single block to improve readability
2023-01-08[docs] Rewrite sponsorship + funding section, add NLnet (#1305)Libravatar tobi1
* [docs] Rewrite sponsorship + funding section, add NLnet * use just one small nlnet logo
2023-01-05[chore] Update/add license headers for 2023 (#1304)Libravatar tobi1
2022-12-17[feature] Enable basic video support (mp4 only) (#1274)Libravatar tobi1
* [feature] basic video support * fix missing semicolon * replace text shadow with stacked icons Co-authored-by: f0x <f0x@cthu.lu>
2022-12-09[docs] Update `CONTRIBUTING.md`, add pull request templates (#1216)Libravatar tobi1
* [docs] Update contributing.md - Add Pull Request process and guidelines. - Add feature/bug issue process. - Rearrange some sections for clarity. - Add overview of package structure. * [docs] Add build from source links * [chore] add pull request templates These link to the new CONTRIBUTING.md document, and include a checklist to validate that contributors have read the guidelines. * [docs] Put existing stub CoC in separate doc * update web related stuff in CONTRIBUTING.md Co-authored-by: f0x <f0x@cthu.lu>
2022-12-07[docs] Update README.md (#1126)Libravatar Marie Axelsson1
added myself to the team, tyvm.
2022-11-21[docs] Add first draft of FAQ (#1086)Libravatar Phil Hagelberg1
* Clarify that gotosocial doesn't use recommendation algorithms It uses lots of algorithms. ~/src/gotosocial $ rgrep algorithm . | wc 856 8971 143395 * Add first draft of the FAQ. * Suggested FAQ changes. Mention backfill of posts as not yet being implemented; link to FAQ from readme/index. Mention that GtS does serve up some UI; just not most interaction.
2022-11-21[chore] update readme with kim's links (#1093)Libravatar kim1
* add kim's code and fediverse profiles Signed-off-by: kim <grufwub@gmail.com> * fix words Signed-off-by: kim <grufwub@gmail.com> * undo my accidental inclusion of custom version string... Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-11-14[docs] Use correct Friendica link in README (#1046)Libravatar tobi1
2022-11-06[docs] add note about Alpha status right at the top (#971)Libravatar tobi1
2022-11-04[docs] add matrix space to readme (#952)Libravatar tobi1
2022-10-08[feature] Add opt-in RSS feed for account's latest Public posts (#897)Libravatar tobi1
* start adding rss functionality * add gorilla/feeds dependency * first bash at building rss feed still needs work, this is an interim commit * tidy up a bit * add publicOnly option to GetAccountLastPosted * implement rss endpoint * fix test * add initial user docs for rss * update rss logo * docs update * add rssFeed to frontend * feed -> feed.rss * enableRSS * increase rss logo size a lil bit * add rss toggle * move emojify to text package * fiddle with rss feed formatting * add Text field to test statuses * move status to rss item to typeconverter * update bun schema for enablerss * simplify 304 checking * assume account not rss * update tests * update swagger docs * allow more characters in title, trim nicer * update last posted to be more consistent
2022-09-29[feature] update config types to use bytesize.Size (#828)Libravatar kim1
* update config size types to use bytesize.Size * submit unchecked-out file ... :facepalm: * fix bytesize config var decoding * bump bytesize version * update kim's libraries in readme * update envparse.sh to output more useful errors * improve envparse.sh * remove reliance on jq * instead, use uint64 for bytesize flag types * remove redundant type * fix viper unmarshaling * Update envparsing.sh * fix envparsing test Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2022-08-31[feature] add rate limit middleware (#741)Libravatar nya11
* feat: add rate limit middleware * chore: update vendor dir * chore: update readme with new dependency * chore: add rate limit infos to swagger.md file * refactor: add ipv6 mask limiter option Add IPv6 CIDR /64 mask * refactor: increase rate limit to 1000 Address https://github.com/superseriousbusiness/gotosocial/pull/741#discussion_r945584800 Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2022-08-29[docs] Fix link to open collective (#770)Libravatar Callum Macdonald1
2022-08-18[docs] Textual updates on markdown files (#756)Libravatar Martijn de Boer1
* A few spelling and grammer fixes on readme Changes a few wording, some punctuation and grammar. * Grammar and punctuation on Roadmap Mostly grammar and punctuation on the roadmap * Update README.md Restore British English spelling of favourite, because it's used on the API endpoints in Roadmap as well. * Grammar and punctuation on Contributing Mainly grammar and punctuation on Contributing file.
2022-08-10[bugfix] Fix thumbnails not taking exif rotation into account (#746)Libravatar tobi1
* use disintegration/imaging instead of nfnt/resize * update tests * use disintegration lib for thumbing (if necessary)
2022-08-07[bugfix] Markdown formatting updates (#743)Libravatar tobi1
* add minify dependency specifically for markdown * rearrange markdown formatting * update markdown tests
2022-07-20[docs] Update sponsorship + funding sections (#721)Libravatar tobi1
2022-07-19[bugfix] html escape special characters in text instead of totally removing ↵Libravatar tobi1
them (#719) * remove minify dependency * tidy up some tests * remove pre + postformat funcs * rework sanitization + formatting * update tests * add some more markdown tests
2022-07-19[chore] use our own logging implementation (#716)Libravatar kim1
* first commit Signed-off-by: kim <grufwub@gmail.com> * replace logging with our own log library Signed-off-by: kim <grufwub@gmail.com> * fix imports Signed-off-by: kim <grufwub@gmail.com> * fix log imports Signed-off-by: kim <grufwub@gmail.com> * add license text Signed-off-by: kim <grufwub@gmail.com> * fix package import cycle between config and log package Signed-off-by: kim <grufwub@gmail.com> * fix empty kv.Fields{} being passed to WithFields() Signed-off-by: kim <grufwub@gmail.com> * fix uses of log.WithFields() with whitespace issues and empty slices Signed-off-by: kim <grufwub@gmail.com> * *linter related grumbling* Signed-off-by: kim <grufwub@gmail.com> * gofmt the codebase! also fix more log.WithFields() formatting issues Signed-off-by: kim <grufwub@gmail.com> * update testrig code to match new changes Signed-off-by: kim <grufwub@gmail.com> * fix error wrapping in non fmt.Errorf function Signed-off-by: kim <grufwub@gmail.com> * add benchmarking of log.Caller() vs non-cached Signed-off-by: kim <grufwub@gmail.com> * fix syslog tests, add standard build tags to test runner to ensure consistency Signed-off-by: kim <grufwub@gmail.com> * make syslog tests more robust Signed-off-by: kim <grufwub@gmail.com> * fix caller depth arithmatic (is that how you spell it?) Signed-off-by: kim <grufwub@gmail.com> * update to use unkeyed fields in kv.Field{} instances Signed-off-by: kim <grufwub@gmail.com> * update go-kv library Signed-off-by: kim <grufwub@gmail.com> * update libraries list Signed-off-by: kim <grufwub@gmail.com> * fuck you linter get nerfed Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2022-06-11[chore] Validate/set account domain (#619)Libravatar tobi1
* add miekg/dns dependency * set/validate accountDomain
2022-05-04[documentation] Add known issues + project links in readme and docs (#541)Libravatar tobi1
2022-05-03[documentation] Corrects the Helm-Chart URL by 0hlov3 (#530)Libravatar 0hlov31
2022-05-02[documentation] Adds a Kubernetes Helm Chart to README.md (#496)Libravatar 0hlov31
* Adds a Kubernetes Helm Chart to README.md * Changes Chart-URL * Adds GoToSocial Helm Chart section