mirror of
https://github.com/domainaware/parsedmarc.git
synced 2026-03-07 07:11:24 +00:00
Compare commits
5 Commits
copilot/cr
...
copilot/dr
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4219306365 | ||
|
|
a6e009c149 | ||
|
|
33384bd612 | ||
|
|
33eb2aaf62 | ||
|
|
1387fb4899 |
2
.github/workflows/python-tests.yml
vendored
2
.github/workflows/python-tests.yml
vendored
@@ -30,7 +30,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
|
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v5
|
- uses: actions/checkout@v5
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 9.1.0
|
||||||
|
|
||||||
|
## Enhancements
|
||||||
|
|
||||||
|
- Add TCP and TLS support for syslog output. (#656)
|
||||||
|
- Skip DNS lookups in GitHub Actions to prevent DNS timeouts during tests timeouts. (#657)
|
||||||
|
- Remove microseconds from DMARC aggregate report time ranges before parsing them.
|
||||||
|
|
||||||
## 9.0.10
|
## 9.0.10
|
||||||
|
|
||||||
- Support Python 3.14+
|
- Support Python 3.14+
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ for RHEL or Debian.
|
|||||||
| 3.6 | ❌ | Used in RHEL 8, but not supported by project dependencies |
|
| 3.6 | ❌ | Used in RHEL 8, but not supported by project dependencies |
|
||||||
| 3.7 | ❌ | End of Life (EOL) |
|
| 3.7 | ❌ | End of Life (EOL) |
|
||||||
| 3.8 | ❌ | End of Life (EOL) |
|
| 3.8 | ❌ | End of Life (EOL) |
|
||||||
| 3.9 | ✅ | Supported until August 2026 (Debian 11); May 2032 (RHEL 9) |
|
| 3.9 | ❌ | Used in Debian 11 and RHEL 9, but not supported by project dependencies |
|
||||||
| 3.10 | ✅ | Actively maintained |
|
| 3.10 | ✅ | Actively maintained |
|
||||||
| 3.11 | ✅ | Actively maintained; supported until June 2028 (Debian 12) |
|
| 3.11 | ✅ | Actively maintained; supported until June 2028 (Debian 12) |
|
||||||
| 3.12 | ✅ | Actively maintained; supported until May 2035 (RHEL 10) |
|
| 3.12 | ✅ | Actively maintained; supported until May 2035 (RHEL 10) |
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ for RHEL or Debian.
|
|||||||
| 3.6 | ❌ | Used in RHEL 8, but not supported by project dependencies |
|
| 3.6 | ❌ | Used in RHEL 8, but not supported by project dependencies |
|
||||||
| 3.7 | ❌ | End of Life (EOL) |
|
| 3.7 | ❌ | End of Life (EOL) |
|
||||||
| 3.8 | ❌ | End of Life (EOL) |
|
| 3.8 | ❌ | End of Life (EOL) |
|
||||||
| 3.9 | ✅ | Supported until August 2026 (Debian 11); May 2032 (RHEL 9) |
|
| 3.9 | ❌ | Used in Debian 11 and RHEL 9, but not supported by project dependencies |
|
||||||
| 3.10 | ✅ | Actively maintained |
|
| 3.10 | ✅ | Actively maintained |
|
||||||
| 3.11 | ✅ | Actively maintained; supported until June 2028 (Debian 12) |
|
| 3.11 | ✅ | Actively maintained; supported until June 2028 (Debian 12) |
|
||||||
| 3.12 | ✅ | Actively maintained; supported until May 2035 (RHEL 10) |
|
| 3.12 | ✅ | Actively maintained; supported until May 2035 (RHEL 10) |
|
||||||
|
|||||||
@@ -162,10 +162,10 @@ sudo -u parsedmarc virtualenv /opt/parsedmarc/venv
|
|||||||
```
|
```
|
||||||
|
|
||||||
CentOS/RHEL 8 systems use Python 3.6 by default, so on those systems
|
CentOS/RHEL 8 systems use Python 3.6 by default, so on those systems
|
||||||
explicitly tell `virtualenv` to use `python3.9` instead
|
explicitly tell `virtualenv` to use `python3.10` instead
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo -u parsedmarc virtualenv -p python3.9 /opt/parsedmarc/venv
|
sudo -u parsedmarc virtualenv -p python3.10 /opt/parsedmarc/venv
|
||||||
```
|
```
|
||||||
|
|
||||||
Activate the virtualenv
|
Activate the virtualenv
|
||||||
|
|||||||
@@ -1470,8 +1470,12 @@ def _main():
|
|||||||
certfile_path=opts.syslog_certfile_path,
|
certfile_path=opts.syslog_certfile_path,
|
||||||
keyfile_path=opts.syslog_keyfile_path,
|
keyfile_path=opts.syslog_keyfile_path,
|
||||||
timeout=opts.syslog_timeout if opts.syslog_timeout is not None else 5.0,
|
timeout=opts.syslog_timeout if opts.syslog_timeout is not None else 5.0,
|
||||||
retry_attempts=opts.syslog_retry_attempts if opts.syslog_retry_attempts is not None else 3,
|
retry_attempts=opts.syslog_retry_attempts
|
||||||
retry_delay=opts.syslog_retry_delay if opts.syslog_retry_delay is not None else 5,
|
if opts.syslog_retry_attempts is not None
|
||||||
|
else 3,
|
||||||
|
retry_delay=opts.syslog_retry_delay
|
||||||
|
if opts.syslog_retry_delay is not None
|
||||||
|
else 5,
|
||||||
)
|
)
|
||||||
except Exception as error_:
|
except Exception as error_:
|
||||||
logger.error("Syslog Error: {0}".format(error_.__str__()))
|
logger.error("Syslog Error: {0}".format(error_.__str__()))
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
__version__ = "9.0.10"
|
__version__ = "9.1.0"
|
||||||
|
|
||||||
USER_AGENT = f"parsedmarc/{__version__}"
|
USER_AGENT = f"parsedmarc/{__version__}"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ from __future__ import annotations
|
|||||||
|
|
||||||
from typing import Any, Dict, List, Literal, Optional, TypedDict, Union
|
from typing import Any, Dict, List, Literal, Optional, TypedDict, Union
|
||||||
|
|
||||||
# NOTE: This module is intentionally Python 3.9 compatible.
|
# NOTE: This module is intentionally Python 3.10 compatible.
|
||||||
# - No PEP 604 unions (A | B)
|
# - No PEP 604 unions (A | B)
|
||||||
# - No typing.NotRequired / Required (3.11+) to avoid an extra dependency.
|
# - No typing.NotRequired / Required (3.11+) to avoid an extra dependency.
|
||||||
# For optional keys, use total=False TypedDicts.
|
# For optional keys, use total=False TypedDicts.
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
requires = [
|
requires = [
|
||||||
"hatchling>=1.27.0",
|
"hatchling>=1.27.0",
|
||||||
]
|
]
|
||||||
requires_python = ">=3.9,<3.14"
|
requires_python = ">=3.10,<3.14"
|
||||||
build-backend = "hatchling.build"
|
build-backend = "hatchling.build"
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
@@ -29,7 +29,7 @@ classifiers = [
|
|||||||
"Operating System :: OS Independent",
|
"Operating System :: OS Independent",
|
||||||
"Programming Language :: Python :: 3"
|
"Programming Language :: Python :: 3"
|
||||||
]
|
]
|
||||||
requires-python = ">=3.9"
|
requires-python = ">=3.10"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azure-identity>=1.8.0",
|
"azure-identity>=1.8.0",
|
||||||
"azure-monitor-ingestion>=1.0.0",
|
"azure-monitor-ingestion>=1.0.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user