-
Notifications
You must be signed in to change notification settings - Fork 5
/
CHANGES
132 lines (116 loc) · 6.06 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
2024-06-24 Version 0.16.3
- Update expected test results to also be compatible with dkimpy >= 1.1.7
- Update PSL from upstream
2024-01-22 Version 0.16.2
- Add checks for None results to avoid tracebacks (#31)
- Account for FWS in From (which is legal, apparently) (#32)
(Thanks to Mark Sapiro for the report and the fix)
- Delete more setup.py cruft for non-supported Pythons
2024-01-16 Version 0.16.1
- Clean up unnecessary escaping of semi-colons in test data (Dig artifacts)
and adjust related code to resolve SyntaxWarning with Python 3.12 (#29)
- Set python_requires >3.7 and clean up cruft in setup.py
- Use importlib.resources instead of importlib_resources (#30)
2024-01-12 Version 0.16.0
- Switch from pkg_resources resource_filename to importlib_resources (thanks
to Andreas Schneider for the change)
- Add initial doctests for dmarc_lookup.py
- Correctly strip trailing backslash in parsed DMARC record components
- Handle DMARC records containing empty quoted values (#26)
- Add dmarc_lookup.DMARCException and raise it for missing tag/values (#27)
- Catch DMARCException error and return DMARC permerror result (#27)
- Set DMARC result to permerror if From domain cannot be extracted (#25)
- Use dns.resolver.resolve instead of dns.resolver.query due to deprecation
- Update PSL from upstream
- Add new option for authenticate_message, dmarcbis to enable DMARC policy
discovery and alignment per draft-ietf-dmarc-dmarcbis (default is False)
2023-09-11 Version 0.15.3
- Fix parsing of psddmarc.org CSV file for PSD domains
- Update PSL from upstream
2023-03-05 Version 0.15.2
- Fix missing import for DNSException (Thanks Mark Sapiro)
- Update PSL from upstream
2022-04-21 Version 0.15.1
- Correct issue with updated TXT record processing from 0.15.0
- Correct longstanding validation issue and return results as lower case
since ABNF allows for upper or lower case for everything except DMARC1 in
the version
2022-04-17 Version 0.15.0
- Add dmarc-policy-find script to allow policy lookup and org determination
using multiple discovery methods (RFC 7489 (DMARC), RFC 9091 (PSD), and
DMARCbis) as of DMARCbis-07. DMARCbis still under development and may
change
- Check all TXT records returned and return no result if there are multiple
DMARC records per RFC 7489, Section 6.6.3
2021-10-18 Version 0.14.1
- Bump version to fix pypi artifacts, no code changes
2021-10-18 Version 0.14.0
- Use email.utils to parse the From header addresses (Thanks to Adam Clark
for noting this issue and providing the fix) Fixes Github #5
- Correct minimum authres version requirment in setup.py
- Catch more errors. Add DKIM temperror. (Thanks to 'niftylettuce') Fixes
Github #18
- Skip DMARC records with no 'p' tag and don't raise an error (also thanks
to 'niftylettuce') Fixes Github #14
- Fix issues with upper case characters in domain (Thanks to Mark Sapiro for
root causing the issue and providing a fix for the domain name regex)
Fixes Github #13
- Include ARC result comment is A-R header field when ARC fails. Fixes
Github #12
- Handle the case where no valid From is found. Fixes Github #15
2020-01-25 Version 0.13.0
- Switch from the deprecated publicsuffix package to publicsuffix2
- Note: PSL unchanged since last update
2020-01-23 Version 0.12.2
- Do not pass timestamp value to dkimpy for DKIM signing, only supported for
ARC (update documentation too) (Closes: Github Issue #3)
- Update PSL from upstream
2019-12-10 Version 0.12.1
- Adapt tests to work with dkimpy 1.0.0 test dns API changes
- Update PSL from upstream
2019-09-15 Version 0.12.0
- Implement RFC 7489 Section 6.6.1 multi-valued from processing for DMARC
- Implement support for distinct sub-domain policy ('sp' tag)
- Include DMARC policy in addition to raw DMARC result in A-R response
- Support 'np' non-existent domain policy (draft-ietf-dmarc-psd) in addition
to 'p' and 'sp'
- Fixed error with org domain determination in SPF portion of DMARC
validation
- Correct DMARC message from extraction so multiple from is properly
detected
2019-04-24 Version 0.11.0
- Add support for PSD (Public Suffix Domain) DMARC, draft-ietf-dmarc-psd
- Check using local copy of psddmarc.org registry if present or
psddmarc.org DNS lookup service if not
- Add setup.py extension to add local copy of psddmarc.org registry
- Correct DMARC processing so that domains without DMARC records correctly
get a none result vice pass
- Correct DMARC portion of test suite so DMARC record look-ups in the test
data give an appropriate answer
- Change email domain extraction regex so it finds a domain more than two
lables (e.g. text.example.com)
- Add comment to DMARC results in the output Authentication Results header
field indicating if the DMARC record was from the from domain, the org
domain, or (if enabled) the public suffix domain
- Update PSL from upstream
2018-11-25 Version 0.10.0
- Changed SPF check default to False in authenticate_message since pyspf is
not in install_requires
- Added new pslupdate option to setup.py so embedded public suffix list copy
can be easily updated
- Added new psllocal option to setup.py to set the location of a system
public suffix list to use in lieu of the embedded copy
- Only include domain part of Mail From address in smtp.mailfrom since RFC
7601 says this is virtually always the right thing to do
- Fixed SPF checks to they work and switched SPF check to use current vice
legacy pyspf API
- Fixed use of dnspython API in dmarc_lookup.py so DMARC records are
correclty returned
- Fixed dmarc_check to only use domain part of the Mail From address so SPF
based DMARC checks work
- Added version checks in setup.py so ipaddress is not required for
python3.3 and later (since it is in the standard library)
- Added COPYING file to document package licenses
- Added CHANGES file (only covers 0.9.3 and later)
2018-10-30 Version 0.9.3
- Swtiched to using upstream dkimpy, rather than obselete Valimail fork