Convert to pyproject.toml

This commit is contained in:
2026-08-18 14:14:40 -04:00
parent a6a3366190
commit 05b90f1eda
4 changed files with 36 additions and 46 deletions

View File

@@ -1,6 +1,7 @@
import sys, os
import zipfile
import argparse
from datetime import datetime
from email import message_from_file
from tempfile import TemporaryDirectory
@@ -152,3 +153,17 @@ def init(args):
read_config_if_present(args)
init_model()
metadata.create_all()
def main_cli():
parser = argparse.ArgumentParser()
parser.add_argument('-b', dest='bounce_address', help='Forwarding address for messages that are not DMARC reports.')
parser.add_argument('-f', dest='config_file', default='/etc/dmarc-receive.conf', help='Configuration file')
parser.add_argument('-i', action='store_true', dest='init', default=False, help='Initialize database')
args = parser.parse_args()
if args.init:
init(args)
else:
receive_report(args)
return 0

21
pyproject.toml Normal file
View File

@@ -0,0 +1,21 @@
[build-system]
requires = ["setuptools>=61.0.0"]
build-backend = "setuptools.build_meta"
[project]
name = "DMARCReceiver"
version = "1.5"
description = "Receive DMARC reports"
authors = [
{ name = "David Baer", email = "david@amyanddavid.net" }
]
dependencies = [
"lxml",
"sqlalchemy",
"transaction",
"zope.interface",
"zope.sqlalchemy",
]
[project.scripts]
dmarc-receive = "dmarcreceiver.commands:main_cli"

View File

@@ -1,15 +0,0 @@
#!/usr/bin/env python3
import argparse
from dmarcreceiver.commands import receive_report, init
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('-b', dest='bounce_address', help='Forwarding address for messages that are not DMARC reports.')
parser.add_argument('-f', dest='config_file', default='/etc/dmarc-receive.conf', help='Configuration file')
parser.add_argument('-i', action='store_true', dest='init', default=False, help='Initialize database')
args = parser.parse_args()
if args.init:
init(args)
else:
receive_report(args)

View File

@@ -1,31 +0,0 @@
# -*- coding: utf-8 -*-
import sys
try:
from setuptools import setup, find_packages
except ImportError:
from ez_setup import use_setuptools
use_setuptools()
from setuptools import setup, find_packages
install_requires=[
'lxml',
'sqlalchemy',
'transaction',
'zope.interface',
'zope.sqlalchemy',
]
setup(
name='DMARCReceiver',
version='1.4',
description='Receive DMARC reports',
author='David Baer',
author_email='david@amyanddavid.net',
packages=find_packages(),
scripts=['scripts/dmarc-receive'],
install_requires=install_requires,
include_package_data=True,
zip_safe=True
)