CPAN Suche Häufig gestellte Fragen

Häufig gestellte Fragen

1. Worauf läuft diese Site?
2. Warum ist das Modul X nicht vorhanden?
3. Warum ist das Modul X nicht da, obwohl es auf search.cpan.org auftaucht?
4. Warum fehlt beim Modul X die Dokumentation?
5. Warum fehlen alle oder einige der Voraussetzungen eines Paketes?
6. Wie ist die Syntax für die Suche?
7. Wie benutze ich die PPM-Quellen?
8. Gibt es noch weitere Suchmaschinen für das CPAN?
9. Welche Konventionen gibt es, an die man sich für externe Links halten sollte?
10. Ich habe ein Problem gefunden. An wen wende ich mich?
11. Ist der Quellcode verfügbar, auf dem diese Website läuft?

Worauf läuft diese Site?

  Die Grundlage ist ein Linux-System, als Software kommen unter anderem mysql, Apache und mod_perl, Template-Toolkit und natürlich Perl zum Einsatz. Der Multiplexer, der Downloads zum (hoffentlich) nächsten CPAN-Mirror umleitet, basiert auf GeoIP. Die Netzanbindung wird von der Univerisät von Winnipeg bereitgestellt.

Warum ist das Modul X nicht vorhanden?

  Gesetzt den Fall, dass es erfolgreich im CPAN indiziert wurde und dass genug Zeit verstrichen ist, sodass der lokale Mirror es übernommen hat, könnte dies daran liegen, dass die Distribution eine unübliche Struktur hat. Im Speziellen wird hier erwartet, dass die Distribution sich in ein Unterverzeichnis entpackt, das sich vom Namen der Distribution ableitet und dass der Name der Distribution und eine gültige Version mit Graham Barrs CPAN-DistnameInfo-Modul extrahiert werden können.

Warum ist das Modul X nicht da, obwohl es auf search.cpan.org auftaucht?

  Die Indizierung basiert auf den CPAN-Indices, die restriktiver sind als die, die auf search.cpan.org benutzt werden. Daher ist die Wahrscheinlichkeit recht hoch, dass ein Modul, das hier nicht auftaucht, auch von Tools wie CPAN/CPANPLUS nicht gefunden wird. Dies kann mehrere Gründe haben - es kann eine Entwickler-Version sein (gekennzeichnet als solche durch einen Unterstrich in der Versionsnummer der Distribution), es ist möglicherweise nicht bei PAUSE registriert oder es ist registriert aber mit einer anderen CPAN-id. Beachten Sie, dass nur die aktuellste Version einer Distribution in der Datenbank sind, was Module ausschließt, die nur in älteren Versionen einer Distribution enthalten sind.

Warum fehlt beim Modul X die Dokumentation?

  Dies kann an Problemen bei der Extraktion oder der Umwandlung in HTML liegen. Eine weitere Möglichkeit ist, dass das Modul sich nicht an die erwartete Konvention für den NAME-Bereich der pod-Dokumentation hält, in der der Name des Moduls angegeben wird. Außerdem kann es sein, dass es vorhanden ist aber nicht an einem Standard-Ort - Sie können, als Beispiel, http://cpan.uwinnipeg.ca/htdocs/libnet/ öffnen, um eine Übersicht über alle mit einer Distribution verbundenen Dokumente zu erhalten.

Warum fehlen alle oder einige der Voraussetzungen eines Paketes?

  Die Informationen über Voraussetzungen werden aus der Datei META.yml innerhalb der Distribution extrahiert. Nicht alle Distributionen haben diese Datei, da sie nur erstellt wird, wenn man eine Distribution mit einer relativ neuen Version von ExtUtils::MakeMaker oder Module::Build erzeugt.

Wie ist die Syntax für die Suche?

  - Eine grundlegende Abfrage wie `foo bar` wird, abhängig von dem ausgewählten Such-Typ, Modulnamen und -kurzbeschreibungen, Distributionsnamen und -kurzbeschreibungen, CPAN-ids und Namen durchsuchen und wird alle Resultate liefern, die alle Worte enthalten. Bei der Suche in Kurzbeschreibungen werden nur Begriffe mit mehr als zwei Zeichen beachtet.
  - Wenn Sie einen Begriff ausschließen wollen, stellen Sie ihm ein Minus-Zeichen voran, zB `foo -bar`.
  - Suchabfragen können auch mit regulären Ausdrücken durchgeführt werden - diese werden erkannt, wenn eines oder mehrere der Zeichen ^, $, *, +, ?, | im Suchausdruck auftauchen.
Wie benutze ich die PPM-Quellen?

  Lesen Sie die Dokumentation von ActivePerl für generelle Informationen zur Benutzung von ppm. Die ppm-Pakete, die hier auftauchen, können mit dem ppm-Programm installiert werden. Für die ActivePerl-Pakete sollten Sie in der Lage sein, die Pakete mit `install Paket-Name` innerhalb von ppm zu installieren; für die anderen Pakete müssen Sie möglicherweise den angezeigten Ort zur Liste Ihrer Quellen hinzufügen:

  - http://www.bribes.org/perl/ppm, für das Perl 5.6/5.8 Depot von bribes
  - http://theoryx5.uwinnipeg.ca/cgi-bin/ppmserver?urn:/PPMServer, für das Perl 5.6 Depot von uwinnipeg
  - http://theoryx5.uwinnipeg.ca/cgi-bin/ppmserver?urn:/PPMServer58 (ActivePerl Builds < 819) / http://theoryx5.uwinnipeg.ca/ppms/ (ActivePerl Builds >= 819), für das Perl 5.8 Depot von uwinnipeg

  Stellen Sie sicher, dass Sie die Quellen nutzen, die für Ihre Perl-Version richtig sind (5.6-Quellen für ActivePerl 6xx Builds, 5.8-Quellen für ActivePerl 8xx Builds). Beachten Sie auch, dass der Name, der hier genannt wird, der auf dem Namen der Distribution beim CPAN basiert, derjenige ist, den Sie bei der Installation angeben müssen; dieser stimmt oft, aber nicht immer, mit dem Namen des Hauptmoduls in der Distritbution überein.

  Wenn Sie ein PPM-Depot betreuen und es in die Datenbank aufgenommen werden soll, wird zur Zeit eine summary.ppm-Datei benötigt, die alle verfügbaren Dateien enthält. Wie man diese erzeugt wird in dem Script beschrieben, das in der PPM-Distribution auf dem CPAN verfügbar ist. Nachdem Sie diese Datei erzeugt haben, kontaktieren Sie bitte Randy Kobes mit Details über Ihr PPM-Depot.

Gibt es noch weitere Suchmaschinen für das CPAN?

  Ja.

  - search.cpan.org.
  - www.perldoc.com.
  - wait.cpan.org.
Welche Konventionen gibt es, an die man sich für externe Links halten sollte?

  - Ein Link wie http://cpan.uwinnipeg.ca/~gbarr führt zu Informationen über den CPAN-Autor mit der id GBARR.
  - Für Informationen über eine bestimmte Distribution oder ein Modul benutzen Sie einen Link wie http://cpan.uwinnipeg.ca/dist/libnet (für Distributionen) oder http://cpan.uwinnipeg.ca/module/Net::FTP (für Module). Für Distributionen können Sie auch http://cpan.uwinnipeg.ca/~gbarr/libnet benutzen, wenn Sie den CPAN-Autor wissen.
  - Für alphabethische Auflistung von Distributionen und Modulen nutzen Sie http://cpan.uwinnipeg.ca/dist/A/ oder http://cpan.uwinnipeg.ca/module/A/ für alle Distributionen oder Module, die mit einem bestimmten Buchstaben beginnen. Benutzen Sie http://cpan.uwinnipeg.ca/dist/Apache/ oder http://cpan.uwinnipeg.ca/module/Apache/ um Distributionen, die Apache-* entsprechen oder Module, die Apache::* entsprechen, anzuzeigen. Beachten Sie den abschließenden Schrägstrich in diesen Links.
  - Um in eine Kategorie zu linken, können Sie http://cpan.uwinnipeg.ca/chapter für die Hauptkapitel, http://cpan.uwinnipeg.ca/chapter/World_Wide_Web_HTML_HTTP_CGI für ein bestimmtes Kapitel und http://cpan.uwinnipeg.ca/chapter/World_Wide_Web_HTML_HTTP_CGI/Apache für ein Unterkapitel benutzen.
  - Links Dokumenten für ein bestimmtes Modul können als http://cpan.uwinnipeg.ca/htdocs/libnet/Net/FTP.html angelegt werden, um die Dokumentation für Net::FTP in der libnet-Distribution anzuzeigen. Alternativ können Sie http://cpan.uwinnipeg.ca/perldoc?Net::FTP benutzen (Dies funktioniert auch für die Perl-Dokumentation, zum Beispiel bringt http://cpan.uwinnipeg.ca/perldoc?perlfaq die PerlFAQ. Beachten Sie, dass diese Dokumentationslinks aus einer Vielzahl von Gründen, die meistens die Konvetionen im CPAN-Index und die Form der pod-Dokumentation innerhalb der Distribution betreffen, möglicherweise nicht für alle Module funktionieren.
Ich habe ein Problem gefunden. An wen wende ich mich?

  Bitte senden Sie eine Email an Randy Kobes wenn Sie auf Probleme stoßen, nicht-funktionierende Links und Fehler in den Übersetzungen eingeschlossen. Bitte geben Sie Details (und Links) an, was Sie taten, als das Problem auftrat.

Ist der Quellcode verfügbar, auf dem diese Webseite läuft?

  Ja. Schauen Sie nach dem CPAN-Search-Lite Projekt auf SourceForge. Eine Mailing-List ist verfügbar für Fragen rund um die Installation, die Diskussion von Bugs und Vorschläge von Verbesserungen und Features. Beachten Sie, dass dieses Projekt nicht dazu gedacht ist, mit dem (fantastischen) search.cpan.org zu konkurrieren, das eine Reihe Features enthält, die es hier nicht gibt (ältere Releases von Distributionen, grep- und diff-Fähigkeit etc). Eine Richtung, die dieser Code hier einschlagen könnte, könnte zu Diensten abseits der Standard-Web-Dienste (SOAP-basierende Tools zum Beispiel) führen.