This deletes as many files as necessary to ensure the drive quota for
remote users is kept. Previously only one file would have been deleted
for each file added.
Changelog: Fixed
Co-authored-by: CGsama <CGsama@outlook.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Instead of checking this configuration in the respective component (queue)
or not at all (server), the configuration can be checked when starting the
respective workers.
This log level replaces the "MK_QUIET" environment variable to unify
the interface in a sensible way. This also removes the "MK_VERBOSE"
environment variable which was unused.
To avoid a circular dependency this requires moving the log level
definitions. Also to avoid a circular dependency the env.ts file cannot
use a logger and instead uses plain `console.log`.
This resulted in endless ping-pong traffic on the websocket, happening
every interval of network latency to the server (e.g. for me, with 40ms
latency to my server, it was about every 40ms). On my server this ended
up taking about 20% of foundkey's CPU usage. Now, just send pings every
30s, and check if we have received any pong's in last 60 seconds to
check that the connection is still alive.
Changelog: Fixed
This makes the returned values `localFollowingCount`,
`remoteFollowingCount`, `followingCount`, `localFollowersCount`,
`remotefollowersCount`, `followersCount` optional on the API endpoint
`users/stats`.
Changelog: Fixed
The `data` field is not used anywhere in the logger. While it would
be possible to send structured data through syslog, it seems unnecessary
at present and also the way in which this structured data would have to be
provided sounds too cumbersome to implement for no real value.
The CacheableUser, CacheableLocalUser and CacheableRemoteUser are
identical types to User, ILocalUser and IRemoteUser so it seems
nonsensical to have different types for them.
Since PRs seem to be much rarer than pushes to main, it makes more sense
to do it this way. Perhaps in the future, it would make sense to run it on
all pushes, but the question would be how PRs are handled.
The distinction for "DetailedInstanceMetadata" does no longer exist
since commit 9022ab9f2a.
The `DetailedInstanceMetadata` and `LiteInstanceMetadata` have
therefore been removed, leaving only `InstanceMetadata`.
Changelog: Removed
Currently translated at 96.1% (1161 of 1208 strings)
Translated using Weblate (Russian)
Currently translated at 90.5% (1094 of 1208 strings)
Co-authored-by: ogur4ik <abrew1330@gmail.com>
Translate-URL: http://translate.akkoma.dev/projects/foundkey/foundkey/ru/
Translation: Foundkey/foundkey
When rendering the HTML for outgoing activities, the mentions are now
matched case insensitive and should also work properly for IDNs. The
username is also compared case insensitive. Mentions of local users
are also handled properly independed of whether the hostname was given
or omitted.
The query to get mentions is now also only executed once instead of
for each mention individually.
Changelog: Fixed
Currently translated at 99.8% (1206 of 1208 strings)
Co-authored-by: kazari <6c577a54-aac9-482a-955e-745c858445e3@simplelogin.com>
Translate-URL: http://translate.akkoma.dev/projects/foundkey/foundkey/ja/
Translation: Foundkey/foundkey