make plugins be M::I features so dependencies are optional
[p5sagit/Devel-REPL.git] / Makefile.PL
1 use strict;
2 use warnings;
3 use inc::Module::Install 0.76;
4
5 name 'Devel-REPL';
6 all_from 'lib/Devel/REPL.pm';
7
8 install_script 'script/re.pl';
9
10 # core
11 requires 'File::Spec';
12 requires 'Term::ReadLine';
13
14 # rest
15 requires 'Moose' => '0.64';
16 requires 'MooseX::Object::Pluggable' => '0.0009';
17 requires 'MooseX::Getopt' => '0.15';
18 requires 'MooseX::AttributeHelpers' => '0.14';
19 requires 'namespace::clean';
20 requires 'File::HomeDir';
21 requires 'Task::Weaken';
22 requires 'B::Concise';
23 requires 'Term::ANSIColor';
24 requires 'Devel::Peek';
25
26 feature 'Completion plugin - extensible tab completion',
27     -default => 0,
28     'PPI' => 0;
29
30 feature 'DDS plugin - better format results with Data::Dump::Streamer',
31     -default => 0,
32     'Data::Dump::Streamer' => 0;
33
34 feature 'INC completion driver - tab complete module names in use and require',
35     -default => 0,
36     'File::Next' => 0;
37
38 feature 'Keywords completion driver - tab complete Perl keywords and operators',
39     -default => 0,
40     'B::Keywords' => 0;
41
42 feature 'LexEnv plugin - variables declared with "my" persist between statements',
43     -default => 0,
44     'Lexical::Persistence' => 0;
45
46 feature 'MultiLine::PPI plugin - continue reading lines until all blocks are closed',
47     -default => 0,
48     'PPI' => 0;
49
50 feature 'Nopaste plugin - upload a session\'s input and output to a Pastebin',
51     -default => 0,
52     'App::Nopaste' => 0;
53
54 feature 'PPI plugin - PPI dumping of Perl code',
55     -default => 0,
56     'PPI' => 0;
57
58 feature 'Refresh plugin - automatically reload libraries with Module::Refresh',
59     -default => 0,
60     'Module::Refresh' => 0;
61
62 test_requires 'Test::More';
63
64 auto_install;
65 WriteAll;
66