summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2022-05-25[security] Set SameSite to `strict` instead of browser default (#606)Libravatar tobi1
2022-05-24[chore] Serialize times as UTC ISO8601 instead of RFC3339 (#602)Libravatar tobi4
* add time util to mimic utc ISO8601 * use ISO8601 when serializing to frontend * update test notification
2022-05-24[bugfix] Don't serialize instance account if not set (#603)Libravatar tobi2
* omit contactAccount from json if not set * test instance serialization
2022-05-24[bugfix] Only search remote if protocol is http(s) (#601)Libravatar tobi1
2022-05-24[bugfix] Set refetch to true in iterateDescendants (#600)Libravatar tobi1
2022-05-23[bugfix] Fix multiple dereferences of boosted status causing media ↵Libravatar tobi18
duplication (#589) * add some announces to test models * start on announce test logic * test federatingDB.Announce * change signature of GetRemoteStatus * remove 'refresh' logic and replace it with refetch * go fmt * remove timeline manager from processor test * make zork created at determinate * test get account statuses * test get + serialize zork * make account keys determinate * make admin accountCreate time determinate * test account to as * init test config before test log * test status to frontend * remove daft Within check * hack around a bit * use index of slice
2022-05-23[docs] document a checklist for how to go about a release (#592)Libravatar Mina Galić1
This is the way. well, my recommendations, anyway.
2022-05-23[bugfix] Fix `error extracting status content: no content found` (#598)Libravatar tobi4
* don't return error if no content found in Activity * add test for content extraction * go fmt
2022-05-23[bugfix] If status URL is empty, use URI instead and don't log unnecessary ↵Libravatar tobi3
error (#597) * test parse status with no URL * if no status URL is available, use the URI instead
2022-05-23[security] Check all involved IRIs during block checking (#593)Libravatar tobi9
* tidy up context keys, add otherInvolvedIRIs * add ReplyToable interface * skip block check if we own the requesting domain * add block check for other involved IRIs * use cacheable status fetch * remove unused ContextActivity * remove unused ContextActivity * add helper for unique URIs * check through CCs and clean slice * add GetAccountIDForStatusURI * add GetAccountIDForAccountURI * check blocks on involved account * add statuses to tests * add some blocked tests * go fmt * extract Tos as well as CCs * test PostInboxRequestBodyHook * add some more testActivities * deduplicate involvedAccountIDs * go fmt * use cacheable db functions, remove new functions
2022-05-23[docs] Add Caddy instructions to the documentation (#594)Libravatar Martijn de Boer2
* Add instructions for working with Caddy 2 Add instructions for working with Caddy 2. Some texts are duplicated from the NGINX part (mainly the configuration part, about systemctl). * Add new Caddy docs to mkdocs.yml Adds the new Caddy document to the document tree * Remove up and downstream headers from configuration Removed the header statements for the proxy, as proxying those are transparant. Kept the flush_interval directive, disabling the response buffer completely so we can write without delays. * Update caddy.md Corrects the opening link * Apply comments mentioned in PR @igalic mentioned a few comments to improve these docs. I've processed those in this PR.
2022-05-20[feature] implement custom_emojis endpoint (#563)Libravatar Adelie Paull11
* implement custom_emojis api endpoint * add tests for getting custom emoji out of the database and converting to api emoji * change sort direction of emoji query * change logging level and initialize array with known length as per kim's suggestions * add continue to lessen risk of making a malformed struct during conversion from db to api emojis
2022-05-18[bugfix] Stop some statuses from being home timelined when they shouldn't be ↵Libravatar tobi2
(#585) * recursively check timelineability of parent status * check following status creator * add tests for hometimelineability (whew) * add test with mix of public + unlocked vis
2022-05-18[bugfix] Clean up boosts of status when the status itself is deleted (#579)Libravatar tobi4
* move status wiping logic to fromcommon.go * delete reblogs of status when a status is deleted * add admin boost of zork to test model * update tests to make them more determinate * Merge branch 'main' into status_reblog_cleanup * move status wiping logic to fromcommon.go * delete reblogs of status when a status is deleted * add admin boost of zork to test model * update tests to make them more determinate * Merge branch 'main' into status_reblog_cleanup * test status delete via client api * go fmt
2022-05-18[performance] Add further indexes to mitigate laggy queries (#586)Libravatar tobi236
* start adding more indexes as a migration * update sqlite version
2022-05-16[chore] Timeline test updates (#578)Libravatar tobi5
* add admin boost of zork to test model * update tests to make them more determinate * remove printf call
2022-05-16testrig: override bind address from environment variable (#577)Libravatar f0x521
2022-05-16[feature] Basic config validation (#562)Libravatar tobi7
* add optional config validation * clarify that host and protocol are required * add validation for host and protocol * pass prerunArgs as a struct (validate by default)
2022-05-16[docs] Mention `AmbientCapabilities=CAP_NET_BIND_SERVICE` in example systemd ↵Libravatar ugla1
service (#576)
2022-05-15[feature] Unused avatar and header cleanup (#574)Libravatar tobi17
* rename + tidy up remote pruning * fix media attachment account join see https://bun.uptrace.dev/guide/golang-orm.html#table-relationships * update logging to new function name * add get avatars and headers to bun * add pruneallmeta function * don't set uncached since we're deleting anyway * fix totalPruned being in wrong place * test pruning meta * go fmt ./... * rename mediaprune * add meta pruning to routine mediaprune * tidy up cleanup job scheduling * rename adminmediaremoteprune * update mediacleanup to use renamed prune func * update swagger docs a little bit * reuse cancel + context
2022-05-15[feature] Media cleanup endpoint (#560)Libravatar Sashanoraa8
Adds an admin endpoint to trigger a remote media cleanup. Fixed #348 Signed-off-by: Sashanoraa <sasha@noraa.gay>
2022-05-15[documentation] Nlnet application (#572)Libravatar tobi2
* add README.md for archive folder * start work on funding application * big updates to the nlnet document * always require http signatures * update budget * wording edits
2022-05-15[accessibility] Add description for the pinafore logo (#568)Libravatar OniriCorpe1
Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2022-05-15[security] transport.Controller{} and transport.Transport{} security and ↵Libravatar kim61
performance improvements (#564) * cache transports in controller by privkey-generated pubkey, add retry logic to transport requests Signed-off-by: kim <grufwub@gmail.com> * update code comments, defer mutex unlocks Signed-off-by: kim <grufwub@gmail.com> * add count to 'performing request' log message Signed-off-by: kim <grufwub@gmail.com> * reduce repeated conversions of same url.URL object Signed-off-by: kim <grufwub@gmail.com> * move worker.Worker to concurrency subpackage, add WorkQueue type, limit transport http client use by WorkQueue Signed-off-by: kim <grufwub@gmail.com> * fix security advisories regarding max outgoing conns, max rsp body size - implemented by a new httpclient.Client{} that wraps an underlying client with a queue to limit connections, and limit reader wrapping a response body with a configured maximum size - update pub.HttpClient args passed around to be this new httpclient.Client{} Signed-off-by: kim <grufwub@gmail.com> * add httpclient tests, move ip validation to separate package + change mechanism Signed-off-by: kim <grufwub@gmail.com> * fix merge conflicts Signed-off-by: kim <grufwub@gmail.com> * use singular mutex in transport rather than separate signer mus Signed-off-by: kim <grufwub@gmail.com> * improved useragent string Signed-off-by: kim <grufwub@gmail.com> * add note regarding missing test Signed-off-by: kim <grufwub@gmail.com> * remove useragent field from transport (instead store in controller) Signed-off-by: kim <grufwub@gmail.com> * shutup linter Signed-off-by: kim <grufwub@gmail.com> * reset other signing headers on each loop iteration Signed-off-by: kim <grufwub@gmail.com> * respect request ctx during retry-backoff sleep period Signed-off-by: kim <grufwub@gmail.com> * use external pkg with docs explaining performance "hack" Signed-off-by: kim <grufwub@gmail.com> * use http package constants instead of string method literals Signed-off-by: kim <grufwub@gmail.com> * add license file headers Signed-off-by: kim <grufwub@gmail.com> * update code comment to match new func names Signed-off-by: kim <grufwub@gmail.com> * updates to user-agent string Signed-off-by: kim <grufwub@gmail.com> * update signed testrig models to fit with new transport logic (instead uses separate signer now) Signed-off-by: kim <grufwub@gmail.com> * fuck you linter Signed-off-by: kim <grufwub@gmail.com>
2022-05-15[chore] Update LE server to use copy of main http.Server{} to maintain ↵Libravatar kim1
server timeouts etc (#571) * update LE server to use copy of main HTTP server to maintain server timeouts etc Signed-off-by: kim <grufwub@gmail.com> * shutup linter Signed-off-by: kim <grufwub@gmail.com>
2022-05-13[bugfix] update syslog tests to listen/connect specifically to ipv4 loopback ↵Libravatar kim2
(#561) Signed-off-by: kim <grufwub@gmail.com>
2022-05-12[bugfix] Fix server trying to listen twice on same address when l.e. enabled ↵v0.3.3Libravatar tobi1
(#557)
2022-05-11[bugfix] Add account raw note fix (#556)Libravatar tobi2
* hack the latest migration to fix psql issue * add new migration to fix previous migration * adjust query
2022-05-11[documentation] Admin Panel installation + usage (#552)Libravatar f0x522
* admin panel documentation * wrap link so it's clickable * format img so it works with mkdocs serve Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-05-09[Documentation] tidy docker-compose docs, add note about uid/gid (#551)Libravatar tobi1
2022-05-09[feature] Include password strength in error message when password strength ↵Libravatar Eamonn O'Brien-Strain4
is too low (#550) * When password validation fails, return how close to enough entropy it has. * Shorter version of low-strength password error message
2022-05-08[bugfix] Fix remote media pruning failing if media already gone (#548)Libravatar tobi50
* fix error check of prune to allow missing files * update go-store library, add test for pruning item with db entry but no file Signed-off-by: kim <grufwub@gmail.com> * remove now-unneccessary error check Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: kim <grufwub@gmail.com>
2022-05-07[bugfix] Fix existing bio text showing as HTML (#531)Libravatar kim16
* fix existing bio text showing as HTML - updated replaced mentions to include instance - strips HTML from account source note in Verify handler - update text formatter to use buffers for string writes Signed-off-by: kim <grufwub@gmail.com> * go away linter Signed-off-by: kim <grufwub@gmail.com> * change buf reset location, change html mention tags Signed-off-by: kim <grufwub@gmail.com> * reduce FindLinks code complexity Signed-off-by: kim <grufwub@gmail.com> * fix HTML to text conversion Signed-off-by: kim <grufwub@gmail.com> * Update internal/regexes/regexes.go Co-authored-by: Mina Galić <mina.galic@puppet.com> * use improved html2text lib with more options Signed-off-by: kim <grufwub@gmail.com> * fix to produce actual plaintext from html Signed-off-by: kim <grufwub@gmail.com> * fix span tags instead written as space Signed-off-by: kim <grufwub@gmail.com> * performance improvements to regex replacements, fix link replace logic for un-html-ing in the future Signed-off-by: kim <grufwub@gmail.com> * fix tag/mention replacements to use input string, fix link replace to not include scheme Signed-off-by: kim <grufwub@gmail.com> * use matched input string for link replace href text Signed-off-by: kim <grufwub@gmail.com> * remove unused code (to appease linter :sobs:) Signed-off-by: kim <grufwub@gmail.com> * improve hashtagFinger regex to be more compliant Signed-off-by: kim <grufwub@gmail.com> * update breakReplacer to include both unix and windows line endings Signed-off-by: kim <grufwub@gmail.com> * add NoteRaw field to Account to store plaintext account bio, add migration for this, set for sensitive accounts Signed-off-by: kim <grufwub@gmail.com> * drop unnecessary code Signed-off-by: kim <grufwub@gmail.com> * update text package tests to fix logic changes Signed-off-by: kim <grufwub@gmail.com> * add raw note content testing to account update and account verify Signed-off-by: kim <grufwub@gmail.com> * remove unused modules Signed-off-by: kim <grufwub@gmail.com> * fix emoji regex Signed-off-by: kim <grufwub@gmail.com> * fix replacement of hashtags Signed-off-by: kim <grufwub@gmail.com> * update code comment Signed-off-by: kim <grufwub@gmail.com> Co-authored-by: Mina Galić <mina.galic@puppet.com>
2022-05-07[performance] improved logrus output switching performance (#544)Libravatar kim2
* improved logrus output switching performance Signed-off-by: kim <grufwub@gmail.com> * add license to test file Signed-off-by: kim <grufwub@gmail.com>
2022-05-07[feature] Update media manager to use internal/worker package (#543)Libravatar kim3
* update media manager to use internal/worker package, update worker with better logging Signed-off-by: kim <grufwub@gmail.com> * fix Queue() trace log message format operators Signed-off-by: kim <grufwub@gmail.com> * update media manager comment to match updated worker implementation Signed-off-by: kim <grufwub@gmail.com>
2022-05-04[Documentation] Update glossary, expand entry for dereferencing (#542)Libravatar tobi3
* Update glossary, expand entry for dereferencing * Add glossary as separate file
2022-05-04[documentation] Add known issues + project links in readme and docs (#541)Libravatar tobi2
2022-05-03[documentation] put single-quotes around passwords in install docs (#534)Libravatar tobi2
2022-05-03[chore] Move initial MediaRemotePrune to cmd.server function (#536)Libravatar tobi6
* move initial prune up to the server start function * don't do initial prune when starting media manager * add admin/mediaremoteprune in processor
2022-05-03[documentation] Corrects the Helm-Chart URL by 0hlov3 (#530)Libravatar 0hlov31
2022-05-03[feature] Run initial cache cleanup on gotosocial start in case max-age ↵Libravatar kim1
changed (#533) Signed-off-by: kim <grufwub@gmail.com>
2022-05-02[chore] Fix inbox iris test to use 'contains' instead of index (#529)Libravatar tobi1
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
2022-05-02[bugfix] Fix panic when relative tmpl path given to router (#528)Libravatar tobi1
2022-05-02[bugfix] Allow self-boosting for any visibility but direct (#510)Libravatar Adelie Paull9
* create visibility filter for boostability and allow self-boosting for any visbility but direct messages * add a followers-only status to local_account_2 * fix typo in comment * add license header, unwrap errors, be explicit about non-boostable visibility settings to avoid rogue boosting from miscoded clients, use ID compare for checking if self-boosting * add tests for statusboostable filter * fix tests that were affected by adding a new status to the test data * fix the rest of tests affected by adding a status to the textrig data
2022-05-02[chore] Update all but bun libraries (#526)Libravatar kim350
* update all but bun libraries Signed-off-by: kim <grufwub@gmail.com> * remove my personal build script changes Signed-off-by: kim <grufwub@gmail.com>
2022-05-02add extra indexes as a migration (#527)Libravatar tobi1
2022-05-02[performance] Speed up some of the slower db queries (#523)Libravatar tobi13
* remove unnecessary LOWER() db calls * warn during slow db queries * use bundb built-in exists function * add db block test * update account block query * add domain block db test * optimize domain block query * fix implementing wrong test * exclude most columns when checking block * go fmt * remote more unnecessary use of LOWER()
2022-05-01Add logging to the new generic worker package (#516)Libravatar kim1
* add logging to generic worker type
2022-04-30[documentation] Add project roadmap (#514)Libravatar tobi3
* add note about alpha + beta, link to roadmap * rename progress => roadmap * edit / update roadmap * add note that 2023 date is only an estimate * clarify that order of features may change * add 'best-guess' note at the top