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 a context and an authkey if you want, both optional. ✨
  • next ( [ no_lock => 1 ] ) β€” grabs the next thing. and listen: if the pairs describing metadatas are specified, contents returned by next() 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' ] ) β€” if action is 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 using remove() with option. so if you renamed it via remove(), 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:


πŸ’« 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