Boxer

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

 - Use Test::CleanNamespaces in testsuite.
 - Use Test::Fatal (replacing Test::Exception).

 [ Other ]
 - Added: Add subcommand bootstrap.
 - Added: Fix implement boxer-compose option --format.
 - Handle serialization details in Boxer::World::Flat (not
   Boxer::Task::Serialize).
 - Limit Type::Utils import: Apparently unneeded.
 - Pass variables when file template is processed (not when instantiated).
 - Treat namespace::autoclean as a pragma (one of its benefits over
   namespace::clean).
 - Use MooX::StrictConstructor.

v1.2.0	2019-02-27

 [ BACK COMPAT ]
 - Update skeleton files: Drop workaround unneeded since Jessie (see
   bug#751367).

 [ Bug Fixes ]

Changes  view on Meta::CPAN

 [ Test Suite ]
 - Extend testsuite: Cover auto-resolved and to-be-avoided packages.

 [ Other ]
 - Tidy HEREDOC commands.

v1.1.8	2018-07-13

 [ Bug Fixes ]
 - Fix subcommand about choking on authority implemented but undefined.
 - Fix subcommand about listing authority: Use namespace::autoclean (not
   namespace::clean, and use recent version to avoid Moo inflation to
   Moose).
 - Fix subcommand aliases help text to use valid example, and tone down
   usage (only some not most subcommands have aliases).
 - Fix syntax error resolving nonfree packages in Boxer::World::Reclass.

 [ Documentation ]
 - Fix changelog entry part of release v1.1.5.
 - Fix typo in POD of module Boxer::World::Flat.

META.json  view on Meta::CPAN

            "MooX::StrictConstructor" : "0",
            "Path::Tiny" : "0.054",
            "Role::Commons" : "0",
            "Template::Tiny" : "0.11",
            "Try::Tiny" : "0",
            "Types::Path::Tiny" : "0",
            "Types::Standard" : "0",
            "YAML::XS" : "0",
            "autodie" : "0",
            "match::simple" : "0",
            "namespace::autoclean" : "0.16",
            "perl" : "5.020000",
            "strictures" : "2"
         }
      },
      "test" : {
         "requires" : {
            "English" : "0",
            "File::Spec" : "0",
            "File::Which" : "0",
            "Test::CleanNamespaces" : "0",

META.yml  view on Meta::CPAN

  MooX::StrictConstructor: '0'
  Path::Tiny: '0.054'
  Role::Commons: '0'
  Template::Tiny: '0.11'
  Try::Tiny: '0'
  Types::Path::Tiny: '0'
  Types::Standard: '0'
  YAML::XS: '0'
  autodie: '0'
  match::simple: '0'
  namespace::autoclean: '0.16'
  perl: '5.020000'
  strictures: '2'
resources:
  Identifier: http://purl.org/NET/cpan-uri/dist/Boxer/project
  bugtracker: http://rt.cpan.org/Dist/Display.html?Queue=Boxer
  homepage: https://wiki.debian.org/Boxer
  license: http://dev.perl.org/licenses/
  repository: https://salsa.debian.org/boxer-team/boxer
version: v1.4.3
x_help_wanted:

Makefile.PL  view on Meta::CPAN

                                "IPC::System::Simple"       => 0,
                                "List::MoreUtils"           => 0,
                                "Log::Any::Adapter::Screen" => 0,
                                "match::simple"             => 0,
                                "Module::Find"              => 0,
                                "Module::Load::Conditional" => 0,
                                "Module::Runtime"           => 0,
                                "Moo"                       => "1.001000",
                                "MooX::Role::Logger"        => 0,
                                "MooX::StrictConstructor"   => 0,
                                "namespace::autoclean"      => 0.16,
                                "Path::Tiny"                => 0.054,
                                "perl"                      => "5.020000",
                                "Role::Commons"             => 0,
                                "strictures"                => 2,
                                "Template::Tiny"            => 0.11,
                                "Try::Tiny"                 => 0,
                                "Types::Path::Tiny"         => 0,
                                "Types::Standard"           => 0,
                                "YAML::XS"                  => 0,
                              },

doap.ttl  view on Meta::CPAN

	dc:contributor       <http://purl.org/NET/cpan-uri/person/jonass>;
	doap-deps:runtime-requirement [ doap-deps:on "App::Cmd 0"^^doap-deps:CpanId ], [ doap-deps:on "autodie 0"^^doap-deps:CpanId ], [
		doap-deps:on "Module::Load::Conditional"^^doap-deps:CpanId;
	], [ doap-deps:on "Module::Runtime"^^doap-deps:CpanId ], [ doap-deps:on "Moo 1.001000"^^doap-deps:CpanId ], [
		doap-deps:on "MooX::Role::Logger 0"^^doap-deps:CpanId;
	], [
		doap-deps:on "MooX::StrictConstructor 0"^^doap-deps:CpanId;
	], [ doap-deps:on "List::MoreUtils 0"^^doap-deps:CpanId ], [
		doap-deps:on "Log::Any::Adapter::Screen 0"^^doap-deps:CpanId;
	], [
		doap-deps:on "namespace::autoclean 0.16"^^doap-deps:CpanId;
	], [ doap-deps:on "Path::Tiny 0.054"^^doap-deps:CpanId ], [ doap-deps:on "Role::Commons 0"^^doap-deps:CpanId ], [
		doap-deps:on "IPC::System::Simple 0"^^doap-deps:CpanId;
	], [
		doap-deps:on "Template::Tiny 0.11"^^doap-deps:CpanId;
	], [ doap-deps:on "Try::Tiny 0"^^doap-deps:CpanId ], [
		doap-deps:on "Types::Path::Tiny 0"^^doap-deps:CpanId;
	], [ doap-deps:on "Types::Standard 0"^^doap-deps:CpanId ], [ doap-deps:on "YAML::XS 0"^^doap-deps:CpanId ], [ doap-deps:on "perl 5.020000"^^doap-deps:CpanId ], [ doap-deps:on "strictures 2"^^doap-deps:CpanId ], [
		doap-deps:on "Class::XSAccessor 0"^^doap-deps:CpanId;
	], [ doap-deps:on "File::BaseDir 0"^^doap-deps:CpanId ], [ doap-deps:on "File::ShareDir 0"^^doap-deps:CpanId ], [ doap-deps:on "Hash::Merge 0"^^doap-deps:CpanId ], [ doap-deps:on "match::simple 0"^^doap-deps:CpanId ], [ doap-deps:on "Module::Find"^^...
	doap-deps:test-requirement [ doap-deps:on "Test::Deep 0.111"^^doap-deps:CpanId ], [ doap-deps:on "Test::More 0.61"^^doap-deps:CpanId ], [ doap-deps:on "English 0"^^doap-deps:CpanId ], [ doap-deps:on "File::Spec 0"^^doap-deps:CpanId ], [ doap-deps:on...

doap.ttl  view on Meta::CPAN

	doap:file-release    <http://backpan.cpan.org/authors/id/J/JO/JONASS/Boxer-v1.1.7.tar.gz>;
	doap:revision        "v1.1.7"^^xsd:string.

<http://purl.org/NET/cpan-uri/dist/Boxer/v_v1-1-8>
	a                    doap:Version;
	dc:identifier        "Boxer-v1.1.8"^^xsd:string;
	dc:issued            "2018-07-13"^^xsd:date;
	doap-changeset:changeset [
		doap-changeset:item [
			a doap-changeset:Bugfix;
			rdfs:label "Fix subcommand about listing authority: Use namespace::autoclean (not namespace::clean, and use recent version to avoid Moo inflation to Moose).";
		], [
			a doap-changeset:Bugfix;
			rdfs:label "Fix subcommand about choking on authority implemented but undefined.";
		], [
			a doap-changeset:Bugfix;
			rdfs:label "Fix subcommand aliases help text to use valid example, and tone down usage (only some not most subcommands have aliases).";
		], [
			a doap-changeset:Documentation;
			rdfs:label "Fix typo in POD of module Boxer::World::Flat.";
		], [

doap.ttl  view on Meta::CPAN

			a doap-changeset:Tests;
			rdfs:label "Use Test::Fatal (replacing Test::Exception).";
		], [
			a doap-changeset:Addition;
			rdfs:label "Fix implement boxer-compose option --format.";
		], [
			a doap-changeset:Change;
			rdfs:label "Use MooX::StrictConstructor.";
		], [
			a doap-changeset:Change;
			rdfs:label "Treat namespace::autoclean as a pragma (one of its benefits over namespace::clean).";
		], [
			a doap-changeset:Tests;
			rdfs:label "Use Test::CleanNamespaces in testsuite.";
		], [
			a doap-changeset:Documentation;
			rdfs:label "Add TODO about unit testing code coverage.";
		], [
			a doap-changeset:Change;
			rdfs:label "Limit Type::Utils import: Apparently unneeded.";
		], [

lib/Boxer.pm  view on Meta::CPAN

=head1 NAME

Boxer - system deployment ninja tricks

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Module::Find;
use Module::Load::Conditional qw(can_load);
use Log::Any qw($log);

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/CLI.pm  view on Meta::CPAN


=head1 NAME

Boxer::CLI - boxer command line utils

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;

use App::Cmd::Setup -app;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

lib/Boxer/CLI/Command.pm  view on Meta::CPAN

package Boxer::CLI::Command;

=encoding UTF-8

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;

use Log::Any::Adapter qw<Screen>;
use App::Cmd::Setup-command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

lib/Boxer/CLI/Command/About.pm  view on Meta::CPAN

package Boxer::CLI::Command::About;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Boxer::CLI -command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

lib/Boxer/CLI/Command/Aliases.pm  view on Meta::CPAN

package Boxer::CLI::Command::Aliases;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use match::simple qw(match);
use Boxer::CLI -command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

lib/Boxer/CLI/Command/Bootstrap.pm  view on Meta::CPAN

package Boxer::CLI::Command::Bootstrap;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Path::Tiny;
use List::MoreUtils qw(before after);
use Module::Runtime qw/use_module/;
use Boxer::CLI -command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/CLI/Command/Commands.pm  view on Meta::CPAN

package Boxer::CLI::Command::Commands;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Boxer::CLI -command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

Version v1.4.3

lib/Boxer/CLI/Command/Compose.pm  view on Meta::CPAN

package Boxer::CLI::Command::Compose;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Path::Tiny;
use Module::Runtime qw/use_module/;
use Boxer::CLI -command;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/File/WithSkeleton.pm  view on Meta::CPAN

package Boxer::File::WithSkeleton;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;

use Path::Tiny;
use Template::Tiny;
use File::ShareDir qw(dist_dir);

use Moo;
use MooX::StrictConstructor;

use Types::Standard qw(Maybe);
use Types::TypeTiny qw(HashLike);

lib/Boxer/Part.pm  view on Meta::CPAN


=head1 NAME

Boxer::Part - software component

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;
use autodie;

use Moo;
use MooX::StrictConstructor;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/Part/Reclass.pm  view on Meta::CPAN


=head1 NAME

Boxer::Part::Reclass - software component as a reclass node or class

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;
use autodie;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::Part);

use Types::Standard qw(Str Maybe ArrayRef HashRef);
use Boxer::Types qw( Suite );

use strictures 2;

lib/Boxer/Role/Interact.pm  view on Meta::CPAN

package Boxer::Role::Interact;

=encoding UTF-8

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;

use Moo::Role;

use Types::Standard qw< Bool >;

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/Task.pm  view on Meta::CPAN

package Boxer::Task;

=encoding UTF-8

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;
use autodie;

use Moo;
use MooX::StrictConstructor;
with qw( MooX::Role::Logger Boxer::Role::Interact );

use strictures 2;
no warnings "experimental::signatures";

=head1 VERSION

lib/Boxer/Task/Bootstrap.pm  view on Meta::CPAN

package Boxer::Task::Bootstrap;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;
use autodie qw(:all);
use IPC::System::Simple qw(runx);

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::Task);

use Types::Standard qw( Bool Str InstanceOf ArrayRef Maybe );

use strictures 2;

lib/Boxer/Task/Classify.pm  view on Meta::CPAN


=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
no warnings "experimental::signatures";
use namespace::autoclean 0.16;
use autodie qw(:all);
use IPC::System::Simple;

use File::BaseDir qw(data_dirs);
use Boxer;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::Task);

lib/Boxer/Task/Serialize.pm  view on Meta::CPAN

package Boxer::Task::Serialize;

=encoding UTF-8

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;
use autodie;

use Path::Tiny;
use File::ShareDir qw(dist_dir);
use Boxer::File::WithSkeleton;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::Task);

lib/Boxer/Types.pm  view on Meta::CPAN

package Boxer::Types;

=encoding UTF-8

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean;

use Path::Tiny;

use Type::Library -base, -declare => qw(
	WorldName DataDir ClassDir NodeDir SkelDir Basename Suite SerializationList );
use Type::Utils;
use Types::Standard qw( ArrayRef Split Str Tuple StrMatch slurpy );
use Types::Common::String qw( NonEmptySimpleStr LowerCaseSimpleStr );
use Types::Path::Tiny qw(Dir);

lib/Boxer/World.pm  view on Meta::CPAN


=head1 NAME

Boxer::World - set of software available to install

=cut

use v5.14;
use utf8;
use Role::Commons -all;
use namespace::autoclean 0.16;
use autodie;

use Moo;
use MooX::StrictConstructor;
use Types::Standard qw( ArrayRef InstanceOf Maybe );
use Boxer::Types qw( DataDir );
with qw(MooX::Role::Logger);

use strictures 2;
no warnings "experimental::signatures";

lib/Boxer/World/Flat.pm  view on Meta::CPAN

=head1 NAME

Boxer::World::Flat - software for single use case

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;
use autodie;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::World);

use Types::Standard qw( Maybe Bool Tuple );
use Types::TypeTiny qw( StringLike ArrayLike );

use strictures 2;

lib/Boxer/World/Reclass.pm  view on Meta::CPAN

=head1 NAME

Boxer::World::Reclass - software as serialized by reclass

=cut

use v5.20;
use utf8;
use Role::Commons -all;
use feature 'signatures';
use namespace::autoclean 0.16;
use autodie;

use YAML::XS;
use List::MoreUtils qw(uniq);
use Hash::Merge qw(merge);
use Try::Tiny;

use Moo;
use MooX::StrictConstructor;
extends qw(Boxer::World);



( run in 0.443 second using v1.01-cache-2.11-cpan-4d50c553e7e )