From d511f142843fa7fbf99e90c289e4fcf884e75f38 Mon Sep 17 00:00:00 2001 From: David Hotham Date: Wed, 5 Jun 2024 20:53:53 +0100 Subject: [PATCH] release prep --- CHANGELOG.md | 19 +++++++++++++++++-- Cargo.toml | 2 +- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 201e8ffd1..bdff77ede 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,23 @@ # Changelog -## Unreleased - +## 10.0.0 (unreleased) + +- string values are `&str`, not `CStr` + - 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 - CAA record value is bytes, not a string +- c-ares 1.30.0 ## 9.2.1 (26 May 2024) diff --git a/Cargo.toml b/Cargo.toml index 07bda8503..9ace100ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "c-ares" license = "MIT" -version = "9.2.1" +version = "10.0.0" authors = ["David Hotham"] description = """ A Rust wrapper for the c-ares library, for asynchronous DNS requests.