Fedora-App-MaintainerTools

 view release on metacpan or  search on metacpan

lib/CPAN/MetaMuncher.pm  view on Meta::CPAN


our $VERSION = '0.006';

# debugging
#use Smart::Comments '###', '####';

has module => (is => 'rw', required => 1, isa => 'CPANPLUS::Module');

# FIXME -- we should check to make sure we're supported, etc, etc
#has _meta => (is => 'ro', isa => 'YAML::Tiny', lazy_build => 1);
#has _meta => (is => 'ro', isa => 'ArrayRef[HashRef]|YAML::Tiny', lazy_build => 1);
has _meta => (is => 'ro', lazy_build => 1);

sub _build__meta {
    my $self = shift @_;

    $self->module->fetch;
    my $meta_file = file $self->module->extract, 'META.yml';
    #YAML::Tiny->read(file($self->module->extract, 'META.yml'));
    my $m;
    local $@;

lib/Fedora/App/MaintainerTools/Command/newspec.pm  view on Meta::CPAN

};

our $VERSION = '0.006';

sub command_names { 'new-spec' }

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

has _new_pkgs => (
    traits => ['Hash'],
    is => 'ro', isa => 'HashRef', default => sub { {} },
    handles => {
        new_pkgs     => 'keys',
        has_new_pkgs => 'count',
        no_new_pkgs  => 'is_empty',
        num_new_pkgs => 'count',
        has_new_pkg  => 'exists',
        add_new_pkg  => 'set',
    },
);

has _corelist => (
    traits => ['Hash'],
    is => 'ro', isa => 'HashRef', lazy_build => 1,
    handles => { has_as_core => 'exists' },
);

sub _build__corelist { $Module::CoreList::version{$]} }

has _cpanp => (is => 'ro', isa => CPBackend, lazy_build => 1);
has _rpmdb => (is => 'ro', isa => Object, lazy_build => 1);

sub _build__cpanp { CPANPLUS::Backend->new }
sub _build__rpmdb { RPM2->open_rpm_db()    }

lib/Fedora/App/MaintainerTools/Command/privaterepo.pm  view on Meta::CPAN

	Fedora::App::MaintainerTools::LocalRepo
};

our $VERSION = '0.006';

has package => (is => 'ro', isa => Bool, default => 0);
has rebuild => (is => 'ro', isa => Bool, default => 1);
has hostname => (is => 'rw', isa => Str, lazy_build => 1);
has repo => (is => 'rw', isa => Str, lazy_build => 1);

has _repo_config => (is => 'ro', isa => 'HashRef[HashRef]', lazy_build => 1);

sub command_names { 'private-repo' }

sub execute {
    my ($self, $opt, $args) = @_;

    $self->log->info('Beginning private-repo run.');
    Class::MOP::load_class($_) for @CLASSES;

	my @files = map { file $_ } @$args;

lib/Fedora/App/MaintainerTools/LocalRepo.pm  view on Meta::CPAN

has remote_target => (is => 'ro', required => 1, isa => Str);
has local_dir	  => (is => 'ro', required => 1, isa => Dir, coerce => 1);

#############################################################################
# File (and old and new) tracking

# hmm.
my $arrayref_files_type = 'ArrayRef[' . File . ']';

has _files => (
	#traits => [ 'Array' ], is => 'ro', isa => 'ArrayRef[File]', lazy_build => 1,
	traits => [ 'Array' ], is => 'ro', isa => $arrayref_files_type, lazy_build => 1,
	handles => {
		files	   => 'elements',
		has_files  => 'is_empty',
		file_count => 'count',
		srpm_files => [ grep => sub {  /\.src\.rpm$/ } ],
		rpm_files  => [ grep => sub { !/\.src\.rpm$/ } ],
	},
);

has _new_files => (
	#traits => [ 'Array' ], is => 'ro', isa => 'ArrayRef[File]', lazy_build => 1,
	traits => [ 'Array' ], is => 'ro', isa => $arrayref_files_type, lazy_build => 1,
	handles => {
		new_files => 'elements',
		has_new_files => 'count',
		no_new_files => 'is_empty',
		add_files => 'push',
	},
);

has is_local_updated  => (

lib/Fedora/App/MaintainerTools/SpecData.pm  view on Meta::CPAN

    handles => {
        docfiles           => 'elements',
        has_docfiles       => 'count',
        no_docfiles        => 'is_empty',
        docfiles_as_string => [ join => "\n" ],
    },
);

has _changelog => (
    traits => [ 'MooseX::AttributeHelpers::Trait::Collection::Array' ],
    is => 'ro', isa => 'ArrayRef[Str]', lazy_build => 1,

    provides => {
        empty    => 'has_changelog',
        push     => 'add_changelog',
        unshift  => 'prepend_changelog',
        elements => 'changelog',
    },
);

has _build_requires => (
    traits => [ 'MooseX::AttributeHelpers::Trait::Collection::Hash' ],
    is => 'ro', isa => 'HashRef', lazy_build => 1,

    provides => {
        'empty'  => 'has_build_requires',
        'exists' => 'has_build_require',
        'get'    => 'build_require_version',
        'set'    => 'build_require_this',
        'count'  => 'num_build_requires',
        'keys'   => 'build_requires',
        'delete' => 'remove_build_require_on',
        'kv'     => 'build_require_pairs',
    },
);

has _requires => (
    traits => [ 'MooseX::AttributeHelpers::Trait::Collection::Hash' ],
    is => 'ro', isa => 'HashRef', lazy_build => 1,

    provides => {
        'empty'  => 'has_requires',
        'exists' => 'has_require',
        'get'    => 'require_version',
        'count'  => 'num_requires',
        'keys'   => 'requires',
        'set'    => 'require_this',
        'kv'     => 'require_pairs',
    },
);

has _additional_deps => (
    traits => [ 'Array' ],
    is => 'ro', isa => 'ArrayRef[Str]', lazy_build => 1,

    handles => {
        has_additional_deps => 'count',
        no_additional_deps  => 'is_empty',
        additional_deps     => 'elements',

        additional_deps_as_string => [ join => "\n" ],
    },
);

lib/Fedora/App/MaintainerTools/SpecData.pm  view on Meta::CPAN


#############################################################################
# Additional helper bits (not quite spec generation, etc)

# _suspect_requires is a list of requires that are often included as a
# "requires" (especially in older EU::MM based Makefile.PL's) but in reality
# are only needed during testing.

has _suspect_requires => (
    traits => [ 'Hash' ],
    is => 'ro', isa => 'HashRef', lazy_build => 1,

    handles => {
        suspect_requires     => 'elements',
        has_suspect_requires => 'count',
        no_suspect_requires  => 'is_empty',
        is_suspect_require   => 'exists',
    },
);

sub _build__suspect_requires {

lib/Fedora/App/MaintainerTools/SpecData.pm  view on Meta::CPAN

        'perl(Test::Simple)'    => 1,
        'perl(Test::Pod)'       => 1,
        #'perl(Test::)' => 1,
    };
}

# A list of macros we should include before the initial %description

has _macros => (
    traits => [ 'Array' ],
    is => 'ro', isa => 'ArrayRef', lazy_build => 1,

    handles => {
        macros => 'elements',
        has_macros => 'count',
        no_macros => 'is_empty',
        macros_as_string => [ join => "\n" ],
    },
);

# FIXME TODO this entire section needs to be done in tt2

lib/Fedora/App/MaintainerTools/SpecData/New.pm  view on Meta::CPAN

}

#############################################################################
# license

# this is largely stolen from CPANPLUS::Dist::RPM...  in need of some serious
# refactoring but works for now.

has license_map => (
    traits => [ 'MooseX::AttributeHelpers::Trait::Collection::Hash' ],
    is => 'ro', isa => 'HashRef[Str]', lazy_build => 1,
    provides => { get => 'license_shortname' },
);

has license_comment => (is => 'rw', isa => 'Maybe[Str]', lazy_build => 1);

sub _build_license_comment { undef }

sub _build_license_map {

    return {



( run in 0.320 second using v1.01-cache-2.11-cpan-5f2e87ce722 )