NAME

Email::Sender - a library for sending email

VERSION

version 2.601

SYNOPSIS

  my $message = Email::MIME->create( ... );
  # produce an Email::Abstract compatible message object,
  # e.g. produced by Email::Simple, Email::MIME, Email::Stuff

  use Email::Sender::Simple qw(sendmail);
  use Email::Sender::Transport::SMTP qw();
  use Try::Tiny;

  try {
    sendmail(
      $message,
      {
        from => $SMTP_ENVELOPE_FROM_ADDRESS,
        transport => Email::Sender::Transport::SMTP->new({
            host => $SMTP_HOSTNAME,
            port => $SMTP_PORT,
        })
      }
    );
  } catch {
      warn "sending failed: $_";
  };

OVERVIEW

Email::Sender replaces the old and sometimes problematic Email::Send library, which did a decent job at handling very simple email sending tasks, but was not suitable for serious use, for a variety of reasons.

Most users will be able to use Email::Sender::Simple to send mail. Users with more specific needs should look at the available Email::Sender::Transport classes.

Documentation may be found in Email::Sender::Manual, and new users should start with Email::Sender::Manual::QuickStart.

PERL VERSION

This library should run on perls released even a long time ago. It should work on any version of perl released in the last five years.

Although it may work on older versions of perl, no guarantee is made that the minimum required version will not be increased. The version may be increased for any reason, and there is no promise that patches will be accepted to lower the minimum required perl.

IMPLEMENTING

Email::Sender itself is a Moo role. Any class that implements Email::Sender is required to provide a method called send. This method should accept any input that can be understood by Email::Abstract, followed by a hashref containing to and from arguments to be used as the envelope. The method should return an Email::Sender::Success object on success or throw an Email::Sender::Failure on failure.

AUTHOR

Ricardo Signes <cpan@semiotic.systems>

CONTRIBUTORS

  • Alex Efros <powerman@powerman.name>

  • Aristotle Pagaltzis <pagaltzis@gmx.de>

  • Bernhard Graf <augensalat@gmail.com>

  • Christian Walde <walde.christian@googlemail.com>

  • David Golden <dagolden@cpan.org>

  • David Steinbrunner <dsteinbrunner@pobox.com>

  • Erik Huelsmann <ehuels@gmail.com>

  • Hans Dieter Pearcey <hdp@cpan.org>

  • HIROSE Masaaki <hirose31@gmail.com>

  • James E Keenan <jkeenan@cpan.org>

  • Justin Hunter <justin.d.hunter@gmail.com>

  • Karen Etheridge <ether@cpan.org>

  • Kenichi Ishigaki <ishigaki@cpan.org>

  • kga <watrty@gmail.com>

  • Kris Matthews <kris@tigerlms.com>

  • Marc Bradshaw <marc@marcbradshaw.net>

  • Ricardo Signes <rjbs@semiotic.systems>

  • Ricardo Signes <rjbs@users.noreply.github.com>

  • Stefan Hornburg (Racke) <racke@linuxia.de>

  • William Blunn <zgpmax@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2024 by Ricardo Signes.

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