Background with generic spawn (#935)

* all tests updated for new background

* background in Resolver now supported, wip

* clean up client impls

* client passing all tests

* cleanup review comments, remove try_locks

* remove mutexes on NameServers in NameServerPool

* refactored ConnectionProvider

* remove pinutils dependency

* remove the now unused custom *LookupFutures

* remove unused types

* remove all deprecated interfaces from Client

* rename ClientFuture to AsyncClient

* all clippy warnings and SecureClient working

* cleanup clippy warnnings

* Everything working with Background removed

* fix infinite loop

* Client refactored without background

* rebased onto tokio 0.2

* remove Clone and Option from background connects

* cleanup from review

* fix clippy warnings

* spawn in ConnectionProvider

* fix no-default-features test

* only expose testing functions during testing

* fix copyright typo

* revert lookup_ip interface change

* limit tokio features to least required set

* rename tokio-compat to tokio-runtime

* use async fns where possible on AsyncResolver

* fix lifetime issue
This commit is contained in:
Benjamin Fry
2019-12-11 17:43:02 -08:00
committed by GitHub
parent 39082d99cc
commit 224bde6561
66 changed files with 2006 additions and 1909 deletions

View File

@@ -38,8 +38,11 @@ mod tests {
//env_logger::try_init().ok();
let mut io_loop = Runtime::new().unwrap();
let (resolver, bg) = AsyncResolver::new(config, ResolverOpts::default());
io_loop.spawn(bg);
let resolver =
AsyncResolver::new(config, ResolverOpts::default(), io_loop.handle().clone());
let resolver = io_loop
.block_on(resolver)
.expect("failed to create resolver");
let response = io_loop
.block_on(resolver.lookup_ip("www.example.com."))