On Tue, Feb 15, 2005 at 03:07:52AM -0800, Daniel Quinlan wrote: > Daniel Quinlan <[EMAIL PROTECTED]> writes: > > >> "whitelist" and "blacklist" -- these *really* belong in "sa-learn" since > >> it's AWL/History, but "sa-learn" has been crufted up with lots of > >> Bayes-specific stuff, so merging it with "sa-learn" will be non-trivial. > > Michael Parker <[EMAIL PROTECTED]> writes: > > > Please no, I'm -1 on this, I've worked very hard to separate the > > whitelist/blacklist/awl stuff from bayes. sa-learn is bayes, period. > > Hmm... I agree it's been crufted up, but think about this: > > report calls learning stuff, so if you're going to report you don't > need to call learn or whitelist stuff > > if you're not going to report, do you really want to require users to > call two commands? >
Now you're adding in a whole other subsystem. Using this logic, it is
pretty easy to argue that everything should be in one executable, and
not split out. A little cross use is allowed. Here is my proposed
set of commands and their arguments:
sa-filter
-L, --local Local tests only (no online tests)
-d, --remove-markup Remove spam reports from a message
-x, --nocreate-prefs Don't create user preferences file
-e, --exit-code Exit with a non-zero exit code if the tested message
was spam
-t, --test-mode Pipe message through and add extra report to the
bottom
--progress Show progress using progress bar
--mbox read in messages in mbox format
--mbx read in messages in UW mbx format
-f file,
--folders=file Read list of files/directories from file
-C path,
--configpath=path,
--config-file=path Path to standard configuration dir
-p prefs,
--prefspath=file,
--prefs-file=file Set user preferences file
--siteconfigpath=path Path for site configs (def: /etc/mail/spamassassin)
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
sa-report
-k, --revoke Revoke message as spam
--progress Show progress using progress bar
--mbox read in messages in mbox format
--mbx read in messages in UW mbx format
-f file,
--folders=file Read list of files/directories from file
-C path,
--configpath=path,
--config-file=path Path to standard configuration dir
-p prefs,
--prefspath=file,
--prefs-file=file Set user preferences file
--siteconfigpath=path Path for site configs (def: /etc/mail/spamassassin)
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
sa-learn (maybe sa-bayes)
--ham Learn messages as ham (non-spam)
--spam Learn messages as spam
--forget Forget a message
--use-ignores Use bayes_ignore_from and bayes_ignore_to
--sync Syncronize the database and the journal if needed
--no-sync Skip syncronizing the database and journal after
learning
--force-expire Force a database sync and expiry run
--dbpath <path> Allows commandline override (in bayes_path form)
for where to read the Bayes DB from
--status Display the status of the Bayes database
--progress Show progress using progress bar
--import Migrate data from older version/non DB_File based
databases
--clear Wipe out existing database
--backup Backup, to STDOUT, existing database
--restore <filename> Restore a database from filename
-u username,
--username=username Override username taken from the runtime environment
--mbox read in messages in mbox format
--mbx read in messages in UW mbx format
-f file,
--folders=file Read list of files/directories from file
-C path,
--configpath=path,
--config-file=path Path to standard configuration dir
-p prefs,
--prefspath=file,
--prefs-file=file Set user preferences file
--siteconfigpath=path Path for site configs (def: /etc/mail/spamassassin)
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
sa-update
--updatedir path Directory to place updates, defaults to the
SpamAssassin
site rules directory (def: /etc/mail/spamassassin)
--channel channel Retrieve updates from this channel
Use multiple times for multiple channels
--channelfile file Retrieve updates from the channels in the file
--gpgkey key Trust the key id to sign releases
Use multiple times for multiple keys
--gpgkeyfile file Trust the key ids in the file to sign releases
--usegpg Use GPG to verify updates
This is auto-enabled by use of the above
gpgkey and gpgkeyfile options.
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
sa-history/sa-awl (maybe sa-whitelist)
-W,
--add-to-whitelist Add addresses in mail to persistent address
whitelist
--add-to-blacklist Add addresses in mail to persistent address
blacklist
-R,
--remove-from-whitelist Remove all addresses found in mail from
persistent address list
--add-addr-to-whitelist=addr Add addr to persistent address whitelist
--add-addr-to-blacklist=addr Add addr to persistent address blacklist
--remove-addr-from-whitelist=addr Remove addr from persistent address list
--force-expire Force a database expiry run
--status Display the status of the database
--clear Wipe out existing database
--backup Backup, to STDOUT, existing database
--restore <filename> Restore a database from filename
-u username,
--username=username Override username taken from the runtime
environment
--mbox read in messages in mbox format
--mbx read in messages in UW mbx format
-f file,
--folders=file Read list of files/directories from file
-C path,
--configpath=path,
--config-file=path Path to standard configuration dir
-p prefs,
--prefspath=file,
--prefs-file=file Set user preferences file
--siteconfigpath=path Path for site configs (def:
/etc/mail/spamassassin)
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
sa-lint
-C path,
--configpath=path,
--config-file=path Path to standard configuration dir
-p prefs,
--prefspath=file,
--prefs-file=file Set user preferences file
--siteconfigpath=path Path for site configs (def: /etc/mail/spamassassin)
-D, --debug [area=n,...] Print debugging messages
-V, --version Print version
-h, --help Print usage message
finally there is:
spamassassin
This exec calls the appropriate executable depending on the arguments,
and provides backward compatability. We should issue a warn before
calling exec saying that the spamassassin command is deprecated and
they should use command X instead. Then in 3.2 spamassassin becomes
nothing but a high level doc.
Michael
pgp0mdiTs6tJI.pgp
Description: PGP signature
