Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-enable trust-dns feature #618

Closed
seanmonstar opened this issue Sep 7, 2019 · 7 comments · Fixed by #787
Closed

Re-enable trust-dns feature #618

seanmonstar opened this issue Sep 7, 2019 · 7 comments · Fixed by #787

Comments

@seanmonstar
Copy link
Owner

The trust-dns feature was disabled in #617 as the dependency was not yet updated to std::future. We should re-enable once it is available.

@seanmonstar seanmonstar added this to the 0.10 milestone Sep 7, 2019
@daxpedda
Copy link
Contributor

daxpedda commented Dec 19, 2019

This was fixed here: hickory-dns/hickory-dns#849.

EDIT: So basically from version 0.18.0-alpha.1.

@seanmonstar
Copy link
Owner Author

We can re-enable once the version is out of alpha!

@seanmonstar seanmonstar removed this from the 0.10 milestone Dec 19, 2019
@seanmonstar
Copy link
Owner Author

Some notes as I tried to re-enable this:

  • ResolveError implements Fail instead of std::error::Error. I can get around this since it also implements Into<io::Error>, but it'd be better to not include failure in the dependency tree.
  • AsyncResolver requires passing a tokio::runtime::Handle to its constructors, but we don't have one and have no way of materializing one.

@daxpedda
Copy link
Contributor

  • ResolveError implements Fail instead of std::error::Error. I can get around this since it also implements Into<io::Error>, but it'd be better to not include failure in the dependency tree.

It still implements Display, wihch is what we are using as far as I can see:

.map_err(|err| io::Error::new(io::ErrorKind::Other, err.to_string()))

In any case, trust-dns pulls in failure anyway, so no loss there.

  • AsyncResolver requires passing a tokio::runtime::Handle to its constructors, but we don't have one and have no way of materializing one.

See hickory-dns/hickory-dns#977 and tokio-rs/tokio#2040.

I would like to take a stab at this when the Handle is resolved, if thats alright.

@bluejekyll
Copy link
Contributor

bluejekyll commented Jan 2, 2020

@seanmonstar, we can remove all depdencies on Fail and failure. We'll lose backtrace, but that is coming in std.

might need a 0.19 release of trust-dns...

@bluejekyll
Copy link
Contributor

FYI: hickory-dns/hickory-dns#988

This drops failure, uses thiserror for some std error generation. Is there anything else? I’m planning to do a 0.19 release this weekend to get this out.

@bluejekyll
Copy link
Contributor

bluejekyll commented Jan 16, 2020

Ok, 0.19 is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants