- c-ares 1.34.1
- c-types 4.0.0
- breaking only because re-exported types are part of our interface
- c-ares 1.32.0
- string values are
&str
, notCStr
- returning
CStr
was ugly but necessary while c-ares made no promises about the values that it returned - from its release 1.17.2 c-ares verifies that hostnames are strings, and from its 1.30.0 it makes the same check for other DNS strings
- therefore this wrapper now prefers to return native rust
&str
- when using a new enough version of c-ares we trust the c-ares validation,
and make unchecked conversions from C strings to
&str
- when using older c-ares we make a fallible conversion, and
unwrap()
the result - therefore if you are using old c-ares and new rust-c-ares and you are talking to a server that returns invalid DNS strings: you may see panics
- solve this by using a newer c-ares, or an older rust-c-ares, or by fixing your DNS server
- returning
- CAA record value is bytes, not a string
- c-ares 1.30.0
- Include the whole API in docs
- add
get_servers()
- c-ares 1.29.0
- cares 1.27.0
- breaking only because of the introduction of
ENOSERVER
into theError
enum
- breaking only because of the introduction of
- c-ares 1.23.0
- c-ares 1.22.0
- Support versions of c-ares back to 1.13.0
- Breaking if you are using features from a new c-ares but building in an environment where an old c-ares is available
- Then this crate will by default attempt to use the old c-ares: you should
either remove the old c-ares from your environment, or set the
vendored
feature flag.
- c-types 3.0.0
- add features
vendored
andmaybe-vendored
- default is
maybe-vendored
which preserves existing behaviour: look for a suitable installedc-ares
else build the vendored copy vendored
requires use of the vendored copy- omit both features to require use of an already-installed
c-ares
- default is
- c-ares 1.20.1
- c-ares 1.19.0
- put a lock around
ares_library_init()
andares_library_cleanup()
- these are not thread-safe
- they only do anything at all on android, so it's unlikely that this matters to anyone
- bump minimum bitflags dependency
- feature "build-cmake" to use the cmake-based build for c-ares
- Update dependencies
- in particular, c-ares 1.18.0
- Expose
set_sortlist()
cargo diet
to reduce crate size- Update dependencies
- Add support for URI records
- Update dependencies
- Add support for CAA records
- Update dependencies
- Modernize error handling:
description()
is soft-deprecated.
- Take upstream c-ares 1.15.0
- In particular, introduces
Options::set_resolvconf_path()
- In particular, introduces
- Have several functions take arguments by value, per clippy's
trivially_copy_pass_by_ref
- Remove
addresses()
fromCNameResults
- CNAME queries don't return addresses
- Return
&CStr
mostly, rather than&str
. The unchecked conversion in previous releases was not safe, so we let users decide how to deal with that.
- Bump more dependencies (fixes minimal-versions build on OSX)
- Bump c-ares-sys dependency (really fixes minimal-versions build)
- Bump metadeps dependency (fixes minimal-versions build)
- spurious republish (failed attempt to fix c-ares-resolver build errors)
- winapi 0.3.3
- fix docs link in Cargo.toml
- pull upstream c-ares
- in particular, fix crashes on Android
- start maintaining a CHANGELOG