about summary refs log tree commit homepage
path: root/Documentation/public-inbox-learn.pod
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2019-10-30 20:46:44 +0000
committerEric Wong <e@80x24.org>2019-10-30 20:46:44 +0000
commitdc84f78e4b3c7f5c8384fbf5a6b538ac1826a604 (patch)
tree30f147efadad0e4728aaa65359740dbd7baafa5c /Documentation/public-inbox-learn.pod
parente177c05afa9bdc5ca27bc2bd9f946b70290ca3f4 (diff)
parent4da1c13914d958807fe9ef347d3a6abf7b129b62 (diff)
downloadpublic-inbox-dc84f78e4b3c7f5c8384fbf5a6b538ac1826a604.tar.gz
* learn:
  doc: add public-inbox-learn(1) manpage
  mda: support multiple List-ID matches
  mda: prepare for multiple destinations
  inboxwritable: add assert_usable_dir sub
  mda: skip MIME parsing if spam
  mda: hoist out mda_filter_adjust
  filter/base: remove MAX_MID_SIZE constant
  mda: hoist out List-ID handling and reuse in -learn
  learn: hoist out remove_or_add subroutine
  learn: GIT_COMMITTER_<NAME|EMAIL> may be "" or "0"
  learn: update usage statement
  learn: only map recipient list on "ham" or "rm"
  learn: support multiple To/Cc headers
Diffstat (limited to 'Documentation/public-inbox-learn.pod')
-rw-r--r--Documentation/public-inbox-learn.pod86
1 files changed, 86 insertions, 0 deletions
diff --git a/Documentation/public-inbox-learn.pod b/Documentation/public-inbox-learn.pod
new file mode 100644
index 00000000..b8190b59
--- /dev/null
+++ b/Documentation/public-inbox-learn.pod
@@ -0,0 +1,86 @@
+=head1 NAME
+
+public-inbox-learn - spam trainer and remover for public-inbox
+
+=head1 SYNOPSIS
+
+B<public-inbox-learn> <spam|ham|rm> E<lt>MESSAGE
+
+=head1 DESCRIPTION
+
+public-inbox-learn can remove spam or inject ham messages into
+an inbox while training a SpamAssassin instance.
+
+It is intended for users of L<public-inbox-mda(1)> or
+L<public-inbox-watch(1)>, but not users relying on
+L<git-fetch(1)> to mirror inboxes.
+
+It reads one message from standard input and operates on it
+depending on the command given:
+
+=head1 COMMANDS
+
+public-inbox-learn takes one of the following commands as its
+first and only argument:
+
+=over 8
+
+=item spam
+
+Treat the message as spam.  This will mark the message as
+removed so it becomes inaccessible via NNTP or WWW endpoints
+for all configured inboxes.
+
+The message remains accessible in git history.
+
+It will also be fed to L<spamc(1)> for training purposes unless
+C<publicinboxmda.spamcheck> is C<none> in L<public-inbox-config(5)>.
+
+=item ham
+
+Treat standard input as ham.  This is useful for manually injecting
+messages into the archives which failed the spam check run by
+L<public-inbox-mda(1)> or L<public-inbox-watch(1)>.
+
+It relies on the C<To:>, C<Cc:>, and C<List-ID:> headers
+to match configured inbox addresses and C<listid> directives.
+
+It will also be fed to L<spamc(1)> for training purposes unless
+C<publicinboxmda.spamcheck> is C<none> in L<public-inbox-config(5)>.
+
+=item rm
+
+This is identical to the C<spam> command above, but does
+not feed the message to L<spamc(1)>
+
+=back
+
+=head1 ENVIRONMENT
+
+=over 8
+
+=item PI_CONFIG
+
+Per-user config file parseable by L<git-config(1)>.
+See L<public-inbox-config(5)>.
+
+Default: ~/.public-inbox/config
+
+=back
+
+=head1 CONTACT
+
+Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>
+
+The mail archives are hosted at L<https://public-inbox.org/meta/>
+and L<http://hjrcffqmbrq6wope.onion/meta/>
+
+=head1 COPYRIGHT
+
+Copyright 2019 all contributors L<mailto:meta@public-inbox.org>
+
+License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>
+
+=head1 SEE ALSO
+
+L<spamc(1)>, L<public-inbox-mda(1)>, L<public-inbox-watch(1)>