<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body dir="auto">
<div>Hi Angelique, </div>
<div><br>
</div>
<div>Please tweet this for us from getdnsapi </div>
<div><br>
</div>
<div>Please indicate it is a "features release as well as making some bug fixes" and point to
<a href="http://getdnsapi.net">getdnsapi.net</a><br>
<br>
Begin forwarded message:<br>
<br>
</div>
<blockquote type="cite">
<div><b>From:</b> Willem Toorop <<a href="mailto:willem@nlnetlabs.nl">willem@nlnetlabs.nl</a>><br>
<b>Date:</b> October 31, 2014 at 9:06:13 PDT<br>
<b>To:</b> "<a href="mailto:getdns-api@vpnc.org">getdns-api@vpnc.org</a>" <<a href="mailto:getdns-api@vpnc.org">getdns-api@vpnc.org</a>><br>
<b>Subject:</b> <b>[getdns-api] getdns 0.1.5 released</b><br>
<br>
</div>
</blockquote>
<blockquote type="cite">
<div><span>-----BEGIN PGP SIGNED MESSAGE-----</span><br>
<span>Hash: SHA1</span><br>
<span></span><br>
<span>Dear all,</span><br>
<span></span><br>
<span>We have a new release, version 0.1.5 of our getdns API implementation.</span><br>
<span></span><br>
<span>This release includes the features from the API that affect hop-by-hop</span><br>
<span>communication and apply to stub resolution mode.  The</span><br>
<span>"add_opt_parameters" extension from section 3.3 of the spec and all</span><br>
<span>getdns_context_set_edns_* functions from Section 8.8 have are now</span><br>
<span>implemented.  The GETDNS_TRANSPORT_TCP_ONLY_KEEP_CONNECTIONS_OPEN</span><br>
<span>transport mode is also implemented with this release.  IPv6 link-local</span><br>
<span>with scope_id upstreams are now supported, both in /etc/resolv.conf as</span><br>
<span>via getdns_context_set_upstream_recursive_servers().</span><br>
<span></span><br>
<span>In addition, TCP Fast open is available as an optional feature (linux</span><br>
<span>only).  This mechanism enables data exchange during TCP’s initial</span><br>
<span>handshake and in doing so it decreases application network latency by</span><br>
<span>one full round-trip time.</span><br>
<span></span><br>
<span>To enable these features we have done a major internal rework.  Before,</span><br>
<span>we used libunbound for both stub and recursive mode, but to get the</span><br>
<span>amount of control needed for the hop-by-hop communication features we</span><br>
<span>had to implement stub resolution independently.  For this task we also</span><br>
<span>needed to review and refine our extensible event loop mechanism so it is</span><br>
<span>able to handle events for multiple simultaneous connections.  (This was</span><br>
<span>handled internally by libunbound before)</span><br>
<span></span><br>
<span>As a consequence, this release is binary incompatible with respect to</span><br>
<span>the extensible event loop mechanism.  The getdns_context_fd() function</span><br>
<span>that facilitated asynchronous processing based on select is no longer</span><br>
<span>available.  Instead, getdns_context_run() should be used to perform</span><br>
<span>blocking asynchronous processing.  The getdns_context_process_async()</span><br>
<span>and getdns_context_get_num_pending_requests() functions remain for</span><br>
<span>asynchronous processing in non-blocking fashion.</span><br>
<span></span><br>
<span>Besides our own three event loop extensions shipped alongside the</span><br>
<span>library (for libevent, libev and libuv) we are aware of only one</span><br>
<span>software package affected by this: the nodejs bindings.  A new release</span><br>
<span>of the nodejs bindings fitting this release will follow shortly.</span><br>
<span></span><br>
<span>The internal rework has many improvements as a consequence.  Many</span><br>
<span>implementation details that previously had specific code paths for the</span><br>
<span>different modus operandi (i.e. sync/recursive, sync/stub,</span><br>
<span>async/recursive and async stub) could be merged, resulting in a more</span><br>
<span>consistent and easier to maintain code base.  Consequences can already</span><br>
<span>be seen in the simultaneous querying for IPv4 and IPv6 addresses and the</span><br>
<span>more consistent handling of name spaces, plus the possibility to alter</span><br>
<span>name space evaluation order even after a context has been used to sent</span><br>
<span>out a query.</span><br>
<span></span><br>
<span>Note that stub resolution will still use libunbound if any of the DNSSEC</span><br>
<span>extensions are into play.  Performing stub validation independently from</span><br>
<span>libunbound is on the road map for the next release.</span><br>
<span></span><br>
<span>Besides these features, many bugs have been fixed with this release.</span><br>
<span>For a complete overview see the ChangeLog section below.</span><br>
<span></span><br>
<span>link   : <a href="https://getdnsapi.net/dist/getdns-0.1.5.tar.gz">https://getdnsapi.net/dist/getdns-0.1.5.tar.gz</a></span><br>
<span>md5    : a963594fca8ef2849244aa7290abe7f8</span><br>
<span>sha1   : 5da3f54d0929d967039e5d0d54e7125dd13acf38</span><br>
<span>pgp sig: <a href="https://getdnsapi.net/dist/getdns-0.1.5.tar.gz.asc">https://getdnsapi.net/dist/getdns-0.1.5.tar.gz.asc</a></span><br>
<span></span><br>
<span></span><br>
<span>ChangeLog</span><br>
<span>=========</span><br>
<span>* 2014-10-31: Version 0.1.5</span><br>
<span> * Unit tests for transport settings</span><br>
<span> * Fix: adhere to set maximum UDP payload size</span><br>
<span> * API change: when no maximum UDP payload size is set, outgoing</span><br>
<span>   values will adhere to the suggestions in RFC 6891 and may follow</span><br>
<span>   a scheme that uses multiple values to maximize receptivity.</span><br>
<span> * Stub mode use 1232 maximum UDP payload size when connecting to an</span><br>
<span>   IPv6 upstreams and 1432 with an IPv4 upstream.</span><br>
<span> * Evaluate namespaces (or not) on a per query basis</span><br>
<span> * GETDNS_NAMESPACE_LOCALNAMES namespace now gives just_address_answers</span><br>
<span>   only and does not mimic a DNS packet answer anymore</span><br>
<span> * The add_opt_parameters extension</span><br>
<span> * IPv6 scope_id support with link-local addresses.  Both with parsing</span><br>
<span>   /etc/resolv.conf and by providing them explicitly via</span><br>
<span>   getdns_context_set_upstream_recursive_servers</span><br>
<span> * Query for A and AAAA simultaneously with return_both_v4_and_v6</span><br>
<span> * GETDNS_TRANSPORT_TCP_ONLY_KEEP_CONNECTIONS_OPEN DNS transport</span><br>
<span> * Fix: Answers without RRs in query secion (i.e. REFUSED)</span><br>
<span> * Fix: Return empty response dict on timeout in async mode too</span><br>
<span> * Move spec examples to spec subdirectory</span><br>
<span> * Fix issue#76: Setting UDP Payload size below 512 should not error</span><br>
<span> * Fix: Include OPT RR in response dict always (even without options)</span><br>
<span> * TCP Fast open support (linux only).</span><br>
<span>   Enable with the --enable-tcp-fastopen configure option</span><br>
<span> * Bump library version because of binary API change</span><br>
<span></span><br>
<span>-----BEGIN PGP SIGNATURE-----</span><br>
<span>Version: GnuPG v1</span><br>
<span></span><br>
<span>iQIcBAEBAgAGBQJUU7NxAAoJEOX4+CEvd6SYfA8P/2UePh9RDnxKio8ROBE6qXvR</span><br>
<span>l8k9NRyOJtuxS6L4bm3/fClx2SrJ1BarBVWVap+ariZN+zoCXHpCpg5RwI794qib</span><br>
<span>aRG7OW0DzpqNuq63f3aYsrGneB2JaIW6XgO+RBJoe3IjawWeXrFoNprvxPQqqUgK</span><br>
<span>/2zyu1kJp14DV5Gc58F6jdgNk65pl7a26IATw+6O/w3TkfhmmjUhXj1POpSCrvWX</span><br>
<span>NCLyJeHoylPrOKCZgRx3m47BIOV377hT+DSoL+lTFgeFhERTv5Sr0R1kt4ixrSw5</span><br>
<span>IbINFdph0Q5s+K8/v8RVSMpT8ao5/yVJI8Va4WJMNWPp0DUfp3E3Z0SolckcdrBr</span><br>
<span>Xrh9HZBxRj/WifwEQA1MO2pkyjczsQpHTrsUZDXrscwy1euYlUPFGbGLYjZenl/C</span><br>
<span>qmpBzumiMGNjcS1oyPv5rplvpUlYFQ0WYGCyrfOoncoa2n2XeaaaripjhEN3ZrJW</span><br>
<span>QGv1DIag2ltRPSM8UKJWAgWkNNdK5f2b3uc2isVfpbNFdibhmB9hvUvfOaG9JAY1</span><br>
<span>5kTYhJyIRkoKSqwo1VLmHJ5Rh5PKULYMmbV+qhJL3T7gZMUJ/VJHrpOKsGyKxNHl</span><br>
<span>b4FStTDktwbwxbifgBME0OFCYq+MrvNfShbDv92IpwDBStGasGiJ/cdhqCFEuPGr</span><br>
<span>jlNF6rB4tyyvi52mdldv</span><br>
<span>=W7p7</span><br>
<span>-----END PGP SIGNATURE-----</span><br>
<span>_______________________________________________</span><br>
<span>getdns-api mailing list</span><br>
<span><a href="mailto:getdns-api@vpnc.org">getdns-api@vpnc.org</a></span><br>
</div>
</blockquote>
</body>
</html>