Laura Hausmann
4e6e22633e
[backend] Rework media proxying for better performance
2023-11-22 19:23:51 +01:00
Laura Hausmann
c00e28712e
[backend] Revert postgres geqo threshold and collapse limits to defaults
...
This is no longer required due to the refactored user table requiring significantly less table joins in more complex queries
2023-11-22 18:59:38 +01:00
Laura Hausmann
302b112f05
[backend] Include avatar & banner url and blurhash in the user table
...
This drastically improves timeline performance due to the many (2-6 per query) database joins that are now no longer required
2023-11-22 18:59:38 +01:00
Laura Hausmann
6e82e18eea
[backend] Add multi column index for userHost to note table
...
This drastically improves local and social timeline performance
2023-11-22 04:39:37 +01:00
Laura Hausmann
eff0f32dc1
[backend] We don't need to check for visibility if we already filter for public posts only
2023-11-22 04:39:37 +01:00
Laura Hausmann
8fa2bf5dca
[backend] Fix an edge case where notifications wouldn't load properly
2023-11-22 00:28:37 +01:00
Laura Hausmann
8ecf361870
[backend] Implement heuristics for home timeline queries
...
After lots of performance analysis, we've ended up with a cutoff value of 250 posts in the last 7d, after which we should switch which query plan to nudge postgres towards. This should greatly improve performance of users who were previously performance edge cases.
2023-11-22 00:14:54 +01:00
Laura Hausmann
a5b30a6adc
[backend] Fix notifications not loading correctly
...
This fixes a regression introduced in a6fa393359
2023-11-21 01:27:00 +01:00
Laura Hausmann
661c31db0c
[backend] Set postgres geqo threshold and collapse limits to something more reasonable until we've refactored the backend to require less joins
2023-11-21 01:22:07 +01:00
Laura Hausmann
a6fa393359
[backend] Return isRenoted status in Notes.pack instead of requesting it individually
2023-11-21 01:00:14 +01:00
Laura Hausmann
855409332b
[backend] Add in:bookmarks and in:favorites postgres FTS filters
2023-11-19 01:36:57 +01:00
Laura Hausmann
8c43c5cae6
[backend] Make inverse postgres FTS filters consistent with regular ones
2023-11-19 01:36:57 +01:00
Laura Hausmann
98f40d8865
[backend] Add instance:local postgres FTS filter
2023-11-19 01:36:57 +01:00
Laura Hausmann
e1ae37dbdb
[backend] Improve postgres FTS filters
2023-11-19 01:36:57 +01:00
Laura Hausmann
5d1bb36be3
[client] Improve postgres FTS filter menu and guide
2023-11-19 01:36:56 +01:00
Laura Hausmann
768165776d
[backend] Allow case sensitive and word search for postgres FTS
2023-11-19 01:36:56 +01:00
Laura Hausmann
361176448e
[backend] Add postgres FTS migration
2023-11-19 01:36:56 +01:00
Laura Hausmann
b2f6808bef
[backend] Make postgres FTS filter: filters slightly more typo-safe
2023-11-19 01:36:56 +01:00
Laura Hausmann
b7a5c192d8
[backend] Improve postgres FTS mention filter query
2023-11-19 01:36:56 +01:00
Laura Hausmann
292e537dc7
[backend] Improve postgres FTS attachment filter query
2023-11-19 01:36:55 +01:00
Laura Hausmann
1b4fedc59f
[client] Improve search filter menu
2023-11-19 01:36:55 +01:00
Laura Hausmann
b4616d3f36
[backend] Don't exclude local user in search-by-username-and-host
2023-11-19 01:36:55 +01:00
Laura Hausmann
5b672e20af
[backend] Postgres FTS query should be trimmed
2023-11-19 01:36:55 +01:00
Laura Hausmann
c72eb36d66
[backend] Improve postgres FTS tokenizer
2023-11-19 01:36:55 +01:00
Laura Hausmann
e405d348ed
[backend] Implement basic tokenizer for postgres FTS
2023-11-19 01:36:54 +01:00
Laura Hausmann
a88d581413
[backend] Implement filters for postgres FTS
2023-11-19 01:36:54 +01:00
Laura Hausmann
9b2e966c19
[backend] Remove external search backends
2023-11-19 01:36:54 +01:00
Laura Hausmann
b73a07011a
[backend] Backslash needs to be escaped in sqlLikeEscape
2023-11-18 19:46:37 +01:00
Laura Hausmann
9ee786e888
[mastodon-client] Verify scopes are identical between /oauth/authorize and /oauth/token instead of testing whether they are a subset
2023-11-16 20:37:21 +01:00
Laura Hausmann
c60414f347
[backend] Fix re2 imports
2023-11-15 15:17:35 +01:00
Laura Hausmann
20410b0543
[backend] Move back to upstream re2 dependency
...
Upstream accepted my patches for both re2 (fixing build on arm64-musl) and the install-artifact-from-github dependency (cutting down build times for architectures where prebuilts are available from ~2 minutes to ~2 seconds), so there's no reason to stick with our fork.
2023-11-15 15:12:59 +01:00
Laura Hausmann
b45be30d19
[mastodon-client] Fix scope parameter in /oauth/token
2023-11-14 17:19:17 +01:00
Alexis
76db23855c
added more selective control over users show endpoint
2023-11-10 03:05:08 +01:00
Laura Hausmann
2baa787b72
[backend] Dynamically import redisClient in postgre.ts and dependencies
...
This fixes unnecessary redisClient instances being created during migration runs, which previously prevented the revertmigration command from exiting by itself due to a TypeORM inconsistency between migration:run and migration:revert.
2023-11-07 23:12:20 +01:00
Laura Hausmann
7cf00d1503
[backend] Move to our own fork of the re2 package
...
This fixes builds on alpine-arm64 (and presumably also other musl-arm64 distros)
2023-11-05 16:54:00 +01:00
Laura Hausmann
42aa8b7126
[backend] Remove cache server configuration, migrate back to unified redis in-memory cache
2023-11-05 15:03:17 +01:00
Laura Hausmann
9d4f74d290
[backend] Add _misskey_summary field
...
This fixes federation of MFM in user bios between *key instances
Co-authored-by: default avatarkakkokari-gtyih <daisho7308+f@gmail.com>
ref: https://github.com/misskey-dev/misskey/pull/12184
2023-11-05 14:49:51 +01:00
Laura Hausmann
b6ee1c5dc4
[mastodon-client] Add missing semicolon
2023-11-04 23:51:58 +01:00
Laura Hausmann
734c6685f7
[mastodon-client] Don't duplicate RE: for pleroma/akkoma quotes
2023-11-04 23:50:08 +01:00
Laura Hausmann
35c75bbebf
[backend] Reset poll votes when choices change on note edit
2023-11-04 23:22:34 +01:00
Laura Hausmann
8b78709378
[backend] Fix errors in updateNote
...
This fixes incoming federation of poll edits
2023-11-04 23:08:29 +01:00
Laura Hausmann
2166ea019d
[backend] Require authentication to view channels
2023-11-03 22:56:02 +01:00
Laura Hausmann
cd48af6393
[backend] Fix polls not federating properly to non-*key servers
...
This fixes a regression that caused the `content` attribute of rendered notes with polls attached to be set to `{}`, causing undefined behavior in Mastodon & Akkoma. Misskey & forks just use the `_misskey_content` attribute, which was unaffected.
2023-11-03 16:09:54 +01:00
Laura Hausmann
1e2045bf33
[backend] Correctly handle tags on edit
2023-11-03 13:49:46 +01:00
Laura Hausmann
6d715cfef5
[backend] Don't return local only notes for guest users
2023-11-02 18:47:54 +01:00
Laura Hausmann
b100b88971
Migrate from rome to biome
2023-10-27 16:46:38 +02:00
Laura Hausmann
c49780bcee
Fix build on NodeJS 21
2023-10-26 18:38:39 +02:00
Laura Hausmann
80c9280682
[backend] Decrease default RecursionLimiter count to 10
2023-10-25 18:11:30 +02:00
Laura Hausmann
1cbfd68a39
[backend] Also use RecursionLimiter for parseAudience and noteCreateService
2023-10-25 18:10:23 +02:00
Laura Hausmann
4dd8fdbd04
[backend] Refactor database transactions
...
This moves all code that isn't a direct call to transactionalEntityManager to outside of the transaction blocks, and removes all transaction blocks that were unnecessary
2023-10-25 17:03:08 +02:00