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 <mar...@gmx.de> + +- 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 <mar...@gmx.de> +# Copyright (c) 2021-2024, Martin Hauke <mar...@gmx.de> # # 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"