summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2023-08-03[feature] simpler cache size configuration (#2051)Libravatar kim32
* add automatic cache max size generation based on ratios of a singular fixed memory target Signed-off-by: kim <grufwub@gmail.com> * remove now-unused cache max-size config variables Signed-off-by: kim <grufwub@gmail.com> * slight ratio tweak Signed-off-by: kim <grufwub@gmail.com> * remove unused visibility config var Signed-off-by: kim <grufwub@gmail.com> * add secret little ratio config trick Signed-off-by: kim <grufwub@gmail.com> * fixed a word Signed-off-by: kim <grufwub@gmail.com> * update cache library to remove use of TTL in result caches + slice cache Signed-off-by: kim <grufwub@gmail.com> * update other cache usages to use correct interface Signed-off-by: kim <grufwub@gmail.com> * update example config to explain the cache memory target Signed-off-by: kim <grufwub@gmail.com> * update env parsing test with new config values Signed-off-by: kim <grufwub@gmail.com> * do some ratio twiddling Signed-off-by: kim <grufwub@gmail.com> * add missing header * update envparsing with latest defaults Signed-off-by: kim <grufwub@gmail.com> * update size calculations to take into account result cache, simple cache and extra map overheads Signed-off-by: kim <grufwub@gmail.com> * tweak the ratios some more Signed-off-by: kim <grufwub@gmail.com> * more nan rampaging Signed-off-by: kim <grufwub@gmail.com> * fix envparsing script Signed-off-by: kim <grufwub@gmail.com> * update cache library, add sweep function to keep caches trim Signed-off-by: kim <grufwub@gmail.com> * sweep caches once a minute Signed-off-by: kim <grufwub@gmail.com> * add a regular job to sweep caches and keep under 80% utilisation Signed-off-by: kim <grufwub@gmail.com> * remove dead code Signed-off-by: kim <grufwub@gmail.com> * add new size library used to libraries section of readme Signed-off-by: kim <grufwub@gmail.com> * add better explanations for the mem-ratio numbers Signed-off-by: kim <grufwub@gmail.com> * update go-cache Signed-off-by: kim <grufwub@gmail.com> * library version bump Signed-off-by: kim <grufwub@gmail.com> * update cache.result{} size model estimation Signed-off-by: kim <grufwub@gmail.com> --------- Signed-off-by: kim <grufwub@gmail.com>
2023-08-02[bugfix] Rework MultiError to wrap + unwrap errors properly (#2057)Libravatar tobi24
* rework multierror a bit * test multierror
2023-08-02[bugfix] fix slow accounts / statuses using emojis lookups (#2056)Libravatar kim3
* update DeleteEmoji to use faster relational tables for status / account finding Signed-off-by: kim <grufwub@gmail.com> * update Get{Accounts,Statuses}UsingEmoji() to also use relational tables Signed-off-by: kim <grufwub@gmail.com> * remove the now unneeded tags relation from newStatusQ() Signed-off-by: kim <grufwub@gmail.com> * fix table names Signed-off-by: kim <grufwub@gmail.com> * fix account and status selects using emojis Signed-off-by: kim <grufwub@gmail.com> --------- Signed-off-by: kim <grufwub@gmail.com>
2023-08-02[bugfix] handle HEAD requests more elegantly (#2055)Libravatar kim1
Signed-off-by: kim <grufwub@gmail.com>
2023-08-02[bugfix] Allow instance accounts to be shown in search results in certain ↵Libravatar tobi6
circumstances (#2053)
2023-08-01[feature] Allow users to skip http client tls verification for testing ↵Libravatar tobi10
purposes (with appropriately loud warnings) (#2052)
2023-08-01[feature] Set timezone in Docker using TZ env variable (#2050)Libravatar tobi4
2023-08-01Revert "[feature] Configurable timezone in containers (#2046)" (#2048)Libravatar tobi2
This reverts commit 96dd0e75f20a1f1f8203f3438ae7a82d260a0ef8.
2023-08-01[feature] Configurable timezone in containers (#2046)Libravatar Charles Chin2
2023-07-31[feature] Hashtag federation (in/out), hashtag client API endpoints (#2032)Libravatar tobi69
* update go-fed * do the things * remove unused columns from tags * update to latest lingo from main * further tag shenanigans * serve stub page at tag endpoint * we did it lads * tests, oh tests, ohhh tests, oh tests (doo doo doo doo) * swagger docs * document hashtag usage + federation * instanceGet * don't bother parsing tag href * rename whereStartsWith -> whereStartsLike * remove GetOrCreateTag * dont cache status tag timelineability
2023-07-31[performance] cache follow, follow request and block ID lists (#2027)Libravatar kim29
2023-07-31[bugfix/frontend] Decode URI component domain before showing on frontend (#2043)Libravatar tobi1
2023-07-31[chore]: Bump github.com/abema/go-mp4 from ↵Libravatar dependabot[bot]3
0.10.2-0.20230727031202-a1a707db6ecd to 0.11.0 (#2042) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-31[chore]: Bump github.com/minio/minio-go/v7 from 7.0.60 to 7.0.61 (#2041)Libravatar dependabot[bot]34
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-29[feature] Implement markers API (#1989)Libravatar Vyr Cossont29
* Implement markers API Fixes #1856 * Correct import grouping in markers files * Regenerate Swagger for markers API * Shorten names for readability * Cache markers for 6 hours * Update DB ref * Update envparsing.sh
2023-07-27[chore] Update activity dependency (#2031)Libravatar tobi405
2023-07-27[chore] fix merge issue (#2029)Libravatar tobi1
2023-07-27[chore] update go-mp4 to latest commit (#2028)Libravatar Dominik Süß4
This adds support for probing mp4 files with a co64 box instead of an stco box, which is the case for videos recorded on newer android devices.
2023-07-27[feature] Support setting private notes on accounts (#1982)Libravatar Vyr Cossont19
* Support setting private notes on accounts * Reformat comment whitespace * Add missing license headers * Use apiutil.ParseID * Rename Note model and cache to AccountNote * Update golden cache config in test/envparsing.sh * Rename gtsmodel/note.go to gtsmodel/accountnote.go * Update AccountNote uniqueness constraint name Now has same prefix as other indexes on this table. --------- Co-authored-by: tobi <31960611+tsmethurst@users.noreply.github.com>
2023-07-25[performance] retry db queries on busy errors (#2025)Libravatar kim53
* catch SQLITE_BUSY errors, wrap bun.DB to use our own busy retrier, remove unnecessary db.Error type Signed-off-by: kim <grufwub@gmail.com> * remove dead code Signed-off-by: kim <grufwub@gmail.com> * remove more dead code, add missing error arguments Signed-off-by: kim <grufwub@gmail.com> * update sqlite to use maxOpenConns() Signed-off-by: kim <grufwub@gmail.com> * add uncommitted changes Signed-off-by: kim <grufwub@gmail.com> * use direct calls-through for the ConnIface to make sure we don't double query hook Signed-off-by: kim <grufwub@gmail.com> * expose underlying bun.DB better Signed-off-by: kim <grufwub@gmail.com> * retry on the correct busy error Signed-off-by: kim <grufwub@gmail.com> * use longer possible maxRetries for db retry-backoff Signed-off-by: kim <grufwub@gmail.com> * remove the note regarding max-open-conns only applying to postgres Signed-off-by: kim <grufwub@gmail.com> * improved code commenting Signed-off-by: kim <grufwub@gmail.com> * remove unnecessary infof call (just use info) Signed-off-by: kim <grufwub@gmail.com> * rename DBConn to WrappedDB to better follow sql package name conventions Signed-off-by: kim <grufwub@gmail.com> * update test error string checks Signed-off-by: kim <grufwub@gmail.com> * shush linter Signed-off-by: kim <grufwub@gmail.com> * update backoff logic to be more transparent Signed-off-by: kim <grufwub@gmail.com> --------- Signed-off-by: kim <grufwub@gmail.com>
2023-07-24[feature/performance] support uncaching remote emoji + scheduled cleanup ↵Libravatar kim33
functions (#1987)
2023-07-24[chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.24 to 1.0.25 (#2021)Libravatar dependabot[bot]6
2023-07-24[chore]: Bump github.com/yuin/goldmark from 1.5.4 to 1.5.5 (#2023)Libravatar dependabot[bot]7
2023-07-24[chore]: Bump codeberg.org/gruf/go-cache/v3 from 3.4.1 to 3.4.3 (#2022)Libravatar dependabot[bot]4
2023-07-24[chore]: Bump github.com/jackc/pgconn from 1.14.0 to 1.14.1 (#2024)Libravatar dependabot[bot]6
2023-07-24[chore]: Bump go.uber.org/automaxprocs from 1.5.2 to 1.5.3 (#2020)Libravatar dependabot[bot]6
2023-07-23[chore] Disable the right webfinger test (#2018)Libravatar Daenney1
We don't talk about 8868889 / #1983.
2023-07-23[chore] Admin CLI + new account creation refactoring (#2008)Libravatar tobi11
* set maxPasswordLength to 72 bytes, rename validate function * refactor NewSignup * refactor admin account CLI commands * refactor oidc create user * refactor processor create * tweak password change, check old != new password
2023-07-21[feature] Report Masto version in /api/v1/instance (#1977)Libravatar Daenney5
2023-07-21[chore]: Bump modernc.org/sqlite from 1.23.1 to 1.24.0 (#1993)Libravatar dependabot[bot]7
Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.23.1 to 1.24.0. - [Commits](https://gitlab.com/cznic/sqlite/compare/v1.23.1...v1.24.0) --- updated-dependencies: - dependency-name: modernc.org/sqlite dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-21[feature] Lower remote media cache config duration (#2007)Libravatar Daenney4
The old default of 30d can lead to a lot of media getting cached and significant disk usage, even on small or single person instances. A lot of deployments decrease this value, to 15 or even less. This is less of an issue when using object storage, but for local storage which is the more popular deployment option running out of disk space is unpleasant. With GoToSocial's aim to fit in small places, this changes the default to a much more conservative 7 days. In all likelihood people aren't scrolling that far back in their timeline so this change shouldn't result in any issue. Existing deployments will only be affected by this change if the admin hasn't already configured this value, or didn't bootstrap from the example configuration.
2023-07-21[chore]: Bump github.com/jackc/pgx/v5 from 5.4.1 to 5.4.2 (#1991)Libravatar dependabot[bot]17
2023-07-21[chore]: Bump github.com/minio/minio-go/v7 from 7.0.59 to 7.0.60 (#1992)Libravatar dependabot[bot]10
2023-07-21[chore]: Bump github.com/go-playground/form/v4 from 4.2.0 to 4.2.1 (#1994)Libravatar dependabot[bot]7
2023-07-21Bump word-wrap from 1.2.3 to 1.2.4 in /web/source (#2001)Libravatar dependabot[bot]1
2023-07-21[bugfix] Return all accounts when list accounts limit <= 0 (#2014)v0.10.0Libravatar tobi6
2023-07-21[bugfix] Change maximumPasswordLength to 72 bytes (#2012)Libravatar tobi2
2023-07-20[docs] Apache setup for Caching assets and media (#2005) (#2005)Libravatar mirabilos1
Also change the nginx fileserver expiry, after discussion, to one week, to match.
2023-07-18[bugfix] more robust list timeline invalidation (#1995)v0.10.0-rc3Libravatar kim15
2023-07-18[bugfix] Add missing `continue` statement in `prepareXBetweenIDs` (#1996)Libravatar tobi1
2023-07-13[bugfix] Set Vary header correctly on cache-control (#1988)v0.10.0-rc2Libravatar tobi19
* [bugfix] Set Vary header correctly on cache-control * Prefer activitypub types on AP endpoints * use immutable on file server, vary by range * vary auth on Accept
2023-07-12[chore] Skip webfinger test on CI (#1983)Libravatar Daenney1
2023-07-12[bugfix] Update account `Update` logic (#1984)Libravatar tobi3
2023-07-12[bugfix] Align default values in the configuration file with the code (#1971)Libravatar firescry11
* Set default value of SMTPFrom to empty string This parameter should contain proper e-mail address (to be provided by user during configuration). * Update default values in example/config.yaml Default values and related comments in example/config.yaml are aligned with values defined in internal/config/defaults.go. Small improvements to foramting of config.yaml file. * Add default value for AdvancedThrottlingRetryAfter to internal/config/defaults.go AdvancedThrottlingRetryAfter was introduced in 70739d3 (superseriousbusiness/gotosocial#1466). * Update config.yaml snippets in documentation
2023-07-12Bump semver from 6.3.0 to 6.3.1 in /web/source (#1981)Libravatar dependabot[bot]1
Bumps [semver](https://github.com/npm/node-semver) from 6.3.0 to 6.3.1. - [Release notes](https://github.com/npm/node-semver/releases) - [Changelog](https://github.com/npm/node-semver/blob/v6.3.1/CHANGELOG.md) - [Commits](https://github.com/npm/node-semver/compare/v6.3.0...v6.3.1) --- updated-dependencies: - dependency-name: semver dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-12[bugfix] Properly handle range > content-length (#1979)Libravatar MaeIsBad1
This makes the serveFileRange function return the entire file if suffix-range is larger than content-length in compliance with RFC9110 Co-authored-by: mae <git@badat.dev>
2023-07-10[bugfix] Tidy up rss feed serving; don't error on empty feed (#1970)Libravatar tobi3
* [bugfix] Tidy up rss feed serving; don't error on empty feed * fall back to account creation time as rss feed update time * return feed early when account has no eligible statuses
2023-07-10[chore]: Bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 (#1975)Libravatar dependabot[bot]16
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-10[feature] Use Read/Write lock for config (#1969)Libravatar Daenney3
2023-07-10[chore]: Bump golang.org/x/net from 0.11.0 to 0.12.0 (#1973)Libravatar dependabot[bot]37
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>