NAME

Progress::Any::SIGHandler - Output progress to terminal as simple message

VERSION

This document describes version 0.001 of Progress::Any::SIGHandler (from Perl distribution Progress-Any-SIGHandler), released on 2025-10-30.

SYNOPSIS

Simplest way to use:

use Progress::Any '$progress';
use Progress::Any::SIGHandler;

# do stuffs while updating progress
$progress->target(10);
for (1..10) {
    # do stuffs
    $progress->update;
}
$progress->finish;

Customize some aspects:

use Progress::Any::SIGHandler (
    template  => '...',      # default template is: "Progress: %P/%T (%6.2p%%), %R"
    signal    => 'USR2',     # default is USR1
);

DESCRIPTION

Importing this module will install a %SIG handler (the default is USR1). When your process is sent the signal, the handler will print to STDERR the progress report. You can customize some aspects (see Synopsis). More customization will be added in the future.

IMPORT ARGUMENTS

signal

See "$Signal".

template

See "$Template".

PACKAGE VARIABLES

$Signal

The Unix signal to use. Set it before call to install_sig_handler(). A convenient is to pass the `signal` argument during import, which will set this variable.

$Template

Template to use (see fill_template in Progress::Any documentation).

FUNCTIONS

install_sig_handler

Called automatically by import(), but if you do not import, you can invoke this explicitly yourself.

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/Progress-Any-SIGHandler.

SOURCE

Source repository is at https://github.com/perlancar/perl-Progress-Any-SIGHandler.

SEE ALSO

Progress::Any

AUTHOR

perlancar <perlancar@cpan.org>

CONTRIBUTING

To contribute, you can send patches by email/via RT, or send pull requests on GitHub.

Most of the time, you don't need to build the distribution yourself. You can simply modify the code, then test via:

% prove -l

If you want to build the distribution (e.g. to try to install it locally on your system), you can install Dist::Zilla, Dist::Zilla::PluginBundle::Author::PERLANCAR, Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps required beyond that are considered a bug and can be reported to me.

COPYRIGHT AND LICENSE

This software is copyright (c) 2025 by perlancar <perlancar@cpan.org>.

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

BUGS

Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Progress-Any-SIGHandler

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.