[Munich-pm] Dist::Zilla - Experimente
Harald Jörg
Harald.Joerg at arcor.de
Mi Mär 25 16:15:44 PDT 2015
Hallo Mongers,
irgendwann, irgendwo bei einem Mongers-Meeting hat irgendwer Dist::Zilla
gepriesen (Daniel - und andere?)
Ich habe in den letzten Jahren meistens den module-starter mit ein paar
Plugins (::Smart, ::PBP) benutzt, aber irgendwie war ich neugierig, weil
ich nicht sooo ganz zufrieden war. Gleich vorweg: Insgesamt ist das
eine feine Sache (und nach git und Moose die dritte Änderung meiner
Arbeitsmethoden, die ich den Mongers abgeschaut habe).
Erste Erfahrung: Dist::Zilla ist ein Monster an Abhängigkeiten. Na gut,
man installiert's nur einmal. Oder nein, zweimal (dazu später).
Zweite Erfahrung: Mit dem Tutorial kommt man über die ersten Hürden.
Was mir wichtig war und ich schon hingekriegt habe:
* .gitignore gleich mit erzeugen für ein neues Projekt. Nett, weil
man die Build-Rückstände, Emacs-Backups, "versehentlich" erstellte
NYTProfs gleich vornweg schon aus dem git-Weg räumt.
* Pod::Weaver: feine Sache, ist ein großer Fortschritt gegenüber dem
module-starter.
* Unterschiedliche Modul-Templates für unterschiedliche Projekte (mit
Moose / ohne Moose, mit bestimmten Konventionen)
Warum ich zweimal installieren musste:
* Meistens brauche ich mehr als ein Modul für ein Projekt. Na gut, es
gibt dzil add. Öha: Auf etwas älteren Linux-Distributionen ist ein
Dist::Zilla drauf, das noch kein dzil add kann!! Also dort nochmal
installieren, diesmal nicht mit apt-get, sondern von CPAN. Und
das dauert.... und dauert.... und dauert... weil er auch die ganzen
Testsuiten samt der dadurch zusätzlich entstehenden Abhängigkeiten
installiert und durchlaufen läßt.
Was ich nicht geschafft habe und wo ich für Tipps dankbar wäre:
* Für manche Typen von Projekten (z.B. MooseX::App::Cmd-Zeug) will
ich nicht nur mit einem Foo.pm anfangen, sondern gleich auch ein
Directory Foo/Command anlegen und ein Muster-Kommando reinstecken.
Denn das eigentliche Foo.pm ist in dem Fall nur ein Dreizeiler.
Wie erstelle ich einen *Verzeichnisnamen* aus dem Projektnamen?
* Bei Moose-Roles oder Subclasses fände ich es geil, wenn ich die
Perldocs der Rollen oder Basisklassen reinkopieren könnte.
Ich hasse es, wenn ich immer hin- und herblättern muss. Gibt's da
was automatisches?
--
Cheers,
haj
Mehr Informationen über die Mailingliste Munich-pm