summaryrefslogtreecommitdiff
path: root/internal
AgeCommit message (Collapse)AuthorFiles
2022-10-13[feature] Refetch emojis when they change on remote instances (#905)Libravatar tobi22
* select emoji using image_static_url * use updated on AP emojis * allow refetch of updated emojis * cheeky workaround for test * clean up old files for refreshed emoji * check error for originalPostData * shorten GetEmojiByStaticImageURL * delete kirby (sorry nintendo)
2022-10-12[feature] Add `/api/v1/admin/custom_emojis` endpoint (#902)Libravatar tobi17
* add admin emojis get path + model + docs * stub admin emojis get processor function * add id + disabled fields to admin emoji * add emoji -> api admin emoji converter * tidy up a bit * add GetEmojis function * finish up get emojis function * order by shortcodedomain * ASC * tidy up + explain * update to allow paging * make admin emojis pageable * fix mixed case paging * normalize emoji queries a bit better * test emoji get paging * make limit optional * fix incorrect path in media cleanup tests * i have bad coder syndrome * don't trimspace * rename -> GetUseableEmojis * wrap emoji query in subquery avoid selecting more than we need * fix a bit of sillyness teehee * fix subquery postgres woes
2022-10-10[chore] Make paging logic more generic (#901)Libravatar tobi9
* make paging logic more generic not just for timelines! * linty linterson
2022-10-08[feature] Add opt-in RSS feed for account's latest Public posts (#897)Libravatar tobi31
* 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-10-08[chore] Standardize database queries, use `bun.Ident()` properly (#886)Libravatar tobi42
* use bun.Ident for user queries * use bun.Ident for account queries * use bun.Ident for media queries * add DeleteAccount func * remove CaseInsensitive in Where+use Ident ipv Safe * update admin db * update domain, use ident * update emoji, use ident * update instance queries, use bun.Ident * fix media * update mentions, use bun ident * update relationship + tests * use tableexpr * add test follows to bun db test suite * update notifications * updatebyprimarykey => updatebyid * fix session * prefer explicit ID to pk * fix little fucky wucky * remove workaround * use proper db func for attachment selection * update status db * add m2m entries in test rig * fix up timeline * go fmt * fix status put issue * update GetAccountStatuses
2022-10-08[performance] cache domains after max retries in transport (#884)Libravatar kim2
2022-10-08[feature] `oob` oauth token support (#889)Libravatar tobi8
* move helpful advice into oauth server * rewrite HandleAuthorizeRequest to allow oob
2022-10-06[bugfix] Fix new domain block date (#893)Libravatar tobi4
2022-10-06[feature] Add emoji image size to instance response (#892)Libravatar tobi3
2022-10-04[bugfix] Use background context instead of request context for async ↵Libravatar tobi2
processing (#888) Fixes an issue where async processing was not completing correctly. In particular this applies to side effects of domain blocks: while the domain block was being entered and enforced correctly, side effects like deleting accounts and updating the instance entry for the blocked instance were not. This fixes that :)
2022-10-03[chore] Bundler restructure (#880)Libravatar f0x521
* re-structure bundler, settings panel files * add more info logging * tidy up CSS syntax errors * split into lib/ files * livereloading server * fix factor function for production builds * remove testing console.log * default to production env, saves 300kb bundle size
2022-10-03[performance] add user cache and database (#879)Libravatar tobi20
* go fmt * add + use user cache and database * fix import * update tests * remove unused relation
2022-10-02[chore] Use shorter timestamps in frontend for replies (#875)Libravatar tobi2
* rename timestampShort -> timestampVague * add ParseISO8601 * start fiddling with timestamp * pad/margin a bit more consistently * remove visibilty icon, change timestamp use * update timestamp logic * check + log errors * properly cut-off long display- and usernames Co-authored-by: f0x <f0x@cthu.lu>
2022-10-02fix emojis not showing in spoiler text (#878)Libravatar tobi2
2022-10-01[chore] Normalize domain blocks to punycode (#873)Libravatar tobi2
* normalize domain blocks to punycode * normalize -> normalizeDomain
2022-10-01[chore] small logging cleanup (#869)Libravatar kim3
* handle more syslogging levels, use singular time format variable, add entry .New() function * pass in calldepth to lower log functions to ensure correctly set * update truncate length in syslog test
2022-09-29[feature] update config types to use bytesize.Size (#828)Libravatar kim24
* 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-09-29[chore] Add ipv6 localhost to trusted proxies by default (#868)Libravatar tobi1
* add ipv6 localhost to trusted proxies by default * test different trusted proxies
2022-09-29[bugfix] Fix incorrect use of bun.Ident (#866)Libravatar tobi2
* remove misused bun.Ident * test status delete via API * fix test
2022-09-29[feature] Add `meta robots` tag; allow robots to index profile card if user ↵Libravatar tobi3
is Discoverable (#842) * rework robots.txt response * don't let robots snippet from statuses/threads * allow robots to index if user is Discoverable * add license text
2022-09-29[frontend] Unified panels (#812)Libravatar f0x524
* settings panel restructuring * clean up old Gin handlers * colorscheme redesign, some other small css tweaks * basic router layout, error boundary * colorscheme redesign, some other small css tweaks * kebab-case consistency * superfluous padding on applist * remove unused consts * redux, whitespace changes.. * use .jsx extensions for components * login flow up till app registration * full redux oauth implementation, with basic error handling * split oauth api functions * oauth api revocation handling * basic profile change submission * move old dir * profile overview * fix keeping track of the wrong instance url (for different instance/api domains) * use redux state for profile form * delete old/index.js, old/basic.js, fully implemented * implement old/user/profile.js * implement password change * remove debug logging * support future api for removing files * customize profile css * remove unneeded wrapper components * restructure form fields * start on admin pages * admin panel settings * admin settings panel * remove old/admin files * add top-level redirect * refactor/cleanup forms * only do API checks on logged-in state * admin-status based routing * federation block routing * federation blocks * upgrade dependencies * react 18 changes * media cleanup * fix useEffect hooks * remove unused require * custom emoji base * emoji uploader * delete last old panel files * sidebar styling, remove unused page * refactor submit functions * fix sidebar boxshadow-border * fix old css variables * fix fake-toot avatar * fix non-square emoji * fix user settings redux keys * properly get admin account contact from instance response * Account.source default values * source.status_format key * mobile responsiveness * mobile element tweaks * proper redirect after removing block * add redirects for old setting panel urls * deletes * fix mobile overflow * clean up debug logging calls
2022-09-29[chore] simplify generating log entry caller information (#863)Libravatar kim3
* vastly simplify logging caller information Signed-off-by: kim <grufwub@gmail.com> * fix failing test due to multiple calls to processor.Start() Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-09-28[chore] update dependencies, bump to Go 1.19.1 (#826)Libravatar kim87
* update dependencies, bump Go version to 1.19 * bump test image Go version * update golangci-lint * update gotosocial-drone-build * sign * linting, go fmt * update swagger docs * update swagger docs * whitespace * update contributing.md * fuckin whoopsie doopsie * linterino, linteroni * fix followrequest test not starting processor * fix other api/client tests not starting processor * fix remaining tests where processor not started * bump go-runners version * don't check last-webfingered-at, processor may have updated this * update swagger command * update bun to latest version * fix embed to work the same as before with new bun Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-09-27[bugfix] Fix emphasis being added to emoji shortcodes with markdown parsing ↵v0.5.0Libravatar tobi5
(#856) * fix underscored emoji shortcodes being emphasized * remove footnote parsing from md
2022-09-26[performance] Update indexes that were causing slow db queries (#855)v0.5.0-rc3Libravatar tobi2
* add status.url index, use id desc in some indexes * test account last posted
2022-09-26[feature] Show + federate emojis in accounts (#837)Libravatar tobi25
* Start adding account emoji * get emojis serialized + deserialized nicely * update tests * set / retrieve emojis on accounts * show account emojis in web view * fetch emojis from db based on ids * fix typo in test * lint * fix pg migration * update tests * update emoji checking logic * update comment * clarify comments + add some spacing * tidy up loops a lil (thanks kim)
2022-09-26[bugfix] more nil checks baybeeeeeeeeeeeeeeeeeeee (#854)Libravatar kim1
* more nil checks baybeeeeeeeeeeeeeeeeeeee Signed-off-by: kim <grufwub@gmail.com> * move item nil checks Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-09-26[bugfix] add so, many, nil, checks (#853)Libravatar kim1
* add so, many, nil, checks. * remove comment
2022-09-26[bugfix] panic during child thread iteration (#852)Libravatar kim1
* *actually* start at top of stack loop on find remote child, fix iter indexing Signed-off-by: kim <grufwub@gmail.com> * add improved code comment Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-09-25[bugfix] update thread iterators to not use recursion (#851)Libravatar kim7
* update thread iterators to not use recursion, rewrote both Signed-off-by: kim <grufwub@gmail.com> * fix endless descendant deref, don't error if fetching existing status Signed-off-by: kim <grufwub@gmail.com> * don't refetch remote ancestor statuses, improve descendant iter commenting Signed-off-by: kim <grufwub@gmail.com> * move collection page next logic so we capture first page of entities Signed-off-by: kim <grufwub@gmail.com> * improve log format argument quoting Signed-off-by: kim <grufwub@gmail.com> * improve code commenting of collection paging Signed-off-by: kim <grufwub@gmail.com> * only dereference announce's originating status if _not_ local. update DereferenceThread() signature. cleanup searchStatusByURI() Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-09-24[bugfix] Wrap media reader in length reader to determine length if no ↵Libravatar tobi6
`content-length` given (#848) * use lengthReader 2 determine fileSize if not given * update tests * small fixes * go fmt
2022-09-23[feature] Allow delivery to sharedInboxes where possible (#847)Libravatar tobi20
* update Activity * add instance-deliver-to-shared-inboxes setting * update activity version again * add SharedInboxURI field to accounts * serdes for endpoints/sharedInbox * deliver to sharedInbox if one is available * update tests * only assign shared inbox if shared domain * look for shared inbox if currently nil * go fmt * finger to get params.RemoteAccountID if necessary * make comments clearer * compare dns more consistently
2022-09-21[chore] Tidy up status deletion, remove from cache too (#845)Libravatar tobi11
* add func for deleting status from db + cache * move deletes entirely back to processor and also only do a delete if the requesting account owns the item being deleted * tidy up unboost processing * delete status more efficiently * fix wrong account id on remote test attachments * fix federator test
2022-09-19don't error out if storage key already exists (#840)Libravatar tobi4
2022-09-19[bugfix] Server and closer bugfixes (#839)Libravatar tobi4
* defer streaming from storage more forcefully * shut down Server more gracefully * use command context as server BaseContext
2022-09-17[bugfix] Fix domains not being unblockable, log internal server errors from ↵Libravatar tobi3
API (#833) * log internal server errors from 500 api calls * don't exec into nil dest * don't exec into nil dest * log error in router logger not api errorhandling * update logging a tad * linter
2022-09-15[bugfix] Fix emojis, attachments, and mentions not being serialized ↵v0.5.0-rc2Libravatar tobi2
correctly sometimes via AP (#829)
2022-09-13[docs] Swagger document `/api/v1/custom_emojis` (#824)Libravatar tobi1
2022-09-12 [bug] fix unique constraint conflict (#820)v0.5.0-rc1Libravatar tobi2
2022-09-12[feature] Allow users to set custom css for their profiles + threads (#808)Libravatar tobi26
* add custom css account property + db func to fetch * allow account to get/set custom css * serve custom css for an account * go fmt * use monospace for customcss, add link * add custom css to account cache * fix broken field * add custom css docs to user guide * add `accounts-allow-custom-css` config flag * add allow custom css to /api/v1/instance response * only show/set custom css if allowed to do so * only set/serve custom account css if enabled * update swagger docs * chain promise * make bool a bit clearer * use cache for GetAccountCustomCSSByUsername
2022-09-12[feature] Fetch + display custom emoji in statuses from remote instances (#807)Libravatar tobi20
* start implementing remote emoji fetcher * update status where pk * aaa * tidy up a little * check size limits for emojis * thank you linter, i love you <3 * update swagger docs * add emoji dereference test * make emoji max sizes configurable * normalize db.ErrAlreadyExists
2022-09-08[bugfix] Fix preposterous characters reserved per URL amount (#809)Libravatar tobi3
* clarify docs * tidy up consts, set reserved chars much lower * update tests
2022-09-07[feature] opengraph meta tags (#806)Libravatar f0x525
* f0x gitignore additions * better meta title and descriptions * user avatar icon for thread and profile meta tags * use proper tag for image * whitespace * add noescapeAttr template function * use ogMeta struct for opengraph * maxOGDescriptionLength = 300 Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-09-06[feature] Custom emoji updates (serve emoji via s2s api, tune db models) (#805)Libravatar tobi20
* migrate emojis * add get emoji to s2s (federation) API * add new emoji db + cache functions * add shortcodeDomain lookup for emojis * check existing emojis w/cache, not w/constraints * go fmt * add putEmoji func * use new db emoji funcs instead of where * remove emojistringstotags func * add unique constraint back in * fix up broken migration * update index
2022-09-04[bugfix] Use 'Image' instead of unrecognized 'Gif' type for media ↵Libravatar tobi4
attachments (#801) * Store gifs as Image type * remove Gif attachment type, add Gifv type * update test
2022-09-04[feature] Set default header and avatar for API accounts to GtS ones (#799)Libravatar tobi15
* validate web-asset-base-dir * move default icons into converter * always ensure avatar + header on api accounts * update tests * add default header * don't return error from web module creation anymore * tidy a bit * use pngs for default avatars rather than svgs
2022-09-02[bugfix] Fix status fields `in_reply_to_id` and `in_reply_to_account_id` not ↵Libravatar tobi5
being nullable (#798) * make reply status fields nullable pointers * update tests
2022-09-02[performance] cache recently allowed/denied domains to cut down on db calls ↵Libravatar kim7
(#794) * fetch creation and fetching domain blocks from db Signed-off-by: kim <grufwub@gmail.com> * add separate domainblock cache type, handle removing block from cache on delete Signed-off-by: kim <grufwub@gmail.com> * fix sentinel nil values being passed into cache Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>
2022-09-02[feature] Federate custom emoji (outbound) (#791)Libravatar Blackle Morisanchetto3
* Federate local custom emoji * Add test for converting a status with tags to AP
2022-09-02[performance] cache account db lookups by public key URI (#795)Libravatar kim6
Signed-off-by: kim <grufwub@gmail.com> Signed-off-by: kim <grufwub@gmail.com>