summaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)AuthorFiles
2023-06-09[docs] Add example tracing infrastructure (#1866)Libravatar Daenney2
This adds an example on how to get Grafana Tempo up to receive spans as well as Grafana itself to view them. I've added this as a separate Tracing doc in the installation guide as the Advanced one was starting to get rather full. Fixes: #1791
2023-06-04[bugfix/docs] AppArmor profile for SQLite (#1864)Libravatar Daenney1
Our default configuration places the SQLite DB in /gotosocial/, but the AppArmor profile doesn't allow us to write there. Instead of making the whole directory writable, add a writable area in /gotosocial/db/ instead and advise in the docs to move the DB there.
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-26[docs] Update + simplify roadmap, revise beta estimate (#1826)Libravatar tobi1
2023-05-25[bugfix/docs] Fix clear notifications API docs (#1831)Libravatar Daenney1
The handler is already hooked to the right path, it's just the docs that were missing the path.
2023-05-25[feature] Configurable custom css length (#1827)Libravatar tobi1
* [feature] Make accounts custom css length configurable * test custom css validation
2023-05-25[feature] Add List functionality (#1802)Libravatar tobi2
* start working on lists * further list work * test list db functions nicely * more work on lists * peepoopeepoo * poke * start list timeline func * we're getting there lads * couldn't be me working on stuff... could it? * hook up handlers * fiddling * weeee * woah * screaming, pissing * fix streaming being a whiny baby * lint, small test fix, swagger * tidying up, testing * fucked! by the linter * move timelines to state like a boss * add timeline start to tests using state * invalidate lists
2023-05-21[chore] Replace pinafore with semaphore (#1801)Libravatar Julian-Samuel Gebühr5
* Replace pinafore with semaphore * Typo
2023-05-15[bugfix] Fix proxy_pass in named location (#1794)Libravatar Daenney1
A proxy_pass in a named location, @name, should not include a trailing slash.
2023-05-15[docs] remove nginx trailing slash (#1789)Libravatar tobi1
2023-05-13[docs] update instance splash and profile screenshots (#1775)Libravatar tobi2
2023-05-12[bugfix] Ensure account fields can be set by JSON (#1762)Libravatar tobi1
2023-05-09feat: initial tracing support (#1623)Libravatar Dominik Süß1
2023-05-09[feature] Enable federation in/out of profile PropertyValue fields (#1722)Libravatar tobi1
Co-authored-by: kim <grufwub@gmail.com> Co-authored-by: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>
2023-05-08[chore/performance] Make sender multiplier configurable (#1750)Libravatar tobi1
2023-05-06[feature] Implement the preferences client API (#1740)Libravatar Daenney1
This adds the preferences endpoint to our Mastodon Client API implementation. It's a read-only endpoint that returns a number of user preferences. Applications can query these settings when logging in a user (for the first time) to configure themselves.
2023-05-06[chore] update readthedocs deps, use conda (#1742)Libravatar tobi2
* [chore] update readthedocs deps, use conda * work this time thx
2023-05-04[bugfix] Serve correct 'application/jrd+json' content type for webfinger ↵Libravatar tobi1
requests (#1738) * [bugfix] Return `application/jrd+json` from webfinger queries * update finger req content-type
2023-05-04[bugfix] Rework notifs to use min_id for paging up (#1734)Libravatar tobi1
2023-04-29[feature] Add GET endpoint for single notification (#1719)Libravatar tobi1
2023-04-19[docs] Explain that markdown is enabled on the user settings page. (#1699)Libravatar Phil Hagelberg2
* Explain that markdown is enabled on the user settings page. The current wording seems to imply that the input formatting can be set on a per-post basis, which no client currently supports. It's not clear that you have to go to the user settings page to change it. * Update FAQ; some of the missing features are not missing any more!
2023-04-10[feature] Receive notification when followed account posts (if desired) (#1680)Libravatar tobi1
* start working on notifs for new posts * tidy up a bit * update swagger * carry over show reblogs + notify from follow req * test notify on status post * update column slice * dedupe update logic + add tests * fix own boosts not being timelined * avoid type check, passing unnecessary accounts * remove unnecessary 'inReplyToID' check * add a couple todo's for future db functions
2023-04-06[bugfix/chore] Refactor timeline code (#1656)Libravatar tobi1
* start poking timelines * OK yes we're refactoring, but it's nothing like the last time so don't worry * more fiddling * update tests, simplify Get * thanks linter, you're the best, mwah mwah kisses * do a bit more tidying up * start buggering about with the prepare function * fix little oopsie * start merging lists into 1 * ik heb een heel zwaar leven nee nee echt waar * hey it works we did it reddit * regenerate swagger docs * tidy up a wee bit * adjust paging * fix little error, remove unused functions
2023-04-06[bugfix] Always serialize orderedItems as array (#1673)Libravatar tobi1
2023-03-31[docs] Add MASH as 3rd party packaging (#1654)Libravatar Julian-Samuel Gebühr1
2023-03-27[chore] License sloth logo + default avatars under CC by-sa 4.0 (#1651)Libravatar tobi1
2023-03-19[feature] Email notifications for new / closed moderation reports (#1628)Libravatar tobi1
* start fiddling about with email sending to allow multiple recipients * do some fiddling * notifs working * notify on closed report * finishing up * envparsing * use strings.ContainsAny
2023-03-16[docs] Update docs on how to login (#1626)Libravatar Daenney1
This adds a section to the docs instructing how to ensure apps will be able to successfully login to an instance when host- and account-domain differ. Resolves #1609
2023-03-14[feature] Allow admins to send test emails (#1620)Libravatar tobi1
* [feature] Allow admins to send test emails * implement unwrap on new error type * add + use gtserror types * GoToSocial Email Test -> GoToSocial Test Email * add + use getInstance db call * removed unused "unknown" error type
2023-03-14[chore] fix + update swagger docs (#1622)Libravatar tobi1
2023-03-12[chore] Improve copyright header handling (#1608)Libravatar Daenney1
* [chore] Remove years from all license headers Years or year ranges aren't required in license headers. Many projects have removed them in recent years and it avoids a bit of yearly toil. In many cases our copyright claim was also a bit dodgy since we added the 2021-2023 header to files created after 2021 but you can't claim copyright into the past that way. * [chore] Add license header check This ensures a license header is always added to any new file. This avoids maintainers/reviewers needing to remember to check for and ask for it in case a contribution doesn't include it. * [chore] Add missing license headers * [chore] Further updates to license header * Use the more common // indentend comment format * Remove the hack we had for the linter now that we use the // format * Add SPDX license identifier
2023-03-09[feature] Provide .well-known/host-meta endpoint (#1604)Libravatar Daenney2
* [feature] Provide .well-known/host-meta endpoint This adds the host-meta endpoint as Mastodon clients use this to discover the API domain to use when the host and account domains aren't the same. * Address review comments
2023-03-04[feature] Allow loading TLS certs from disk (#1586)Libravatar Daenney2
Currently, GtS only supports using the built-in LE client directly for TLS. However, admins may still want to use GtS directly (so without a reverse proxy) but with certificates provided through some other mechanism. They may have some centralised way of provisioning these things themselves, or simply prefer to use LE but with a different challenge like DNS-01 which is not supported by autocert. This adds support for loading a public/private keypair from disk instead of using LE and reconfigures the server to use a TLS listener if we succeed in doing so. Additionally, being able to load TLS keypair from disk opens up the path to using a custom CA for testing purposes avoinding the need for a constellation of containers and something like Pebble or Step CA to provide LE APIs.
2023-03-03[bugfix] Federate status delete using just the URI (#1584)Libravatar tobi1
2023-03-03[bugfix] Clamp admin report limit <1 to 100 (#1583)Libravatar tobi1
* [bugfix] Clamp report limit <1 to 100 * add + update tests
2023-03-02[feature] Advertise rich text formats, support content_type field (#1370)Libravatar Vyr Cossont1
* Advertise rich text formats, support content_type field * Update JSON in instance patch tests * Replace format with content_type everywhere * update migration to work with both pg and sqlite * regenerate swagger docs * update instance serialization + tests * fix up * learn to code tobi please, i'm begging you --------- Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2023-03-01[feature] Federate pinned posts (aka `featuredCollection`) in and out (#1560)Libravatar tobi2
* start fiddling * the ol' fiddle + update * start working on fetching statuses * poopy doopy doo where r u uwu * further adventures in featuring statuses * finishing up * fmt * simply status unpin loop * move empty featured check back to caller function * remove unnecessary log.WithContext calls * remove unnecessary IsIRI() checks * add explanatory comment about status URIs * change log level to error * better test names
2023-02-25[feature] Make OIDC admin groups configurable (#1555)Libravatar Daenney1
This removes the current default of checking for membership of the admin or admins group and makes it required to explicitly configure which groups should grant admin access, if any. Relying on the implicit default of admin or admins is potentially dangerous as that group may contain a different subset of people that we may wish to grant admin access to GtS. This is probably not an issue for a single-person instance, but for a community instance different admin groups may exist in an OIDC provider for different applications. I'm explicitly opting for not defaulting the value of oidc-admin-groups to admin,admins because I think it's better for those things to be explicitly configured.
2023-02-25[feature] Client API endpoints + v. basic web view for pinned posts (#1547)Libravatar tobi1
* implement status pin client api + web handler * make test names + comments more descriptive * don't use separate table for status pins * remove unused add + remove checking * tidy up + add some more tests
2023-02-20[feature] Use Material theme for docs (#1535)Libravatar Daenney8
* [feature] Use Material theme for docs This changes the theme to use Material with the slate (dark) theme and the accent colour set to orange. It also replaces the swagger plugin with one that works correctly with the Material theming. * Add theme by @f0x52 Co-authored-by: f0x52 <f0x@cthu.lu> * Enable social cards The dependencies for cairosvg and pillow can be satisfied on RTD, so this adds them to our requirements.txt and enables the social plugin. This generates opengraph and twitter card tags as well as fancy preview images in GTS colour style for platforms that show that as part of link previews. * Update Conda environment.yml * update theme for swagger, basic light theme option * dark mode mobile header bg color --------- Co-authored-by: f0x52 <f0x@cthu.lu>
2023-02-20[docs] correct swagger docs (#1543)Libravatar tobi1
2023-02-20[bugfix] Fix account roles (#1542)Libravatar tobi1
* Change account role from string to object * Update tests * small fixes + swagger docs --------- Co-authored-by: zowhoey <11893985+zowhoey@users.noreply.github.com>
2023-02-17[feature] Add a request ID and include it in logs (#1476)Libravatar Daenney1
This adds a lightweight form of tracing to GTS. Each incoming request is assigned a Request ID which we then pass on and log in all our log lines. Any function that gets called downstream from an HTTP handler should now emit a requestID=value pair whenever it logs something. Co-authored-by: kim <grufwub@gmail.com>
2023-02-15[docs] Suggest confirming host option in config (#1502)Libravatar Minecraftchest11
Having the `Host` config option not match the domain that GTS is exposed on can cause a 400 bad request error on signin.
2023-02-15[docs] Fix nginx fileserver caching example (#1506)Libravatar Daenney1
* [bug] Fix nginx fileserver caching example This updates the example to ensure the nginx proxies the request on to GTS if the file is not found on disk. This can happen due to media pruning. * [chore] Set cache-control in nginx to private This makes the header match with the backend. For things from the fileserver it may not be appropriate for anything other than a private cache (i.e the client) to cache things.
2023-02-13[docs] move federating with gotosocial documentation into single file (#1494)Libravatar f0x5211
2023-02-13[docs] Update user/admin settings docs (#1491)Libravatar f0x5213
* update user/admin settings docs * trigger read-the-docs pr hook * update menu links * update images
2023-02-11[chore/performance] Update media prune logic, add extra CLI command (#1474)v0.7.0-rc2Libravatar tobi2
* start updating media prune stuff a wee bit * continue prune / uncache work * more tidying + consistency stuff * add prune CLI command * docs * arg
2023-02-08[chore/bugfix] Serve + throttle publickey separately from rest of ↵Libravatar tobi1
ActivityPub API (#1461) * serve publickey separately from AP, don't throttle it * update nginx cache documentation, cache main-key too * throttle public key, but separately from other endpoints
2023-02-05[chore] stub /api/v1/featured_tags endpoint (#1420)Libravatar tobi1