[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1036135: marked as done (unblock: dkimpy/1.1.4-1)



Your message dated Tue, 16 May 2023 20:59:03 +0000
with message-id <E1pz1l9-003umy-Ch@respighi.debian.org>
and subject line unblock dkimpy
has caused the Debian Bug report #1036135,
regarding unblock: dkimpy/1.1.4-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1036135: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1036135
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package dkimpy

[ Reason ]
This is a very targetted bug fix release which will reduce cases where
tracebacks ocurr due to a programming error as well as addressing a
minor exception classification error.  This will both improve things for
bookworm users at (and slightly before) release and save the overhead of
a stable update.

[ Impact ]
Tracebacks when there are DNS errors which may negative affect mail
delivery for mail servers which use dkimpy as part of their MTA.

[ Tests ]
The package has an extensive automated test suite, which is run by the
package's autopkgtest, but it does not test DNS resolver integration
(because it overrides the DNS related code to avoid needing internet
acces to run tests).  I did, however, manually test these changes with a
temporarily customized version of the test suite that used real DNS.
Some of the changes were also tested by the (non-Debian) original bug
reporter.

[ Risks ]
Risks are nil.  This is well tested and in the event I screwed it up
somehow, it's stunningly unlikely that anything which worked before
would break.  Code is pretty trivial too.

[ Checklist ]
  [X] all changes are documented in the d/changelog
  [X] I reviewed all changes and I approve them
  [X] attach debdiff against the package in testing

[ Other info ]
The package is currently 4 of 20 days old.  It won't get to 20 by the
Full Freeze date.  Either an unblock or adjusting age days will address
the issue since it's not a key package and has a passing non-trivial
autopkgtest.

unblock dkimpy/1.1.4-1

Scott K
diff -Nru dkimpy-1.1.3/ChangeLog dkimpy-1.1.4/ChangeLog
--- dkimpy-1.1.3/ChangeLog	2023-04-30 10:11:53.000000000 -0400
+++ dkimpy-1.1.4/ChangeLog	2023-05-12 01:17:52.000000000 -0400
@@ -1,3 +1,9 @@
+2023-05-12 Version 1.1.4
+   - Treat dns.resolver.NoNameservers like NXDOMAIN (not an error) (Thanks to
+     David for the patch and the report)
+   - Confine errors from dnspython to dnsplug and use dkim errors, since
+     dkim.__init__.py doesn't import dns and needs dkim errors (LP: #2018646)
+
 2023-04-30 Version 1.1.3
    - Catch nacl.exceptions.ValueError and raise KeyFormatError, similar to how
      RSA key errors are treated (LP: #2018021)
diff -Nru dkimpy-1.1.3/debian/changelog dkimpy-1.1.4/debian/changelog
--- dkimpy-1.1.3/debian/changelog	2023-04-30 10:27:20.000000000 -0400
+++ dkimpy-1.1.4/debian/changelog	2023-05-12 08:41:24.000000000 -0400
@@ -1,3 +1,9 @@
+dkimpy (1.1.4-1) unstable; urgency=medium
+
+  * New upstream release
+
+ -- Scott Kitterman <scott@kitterman.com>  Fri, 12 May 2023 08:41:24 -0400
+
 dkimpy (1.1.3-1) unstable; urgency=medium
 
   * New upstream release
diff -Nru dkimpy-1.1.3/dkim/dnsplug.py dkimpy-1.1.4/dkim/dnsplug.py
--- dkimpy-1.1.3/dkim/dnsplug.py	2020-08-08 16:55:43.000000000 -0400
+++ dkimpy-1.1.4/dkim/dnsplug.py	2023-05-12 01:07:38.000000000 -0400
@@ -27,12 +27,18 @@
 
 def get_txt_dnspython(name, timeout=5):
     """Return a TXT record associated with a DNS name."""
+    import dkim
     try:
       a = dns.resolver.query(name, dns.rdatatype.TXT,raise_on_no_answer=False, lifetime=timeout)
       for r in a.response.answer:
           if r.rdtype == dns.rdatatype.TXT:
               return b"".join(list(r.items)[0].strings)
     except dns.resolver.NXDOMAIN: pass
+    except dns.resolver.NoNameservers: pass
+    except dns.resolver.NoResolverConfiguration as e:
+        raise dkim.DnsTimeoutError('dns.resolver.NoResolverConfiguration: {0}'.format(e))
+    except dns.exception.Timeout as e:
+        raise dkim.DnsTimeoutError('dns.exception.Timeout: {0}'.format(e))
     return None
 
 
diff -Nru dkimpy-1.1.3/dkim/__init__.py dkimpy-1.1.4/dkim/__init__.py
--- dkimpy-1.1.3/dkim/__init__.py	2023-04-30 10:11:53.000000000 -0400
+++ dkimpy-1.1.4/dkim/__init__.py	2023-05-12 01:08:45.000000000 -0400
@@ -802,7 +802,7 @@
     except binascii.Error as e:
       self.logger.error('KeyFormatError: {0}'.format(e))
       return False
-    except dns.exception.Timeout as e:
+    except DnsTimeoutError as e:
       self.logger.error('DnsTimeoutError: Domain: {0} Selector: {1} Error message: {2}'.format(
           sig[b'd'], sig[b's'], e))
       return False
diff -Nru dkimpy-1.1.3/dkimpy.egg-info/PKG-INFO dkimpy-1.1.4/dkimpy.egg-info/PKG-INFO
--- dkimpy-1.1.3/dkimpy.egg-info/PKG-INFO	2023-04-30 10:12:18.000000000 -0400
+++ dkimpy-1.1.4/dkimpy.egg-info/PKG-INFO	2023-05-12 01:18:26.000000000 -0400
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: dkimpy
-Version: 1.1.3
+Version: 1.1.4
 Summary: DKIM (DomainKeys Identified Mail), ARC (Authenticated Receive Chain), and TLSRPT (TLS Report) email signing and verification
 Home-page: https://launchpad.net/dkimpy
 Author: Scott Kitterman
@@ -21,7 +21,7 @@
         
         # VERSION
         
-        This is dkimpy 1.1.3.
+        This is dkimpy 1.1.4.
         
         # REQUIREMENTS
         
diff -Nru dkimpy-1.1.3/PKG-INFO dkimpy-1.1.4/PKG-INFO
--- dkimpy-1.1.3/PKG-INFO	2023-04-30 10:12:18.992257400 -0400
+++ dkimpy-1.1.4/PKG-INFO	2023-05-12 01:18:26.983443300 -0400
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: dkimpy
-Version: 1.1.3
+Version: 1.1.4
 Summary: DKIM (DomainKeys Identified Mail), ARC (Authenticated Receive Chain), and TLSRPT (TLS Report) email signing and verification
 Home-page: https://launchpad.net/dkimpy
 Author: Scott Kitterman
@@ -21,7 +21,7 @@
         
         # VERSION
         
-        This is dkimpy 1.1.3.
+        This is dkimpy 1.1.4.
         
         # REQUIREMENTS
         
diff -Nru dkimpy-1.1.3/README.md dkimpy-1.1.4/README.md
--- dkimpy-1.1.3/README.md	2023-04-30 10:11:53.000000000 -0400
+++ dkimpy-1.1.4/README.md	2023-05-07 14:37:17.000000000 -0400
@@ -13,7 +13,7 @@
 
 # VERSION
 
-This is dkimpy 1.1.3.
+This is dkimpy 1.1.4.
 
 # REQUIREMENTS
 
diff -Nru dkimpy-1.1.3/setup.py dkimpy-1.1.4/setup.py
--- dkimpy-1.1.3/setup.py	2023-04-30 10:11:53.000000000 -0400
+++ dkimpy-1.1.4/setup.py	2023-05-07 14:35:32.000000000 -0400
@@ -25,7 +25,7 @@
 import os
 import sys
 
-version = "1.1.3"
+version = "1.1.4"
 
 kw = {}  # Work-around for lack of 'or' requires in setuptools.
 try:

--- End Message ---
--- Begin Message ---
Unblocked.

--- End Message ---

Reply to: