summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2022-08-07[bugfix] Markdown formatting updates (#743)Libravatar tobi42
* add minify dependency specifically for markdown * rearrange markdown formatting * update markdown tests
2022-08-07[feature] Photoswipe gallery (#740)Libravatar f0x526
* implement photoswipe galleries * dependency wrangling * photoswipe-dynamic-caption plugin
2022-08-07[frontend] style blockquote nicely within content (#742)Libravatar tobi1
2022-08-06[feature] Let accounts set default status format, and use this when ↵Libravatar tobi17
processing new statuses (#739) * add post_format to acct & use it when making post * update swagger docs * add status_format updating to frontend * fix up tests * post_format => status_format * add status_format to account validation
2022-08-05[bugfix] Parse source first before checking if empty form (#738)Libravatar tobi1
2022-08-01[feature] Implemented notification clear (#720)Libravatar Artémis7
* Implemented notification clear * Added the cache clear mechanism * added multi user check test
2022-07-30serve HEAD requests via the fileserver (#735)Libravatar tobi2
2022-07-30[frontend] Update client list and apply some minor fixes (#734)Libravatar Martijn de Boer2
* Add logos for Fedilab, Toot and Mastodon to assets folder Adds multiple logo's for the changes on the client list. * Add clients to the index page to give users a wider choice and some minor fixes Adds Fedilab, Toot! and "More clients" to the client list. Also adds periods after all descriptions, so they are unified in writing style. Adds target blank and rel noopener to external links. Changes the pinafore.social link to link to the homepage, like the other clients. * Add 'the' to the description text Adds the missing 'the' to the More clients description * Delete fedilab.png * Delete toot.png * Remove added clients, but keep More clients text. Removes the Fedilab and Toot! clients.
2022-07-29[docs] Add NLnet NGI0 application (#733)Libravatar tobi2
* add ngi0 application * include Move activity
2022-07-29[docs] update roadmap (#732)Libravatar tobi1
2022-07-28[bugfix] remove <= 0 `expires_in` from oauth token response (#731)Libravatar tobi1
* remove <= 0 expired_in from oauth token response * go fmt
2022-07-28[feature] add 'state' oauth2 param to /oauth/authorize (#730)Libravatar tobi6
2022-07-22[bugfix] Fix Toot CLI media attachments not working properly (#726)v0.3.8Libravatar tobi3
2022-07-22[docs] Add client_max_body_size 40M; to nginx docs (#727)Libravatar tobi1
2022-07-22[bugfix] Make `/api/v2/media` more compatible with masto API (#724)Libravatar tobi8
* update docs * make api version into a path param * update tests * workaround to unset URL if using v2 of api * make some fields into pointers
2022-07-22[bugfix] update go-cache library to fix critical bug during cache sweep ↵Libravatar kim6
scheduling (#725) * update go-cache library to fix critical bug regarding cache sweep scheduling Signed-off-by: kim <grufwub@gmail.com> * update go-sched Signed-off-by: kim <grufwub@gmail.com>
2022-07-20[chore] Update image/video size defaults to mastodon's (#723)Libravatar tobi8
2022-07-20[docs] Fix typo in funding.yml (#722)Libravatar tobi1
2022-07-20[docs] Update sponsorship + funding sections (#721)Libravatar tobi3
2022-07-19[bugfix] html escape special characters in text instead of totally removing ↵Libravatar tobi51
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 kim141
* 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-07-19[bugfix] Markdown format fixes (#718)Libravatar tobi2
* just sanitize markdown, don't minify or escape * tidy tests, add one for inline code * add another test, it works!
2022-07-18[feature] Implement `cache-control` and etags for static assets (#711)Libravatar tobi11
* start working on etag stuff * add + use cache middleware * generate etags on the fly * remove unused field * clean up filepath * add license headers to cache files * add attachgroup function to router interface * move cache into web module * rename a couple things * remove attachStaticFS function from router * rename + tidy up a few things * mount assets filesystem * create assetsFileInfoCache * update comment * simplify hash * fix string fmt * skip last mod chk, prefer strong etags w/long cache * move base handler to its own file this matches the modules in the api folder * generate new etag if file was modified * wrap strong etag in quotation marks as per spec * clarify logic in avatar search * make hashing a little niftier
2022-07-18[chore] move dialer inside new (#715)Libravatar tobi1
* move dialer inside new, use default resolver * instantiate resolver
2022-07-18[frontend] Tweak border radius for header + avatar (#713)Libravatar tobi2
2022-07-15[frontend] Footer styling adjustments (#709)Libravatar tobi1
* adjust footer rendering * use max-width instead of orientation * remove margin-top when screen small
2022-07-15[performance] Add long cache-control max age to fileserver (#710)Libravatar tobi1
2022-07-13[bugfix] Fix profile card display issues on smaller screens w/responsive ↵Libravatar tobi4
query (#696) * add responsive media query to profile css * break username on all screen sizes if necessary * embed avatar inside header on smaller screen sizes * align items to the left in small screen view * more consistent profile scaling accross firefox and chrome * simplify things a little bit * make sure bio fits in profile * word-break content if necessary Co-authored-by: f0x <f0x@cthu.lu>
2022-07-13[feature] Add back/next buttons to profiles for paging through statuses (#708)Libravatar tobi11
* add GetAccountWebStatuses to db * add WebStatusesGet func to processor * don't add limit to next/prev links if 0 * take query params for next/prev statuses * add separate next + prev links for convenience * show 'nothing here' message if no statuses exist * add back / next links to profiles * allow paging down only * go fmt ./... * 'recent public toots' -> 'latest public toots'
2022-07-12[chore] improved router logging, recovery and error handling (#705)Libravatar kim36
* move panic recovery to logging middleware, improve logging + panic recovery logic Signed-off-by: kim <grufwub@gmail.com> * remove dead code Signed-off-by: kim <grufwub@gmail.com> * remove skip paths code Signed-off-by: kim <grufwub@gmail.com> * re-enable log quoting Signed-off-by: kim <grufwub@gmail.com> * use human-friendly bytesize in logging body size Signed-off-by: kim <grufwub@gmail.com> * only disable quoting in debug builds Signed-off-by: kim <grufwub@gmail.com> * use logrus level instead of debug.DEBUG() to enable/disable quoting Signed-off-by: kim <grufwub@gmail.com> * shutup linter Signed-off-by: kim <grufwub@gmail.com> * fix instance tests Signed-off-by: kim <grufwub@gmail.com> * fix gin test contexts created with missing engine HTML renderer Signed-off-by: kim <grufwub@gmail.com> * add note regarding not logging query parameters Signed-off-by: kim <grufwub@gmail.com> * better explain 'DisableQuoting' logic Signed-off-by: kim <grufwub@gmail.com> * add license text Signed-off-by: kim <grufwub@gmail.com>
2022-07-11[performance] Add new index to fix slow web profile queries (#706)Libravatar tobi1
* start adding new index migration * fix up index
2022-07-10[chore] consolidate caching libraries (#704)Libravatar kim67
* add miekg/dns dependency * set/validate accountDomain * move finger to dereferencer * totally break GetRemoteAccount * start reworking finger func a bit * start reworking getRemoteAccount a bit * move mention parts to namestring * rework webfingerget * use util function to extract webfinger parts * use accountDomain * rework finger again, final form * just a real nasty commit, the worst * remove refresh from account * use new ASRepToAccount signature * fix incorrect debug call * fix for new getRemoteAccount * rework GetRemoteAccount * start updating tests to remove repetition * break a lot of tests Move shared test logic into the testrig, rather than having it scattered all over the place. This allows us to just mock the transport controller once, and have all tests use it (unless they need not to for some other reason). * fix up tests to use main mock httpclient * webfinger only if necessary * cheeky linting with the lads * update mentionName regex recognize instance accounts * don't finger instance accounts * test webfinger part extraction * increase default worker count to 4 per cpu * don't repeat regex parsing * final search for discovered accountDomain * be more permissive in namestring lookup * add more extraction tests * simplify GetParseMentionFunc * skip long search if local account * fix broken test * consolidate to all use same caching libraries Signed-off-by: kim <grufwub@gmail.com> * perform more caching in the database layer Signed-off-by: kim <grufwub@gmail.com> * remove ASNote cache Signed-off-by: kim <grufwub@gmail.com> * update cache library, improve db tracing hooks Signed-off-by: kim <grufwub@gmail.com> * return ErrNoEntries if no account status IDs found, small formatting changes Signed-off-by: kim <grufwub@gmail.com> * fix tests, thanks tobi! Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-07-09[bugfix] Fix display names in thread view causing wrapping issues on small ↵Libravatar tobi2
screens (#698) * use account.Acct for username * allow username + displayname to wrap with ellipses * use span 2 for displayname always * remove commented-out line
2022-07-09[frontend] Fix up status 'show more' and z-index (#701)Libravatar tobi2
* put spoiler items in a flexbox * make the whole status top of z index this allows text to be selected properly * allow status spoiler text to break across lines
2022-07-08[docs] document the migration between local and s3 (#692)Libravatar Dominik Süß1
2022-07-08[chore] Improve panic handling (#700)Libravatar kim1
* add miekg/dns dependency * set/validate accountDomain * move finger to dereferencer * totally break GetRemoteAccount * start reworking finger func a bit * start reworking getRemoteAccount a bit * move mention parts to namestring * rework webfingerget * use util function to extract webfinger parts * use accountDomain * rework finger again, final form * just a real nasty commit, the worst * remove refresh from account * use new ASRepToAccount signature * fix incorrect debug call * fix for new getRemoteAccount * rework GetRemoteAccount * start updating tests to remove repetition * break a lot of tests Move shared test logic into the testrig, rather than having it scattered all over the place. This allows us to just mock the transport controller once, and have all tests use it (unless they need not to for some other reason). * fix up tests to use main mock httpclient * webfinger only if necessary * cheeky linting with the lads * update mentionName regex recognize instance accounts * don't finger instance accounts * test webfinger part extraction * increase default worker count to 4 per cpu * don't repeat regex parsing * final search for discovered accountDomain * be more permissive in namestring lookup * add more extraction tests * simplify GetParseMentionFunc * skip long search if local account * fix broken test * panics get logged at error level, now include stacktrace Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-07-08[bugfix] Various fixes (#699)Libravatar Forever3
* [bugfix] Correctly style inputs and buttons <input>, <textarea>, and <button> were incorrectly using the system-ui font previously; this commit fixes that. text-align: center; was added to <button> due to an inconsistency with .button where text-align would be off. * [chore] Update binary installation instructions This commit updates the example release mentioned in the docs, and mentions Caddy in the reverse proxy options. * [bugfix] Remove redundant Caddyfile Caddy automatically upgrades HTTP to HTTPS (see https://caddyserver.com/docs/automatic-https) so the upgrading part of the Caddyfile is redundant.
2022-07-06[bugfix] Allow instance titles to wrap (#695)Libravatar tobi1
2022-07-05[bugfix] Fix footer info fields not wrapping (#694)Libravatar tobi3
* flex-wrap footer items * add testrig instance entry with more info set
2022-07-05[bugfix] Fix incorrect domain showing in profiles (#693)Libravatar tobi4
* use instance account_domain in profile * add instance account_domain field
2022-07-04[docs] Update doc images to versions with current styling (#689)v0.3.7Libravatar tobi2
2022-07-04[frontend] Redesign / color scheme (#688)Libravatar tobi12
* fix css indentation * profile styling update * update status styling to match profile * empty header fix * generate random avatars for thread views * appease the linter gods * upgrade deps * turn profile accent into border + $bg background * upgrade deps * small accessibility tweaks * general redesign, clearer css variables * configure instance.Version for testrig * footer styling * add sublte borders to box-shadow for separation * accessible blues, other tweaks * background bg_accent * fix viewport * change client entry buttons to links * cw button styling * status display+username spacing * small thread view tweaks * color tweaks for accessible contrasts * use Noto Sans * biiit less dark bg * .info contrast, border Co-authored-by: f0x <f0x@cthu.lu>
2022-07-04[bugfix] Visibility fixes (#687)Libravatar tobi3
* test self boost * only CC to public when necessary
2022-07-03[chore] configure instance.Version for testrig (#659)Libravatar f0x522
* configure instance.Version for testrig * update instancepatch tests Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com> Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-07-03[chore] Update pruneOneLocal to use ctx (#684)Libravatar tobi2
* update pruneOneLocal to use ctx * update test
2022-07-03[feature] S3 support (#674)Libravatar Dominik Süß250
* feat: vendor minio client * feat: introduce storage package with s3 support * feat: serve s3 files directly this saves a lot of bandwith as the files are fetched from the object store directly * fix: use explicit local storage in tests * feat: integrate s3 storage with the main server * fix: add s3 config to cli tests * docs: explicitly set values in example config also adds license header to the storage package * fix: use better http status code on s3 redirect HTTP 302 Found is the best fit, as it signifies that the resource requested was found but not under its presumed URL 307/TemporaryRedirect would mean that this resource is usually located here, not in this case 303/SeeOther indicates that the redirection does not link to the requested resource but to another page * refactor: use context in storage driver interface
2022-07-03[chore] Re-enable source tar but name it clearly as source (#683)Libravatar tobi1
2022-07-03[bugfix] Make hashtag regex work with non-ascii characters (#682)Libravatar tobi2
2022-06-30[feature] Cleanup unattached local media (#680)Libravatar tobi9
* add localUnattached db function * add parseOlderThan util function * add pruneunusedlocalattachments to media manager * add unusedlocal pruning to schedule + admin call * set number of days to keep as a const * fix test
2022-06-26[feature] Use default instance thumbnail if instance account header not set ↵Libravatar tobi2
(#672)