summaryrefslogtreecommitdiff
path: root/internal
AgeCommit message (Collapse)AuthorFiles
2022-04-25[bugfix] Allow processing of .png files where checksum is not correct (#487)Libravatar tobi7
* add png stripping code from google/wuffs * experiment with stripping data from pngs * add test images * use StrippedPngDecode for pngs * add StrippedPngDecode func * update tests for (no)alphachannel pngs * nolint on copied function
2022-04-24[chore] Add two new test images for media processing (#424)Libravatar 0hlov32
2022-04-24[bug] Fix status API / status web API being case sensitive (#481)Libravatar tobi4
* make getStatus by id case-insensitive * test get status case insensitive * init config before log
2022-04-24[feature] Implement media v2 endpoint to accommodate Tusky 17 (#480)Libravatar tobi3
* serve v2 media api * go fmt
2022-04-24Revert "[chore] Tidy up federating db locks a tiny bit (#472)" (#479)Libravatar tobi1
This reverts commit 31c1067a548039e7d95f131b3972ecfe1f57f835.
2022-04-19[chore] Tidy up federating db locks a tiny bit (#472)Libravatar tobi1
2022-04-18[bugfix] Fix infinite domain block database loop (#467)Libravatar tobi1
This fixes an issue where the domain block logic would go into an infinite loop.
2022-04-18[bugfix] Use our own (Batch)Deliver implementation for federated messages (#466)Libravatar tobi1
2022-04-18[feature] Add log-db-queries config option (#465)Libravatar tobi4
2022-04-16[bugfix] Convert IDNs to punycode before using as session name (#458)Libravatar tobi2
* convert hostname to punycode for session name * test punycode
2022-04-16[bugfix] Use background ctx for domain block side effects (#457)Libravatar tobi1
2022-04-15[feature] Web profile pages for accounts (#449)Libravatar tobi20
* add default avatars * allow webModule to error * return errWithCode from account get * add AccountGetLocalByUsername * check nil requesting account * add timestampShort function for just month/year * move loading logic to New + add default avatars * add profile page view * update swagger docs * add excludeReblogs to GetAccountStatuses * ignore casing when selecting local account by username * appropriate redirects * css fiddling * add 'about' heading * adjust thread page to work with routing * return AP representation if requested + authorized * simplify auth check * go fmt * golangci-lint ignore math/rand
2022-04-10[bugfix] Fix broken only_media and only_public flags on ↵v0.2.3Libravatar tobi4
/api/v1/accounts/:id/statuses (#448) * bump superseriousbusiness/activity version * fetch list of follower inbox iris * add test for getting account statuses * fix incorrect publicOnly parsing * update media not null query
2022-04-05[dependency] Update superseriousbusiness/activity dependency (#446)Libravatar tobi1
* bump superseriousbusiness/activity version * fetch list of follower inbox iris
2022-04-02[chore] Update Go version to 1.18 (#444)Libravatar tobi8
* linting with new golangci-lint version * update go to 1.18 * bump versions in drone.yml * use new runtime/debug package for version info * remove Commit build flag from goreleaser * remove mock commit + version from build script * go fmt * add dummy version env flag to test container * install git in golang container for testing * only set versionString if Version is defined
2022-03-29[feature] Dereference remote mentions when the account is not already known ↵v0.2.2Libravatar tobi16
(#442) * remove mention util function from db * add ParseMentionFunc to gtsmodel * add parseMentionFunc to processor * refactor search to simplify it a bit * add parseMentionFunc to account * add parseMentionFunc to status * some renaming for clarity * test dereference of unknown mentioned account
2022-03-22 [bugfix] Fix media uploads blocking after a failed upload #438 Libravatar tobi1
safer in case of failure
2022-03-21[bugfix] Fix images not being processed correctly sometimes (#437)Libravatar tobi4
* bump exif-terminator to latest version * add and test giant turnip from turnip.farm * don't error if content property is nil
2022-03-21don't error if content property is nil (#436)Libravatar tobi1
2022-03-21[bugfix] Close ReadClosers properly in the media package (#434)Libravatar tobi4
* defer lock reader * close readers when finished with them * close the reader in the teereader when finished
2022-03-19[feature] Admin account actions (#432)Libravatar tobi13
* add accountAction to the admin API * model admin account action * add admin account action to the processor * add migration for new AdminAccountActions table * fix accounts admin path * Update swagger docs
2022-03-15[feature] Federate local account deletion (#431)Libravatar tobi13
* add account delete to API * model account delete request * add AccountDeleteLocal * federate local account deletes * add DeleteLocal * update transport (controller) to allow shortcuts * delete logic + testing * update swagger docs * more tests + fixes
2022-03-15[performance] Add dereference shortcuts to avoid making http calls to self ↵Libravatar tobi4
(#430) * update transport (controller) to allow shortcuts * go fmt * expose underlying sig transport to allow test sigs
2022-03-13[bugfix] Fix bug where admin panel could not be accessed at `/admin` (#427)Libravatar tobi2
* clarify comments * tidy up static serving + add /admin redirect
2022-03-13[bugfix] Fix html-escaped characters in content warnings (#426)Libravatar tobi2
* test status create with odd CWs * use SanitizeCaption for content warning escaping
2022-03-07[performance] Database optimizations (#419)v0.2.1Libravatar tobi5
* create first index on notifications * tidy up + add tests * log queries for trace, ops for debug * index commonly used fields * rearrange query * add a few more indexes * remove schema-breaking index (add this back in later) * re-add cleanup query index
2022-03-07[feature] Clean up/uncache remote media (#407)Libravatar tobi30
* Add whereNotEmptyAndNotNull * Add GetRemoteOlderThanDays * Add GetRemoteOlderThanDays * Add PruneRemote to Manager interface * Start implementing PruneRemote * add new attachment + status to tests * fix up and test GetRemoteOlderThan * fix bad import * PruneRemote: return number pruned * add Cached column to mediaattachment * update + test pruneRemote * update mediaTest * use Cached column * upstep bun to latest version * embed structs in mediaAttachment * migrate mediaAttachment to new format * don't default cached to true * select only remote media * update db dependencies * step bun back to last working version * update pruneRemote to use Cached field * fix storage path of test attachments * add recache logic to manager * fix trimmed aspect ratio * test prune and recache * return errwithcode * tidy up different paths for emoji vs attachment * fix incorrect thumbnail type being stored * expose TransportController to media processor * implement tee-ing recached content * add thoughts of dog to test fedi attachments * test get remote files * add comment on PruneRemote * add postData cleanup to recache * test thumbnail fetching * add incredible diagram * go mod tidy * buffer pipes for recache streaming * test for client stops reading after 1kb * add media-remote-cache-days to config * add cron package * wrap logrus so it's available to cron * start and stop cron jobs gracefully
2022-02-22[feature] Add postDataCallbackFunc to allow cleanup (#408)Libravatar tobi10
2022-02-21[bugfix] Fix thumbnail image type (#406)Libravatar tobi3
* fix thumbnail content-type * test fix thumbnail content-type
2022-02-19[feature] Gin enable gzip encoding (#405)Libravatar tobi2
* add gin gzip dependency * add gzip middleware to router * go mod tidy
2022-02-19[feature] Stream files via reader (#404)Libravatar tobi3
* serve files via reader rather than byte slice * close readcloser when we're done with it * cast reader to readcloser
2022-02-15[bugfix] Only mark cookies as Secure on https (#398)Libravatar Shadowfacts1
Fixes cookies not being stored/sent by Safari when serving over plain http
2022-02-08store and retrieve processState atomicallyLibravatar tsmethurst3
2022-02-08hopefully fix potential race conditionLibravatar tsmethurst1
2022-02-08log error on header/avatar fetch failLibravatar tsmethurst2
2022-02-08go fmtLibravatar tsmethurst1
2022-02-08merge fixupLibravatar tsmethurst3
2022-02-08Merge branch 'main' into media_refactorLibravatar tsmethurst54
2022-02-08update outdated commentLibravatar tsmethurst1
2022-02-07[feature] add authorization to the already-existing authentication (#365)Libravatar Forest Johnson14
* add ensureUserIsAuthorizedOrRedirect to /oauth/authorize * adding authorization (email confirm, account approve, etc) to TokenCheck * revert un-needed changes to signin.go * oops what happened here * error css * add account.SuspendedAt check * remove redundant checks from oauth util Authed function * wip tests * tests passing * stop stripping useful information from ErrAlreadyExists * that feeling of scraping the dryer LINT off the screen * oops I didn't mean to get rid of this NewTestRouter function * make tests work with recorder * re-add ConfigureTemplatesWithGin to handle template path err Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-02-06don't bother negotiating Accept for webfinger (#381)Libravatar tobi1
2022-02-06if accountDomain isn't set, use Host value instead (#380)Libravatar tobi2
2022-02-05[feature] Rework timeline code to make it useful for more than just statuses ↵Libravatar tobi23
(#373) * add preparable and timelineable interfaces * initialize timeline manager within the processor * generic renaming * move status-specific timeline logic into the processor * refactor timeline to make it useful for more than statuses
2022-01-31[bug] Fix OIDC users requiring second approval (#371)Libravatar tobi2
* tidy up NewSignup * pre-approve users created via OIDC
2022-01-31[bug] Send plaintext emails to fix "message refused: Message is not RFC 2822 ↵Libravatar Forest Johnson7
compliant" (#366) * trying to fix "message refused: Message is not RFC 2822 compliant" * fix "message refused: Message is not RFC 2822 compliant" 550 5.7.1 Delivery not authorized, message refused: Message is not RFC 2822 compliant * remove silly regex * lint * fix tests * we should use text/template instead of html/template now
2022-01-30[bug] Fix sqlite empty address issue (#370)Libravatar tobi2
* error when empty address has been set for sqlite * better explain sqlite db-address setting
2022-01-30[bug] Fix minimum description length check (#369)Libravatar tobi3
* add/update tests * don't check min description length on media create
2022-01-30[feature] Make Let's Encrypt integration an opt-in feature (#368)Libravatar tobi1
2022-01-29put store lock file in base of storageLibravatar tsmethurst1
2022-01-25ensure blocking calls to getRemoteAccount before showing stuff to clientLibravatar tsmethurst2