Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-checkdmarc for
openSUSE:Factory checked in at 2024-11-11 14:58:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-checkdmarc (Old)
and /work/SRC/openSUSE:Factory/.python-checkdmarc.new.2017 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-checkdmarc"
Mon Nov 11 14:58:19 2024 rev:4 rq:1223345 version:5.7.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-checkdmarc/python-checkdmarc.changes
2024-10-10 22:15:23.332036488 +0200
+++
/work/SRC/openSUSE:Factory/.python-checkdmarc.new.2017/python-checkdmarc.changes
2024-11-11 14:58:20.710963562 +0100
@@ -1,0 +2,59 @@
+Sun Nov 10 10:27:03 UTC 2024 - Martin Hauke <[email protected]>
+
+- Update to version 5.7.8
+ * Move SVG validation errors from ["bimi"]["warnings"] to
+ ["bimi"]["image"]["validation_errors"] (#150)
+- Update to version 5.7.7
+ * Fix VMC validation errors not appearing.
+- Update to version 5.7.6
+ * Fix crash when trying to output to CSV format
+- Update to version 5.7.5
+ * Fix BIMI lookup for subdomains that do not have a BIMI record.
+- Update to version 5.7.4
+ * Add additional checks for tiny-ps SVG requirements
+- Update to version 5.7.3
+ * BIMI images and mark certificates
+ + Better error handling
+ + Simplified warning messages
+ + sha256_hash output fields renamed to sha256
+- Update to version 5.7.2
+ * Account for float SVG sizes
+- Update to version 5.7.1
+ * Properly parse a certificate SAN
+ * Certificate warnings fire properly
+ * Make the expires timestamp more readable
+- Update to version 5.7.0
+ * checkdmarc will now validate Verified Mark Certificates (VMCs)
+ and Common Mark Certificates (CMC), snd will verify that
+ SHA256 hash of the logo embedded in the certificate matches
+ the SHA256 hash logo at the URL at the BIMI l tag.
+ Additionally, SVG and certificate metadata is now included in
+ the checkdmarc.bimi.parse_bimi_record() API and JSON CLI
+ output.
+- Update to version 5.6.2
+ * Add a warning when BIMI records do not provide a mark
+ certificate.
+ * Use the correct dependency (xmltodict, not xml2dict).
+- Update to version 5.6.1
+ * Fix SVG base profile detection
+- Update to version 5.6.0
+ * Automatically check for a BIMI DNS record at the default
+ selector when using the CLI
+ * Fix parsing of BIMI record tags when they are separated by
+ a ";" without a space.
+ * Validate the file at the URL in the BIMI l tag value
+ + Must be an SVG file
+ + The SVG version must be 1.2
+ + The SVG base profile must be tiny-ps
+ + The SVG dimensions must be square
+ + The file size must not exceed 32 KB
+- Update to version 5.5.1
+ * SPF record validation fixes (PR #147)
+ + Accept mechanisms with domains that start with all.
+ + Ignore multiple trailing mechanisms and random text with
+ spaces.
+- Rebase skip-network-tests.patch
+- Remove tests.py
+ * included in the now used source tarball from github
+
+-------------------------------------------------------------------
Old:
----
checkdmarc-5.5.0.tar.gz
tests.py
New:
----
checkdmarc-5.7.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-checkdmarc.spec ++++++
--- /var/tmp/diff_new_pack.G5q41L/_old 2024-11-11 14:58:21.470995360 +0100
+++ /var/tmp/diff_new_pack.G5q41L/_new 2024-11-11 14:58:21.474995528 +0100
@@ -2,7 +2,7 @@
# spec file for package python-checkdmarc
#
# Copyright (c) 2024 SUSE LLC
-# Copyright (c) 2021, Martin Hauke <[email protected]>
+# Copyright (c) 2021-2024, Martin Hauke <[email protected]>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,13 +18,12 @@
Name: python-checkdmarc
-Version: 5.5.0
+Version: 5.7.8
Release: 0
Summary: A Python module and command line parser for SPF and DMARC
records
License: Apache-2.0
URL: https://domainaware.github.io/checkdmarc
-Source:
https://files.pythonhosted.org/packages/source/c/checkdmarc/checkdmarc-%{version}.tar.gz
-Source1:
https://raw.githubusercontent.com/domainaware/checkdmarc/master/tests.py
+Source:
https://github.com/domainaware/checkdmarc/archive/refs/tags/%{version}.tar.gz#/checkdmarc-%{version}.tar.gz
Patch0: skip-network-tests.patch
BuildRequires: %{python_module hatchling}
BuildRequires: %{python_module pip}
@@ -34,20 +33,26 @@
Requires: python-cryptography
Requires: python-dnspython >= 2.0.0
Requires: python-expiringdict >= 1.1.4
+Requires: python-pem >= 23.1.0
Requires: python-publicsuffixlist
+Requires: python-pyOpenSSL >= 24.2.1
Requires: python-pyleri >= 1.3.2
Requires: python-requests >= 2.25.0
Requires: python-timeout-decorator >= 0.4.1
+Requires: python-xmltodict
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module dnspython >= 2.0.0}
BuildRequires: %{python_module expiringdict >= 1.1.4}
+BuildRequires: %{python_module pem >= 23.1.0}
BuildRequires: %{python_module publicsuffixlist}
+BuildRequires: %{python_module pyOpenSSL >= 24.2.1}
BuildRequires: %{python_module pyleri >= 1.3.2}
BuildRequires: %{python_module requests >= 2.25.0}
BuildRequires: %{python_module timeout-decorator >= 0.4.1}
+BuildRequires: %{python_module xmltodict}
# /SECTION
%python_subpackages
@@ -56,8 +61,7 @@
%prep
%setup -q -n checkdmarc-%{version}
-cp %{SOURCE1} .
-%patch -P 0 -p0
+%autopatch -p1
%build
%pyproject_wheel
@@ -81,5 +85,5 @@
%doc README.md
%python_alternative %{_bindir}/checkdmarc
%{python_sitelib}/checkdmarc
-%{python_sitelib}/checkdmarc-%{version}.dist-info
+%{python_sitelib}/checkdmarc-*.dist-info
++++++ checkdmarc-5.5.0.tar.gz -> checkdmarc-5.7.8.tar.gz ++++++
++++ 6921 lines of diff (skipped)
++++++ skip-network-tests.patch ++++++
--- /var/tmp/diff_new_pack.G5q41L/_old 2024-11-11 14:58:21.587000214 +0100
+++ /var/tmp/diff_new_pack.G5q41L/_new 2024-11-11 14:58:21.587000214 +0100
@@ -1,5 +1,7 @@
---- tests.py~ 2024-02-29 12:22:56.007309853 +1100
-+++ tests.py 2024-02-29 12:25:49.618057933 +1100
+diff --git a/tests.py b/tests.py
+index 8e58708..65605d4 100755
+--- a/tests.py
++++ b/tests.py
@@ -3,6 +3,7 @@
"""Automated tests"""
@@ -8,7 +10,7 @@
import unittest
from collections import OrderedDict
-@@ -94,6 +95,7 @@
+@@ -99,6 +100,7 @@ class Test(unittest.TestCase):
self.assertEqual(len(results["warnings"]), 0)
@@ -16,44 +18,52 @@
def testSplitSPFRecord(self):
"""Split SPF records are parsed properly"""
-@@ -129,6 +131,7 @@
- self.assertRaises(checkdmarc.spf.SPFRecordNotFound,
- checkdmarc.spf.parse_spf_record, spf_record, domain)
+@@ -140,6 +142,7 @@ class Test(unittest.TestCase):
+ domain,
+ )
+ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
def testTooManySPFDNSLookups(self):
"""SPF records with > 10 SPF mechanisms that cause DNS lookups raise
SPFTooManyDNSLookups"""
-@@ -144,6 +147,7 @@
- self.assertRaises(checkdmarc.spf.SPFTooManyDNSLookups,
- checkdmarc.spf.parse_spf_record, spf_record, domain)
+@@ -161,6 +164,7 @@ class Test(unittest.TestCase):
+ domain,
+ )
+ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
def testTooManySPFVoidDNSLookups(self):
"""SPF records with > 2 void DNS lookups"""
-@@ -216,6 +220,7 @@
- self.assertRaises(checkdmarc.spf.SPFIncludeLoop,
- checkdmarc.spf.parse_spf_record, spf_record, domain)
+@@ -274,6 +278,7 @@ class Test(unittest.TestCase):
+ domain,
+ )
+ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
def testSPFMissingMXRecord(self):
"""A warning is issued if an SPF record contains a mx mechanism
pointing to a domain that has no MX records"""
-@@ -226,6 +231,7 @@
- self.assertIn("{0} does not have any MX records".format(domain),
- results["warnings"])
+@@ -285,6 +290,7 @@ class Test(unittest.TestCase):
+ "{0} does not have any MX records".format(domain),
results["warnings"]
+ )
+ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
def testSPFMissingARecord(self):
"""A warning is issued if an SPF record contains a mx mechanism
pointing to a domain that has no A records"""
-@@ -236,6 +242,7 @@
- self.assertIn("cardinalhealth.net does not have any A/AAAA records",
- results["warnings"])
+@@ -296,6 +302,7 @@ class Test(unittest.TestCase):
+ "cardinalhealth.net does not have any A/AAAA records",
results["warnings"]
+ )
+ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
def testDMARCPctLessThan100Warning(self):
"""A warning is issued if the DMARC pvt value is less than 100"""
+@@ -347,6 +354,7 @@ class Test(unittest.TestCase):
+ domain,
+ )
+
++ @unittest.skipUnless(os.path.exists("/etc/resolv.conf"), "no network")
+ def testBIMI(self):
+ """Test BIMI checks"""
+ domain = "chase.com"