|
NAMEMinilla - CPAN module authoring toolSYNOPSISminil new - Create a new dist minil test - Run test cases minil dist - Make your dist tarball minil install - Install your dist minil release - Release your dist to CPAN minil run - Run arbitrary commands against build dir DESCRIPTIONMinilla is a CPAN module authoring tool. Minilla provides minil command for authorizing a CPAN distribution.(M::I - inc) + shipit + (dzil - plugins) CONVENTIONAs stated above, Minilla is opinionated. Minilla has a bold assumption and convention like the followings, which are almost compatible to the sister project Dist::Milla.
GETTING STARTED# First time only % cpanm Minilla # Minilla has only a few deps. It should be very quick # Make a new distribution % minil new Dist-Name % cd Dist-Name/ # Git commit % git commit -m "initial commit" # Hack your code! % $EDITOR lib/Dist/Name.pm t/dist-name.t cpanfile # Done? Test and release it! % minil release It's that easy. You already have distributions with Module::Install, Module::Build, Dist::Zilla or ShipIt? Migrating is also trivial. See "MIGRATING" in Minilla::Tutorial for more details. WHY MINILLA?Repository managed by Minilla is git install ready.The repository created and managed by Minilla is git install ready. You can install the library by "cpanm git://...".Of course, you can install Minilla from "cpanm git://github.com/tokuhirom/Minilla.git". Minilla is built on small libraries.Minilla is built on only few small libraries. You can install Minilla without a huge list of dependencies to heavy modules.And, what is Minilla?Minilla is a Kaiju (Japanese giant monster) from the Godzilla series of films and is the first of several young Godzillas. https://en.wikipedia.org/wiki/Minilla Minilla's release processMinilla's release process is the following.CheckUntrackedFilesChecking git's untracked files. If there's untracked files, minilla will abort.CheckOriginThis step will run the `git remote`. If there's no remote, minilla will abort.BumpVersionMinilla will show 'Next Release?' prompt. You can input next version number.After that, minilla rewrites version numbers in **/*.pm, **/*.pl, and a script file contains perl-ish shebang. CheckChangesYou need to write Changes file. Your module's users need to know the difference between versions.Minilla's Changes file includes `{{$NEXT}}` next version indicator. You should put update informations after that. RegenerateFilesIn this step, minilla will regenerate META.json, README.md and (Makefile.PL|Build.PL).RunHooksThis step runs commands listed on `release.hooks` key in minil.toml.DistTestThis script runs test cases in clean working directory with "$ENV{RELEASE_TESTING} = 1".MakeDistMake distribution tar ball.UploadToCPANUpload your module to CPAN.RewriteChangesRewrite Changes file. Minilla replaces "{{$NEXT}}" with released version number and current date & time. And put "{{$NEXT}}" on the first line.CommitCommit current directory with automatically generated commit message from Changes file. And push it to origin.TagCreate new git tag and push it to origin.CONFIGURATIONMinilla uses Convention over Configuration.But, you can write configurations to minil.toml file in TOML <https://github.com/toml-lang/toml> format. Minilla reads the minil.toml file in the root directory of your project.
FAQ
bash/zsh completionMinilla provides bash and zsh completion files under "contrib/" directory.AUTHORSTokuhiro Matsuno < tokuhirom@gmail.com >Tatsuhiko Miyagawa THANKS TORJBS, the author of Dist::Zilla. Dist::Zilla points CPAN authorizing tool.SEE ALSOLICENSECopyright (C) Tokuhiro MatsunoThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Visit the GSP FreeBSD Man Page Interface. |