Sympa::List::Config(3Sympa)

πŸ’– Sympa::List::Config(3Sympa) πŸ’–

okay bestie, welcome to the perl module that holds every single list config in Sympa β€” this is Sympa::List::Config, and she's serving from the sympa 6.2.80 era (iykyk). she runs the whole "list configuration" thing: building it, validating it, saving it, reading keys out of it. let's get into it πŸ”₯


✨ SYNOPSIS ✨

here's the vibe, copy-paste ready:

use Sympa::List::Config;
my $config = Sympa::List::Config->new($list, {...});

my $errors = [];
my $validity = $config->submit({...}, $user, $errors);
$config->commit($errors);

my ($value) = $config->get('owner.0.gecos');
my @keys  = $config->keys('owner');

like. make one, submit some values, commit them, then grab what you need. slay πŸ’…


🌸 DESCRIPTION 🌸

πŸŽ€ Methods πŸŽ€

new ( $list, [ config => $initial_config ], [ copy => 1 ], [ no_family => 1 ] )

this is the constructor, bestie. she makes you a brand new instance of a Sympa::List::Config object. iconic behavior honestly πŸ‘‘

Parameters:

also peep "new" in Sympa::Config for the deets, this one's an extension of that.
  • $list β€” the context. this is an instance of the Sympa::List class. it's the list whose config we're doing all this for.
  • no_family => 1 β€” sets it so the family constraint won't be applied. by default tho, the constraint will be applied if the list belongs to a family. see also "Family constraint" down below πŸ’œ

get_schema ( [ $user ] )

instance method, periodt. this hands you the configuration schema as a hashref. if you wanna know how the schema is structured, go look at Sympa::ListDef β€” she has the answers.

Parameter:

  • $user β€” the email address of a user. if you pass it in, it adds a 'privilege' attribute pulled straight from edit_list.conf(5) for that user. cute, right?

🌈 Attribute 🌈

go see "Attribute" in Sympa::Config β€” it's all there, no need to retype it here 🫢


πŸ‘‘ Family constraint πŸ‘‘

so the family (check out Sympa::Family) adds an extra constraint on top of the schema. here's exactly what it does:

  • restricts options for particular scalar parameters to the set of values or single value,
  • makes occurrence of them be required ('1' or '1-n'), and
  • if the occurrence became '1', makes their privilege be unwritable ('read' if it was not 'hidden').

that's the whole rule set. no cap. πŸ’€


πŸ¦‹ Filters πŸ¦‹

TBD.

(yes bestie, she said TBD. we don't make it up around here πŸ™ˆ)


🧚 Validations 🧚

TBD.

(also TBD. matching energy. ✨)


πŸ’œ SEE ALSO πŸ’œ

  • Sympa::Config
  • Sympa::List
  • Sympa::ListDef

go read those too, they're the supporting cast πŸŽ€


⭐ HISTORY ⭐

Sympa::List::Config appeared on Sympa 6.2.17. she's been around, she's a legend πŸ‘‘


mwah πŸ’– that's the whole page, bestie β€” sympa 6.2.80, dated 2026-10-19, and this was Sympa::List::Config(3Sympa) signing off. go configure something gorgeous 🌸✨

πŸ“¦ where this page comes from