view release on metacpan or search on metacpan
lib/App/GHGen.pm view on Meta::CPAN
Enter number (1-8):
=head2 Interactive Customization
Customize workflows with guided prompts:
ghgen generate --type=perl --customize
For Perl, you'll be asked:
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GHPT/WorkSubmitter.pm view on Meta::CPAN
}
sub _confirm_story ( $self, $text ) {
my $result = $self->_choose(
[ 'Accept', 'Edit' ],
{ prompt => $text, clear_screen => $ENV{'SUBMIT_WORK_CLEAR'} // 0 }
);
return $text if $result eq 'Accept';
my $fh = solicit($text);
return do { local $/ = undef; <$fh> };
}
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/AutoInstall.pm view on Meta::CPAN
$TestOnly = 1;
}
}
}
# overrides MakeMaker's prompt() to automatically accept the default choice
sub _prompt {
goto &ExtUtils::MakeMaker::prompt unless $AcceptDefault;
my ( $prompt, $default ) = @_;
my $y = ( $default =~ /^[Yy]/ );
print $prompt, ' [', ( $y ? 'Y' : 'y' ), '/', ( $y ? 'n' : 'N' ), '] ';
print "$default\n";
return $default;
}
# the workhorse
inc/Module/AutoInstall.pm view on Meta::CPAN
if (
!$SkipInstall
and (
$CheckOnly
or _prompt(
qq{==> Auto-install the }
. ( @required / 2 )
. ( $mandatory ? ' mandatory' : ' optional' )
. qq{ module(s) from CPAN?},
$default ? 'y' : 'n',
inc/Module/AutoInstall.pm view on Meta::CPAN
elsif ( !$SkipInstall
and $default
and $mandatory
and
_prompt( qq{==> The module(s) are mandatory! Really skip?}, 'n', )
=~ /^[Nn]/ )
{
push( @Missing, @required );
$DisabledTests{$_} = 1 for map { glob($_) } @skiptests;
}
inc/Module/AutoInstall.pm view on Meta::CPAN
return
if defined( _version_check( _load($class), $ver ) ); # no need to upgrade
if (
_prompt( "==> A newer version of $class ($ver) is required. Install?",
'y' ) =~ /^[Nn]/
)
{
die "*** Please install $class $ver manually.\n";
}
inc/Module/AutoInstall.pm view on Meta::CPAN
# check if we're connected to some host, using inet_aton
sub _connected_to {
my $site = shift;
return (
( _load('Socket') and Socket::inet_aton($site) ) or _prompt(
qq(
*** Your host cannot resolve the domain name '$site', which
probably means the Internet connections are unavailable.
==> Should we try to install the required module(s) anyway?), 'n'
) =~ /^[Yy]/
inc/Module/AutoInstall.pm view on Meta::CPAN
*** You are not allowed to write to the directory '$path';
the installation may fail due to insufficient permissions.
.
if (
eval '$>' and lc(`sudo -V`) =~ /version/ and _prompt(
qq(
==> Should we try to re-execute the autoinstall process with 'sudo'?),
((-t STDIN) ? 'y' : 'n')
) =~ /^[Yy]/
)
inc/Module/AutoInstall.pm view on Meta::CPAN
print << ".";
*** The 'sudo' command exited with error! Resuming...
.
}
return _prompt(
qq(
==> Should we try to install the required module(s) anyway?), 'n'
) =~ /^[Yy]/;
}
view all matches for this distribution
view release on metacpan or search on metacpan
script/_genpass-id view on Meta::CPAN
# code => {},
# is_flag => {},
# },
# },
# cmdline_on_getopt => {},
# cmdline_prompt => {},
# completion => {},
# index_completion => {},
# element_completion => {},
# cmdline_src => {},
# meta => 'fix',
script/_genpass-id view on Meta::CPAN
# caption => {},
# cmdline_aliases => {
# _value_prop => { code => {}, description => {}, is_flag => {}, schema => {}, summary => {} },
# },
# cmdline_on_getopt => {},
# cmdline_prompt => {},
# cmdline_src => {},
# completion => {},
# default => {},
# default_lang => {},
# defhash_v => {},
view all matches for this distribution
view release on metacpan or search on metacpan
script/_genpass-wordlist view on Meta::CPAN
# code => {},
# is_flag => {},
# },
# },
# cmdline_on_getopt => {},
# cmdline_prompt => {},
# completion => {},
# index_completion => {},
# element_completion => {},
# cmdline_src => {},
# meta => 'fix',
script/_genpass-wordlist view on Meta::CPAN
# caption => {},
# cmdline_aliases => {
# _value_prop => { code => {}, description => {}, is_flag => {}, schema => {}, summary => {} },
# },
# cmdline_on_getopt => {},
# cmdline_prompt => {},
# cmdline_src => {},
# completion => {},
# default => {},
# default_lang => {},
# defhash_v => {},
view all matches for this distribution
view release on metacpan or search on metacpan
bin/geoCancerPrognosticDatasetsRetriever view on Meta::CPAN
$restart_input_file = basename($file);
last;
}
#If an old run file was found, prompt the user with choices to make.
if (-e "$run_dir") {
print color ("red"), "$cancer_type\_GEO-files directory exists...This run was not completed\n", color("reset");
my $text = "";
my $ok = timed_response( sub {
bin/geoCancerPrognosticDatasetsRetriever view on Meta::CPAN
close (IN);
close (OUT);
}
############################ SUBROUTINE 7 #######################################################
#Check for the presence of curl in the $PATH. If not found, install on an Ubuntu system or if
#not Ubuntu, prompt user to install it manually.
sub check_curl {
#check for the presence of curl binary
my $check = qx{which curl};
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GhaInstall.pm view on Meta::CPAN
'build_requires_install_policy' => q[yes],
'bzip2' => q[/bin/bzip2],
'cache_metadata' => q[1],
'check_sigs' => q[0],
'colorize_output' => q[0],
'commandnumber_in_prompt' => q[1],
'connect_to_internet_ok' => q[1],
'cpan_home' => qq[$home/.cpan],
'ftp_passive' => q[1],
'ftp_proxy' => q[],
'getcwd' => q[cwd],
view all matches for this distribution
view release on metacpan or search on metacpan
bin/git-ribbon view on Meta::CPAN
sub save { print `git tag --force _ribbon origin/master` }
sub ribbon {
my $option = shift;
my @logs = `git log --pretty=format:'git difftool -r %p -r %h --no-prompt %n%C(bold white)%an %cr %h%n%s%Creset' --stat --no-merges --reverse --topo-order _ribbon..origin/master`;
my $i = 0;
while ($i < $#logs) {
my $cmd = $logs[$i];
$i++;
bin/git-ribbon view on Meta::CPAN
print $logs[$i];
$i++;
last if $i >= $#logs;
}
my $answer = prompt "press 's' to skip", -echo => "", -single;
unless ($answer eq 's') {
my $pid = fork();
if (!$pid) { # child
exec($cmd);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GitGerrit.pm view on Meta::CPAN
}
unless (defined $username && defined $password) {
debug "Prompt the user for the credentials";
if (eval {require Term::Prompt}) {
$username = Term::Prompt::prompt('x', 'Gerrit username: ', '', $ENV{USER});
$password = Term::Prompt::prompt('p', 'Gerrit password: ', '');
print "\n";
} else {
debug "Failed to require Term::Prompt";
}
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GitGot/Command.pm view on Meta::CPAN
return max ( map { length $_->$sort_key } $self->active_repos);
}
sub prompt_yn {
my( $self , $message ) = @_;
printf '%s [y/N]: ' , $message;
chomp( my $response = <STDIN> );
return lc($response) eq 'y';
}
lib/App/GitGot/Command.pm view on Meta::CPAN
=head2 max_length_of_an_active_repo_label
Returns the length of the longest name in the active repo list.
=head2 prompt_yn
Takes a message argument and uses it to prompt for a yes/no response.
Response defaults to 'no'.
=head2 search_repos
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GitHooks/Hook/CommitMsg.pm view on Meta::CPAN
my $config = $app->get_config();
my $force_interactive = $config->get( 'testing', 'force_interactive' );
return $HOOK_EXIT_SUCCESS
if !$app->get_terminal()->is_interactive() && !$force_interactive;
# Analyze the commit message and prompt the user to fix it if needed until it
# passes the checks.
my $has_errors = 0;
while ( 1 )
{
# Retrieve the commit message.
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing, always use defaults
if ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
sub makemaker_args {
my $self = shift;
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing, always use defaults
if ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
sub makemaker_args {
my $self = shift;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GitHub.pm view on Meta::CPAN
has 'term' => (
is => 'rw',
required => 1,
default => sub { Term::ReadLine->new('Perl-App-GitHub') }
);
has 'prompt' => (
is => 'rw',
required => 1,
default => sub { 'github> ' }
);
lib/App/GitHub.pm view on Meta::CPAN
|| can_run("more")
|| croak "no pager found";
}
sub read {
my ( $self, $prompt ) = @_;
$prompt ||= $self->prompt;
return $self->term->readline($prompt);
}
has 'github' => (
is => 'rw',
isa => 'Net::GitHub',
lib/App/GitHub.pm view on Meta::CPAN
repo => $name,
version => 3,
pass => $self->{_data}->{pass},
@logins,
);
$self->{prompt} = "$owner/$name> ";
}
sub set_login {
my ( $self, $login ) = @_;
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/GitHubPullRequest.pm view on Meta::CPAN
# Add deprecation message
say "\nThis authorization method is deprecated and will be removed on November 13, 2020.";
say "Please use the 'authorize' command to authenticate with GitHub.\n";
# Try to fetch user/password from git config (or prompt)
$user ||= _qx('git', "config github.user") || _prompt('GitHub username');
$password ||= _qx('git', "config github.password") || _prompt('GitHub password', 'hidden');
die("Please specify a user name.\n") unless $user;
die("Please specify a password.\n") unless $password;
# Prompt for two-factor auth token
$two_factor_token ||= _prompt('GitHub two-factor authentication token (if any)');
# Perform authentication
my $auth = _api_create(
"/authorizations",
{
lib/App/GitHubPullRequest.pm view on Meta::CPAN
my ($self, $token) = @_;
# Verify that you want to overwrite an existing token
my $old_token = _qx('git', "config github.pr-token");
if ( $old_token and not $token ) {
say "You're already authorized.";
my $q = _prompt("Do you want to generate a new token (y/N)") || "n";
return 0 if lc($q) ne 'y';
}
# Give instructions and ask for token if not specified on command line
unless ( $token ) {
say "Go to https://github.com/settings/tokens/new and follow the directions to generate a new token.";
say "Give the token a name of your choice, e.g. 'git-pr', and give it the 'repo' permission.";
say "The 'public_repo' permission is enough if you only plan to use it with public repositories.\n";
$token = _prompt('GitHub OAuth personal access token');
}
# Make sure a token is specified
die("No token was specified. No changes have been made to your configuration.\n")
unless $token;
# Store authorization token
lib/App/GitHubPullRequest.pm view on Meta::CPAN
die("No valid GitHub repo found. List of remotes exhausted.\n");
}
# Ask the user for some information
# Disable local echo if $hide_echo is true (for passwords)
sub _prompt {
my ($label, $hide_echo) = @_;
_echo('off') if $hide_echo;
print "$label: " if defined $label;
my $input = scalar <STDIN>;
chomp $input;
lib/App/GitHubPullRequest.pm view on Meta::CPAN
=head2 login [<user>] [<password>] [<2fa-token>]
DEPRECATED: Logs you in to GitHub and creates a new access token used
instead of your password and two-factor authentication token. If you don't
specify either of the options, they are looked up in your git config github
section. If none of those are found, you'll be prompted for them.
=head2 authorize [<access-token>]
Logs you in to GitHub by manually creating an OAuth personal access token.
Follow the directions on-screen to generate one and insert it when prompted.
If you already have an access token you want to use you can also specify it
on the command line.
=head1 METHODS
view all matches for this distribution
view release on metacpan or search on metacpan
docs/index.html view on Meta::CPAN
.code-block .comment {
color: #6a9955;
font-style: italic;
}
.code-block .prompt {
color: #569cd6;
font-weight: bold;
}
.code-block .command {
docs/index.html view on Meta::CPAN
<p>Built-in safeguards prevent accidental deletions of master/develop branches and ensure repository cleanliness before operations.</p>
</div>
<div class="feature-card">
<div class="feature-icon">ð§</div>
<h3>Interactive Interface</h3>
<p>Smart selectors and interactive prompts guide you through operations, making complex Git workflows accessible to everyone.</p>
</div>
<div class="feature-card">
<div class="feature-icon">â¡</div>
<h3>CPAN Ready</h3>
<p>Modern CPAN distribution with proper installation via <code>cpanm App::GitKtti</code>. Optional aliases available for power users.</p>
docs/index.html view on Meta::CPAN
<section class="installation">
<h2>Getting Started</h2>
<p>Install GitKtti⢠directly from CPAN or from source:</p>
<div class="code-block">
<span class="comment"># Install from CPAN (Recommended)</span>
<span class="prompt">$</span> <span class="command">cpanm</span> <span class="variable">App::GitKtti</span>
<span class="comment"># Or install from source</span>
<span class="prompt">$</span> <span class="command">git clone</span> <span class="url">https://github.com/saumon/gitktti.git</span>
<span class="prompt">$</span> <span class="command">cd</span> <span class="path">gitktti</span>
<span class="prompt">$</span> <span class="command">./install.sh</span>
<span class="comment"># Optional: Create convenient aliases</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kfeat</span>=<span class="string">'gitktti-fix --mode feature'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kfix</span>=<span class="string">'gitktti-fix'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kreal</span>=<span class="string">'gitktti-fix --mode release'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kfixend</span>=<span class="string">'gitktti-fixend'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kmove</span>=<span class="string">'gitktti-move'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kdel</span>=<span class="string">'gitktti-delete'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kco</span>=<span class="string">'gitktti-checkout'</span>
<span class="prompt">$</span> <span class="command">alias</span> <span class="alias">kprune</span>=<span class="string">'gitktti-fix --prune'</span>
</div>
</section>
<section class="workflow-section">
<h2>Typical Workflow</h2>
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Gitc/Util.pm view on Meta::CPAN
my ($message) = @_;
die "No message given to 'confirm'" if not defined $message;
require Term::ReadLine;
my $term = Term::ReadLine->new('gitc');
my $prompt = "$message ";
my $response;
# prompt the user
while ( defined( $response = $term->readline($prompt) ) ) {
return 1 if $response eq 'y';
return if $response eq 'n';
$prompt = "$message ('y' or 'n') ";
}
}
# If this ever needs to be faster, it can be implemented by opening
view all matches for this distribution
view release on metacpan or search on metacpan
share/ms-style-guide.pl view on Meta::CPAN
<p>â é·é³è¨å·ä»ãã«å¤æ´ã¨ãªããã®</p>
<p>ã¢ã¯ã»ãµã¼ï¼accessorï¼ãã¢ã¯ã¿ã¼ï¼actorï¼ãã¢ã¯ãã£ãã¼ã¿ã¼ï¼activatorï¼ãã¢ã°ãªã²ã¼ã¿ã¼ï¼aggregatorï¼ãã¢ã»ã³ãã©ã¼ï¼assemblerï¼ãã¢ããã¿ã¼ï¼adapterï¼ãã¢ãããã¼ã¿ã¼ï¼updaterï¼ãã¢...
<p>â æ
£ä¾ã«åºã¥ã夿´ããªããã®</p>
<p>ã¢ã¦ããã¢ï¼outdoorï¼ãã¢ã¯ã»ã©ã¬ã¼ã¿ï¼acceleratorï¼ãã¤ã³ããªã¢ï¼interiorï¼ãã¤ã³ãã¢ï¼indoorï¼ãã¨ã¯ã¹ããªã¢ï¼exteriorï¼ãã¨ã³ã¸ãã¢ï¼engineerï¼ãã®ã¢ï¼gearï¼ããã£ãªã¢ï¼carrierï¼ãã...
<p>â ãã¨ãã¨é·é³ãä»ãã¦ãã¦å¤æ´ã®ãªããã®</p>
<p>ã¢ã¼ãã£ã¼ï¼archerï¼ãã¢ã¦ã¿ã¼ï¼outerï¼ãã¢ã¦ããã¼ï¼outlawï¼ãã¢ã«ããã¼ï¼academyï¼ãã¢ã¹ãã¼ï¼ASCIIï¼ãã¢ããã¼ï¼upperï¼ãã¢ããã³ãã£ã¼ï¼adventureï¼ãã¢ãã¥ãã¼ï¼anubarï¼ãã¢ãã¿...
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Greple/wordle.pm view on Meta::CPAN
my $app = __PACKAGE__->new or die;
my $game;
my $interactive;
sub prompt {
sprintf '%d: ', $game->attempt + 1;
}
sub initialize {
my($mod, $argv) = @_;
lib/App/Greple/wordle.pm view on Meta::CPAN
push @$argv, $app->patterns;
if ($interactive = -t STDIN) {
push @$argv, '--interactive', ('/dev/stdin') x $app->total;
select->autoflush;
say $app->title;
print prompt();
}
}
sub respond {
local $_ = $_;
my $chomped = chomp;
print ansi_code("{CHA}{CUU}") if $chomped;
print ansi_code(sprintf("{CHA(%d)}",
max(11, vwidth($_) + length(prompt()) + 2)));
print s/(?<=.)\z/\n/r for @_;
}
sub show_answer {
say colorize('#6aaa64', uc $game->answer);
lib/App/Greple/wordle.pm view on Meta::CPAN
show_answer;
exit 1;
}
$app->keymap and respond $game->keymap;
}
print prompt();
}
1;
__DATA__
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Greple/xlate.pm view on Meta::CPAN
=item B<--xlate-to> (Default: C<EN-US>)
Specify the target language. LLM engines accept any language name
or code the model understands; it is interpolated into the
translation prompt. You can get available languages by C<deepl
languages> command when using B<DeepL> engine.
=item B<--xlate-from> (Default: C<ORIGINAL>)
Label used for the original text in C<conflict>, C<colon> and
lib/App/Greple/xlate.pm view on Meta::CPAN
Specify the maximum lines of text to be sent to the API at once.
Set this value to 1 if you want to translate one line at a time. This
option takes precedence over the C<--xlate-maxlen> option.
=item B<--xlate-prompt>=I<text>
Specify a custom prompt to be sent to the translation engine. This
option is available for the LLM engines (C<gpt3>, C<gpt4o>, C<gpt5>)
but not for DeepL. You can customize the translation behavior by
providing specific instructions to the AI model. If the prompt
contains C<%s>, it will be replaced with the target language name.
=item B<--xlate-context>=I<text>
Specify additional context information to be sent to the translation
lib/App/Greple/xlate.pm view on Meta::CPAN
of the changed text recovered from the cache, so that unchanged
wording is preserved. Set to 0 to disable context-aware translation
entirely.
Note that each changed region is translated in its own API call and
the context can add up to about 8000 characters to the system
prompt, so context-aware translation trades some extra cost for
consistency.
=item B<--xlate-cache-seed>=I<file>
Initialize a new document's cache from another document's cache
lib/App/Greple/xlate.pm view on Meta::CPAN
method => \(our $cache_method //= $ENV{GREPLE_XLATE_CACHE} || 'auto'),
update => \(our $force_update = 0),
dryrun => \(our $dryrun = 0),
maxlen => \(our $max_length = 0),
maxline => \(our $max_line = 0),
prompt => \(our $prompt),
mask => \(our $mask),
maskfile => \(our $maskfile),
glossary => \(our $glossary),
backend => \(our $engine_backend = ''),
cache_seed => \(our $cache_seed),
lib/App/Greple/xlate.pm view on Meta::CPAN
builtin xlate-update! $force_update
builtin xlate-engine=s $xlate_engine
builtin xlate-dryrun $dryrun
builtin xlate-maxlen=i $max_length
builtin xlate-maxline=i $max_line
builtin xlate-prompt=s $prompt
builtin xlate-glossary=s $glossary
builtin xlate-context=s @contexts
builtin xlate-context-window=i $context_window
builtin xlate-anonymize=s $anonymize_file
builtin xlate-anonymize-mark:s $anonymize_mark
view all matches for this distribution
view release on metacpan or search on metacpan
groupsecret -f vault-password.yml delete-key keys/revoked/jdoe_rsa.pub
groupsecret -f vault-password.yml print-secret >old-vault-password.txt
groupsecret -f vault-password.yml set-secret rand:48
echo "New Vault password: $(groupsecret -f vault-password.yml)"
ansible-vault --vault-id=old-vault-password.txt rekey foo.yml bar.yml baz.yml
# You will be prompted for the new Vault password which you can copy from the output above.
rm -f old-vault-password.txt
This removes access to the keyfile secret and to the Ansible Vault.
Don't forget that you may also want to change the variables being
protected by the Vault. After all, those secrets are the actual things
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
view all matches for this distribution
view release on metacpan or search on metacpan
lib/App/Hack/Exe.pm view on Meta::CPAN
}
say '';
return;
}
sub _prompt {
my $self = shift;
my $hostname = shift;
$self->_sleep(0.5);
my $prompt = "root\@$hostname:~# ";
print $prompt;
# Wait for the user to press Ctrl-d
while (-t STDIN && <STDIN>) {
print $prompt;
}
return;
}
sub _sleep {
lib/App/Hack/Exe.pm view on Meta::CPAN
$self->_get_ip($hostname);
$self->_launchproxy;
$self->_chainproxies;
$self->_portknock;
$self->_w00tw00t;
$self->_prompt($hostname);
say 'Done';
return;
}
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing, always use defaults
if ( $ENV{AUTOMATED_TESTING} and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
sub makemaker_args {
my $self = shift;
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/AutoInstall.pm view on Meta::CPAN
$AllDeps = 1;
}
}
}
# overrides MakeMaker's prompt() to automatically accept the default choice
sub _prompt {
goto &ExtUtils::MakeMaker::prompt unless $AcceptDefault;
my ( $prompt, $default ) = @_;
my $y = ( $default =~ /^[Yy]/ );
print $prompt, ' [', ( $y ? 'Y' : 'y' ), '/', ( $y ? 'n' : 'N' ), '] ';
print "$default\n";
return $default;
}
# the workhorse
inc/Module/AutoInstall.pm view on Meta::CPAN
map { +{@args}->{$_} }
grep { /^[^\-]/ or /^-core$/i } keys %{ +{@args} }
)[0]
);
# We want to know if we're under CPAN early to avoid prompting, but
# if we aren't going to try and install anything anyway then skip the
# check entirely since we don't want to have to load (and configure)
# an old CPAN just for a cosmetic message
$UnderCPAN = _check_lock(1) unless $SkipInstall;
inc/Module/AutoInstall.pm view on Meta::CPAN
!$SkipInstall
and (
$CheckOnly
or ($mandatory and $UnderCPAN)
or $AllDeps
or _prompt(
qq{==> Auto-install the }
. ( @required / 2 )
. ( $mandatory ? ' mandatory' : ' optional' )
. qq{ module(s) from CPAN?},
$default ? 'y' : 'n',
inc/Module/AutoInstall.pm view on Meta::CPAN
elsif ( !$SkipInstall
and $default
and $mandatory
and
_prompt( qq{==> The module(s) are mandatory! Really skip?}, 'n', )
=~ /^[Nn]/ )
{
push( @Missing, @required );
$DisabledTests{$_} = 1 for map { glob($_) } @skiptests;
}
inc/Module/AutoInstall.pm view on Meta::CPAN
return
if _version_cmp( _load($class), $ver ) >= 0; # no need to upgrade
if (
_prompt( "==> A newer version of $class ($ver) is required. Install?",
'y' ) =~ /^[Nn]/
)
{
die "*** Please install $class $ver manually.\n";
}
inc/Module/AutoInstall.pm view on Meta::CPAN
# check if we're connected to some host, using inet_aton
sub _connected_to {
my $site = shift;
return (
( _load('Socket') and Socket::inet_aton($site) ) or _prompt(
qq(
*** Your host cannot resolve the domain name '$site', which
probably means the Internet connections are unavailable.
==> Should we try to install the required module(s) anyway?), 'n'
) =~ /^[Yy]/
inc/Module/AutoInstall.pm view on Meta::CPAN
*** You are not allowed to write to the directory '$path';
the installation may fail due to insufficient permissions.
.
if (
eval '$>' and lc(`sudo -V`) =~ /version/ and _prompt(
qq(
==> Should we try to re-execute the autoinstall process with 'sudo'?),
((-t STDIN) ? 'y' : 'n')
) =~ /^[Yy]/
)
inc/Module/AutoInstall.pm view on Meta::CPAN
print << ".";
*** The 'sudo' command exited with error! Resuming...
.
}
return _prompt(
qq(
==> Should we try to install the required module(s) anyway?), 'n'
) =~ /^[Yy]/;
}
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
view all matches for this distribution
view release on metacpan or search on metacpan
if (not -e $build->config_data('object_file')) {
$build->config_data(object_file => $path);
}
}
if (not -e $build->config_data('object_file')) {
my $reply = $build->prompt('Enter location of Icinga objects.cache',
$build->config_data('object_file'));
$build->config_data(object_file => $reply);
}
}
if (not -e $build->config_data('status_file')) {
$build->config_data(status_file => $path);
}
}
if (not -e $build->config_data('status_file')) {
my $reply = $build->prompt('Enter location of Icinga status.dat',
$build->config_data('status_file'));
$build->config_data(status_file => $reply);
}
}
if (not -e $build->config_data('command_file')) {
$build->config_data(command_file => $path);
}
}
if (not -e $build->config_data('command_file')) {
my $reply = $build->prompt('Enter location of Icinga command pipe',
$build->config_data('command_file'));
$build->config_data(command_file => $reply);
}
}
view all matches for this distribution
view release on metacpan or search on metacpan
inc/Module/Install/Makefile.pm view on Meta::CPAN
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
view all matches for this distribution