feat: Create MatrixResolver::create_dns_resolver() #30

Merged
s1lv3r merged 1 commit from zoe/add-create-dns-resolver into main 2026-07-10 00:55:28 +00:00
Member

Returns a MatrixDnsResolver which correctly implements DNS caching for correct SNI behavior.

Returns a `MatrixDnsResolver` which correctly implements DNS caching for correct SNI behavior.
feat: Create MatrixResolver::create_dns_resolver()
All checks were successful
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 2m12s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 3m41s
397294dd7f
Returns a `MatrixDnsResolver` which correctly implements DNS caching
for correct SNI behavior.
s1lv3r scheduled this pull request to auto merge when all checks succeed 2026-07-09 23:43:35 +00:00
s1lv3r changed title from feat: Create MatrixResolver::create_dns_resolver() to WIP: feat: Create MatrixResolver::create_dns_resolver() 2026-07-09 23:43:57 +00:00
s1lv3r changed title from WIP: feat: Create MatrixResolver::create_dns_resolver() to feat: Create MatrixResolver::create_dns_resolver() 2026-07-09 23:55:16 +00:00
s1lv3r force-pushed zoe/add-create-dns-resolver from 397294dd7f
All checks were successful
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 2m12s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 3m41s
to bc4e487dde
Some checks failed
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 47s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 1m36s
Checks / Prek / Clippy and Cargo Tests (push) Has been cancelled
Checks / Prek / Pre-commit & Formatting (push) Has been cancelled
2026-07-09 23:55:23 +00:00
Compare
s1lv3r scheduled this pull request to auto merge when all checks succeed 2026-07-09 23:55:31 +00:00
Henry-Hiles left a comment

LGTM

LGTM
@ -268,0 +269,4 @@
///
/// See more details in `MatrixDnsResolver`'s doc comment
pub fn create_dns_resolver(self: &Arc<Self>) -> MatrixDnsResolver {
MatrixDnsResolver::new(self.resolver.clone(), self.cache.clone(), self.clone())
Owner

I set up the client builder stuff with the intention that our method of SNI wouldn't be exposed, so if reqwest fixed their missing feature it wouldn't require a breaking change

I set up the client builder stuff with the intention that our method of SNI wouldn't be exposed, so if reqwest fixed their missing feature it wouldn't require a breaking change
Author
Member

I agree, but unless you wanna rewrite i think literally most of resolvematrix around this one change, this might be the easiest solution.

I also attempted to create a MatrixDnsResolver manually, but its so tightly coupled to the dns resolver, the cache, and the matrixresolver that its basically impossible

I agree, but unless you wanna rewrite i think literally most of resolvematrix around this one change, this might be the easiest solution. I also attempted to create a MatrixDnsResolver manually, but its so tightly coupled to the dns resolver, the cache, _and_ the matrixresolver that its basically impossible
Owner

Fair. Probably a valid workaround.

Fair. Probably a valid workaround.
Author
Member
Blocks https://forgejo.ellis.link/continuwuation/continuwuity/pulls/1934
ginger approved these changes 2026-07-10 00:55:27 +00:00
s1lv3r merged commit bc4e487dde into main 2026-07-10 00:55:28 +00:00
s1lv3r deleted branch zoe/add-create-dns-resolver 2026-07-10 00:55:29 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
4 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
continuwuation/resolvematrix!30
No description provided.