From a1a9b4a0975ad25e18e7a5307c2e2ba71d4eae09b4f05411c06617098bc1b820 Mon Sep 17 00:00:00 2001 From: Sebastian Wagner Date: Sun, 6 Oct 2024 07:18:04 +0000 Subject: [PATCH 1/2] Accepting request 1205876 from home:mnhauke:network MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update to version 2.7.0 * dns.query.https() and dns.asyncquery.https() now support HTTP/3 and the http_version parameter may be used to specify which version to use. * If the cryptography module is installed, then dnspython will now create deterministic ECDSA signatures by default. * The RESINFO and WALLET RdataTypes are now supported. * The COOKIE and Report-Channel EDNS0 options are now supported. * All supported RdataTypes can now be imported at a single time rather than lazily on first use by calling dns.rdata.load_all_types(). * The SVCB and HTTPS records now support the ohttp parameter. * xfr() and inbound_xfr() now share a common implementation. * Tokens are now supported for QUIC and HTTP/3. * dns.message.from_wire() now saves the input wire format in the Message’s “wire” attribute. Likewise, dns.message.Message.to_wire() now records the generated wire format in that attribute. * The dns.message.Message object now has a get_options() helper to retrieve EDNS0 options of a specified type, and an extended_errors() helper to retrieve the list of EDE options in a message (if any). * dns.message.make_response() now has a copy mode which controls how sections are copied. By default, a copy mode appropriate for the opcode is used. This is currently dns.message.CopyMode.QUESTION for all opcodes * If an IP address is used as the hostname in a URL, the https query code now passes the sni_hostname to httpx as this is required to get httpx to validate the certificate and check for an IP subject alternative name. OBS-URL: https://build.opensuse.org/request/show/1205876 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-dnspython?expand=0&rev=78 --- dnspython-2.6.1.tar.gz | 3 --- dnspython-2.7.0.tar.gz | 3 +++ python-dnspython.changes | 36 ++++++++++++++++++++++++++++++++++++ python-dnspython.spec | 10 +++++++--- 4 files changed, 46 insertions(+), 6 deletions(-) delete mode 100644 dnspython-2.6.1.tar.gz create mode 100644 dnspython-2.7.0.tar.gz diff --git a/dnspython-2.6.1.tar.gz b/dnspython-2.6.1.tar.gz deleted file mode 100644 index 0f8199e..0000000 --- a/dnspython-2.6.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e8f0f9c23a7b7cb99ded64e6c3a6f3e701d78f50c55e002b839dea7225cff7cc -size 332727 diff --git a/dnspython-2.7.0.tar.gz b/dnspython-2.7.0.tar.gz new file mode 100644 index 0000000..d674705 --- /dev/null +++ b/dnspython-2.7.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce9c432eda0dc91cf618a5cedf1a4e142651196bbcd2c80e89ed5a907e5cfaf1 +size 345197 diff --git a/python-dnspython.changes b/python-dnspython.changes index 8159e5a..a917f70 100644 --- a/python-dnspython.changes +++ b/python-dnspython.changes @@ -1,3 +1,39 @@ +------------------------------------------------------------------- +Sun Oct 6 07:03:50 UTC 2024 - Martin Hauke + +- Update to version 2.7.0 + * dns.query.https() and dns.asyncquery.https() now support + HTTP/3 and the http_version parameter may be used to specify + which version to use. + * If the cryptography module is installed, then dnspython will + now create deterministic ECDSA signatures by default. + * The RESINFO and WALLET RdataTypes are now supported. + * The COOKIE and Report-Channel EDNS0 options are now supported. + * All supported RdataTypes can now be imported at a single time + rather than lazily on first use by calling + dns.rdata.load_all_types(). + * The SVCB and HTTPS records now support the ohttp parameter. + * xfr() and inbound_xfr() now share a common implementation. + * Tokens are now supported for QUIC and HTTP/3. + * dns.message.from_wire() now saves the input wire format in the + Message’s “wire” attribute. Likewise, + dns.message.Message.to_wire() now records the generated wire + format in that attribute. + * The dns.message.Message object now has a get_options() helper + to retrieve EDNS0 options of a specified type, and an + extended_errors() helper to retrieve the list of EDE options + in a message (if any). + * dns.message.make_response() now has a copy mode which controls + how sections are copied. By default, a copy mode appropriate + for the opcode is used. + This is currently dns.message.CopyMode.QUESTION for all opcodes + * If an IP address is used as the hostname in a URL, the https + query code now passes the sni_hostname to httpx as this is + required to get httpx to validate the certificate and check for + an IP subject alternative name. + * The minimum supported aioquic version is now 1.0.0. + * The minimum supported Python version is now 3.9. + ------------------------------------------------------------------- Thu Jun 20 12:26:09 UTC 2024 - Martin Hauke diff --git a/python-dnspython.spec b/python-dnspython.spec index 0b0021e..5b2b14c 100644 --- a/python-dnspython.spec +++ b/python-dnspython.spec @@ -27,7 +27,7 @@ %define skip_python2 1 %{?sle15_python_module_pythons} Name: python-dnspython%{psuffix} -Version: 2.6.1 +Version: 2.7.0 Release: 0 Summary: A DNS toolkit for Python License: ISC @@ -41,12 +41,14 @@ BuildRequires: %{python_module poetry-core} BuildRequires: fdupes BuildRequires: python-rpm-macros # dnssec -Requires: python-cryptography +Requires: python-cryptography >= 43.0 Requires: python-httpx # idna Requires: python-idna >= 2.1 # HTTP/2 support in httpx Recommends: python-h2 +# quic +Recommends: python-aioquic # trio Suggests: python-trio >= 0.14.0 BuildArch: noarch @@ -55,8 +57,10 @@ BuildArch: noarch BuildRequires: %{python_module cryptography} # BuildRequires: %%{python_module curio >= 1.2} BuildRequires: %{python_module h2} -# doh: +# doh BuildRequires: %{python_module httpx} +# quic +BuildRequires: %{python_module aioquic} # idna BuildRequires: %{python_module idna} BuildRequires: %{python_module pytest} From b8de83efe2d4bcabcc557b38a0c0555a61afee17366e9f3186a0c327d808f4a6 Mon Sep 17 00:00:00 2001 From: Sebastian Wagner Date: Tue, 8 Oct 2024 20:25:32 +0000 Subject: [PATCH 2/2] Accepting request 1206394 from home:mnhauke:network - Skip some tests * that require a working resolver and external DNS resolution * that require an openssl3 version with support for ECDSA with deterministic signature (RFC 6979)" OBS-URL: https://build.opensuse.org/request/show/1206394 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-dnspython?expand=0&rev=79 --- python-dnspython.changes | 8 ++++++++ python-dnspython.spec | 11 +++++++++++ 2 files changed, 19 insertions(+) diff --git a/python-dnspython.changes b/python-dnspython.changes index a917f70..bbf8a16 100644 --- a/python-dnspython.changes +++ b/python-dnspython.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Tue Oct 8 20:19:23 UTC 2024 - Martin Hauke + +- Skip some tests + * that require a working resolver and external DNS resolution + * that require an openssl3 version with support for + ECDSA with deterministic signature (RFC 6979)" + ------------------------------------------------------------------- Sun Oct 6 07:03:50 UTC 2024 - Martin Hauke diff --git a/python-dnspython.spec b/python-dnspython.spec index 5b2b14c..d37f272 100644 --- a/python-dnspython.spec +++ b/python-dnspython.spec @@ -115,6 +115,17 @@ chmod -x dns/win32util.py %if %{with test} %check +# remove tests that require a working resolver and external DNS resolution +rm tests/test_async.py +rm tests/test_doh.py +rm tests/test_resolver.py +rm tests/test_resolver_override.py +# remove dnssec related tests since those require an openssl version with +# support for supports "ECDSA with deterministic signature (RFC 6979)" +# https://github.com/pyca/cryptography/pull/10369 +# TODO: reenable once TW ships openssl >= 3.2.0 +rm tests/test_dnssec.py +rm tests/test_dnssecalgs.py %pytest %endif