[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