update Changes
[gitmo/Task-Moose.git] / lib / Task / Moose.pm
CommitLineData
f34a1571 1package Task::Moose;
2
59a259a8 3our $VERSION = '0.02';
f34a1571 4our $AUTHORITY = 'cpan:STEVAN';
5
61;
7
8__END__
9
10=pod
11
12=head1 NAME
13
14Task::Moose - Moose in a box
15
16=head1 DESCRIPTION
17
dc00a896 18This Task installs Moose and then optionally installs a number of
19Moose extensions listed below. This list is meant to be comprehensive,
20so if I missed something please let me know.
f34a1571 21
20dc46f8 22=head1 MODULES
f34a1571 23
20dc46f8 24=head2 Make Moose Stricter
39e1259c 25
0cb090b0 26=head3 L<MooseX::StrictConstructor>
39e1259c 27
20dc46f8 28Making Moose constructors stricter
dc00a896 29
0cb090b0 30=head3 L<MooseX::Params::Validate>
dc00a896 31
20dc46f8 32Moose-ish method parameter handling
dc00a896 33
20dc46f8 34=head2 Traits / Roles
dc00a896 35
0cb090b0 36=head3 L<MooseX::Role::TraitConstructor>
dc00a896 37
a8d275ff 38Runtime trait application in constructors
39e1259c 39
0cb090b0 40=head3 L<MooseX::Traits>
39e1259c 41
20dc46f8 42Easy creation of objects with traits
59a259a8 43
0cb090b0 44=head3 L<MooseX::Object::Pluggable>
59a259a8 45
20dc46f8 46Moose-ish plugin system
39e1259c 47
0cb090b0 48=head3 L<MooseX::Role::Parameterized>
39e1259c 49
20dc46f8 50Parameterized roles
806db038 51
20dc46f8 52=head2 Instance Types
806db038 53
0cb090b0 54=head3 L<MooseX::GlobRef>
dc00a896 55
20dc46f8 56Globref instance type for Moose
dc00a896 57
0cb090b0 58=head3 L<MooseX::InsideOut>
dc00a896 59
a8d275ff 60Inside out instance type for Moose
dc00a896 61
0cb090b0 62=head3 L<MooseX::Singleton>
dc00a896 63
a8d275ff 64Singleton instance type for Moose
dc00a896 65
0cb090b0 66=head3 L<MooseX::NonMoose>
59a259a8 67
20dc46f8 68Subclassing of non-Moose classes
806db038 69
20dc46f8 70=head2 Declarative Syntax
806db038 71
0cb090b0 72=head3 L<MooseX::Declare>
dc00a896 73
a8d275ff 74Declarative syntax with L<Devel::Declare>
578e508c 75
0cb090b0 76=head3 L<MooseX::Method::Signatures>
578e508c 77
20dc46f8 78Declarative method syntax
578e508c 79
7416f7e7 80=head3 L<TryCatch>
81
82Declarative exception handling
83
20dc46f8 84=head2 Types
dc00a896 85
0cb090b0 86=head3 L<MooseX::Types>
806db038 87
20dc46f8 88Moose type extensions
806db038 89
0cb090b0 90=head3 L<MooseX::Types::Structured>
dc00a896 91
20dc46f8 92Structured type constraints
dc00a896 93
0cb090b0 94=head3 L<MooseX::Types::Path::Class>
dc00a896 95
0cb090b0 96L<Path::Class> Moose type extension
dc00a896 97
0cb090b0 98=head3 L<MooseX::Types::Set::Object>
dc00a896 99
0cb090b0 100L<Set::Object> Moose type extension
dc00a896 101
0cb090b0 102=head3 L<MooseX::Types::DateTime>
dc00a896 103
0cb090b0 104L<DateTime> Moose type extension
dc00a896 105
a8d275ff 106=head2 Command Line Integration
dc00a896 107
0cb090b0 108=head3 L<MooseX::Getopt>
20dc46f8 109
110Better script writing with Moose
111
0cb090b0 112=head3 L<MooseX::ConfigFromFile>
20dc46f8 113
0cb090b0 114Support for config with L<MooseX::Getopt>
20dc46f8 115
0cb090b0 116=head3 L<MooseX::SimpleConfig>
20dc46f8 117
0cb090b0 118Config file support for L<MooseX::Getopt> with L<Config::Any>
20dc46f8 119
0cb090b0 120=head3 L<MooseX::App::Cmd>
20dc46f8 121
0cb090b0 122L<App::Cmd> integration for Moose
20dc46f8 123
0cb090b0 124=head3 L<MooseX::Role::Cmd>
20dc46f8 125
126Easily wrap command line apps with Moose
127
128=head2 Logging
129
0cb090b0 130=head3 L<MooseX::LogDispatch>
20dc46f8 131
a8d275ff 132L<Log::Dispatch> support for Moose
20dc46f8 133
0cb090b0 134=head3 L<MooseX::LazyLogDispatch>
20dc46f8 135
a8d275ff 136Lazy loaded L<Log::Dispatch> support for Moose
20dc46f8 137
0cb090b0 138=head3 L<MooseX::Log::Log4perl>
20dc46f8 139
0cb090b0 140L<Log::Log4perl> support for Moose
20dc46f8 141
142=head2 Async
143
0cb090b0 144=head3 L<MooseX::POE>
20dc46f8 145
0cb090b0 146Moose wrapped L<POE>
20dc46f8 147
0cb090b0 148=head3 L<MooseX::Workers>
20dc46f8 149
a8d275ff 150Sub-process management for asynchronous tasks using Moose and L<POE>
20dc46f8 151
152=head2 Utility Roles
153
0cb090b0 154=head3 L<MooseX::Daemonize>
20dc46f8 155
156Daemonization support roles for Moose
157
0cb090b0 158=head3 L<MooseX::Param>
20dc46f8 159
160CGI-style parameter role
161
0cb090b0 162=head3 L<MooseX::Iterator>
20dc46f8 163
a8d275ff 164Moose-ish iterator support role
20dc46f8 165
0cb090b0 166=head3 L<MooseX::Clone>
20dc46f8 167
168More robust and flexible cloning support
169
0cb090b0 170=head3 L<MooseX::Storage>
20dc46f8 171
172Moose serialization
173
174=head2 Other Useful Extensions
175
0cb090b0 176=head3 L<Moose::Autobox>
20dc46f8 177
a8d275ff 178L<Autoboxing|autobox> support
20dc46f8 179
0cb090b0 180=head3 L<MooseX::ClassAttribute>
20dc46f8 181
182Class attributes for Moose
183
0cb090b0 184=head3 L<MooseX::SemiAffordanceAccessor>
20dc46f8 185
186Support for PBP style accessors
187
0cb090b0 188=head2 Utilities
20dc46f8 189
0cb090b0 190=head3 L<Pod::Coverage::Moose>
f34a1571 191
0cb090b0 192L<Pod::Coverage> extension for Moose
f34a1571 193
9624e1d4 194=head1 NOTES
195
196L<MooseX::AttributeHelpers> has been removed from this list because
197its functionality has been subsumed into L<Moose> itself. See
198L<Moose::Meta::Attribute::Native> for more details.
199
f34a1571 200=head1 BUGS
201
202All complex software has bugs lurking in it, and this module is no
203exception. If you find a bug please either email me, or add the bug
204to cpan-RT.
205
206=head1 AUTHOR
207
208Stevan Little E<lt>stevan.little@iinteractive.comE<gt>
209
210=head1 COPYRIGHT AND LICENSE
211
212Copyright 2008 Infinity Interactive, Inc.
213
214L<http://www.iinteractive.com>
215
216This library is free software; you can redistribute it and/or modify
217it under the same terms as Perl itself.
218
219=cut