The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Mariachi - all dancing mail archive generator

DESCRIPTION

ACESSORS

->input

The source of mail that we're acting on

->output

The output directory

->messages

The current set of messages

->rootset

The rootset of threaded messages

->threads_per_page

How many top level threads to put on a thread index page. Used by generate

->list_title

The name of this list. Used by generate

->start_time

->last_time

Used internally by the _bench method

METHODS

All of these are instance methods, unless stated.

->new( %initial_values )

your general class-method constructor

->load

populate messages from input

->dedupe

remove duplicates from messages

->sanitise

some messages have been near mail2news gateways, which means that some message ids in the references and in-reply-to headers get munged like so: <$group/$message_id>

fix this in messages

->thread

populate rootset with an Email::Thread::Containers created from messages

->order

order rootset by date

->sanity

(in)sanity test - check everything in messages is reachable when walking rootset

->strand

run a strand through all messages - wander over threader setting the Message ->next and ->prev links

->split_deep

wander over rootset reparenting subthreads that are considered too deep

->generate

render thread tree into the directory of output

->perform

do all the right steps

AUTHORS

This code was written as part of the Siesta project and includes code from:

Richard Clamp <richardc@unixbeard.net> Simon Wistow <simon@thegestalt.org> Tom Insam <tom@jerakeen.org>

More information about the Siesta project can be found online at http://siesta.unixbeard.net/

COPYRIGHT

Copyright 2003 The Siesta Project

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.