File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 4747 "sifter" : ['py.typed' ]
4848 },
4949 entry_points = {
50+ 'console_scripts' : [
51+ 'sifter = sifter.cli:main'
52+ ],
5053 'sifter_extensions' : [
5154 # sifter commands
5255 'discard = sifter.commands.discard:CommandDiscard' ,
Original file line number Diff line number Diff line change 1+ from argparse import ArgumentParser
2+ import email
3+ import os
4+ import logging
5+ import sys
6+
7+ import sifter .parser
8+
9+
10+ def main () -> None :
11+ arg_parser = ArgumentParser ()
12+ arg_parser .add_argument ('rulefile' )
13+ arg_parser .add_argument ('messagefile' )
14+ args = arg_parser .parse_args ()
15+
16+ if not os .path .isfile (args .rulefile ):
17+ logging .error ("rulefile '%s' does not exist" , args .rulefile )
18+ sys .exit (1 )
19+
20+ if not os .path .isfile (args .messagefile ):
21+ logging .error ("mail message '%s' does not exist" , args .messagefile )
22+ sys .exit (1 )
23+
24+ rules = sifter .parser .parse_file (open (args .rulefile ))
25+ msg = email .message_from_file (open (args .messagefile ))
26+ msg_actions = rules .evaluate (msg )
27+ print (msg_actions )
You can’t perform that action at this time.
0 commit comments