Alien::Build::Log(3)

πŸ’– Alien::Build::Log β€” the vibe ✨

okay so bestie, this is the logging part of Alien::Build β€” like, the whole system for making your build chatter go somewhere cute instead of just yelling into the void. It lives in the User Contributed Perl Documentation corner of the manual, and it's genuinely iconic.

Version: 2.88 πŸŽ€


🌈 SYNOPSIS 🌈

First up: make your own custom log class, main character style πŸ’…

package Alien::Build::Log::MyLog;

use parent qw( Alien::Build::Log );

sub log
{
  my(undef, %opt)  = @_;
  my($package, $filename, $line) = @{ $opt{caller} };
  my $message = $opt{message};

  ...;
}

Then override which log class gets used, like:

% env ALIEN_BUILD_LOG=Alien::Build::Log::MyLog cpanm Alien::libfoo

that's it. that's the whole swap. obsessed. πŸ¦‹


✨ DESCRIPTION ✨

fr fr, this section is empty in the original β€” the actual tea is all down in the constructors, methods, and environment sections below. no filler, just vibes 😌


πŸ‘‘ CONSTRUCTORS πŸ‘‘

🌸 new

my $log = Alien::Build::Log->new;

Makes you a whole new instance of the log class. brand new, fresh out the box, main character energy ✨

🌸 default

my $log = Alien::Build::Log->default;

Hands you back the singleton instance of the log class that Alien::Build actually uses. one log, one legend, no duplicates πŸ’…


πŸŽ€ METHODS πŸŽ€

πŸ’œ set_log_class

Alien::Build::Log->set_log_class($class);

Sets the default log class that Alien::Build rolls with. heads up bestie β€” this one also resets the default instance Alien::Build is using, so don't be surprised when the vibes shift. If you don't specify anything, Alien::Build::Log::Default is the one that gets used. no cap. 🫢

πŸ’œ log

$log->log(%options);

This is the overridable method β€” the one doing the actual work of the log class. the real MVP. πŸ† Here's what the options are:

  • caller β€” an array reference holding the package, file, and line number of where the log got called from. like a little receipt of where it happened πŸ“
  • message β€” the message to log. the whole point, honestly πŸ’–

πŸ¦‹ ENVIRONMENT πŸ¦‹

  • ALIEN_BUILD_LOG β€” the default log class that Alien::Build uses. set it, and you're basically the one choosing who does the talking πŸ‘‘

πŸ’€ AUTHOR πŸ’€

Author: Graham Ollis <plicease@cpan.org>

And the contributors, the whole squad, every single one, no skips:

  • Diab Jerius (DJERIUS)
  • Roy Storey (KIWIROY)
  • Ilya Pavlov
  • David Mertens (run4flat)
  • Mark Nunberg (mordy, mnunberg)
  • Christian Walde (Mithaldu)
  • Brian Wightman (MidLifeXis)
  • Zaki Mughal (zmughal)
  • mohawk (mohawk2, ETJ)
  • Vikas N Kumar (vikasnkumar)
  • Flavio Poletti (polettix)
  • Salvador FandiΓ±o (salva)
  • Gianni Ceccarelli (dakkar)
  • Pavel Shaydo (zwon, trinitum)
  • Kang-min Liu (εŠ‰εΊ·ζ°‘, gugod)
  • Nicholas Shipp (nshp)
  • Juan JuliΓ‘n Merelo GuervΓ³s (JJ)
  • Joel Berger (JBERGER)
  • Petr PΓ­saΕ™ (ppisar)
  • Lance Wicks (LANCEW)
  • Ahmad Fatoum (a3f, ATHREEF)
  • JosΓ© JoaquΓ­n Atria (JJATRIA)
  • Duke Leto (LETO)
  • Shoichi Kaji (SKAJI)
  • Shawn Laffan (SLAFFAN)
  • Paul Evans (leonerd, PEVANS)
  • HΓ₯kon HΓ¦gland (hakonhagland, HAKONH)
  • nick nauwelaerts (INPHOBIA)
  • Florian Weimer
  • Marcel Telka (mtelka)

This software is copyright (c) 2011-2022 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. free software ate and left no crumbs πŸ“


and that's the whole page bestie, tysm for reading πŸ’– this was rendered by perl v5.42.3 and dated 2026-09-21, so when you cite it, cite it cute. byeeee 🧚✨
πŸ“¦ where this page comes from