mirror of https://github.com/c-ares/c-ares.git
1.24.0 release prep (#657)
parent
ae06072e88
commit
290e9e951c
4 changed files with 34 additions and 51 deletions
@ -1,59 +1,42 @@ |
|||||||
c-ares version 1.23.0 |
c-ares version 1.24.0 |
||||||
|
|
||||||
This is a feature and bugfix release. |
This is a feature and bugfix release. |
||||||
|
|
||||||
Features: |
Features: |
||||||
o Introduce optional (but on by default) thread-safety for the c-ares |
o Add support for IPv6 link-local DNS servers. Nameserver formats can now |
||||||
library. This has no API nor ABI implications. [2] |
accept the %iface suffix, and a new ares_get_servers_csv() function was |
||||||
o resolv.conf in modern systems uses attempts and timeouts options instead |
added to return servers that can contain the link-local interface name. [3] |
||||||
of the old retrans and retry options. [6] |
|
||||||
o Query caching support based on TTL of responses. Can be enabled via |
Changes: |
||||||
ares_init_options() with ARES_OPT_QUERY_CACHE. [12] |
o Unbundle GoogleTest for test cases. Package maintainers will now need to |
||||||
|
require GoogleTest (GMock) as a build dependency if building tests. New |
||||||
|
GoogleTest versions require C++14 or later. [6] |
||||||
|
o Replace nameserver parsing code to use new memory-safe functions. [1] |
||||||
|
o Replace the sortlist parser with new memory-safe functions. [5] |
||||||
|
o Various warning fixes and dead code removal. |
||||||
|
|
||||||
Bug Fixes: |
Bug Fixes: |
||||||
o ares_init_options() for ARES_OPT_UDP_PORT and ARES_OPT_TCP_PORT accept the |
o Old Linux versions require POSIX_C_SOURCE or _GNU_SOURCE to compile with |
||||||
port in host byte order, but it was reading it as network byte order. |
thread safety support. [2] |
||||||
Regression introduced in 1.20.0. [1] |
o A non-responsive DNS server that caused timeouts wouldn't increment the |
||||||
o ares_init_options() for ARES_FLAG_NOSEARCH was not being honored for |
failure count, this would lead to other servers not being tried. |
||||||
ares_getaddrinfo() or ares_gethostbyname(). Regression introduced in |
Regression introduced in 1.22.0. [4] |
||||||
1.16.0. [3] |
o Some projects that depend on c-ares expect invalid parameter option values |
||||||
o Autotools MacOS and iOS version check was failing [4] |
passed into ares_init_options() to simply be ignored. This behavior has |
||||||
o Environment variables passed to c-ares are meant to be an override for |
been restored. [7] |
||||||
system configuration. Regression introduced in 1.22.0. [5] |
|
||||||
o Spelling fixes as detected by codespell. [7] |
|
||||||
o The timeout returned by ares_timeout() was truncated to milliseconds but |
|
||||||
validated to microseconds which could cause a user to attempt to process |
|
||||||
timeouts prior to the timeout actually expiring. [8] |
|
||||||
o CMake was not honoring CXXFLAGS passed in via the environment which could |
|
||||||
cause compile and link errors with distribution hardening flags during |
|
||||||
packaging. [9] |
|
||||||
o Fix Windows UWP and Cygwin compilation. [10] |
|
||||||
o ares_set_servers_*() for legacy reasons needs to accept an empty server list |
|
||||||
and zero out all servers. This results in an inoperable channel and thus is |
|
||||||
only used in simulation testing, but we don't want to break users. |
|
||||||
Regression introduced in 1.21.0. [11] |
|
||||||
|
|
||||||
Thanks go to these friendly people for their efforts and contributions: |
Thanks go to these friendly people for their efforts and contributions: |
||||||
Brad House (@bradh352) |
Brad House (@bradh352) |
||||||
Christian Clauss (@cclauss) |
|
||||||
Daniel Stenberg (@bagder) |
Daniel Stenberg (@bagder) |
||||||
Deal (@halx99) |
(2 contributors) |
||||||
Ignat (@Kontakter) |
|
||||||
@petrvh |
|
||||||
(6 contributors) |
|
||||||
|
|
||||||
References to bug reports and discussions on issues: |
References to bug reports and discussions on issues: |
||||||
[1] = https://github.com/c-ares/c-ares/commit/fb52c3f |
[1] = https://github.com/c-ares/c-ares/pull/643 |
||||||
[2] = https://github.com/c-ares/c-ares/pull/636 |
[2] = https://github.com/c-ares/c-ares/issues/644 |
||||||
[3] = https://github.com/c-ares/c-ares/pull/638 |
[3] = https://github.com/c-ares/c-ares/pull/646 |
||||||
[4] = https://github.com/c-ares/c-ares/commit/f4d8c9a |
[4] = https://github.com/c-ares/c-ares/pull/650 |
||||||
[5] = https://github.com/c-ares/c-ares/commit/b674abd |
[5] = https://github.com/c-ares/c-ares/pull/653 |
||||||
[6] = https://github.com/c-ares/c-ares/pull/632 |
[6] = https://github.com/c-ares/c-ares/pull/655 |
||||||
[7] = https://github.com/c-ares/c-ares/pull/634 |
[7] = https://github.com/c-ares/c-ares/commit/c982bf4 |
||||||
[8] = https://github.com/c-ares/c-ares/pull/633 |
|
||||||
[9] = https://github.com/c-ares/c-ares/commit/33ee6c0 |
|
||||||
[10] = https://github.com/c-ares/c-ares/pull/627 |
|
||||||
[11] = https://github.com/c-ares/c-ares/commit/320cefe |
|
||||||
[12] = https://github.com/c-ares/c-ares/pull/625 |
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in new issue