Jade Ellis
0787ebfaed
chore: Fix typos across the codebase
2025-05-31 18:48:22 +02:00
Jade Ellis
0eb9e4f3d2
refactor: Centralize server forbidden checks into moderation module
...
This moves all checks related to `forbidden_remote_server_names`,
`forbidden_remote_room_directory_server_names` and
`prevent_media_downloads_from` to a new `moderation` module.
This is useful for implementing more complicated logic globally.
Mostly the changes from #673 , but is also relevant for #750
2025-04-19 23:37:54 +01:00
June Clementine Strawberry
d5ad973464
change forbidden_server_names and etc to allow regex patterns for wildcards
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-06 15:25:19 -04:00
Jason Volk
9d0ce3965e
fix lints
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-03-26 02:25:54 +00:00
June Clementine Strawberry
d0c767c23c
fix a few things to make some complement tests pass
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-03-09 01:43:49 -05:00
Jason Volk
a67ab75417
fix edition 2024 lints
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-02-27 10:26:45 -05:00
June Clementine Strawberry
a1e1f40ded
run cargo fix for rust 2024 changes and rustfmt
...
Signed-off-by: June Clementine Strawberry <strawberry@puppygock.gay>
2025-02-23 01:17:45 -05:00
Jason Volk
565837ad75
request auth media first
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-02-16 17:40:21 -05:00
strawberry
ef2d307c15
fix warnings and errors when building with no features
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2025-02-06 18:27:32 -05:00
Jason Volk
442bb9889c
improvements on blurhashing feature
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-02-04 21:47:03 +00:00
Niko
62180897c0
Added blurhash.rs to fascilitate blurhashing.
...
Signed-off-by: Niko <cnotsomark@gmail.com>
2025-02-04 21:47:03 +00:00
Jason Volk
c6ae6adc80
pre-allocate some amount of media read buffer
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-01-20 04:48:47 +00:00
Jason Volk
cc1889d135
Add default-enabled feature-gates for url_preview and media_thumbnail
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-01-10 07:03:34 +00:00
Jason Volk
b4ef646485
translate 5xx to 404 on remote media request
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-01-01 23:28:01 -05:00
strawberry
77e0b76408
apply new rustfmt.toml changes, fix some clippy lints
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-12-15 01:00:41 -05:00
strawberry
0317cc8cc5
rename conduit to conduwuit finally
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-12-14 22:24:45 -05:00
Jason Volk
c01b049910
move cidr_range_denylist from globals to client service
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-12-04 00:51:57 +00:00
Jason Volk
58be22e695
fix new lints; clippy::unnecessary-map-or
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-11-29 06:58:45 +00:00
Jason Volk
3ad6aa59f9
use smallvec for db query buffering
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-11-28 06:03:33 +00:00
Jason Volk
ba1c134689
move migrations out of globals service
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-11-03 08:03:25 +00:00
strawberry
240c78e810
strong-type URL for URL previews to Url type
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-11-02 13:17:22 -04:00
Jason Volk
ca57dc7928
optimize config denylists
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-26 18:50:29 -04:00
Jason Volk
2ed0c267eb
Refactor for structured insertions
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-26 18:50:29 -04:00
Jason Volk
2d049dacc3
fix get_all_media_keys deserialization
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-25 00:38:45 -04:00
Jason Volk
c569881b08
merge rooms/short Data w/ Service; optimize queries
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-25 00:36:28 -04:00
Jason Volk
946ca364e0
Database Refactor
...
combine service/users data w/ mod unit
split sliding sync related out of service/users
instrument database entry points
remove increment crap from database interface
de-wrap all database get() calls
de-wrap all database insert() calls
de-wrap all database remove() calls
refactor database interface for async streaming
add query key serializer for database
implement Debug for result handle
add query deserializer for database
add deserialization trait for option handle
start a stream utils suite
de-wrap/asyncify/type-query count_one_time_keys()
de-wrap/asyncify users count
add admin query users command suite
de-wrap/asyncify users exists
de-wrap/partially asyncify user filter related
asyncify/de-wrap users device/keys related
asyncify/de-wrap user auth/misc related
asyncify/de-wrap users blurhash
asyncify/de-wrap account_data get; merge Data into Service
partial asyncify/de-wrap uiaa; merge Data into Service
partially asyncify/de-wrap transaction_ids get; merge Data into Service
partially asyncify/de-wrap key_backups; merge Data into Service
asyncify/de-wrap pusher service getters; merge Data into Service
asyncify/de-wrap rooms alias getters/some iterators
asyncify/de-wrap rooms directory getters/iterator
partially asyncify/de-wrap rooms lazy-loading
partially asyncify/de-wrap rooms metadata
asyncify/dewrap rooms outlier
asyncify/dewrap rooms pdu_metadata
dewrap/partially asyncify rooms read receipt
de-wrap rooms search service
de-wrap/partially asyncify rooms user service
partial de-wrap rooms state_compressor
de-wrap rooms state_cache
de-wrap room state et al
de-wrap rooms timeline service
additional users device/keys related
de-wrap/asyncify sender
asyncify services
refactor database to TryFuture/TryStream
refactor services for TryFuture/TryStream
asyncify api handlers
additional asyncification for admin module
abstract stream related; support reverse streams
additional stream conversions
asyncify state-res related
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-25 00:32:30 -04:00
strawberry
37a2ba59d0
improve UX of admin media deletion commands, ignore errors by default, support deleting local media too
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-10-24 22:02:58 -04:00
Jason Volk
a934a7f687
freeze remote media via legacy endpoints
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-30 08:24:52 +00:00
Jason Volk
ea2343850f
add remote fetch suite for authenticated media
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-30 08:24:52 +00:00
Jason Volk
fcfb323cd5
relegate legacy media handlers to separate file
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-30 08:24:52 +00:00
Jason Volk
47f9c69eff
split media related migrations into service dir
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
dea5fee6a3
abstract duration parsing into utils
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
4d42a29c51
add thumbnail dimension structure
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
7b0e830f4c
add interface to get file metadata w/ admin command
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
strawberry
d5e7befaa9
move a few MXC parsing logs to trace
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-29 19:19:20 +00:00
strawberry
fb49e37067
add admin command to delete all remote media from a specific server
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-29 19:19:20 +00:00
strawberry
e790785db8
fix: force argument for delete past remote media wasn't fully functional
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-29 19:19:20 +00:00
strawberry
6b65a8fc86
add functions to delete media from specific local users
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-29 19:19:20 +00:00
strawberry
a79ae7d1a2
add missing MXC URI prefix bytes
...
Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-08-29 19:19:20 +00:00
Jason Volk
152ae705a0
refactor for structured Mxc type
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
54e6a41404
move remote media fetchers into services
...
minor error simplification
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
17a54bc4f8
refactor for ruma cow headers; update for ContentDisposition type
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-29 19:19:20 +00:00
Jason Volk
2e3e14b045
refactor some additional errors
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-08-01 10:58:59 +00:00
Jason Volk
24884c3b9b
move media helpers from api to services
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-31 03:04:17 +00:00
Jason Volk
a0a002b17f
disable legacy media compat by default; cleanse directory when disabled
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-31 03:04:17 +00:00
Jason Volk
010e4ee35a
de-global services for services
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-27 08:26:42 +00:00
Jason Volk
b116984e46
use mutex_map for url preview lock
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-27 08:26:41 +00:00
Jason Volk
739eab46d5
refactor thumbnail math
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-16 02:40:18 +00:00
Jason Volk
d67f19a55d
cleanup some error callsites
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-16 02:39:49 +00:00
Jason Volk
b903b46d16
split thumbnailing related into unit
...
Signed-off-by: Jason Volk <jason@zemos.net>
2024-07-16 02:39:49 +00:00