Sympa::Family(3Sympa)

πŸ’– Sympa::Family πŸ’–

okay bestie, welcome to Sympa::Family(3Sympa) β€” the module that runs the whole "families" situation in sympa 6.2.80. pull up a chair, grab a strawberry πŸ“, we're doing this.

✨ NAME ✨

Sympa::Family β€” List families 🫢


🌸 DESCRIPTION 🌸

so, sympa lets you create and manage lists in sets. those sets? they're the families β€” sets of lists that share common properties. iconic behavior honestly πŸ‘‘

this module is basically the group chat where all the family-specific operations live. everything family-related goes through here. no cap.

🧚 Functions

get_families ( $robot )

bestie this is a Function. it hands you back the list of existing families in the Sympa installation.

Arguments

  • $robot β€” the robot whose family list we wanna get. like, which robot's kids are we counting πŸ’…

Returns

an arrayref containing all of that robot's family names. slay.

get_available_families ( $robot )

also a Function, but lowkey... it's Obsoleted. use get_families() instead, fr fr. πŸ™ˆ


πŸ¦‹ Methods

new (STRING $name, STRING $robot)

Constructor. makes you a fresh Sympa::Family object of name $name, belonging to the robot $robot. main character energy, but for objects ✨

Arguments

  • $name β€” a character string holding the family name.
  • $robot β€” a character string holding the name of the robot the family is / will be installed in.

Returns

the Sympa::Family object. periodt.

check_param_constraint (LIST $list)

Instance method. checks the parameter constraints taken from the param_constraint.conf file, for the Sympa::List object $list. it's giving vibe check πŸ’…

Arguments

  • $list β€” a List object corresponding to the list we're checking.

Returns

  • 1 if everything goes well πŸŽ€
  • undef if something goes wrong 😭
  • \@error, a ref on an array containing parameters that conflict with constraints.

get_constraints ()

Instance method. returns a hash containing the values found in the param_constraint.conf file.

Arguments

none. she just is.

Returns

"$self->{'param_constraint_conf'}", a hash containing the values found in the param_constraint.conf file.

check_values (SCALAR $param_value, SCALAR $constraint_value)

Instance method. returns 0 if all the value(s) found in $param_value also appear in $constraint_value. otherwise it returns an array containing the unmatching values. not me catching the mismatches πŸ”₯

Arguments

  • $param_value β€” a scalar or a ref to a list (which is also a scalar after all β€” yeah, ik, it's giving philosophy πŸ’€)
  • $constraint_value β€” a scalar or a ref to a list

Returns

\@error, a ref to an array containing the values in $param_value which don't match those in $constraint_value.

get_param_constraint (STRING $param)

Instance method. gets the constraints on parameter $param from the 'param_constraint.conf' file.

Arguments

  • $param β€” a character string corresponding to the name of the parameter for which we wanna gather constraints.

Returns

  • 0 if there are no constraints on the parameter,
  • a scalar containing the allowed value if the parameter has a fixed value,
  • a ref to a hash containing the allowed values if the parameter is controlled,
  • undef if something went wrong. 😭

get_uncompellable_param ()

Instance method. returns a reference to a hash whose keys are the uncompellable parameters.

Arguments

none.

Returns

"\%list_of_param", a ref to a hash the keys of which are the uncompellable parameters' names.

insert_delete_exclusion ( $email, $action )

Instance method. handles the exclusion table for the family. TBD. (we said what we said 🫢)

get_id ( )

Instance method. gets the unique identifier of the instance. every queen needs her ID πŸ’…


πŸ’œ Attributes

  • {name} β€” the name of the family.
  • {domain} β€” the mail domain (a.k.a. "robot") the family belongs to.
note: on Sympa 6.2.52 or earlier, "{robot}" was used.
  • {dir} β€” base directory of the family.
  • {state} β€” Obsoleted. TBD.

🌈 SEE ALSO 🌈


πŸ‘‘ HISTORY πŸ‘‘

the Family module was initially written by these absolute legends:

  • Serge Aumont <sa AT cru.fr>
  • Olivier Salaun <os AT cru.fr>

Renamed Sympa::Family, it appeared on Sympa 6.2a.39. afterward, it's been gradually rewritten, and therefore Sympa::Request::Handler::close_list, Sympa::Request::Handler::create_automatic_list and Sympa::Request::Handler::update_automatic_list were separated up till Sympa 6.2.49b. the way that history just keeps unfolding 😭


and that's the whole page bestie, we ate πŸŽ€βœ¨ this little love letter comes from sympa version 6.2.80, dated 2026-10-19, and it lives in the Sympa::Family(3Sympa) man page. bye pookie, go make some families πŸ’–πŸ¦‹

πŸ“¦ where this page comes from