App-Sqitch

 view release on metacpan or  search on metacpan

lib/App/Sqitch/Command/rework.pm  view on Meta::CPAN

package App::Sqitch::Command::rework;

use 5.010;
use strict;
use warnings;
use utf8;
use Locale::TextDomain qw(App-Sqitch);
use App::Sqitch::X qw(hurl);
use File::Copy;
use Moo;
use App::Sqitch::Types qw(Str ArrayRef Bool Maybe);
use namespace::autoclean;

extends 'App::Sqitch::Command';
with 'App::Sqitch::Role::ContextCommand';

our $VERSION = 'v1.6.1'; # VERSION

has change_name => (
    is  => 'ro',
    isa => Maybe[Str],
);

has requires => (
    is       => 'ro',
    isa      => ArrayRef[Str],
    default  => sub { [] },
);

has conflicts => (
    is       => 'ro',
    isa      => ArrayRef[Str],
    default  => sub { [] },
);

has all => (
    is      => 'ro',
    isa     => Bool,
    default => 0
);

has note => (
    is       => 'ro',
    isa      => ArrayRef[Str],
    default  => sub { [] },
);

has open_editor => (
    is       => 'ro',
    isa      => Bool,
    lazy     => 1,
    default  => sub {
        my $self = shift;
        return $self->sqitch->config->get(
            key => 'rework.open_editor',
            as  => 'bool',
        ) // $self->sqitch->config->get(
            key => 'add.open_editor',
            as  => 'bool',
        ) // 0;
    },
);

sub options {
    return qw(
        change-name|change|c=s
        requires|r=s@
        conflicts|x=s@
        all|a!
        note|n|m=s@
        open-editor|edit|e!
    );



( run in 0.753 second using v1.01-cache-2.11-cpan-98e64b0badf )