Domanda

Dal mio funzionalità di base tradizionalmente è solo incluso comprensione Perl, e la gente installare librerie aggiuntive a fare ogni sorta di cose utili (e, a volte molto di base). Ma ad un certo punto c'è venuto per essere "librerie di base" che vengono forniti con Perl di default -. In modo da poter usare queste librerie senza installarli

Per chi proviene da Python sono curioso come questo viene gestito. In particolare:

  1. Come sono le librerie scelto?
  2. le librerie hanno ancora i loro numeri di versione e tempi di rilascio?
  3. Che tipo di garanzie indietro-compatibilità avete quando si utilizzano queste librerie?
  4. E 'comune per aumentare o ridurre queste librerie in un sistema? È questo a livello di sistema fatto o più specificamente?
  5. Se c'è un bug fix che richiede un cambiamento API, come succede questo?
  6. Come viene funzionalità aggiunta a queste librerie di base (se è a tutti)?
È stato utile?

Soluzione

  1. Al momento, solo le librerie che sono necessarie per bootstrap / installare altre librerie vanno in href="http://search.cpan.org/dist/Module-CoreList/" rel="nofollow noreferrer"> lista nucleo .
  2. Alcuni sono solo nel repository git Perl. Alcuni sono dual-vita su CPAN e in pronti contro termine. A volte i bug vengono fissati in pronti contro termine e le modifiche vengono backport alla versione CPAN. A volte c'è una nuova versione in un Perl controlli manutentore CPAN e il modulo nel repository.
  3. Potete contare su un modulo di base. C'è un periodo deprecazione molto lungo prima che uno viene rimosso, recente esempio importante era Switch.
  4. confezionatori (ad esempio le persone che RPM di generazione per una distribuzione Linux) non potevano ottenere questo diritto; l'ordine sbagliato di includere percorsi (@INC) non è colpa loro, e infine fissato con 5.12 . Questo è il motivo per cui la raccomandazione proviene per compilare il proprio perl e non si scherza con l'installazione del sistema. Con 5.12, si suppone di solo uso CPAN di installare una versione aggiornata di un modulo di base, e viene installato addtionally a quello fornito con il sistema, ma dal momento che il nuovo viene prima quello vecchio nel percorso di inclusione, la nuova uno viene caricato quando si use / require esso.
  5. perlpolicy .
  6. Programma la funzionalità e test per esso, documentano la cosa, quindi rilasciare su CPAN o, rispettivamente, hanno un manutentore applicare il changeset. Questo è accompagnato da una discussione sulle P5P .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top