Dist::Zilla::Shell - An interactive shell for Dist::Zilla


    $ dzil shell
    DZ> build
    DZ> test
    DZ> release
    DZ> q


This module adds a new command to Dist::Zilla: shell. Run it and an interactive shell is opened. You can then run any other Dist::Zilla command that you usually run with "dzil command" (even shell itself, to open a sub-shell, but that is useless). Type q|quit|exit|x to exit the shell.

Any command unknown to Dist::Zilla is executed in a system shell, so you can mix DZ commands and system commands (ls, prove, git...).

Running DZ commands from a shell brings the benefit of avoiding the huge startup cost due to Moose and all Dist::Zilla plugins. So the first run of a command under the shell may be still slow, but any successive run will be much faster.


I started to seriously learn Dist::Zilla at the QA Hackathon 2011 in Amsterdam. I immediately had the idea of this shell as DZ is really slow to start. Six months after, this the first DZ extension that I have written.



Olivier Mengué,


Copyright © 2011 Olivier Mengué.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.