Sympa::Spool::Moderation(3Sympa)
π NAME π
okay so bestie, listen: Sympa::Spool::Moderation is the spool for held messages waiting for moderation. that's the whole vibe. it's from the Sympa manual, section 3Sympa, and it is literally the little waiting room where messages sit politely until a human says yes or no. no cap. π
β¨ SYNOPSIS β¨
here's how you actually talk to it, bestie:
use Sympa::Spool::Moderation;
my $spool = Sympa::Spool::Moderation->new;
my $modkey = $spool->store($message);
my $spool =
Sympa::Spool::Moderation->new(context => $list, authkey => $modkey);
my ($message, $handle) = $spool->next;
$spool->remove($handle, action => 'distribute');
$spool->remove($handle);
like. you make a spool, you shove a message in, you get a modkey back. then later you come back with the context and the modkey, you pull the next one out, and you either distribute it or just yeet it away. iconic behavior honestly. π
πΈ DESCRIPTION πΈ
Sympa::Spool::Moderation implements the spool for held messages waiting for moderation.
that's it. that's the job. it holds the messages. it waits. it's giving patient queen energy. π
π¦ Methods
also go read "Public methods" in Sympa::Spool, bestie β that's where the family lives.
new ( [ context => $list ], [ authkey => $modkey ] )β makes you a shiny new instance. you can hand it acontextand anauthkeyif you want, both optional. β¨next ( [ no_lock => 1 ] )β grabs the next thing. and listen: if the pairs describing metadatas are specified, contents returned bynext()are filtered by them. so you can be picky, and it'll respect that. πquarantine ( )β does nothing. literally nothing. it's a method that exists and then simply does not. we love a low-effort icon. πremove ( $handle, [ action => 'distribute' ] )β ifactionis specified, rename message file to add it as extension, instead of removing message file. otherwise, removes message file. so you either put a little name-tag on it or you delete it entirely. choose wisely bestie. π«Άsize ( )β returns number of messages in the spool except which have extension. so it counts the plain ones and skips the ones that got renamed. very selective, very demure. πstore ( $message, [ original => $original ] )β if storing succeeded, returns moderation key. that's the little key you'll need later, so don't lose it!! π
π Methods specific to this module
these ones are extra special, just for this class. β¨
html_remove ( $metadata )β instance method. TBD. yeah, it's still TBD. it's giving mystery, it's giving we'll find out. π
Parameters:
$metadataβ hashref or message containing metadata. at least"context"and"authkey"are required. no shortcuts, you need both of them. π
Returns:
- None. nothing back. empty-handed. that's the deal. π
html_store ( $message, $modkey )β instance method. caches HTML view of message. so pretty html, saved for later. πΈ
Parameters:
$messageβ message to be stored.$modkeyβ moderation key.
Returns:
- None. again, nothing. it's a giver, not a taker. π«Ά
π Context and metadata
also check "Marshaling and unmarshaling metadata" in Sympa::Spool β that's the lore. π
this class particularly gives following metadata:
{authkey}β moderation key generated automatically when the message is stored into spool. it just appears, like magic, no effort required. β¨{validated}β keeps a string representing extension, if message has been renamed usingremove()with option. so if you renamed it viaremove(), this remembers that lil detail for you. π§
π CONFIGURATION PARAMETERS π
following site configuration parameters in sympa.conf will be referred. yes, referred. it reads them, it respects them.
queuemodβ directory path of moderation spool. this is where the held messages hang out. πviewmail_dirβ root directory path of directories where HTML view of messages are cached. this is where the cute cached html lives. π
π SEE ALSO π
go give these a read too bestie, they're all in the fam:
sympa_msg(8)wwsympa(8)Sympa::MessageSympa::Spool
π« HISTORY π«
Sympa::Spool::Moderation appeared on Sympa 6.2.8. she's been around a while and she's still slaying. periodt. π₯
okay that's the whole page!! this was sympa 6.2.80, dated 2026-10-19, and it's the Sympa::Spool::Moderation(3Sympa) manual β mwah, love that for us, bye bestie!! πβ¨ππ¦πΈπ
π«Ά
π¦ where this page comes from
- fedora 43: sympa-devel-doc 6.2.80-2.fc43 Β· GPL-2.0-or-later AND (OFL-1.1-RFN AND MIT) AND OFL-1.1-RFN AND MIT and (MIT OR GPL-2.0-only)
- fedora 44: sympa-devel-doc 6.2.80-2.fc44 Β· GPL-2.0-or-later AND (OFL-1.1-RFN AND MIT) AND OFL-1.1-RFN AND MIT and (MIT OR GPL-2.0-only)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms