błędy w zależno

Jakub Bogusz qboosh w pld.org.pl
Śro, 18 Wrz 2002, 19:50:15 CEST


On Wed, Sep 18, 2002 at 09:08:33AM +0200, Robert Grabowski wrote:
> Jakub Bogusz wrote:
> >On Tue, Sep 17, 2002 at 09:26:49PM +0200, Andrzej Krzysztofowicz wrote:
> >
> [...]
> >
> >
> >IIRC tylko nie wykrywanie zależności z 'require cośtam' w nielicznych
> >przypadkach.
> >
> 
> Przeważnie użycie przez autora modułu require zamiast use jest celowe - 
> ładuje się w ten sposób moduły, które nie są wymagane do pracy modułu, 
> ale gdy istnieją, to mogą być wykorzystane. Zatem wrzucanie takich 
> modułów do provides, jest wg. mnie bez sensu. Może się powiem zdarzyć, 
> że przez require sprawdzane jest jaki moduł bazy danych jest dostępny i 
> wykorzystywany jest pierwszy załadowany. W przypadku, gdy wrzucimy 
> wszystkie moduły ładowane przez require do provides, to będziemy mieli 
> tego nadmiar. Przykłady takich modułów mogę przytoczyć (poszukać) jak 
> ktoś chce.

Właśnie dlatego w perl.req z rpm-a 4.0.4 'require' jest uwzględniane
nie zawsze:

      # we only consider require statements that are flush against
      # the left edge. any other require statements give too many
      # false positives, as they are usually inside of an if statement
      # as a fallback module or a rarely used option

      ($whitespace ne "" && $statement eq "require") && next;

Trochę to prymitywne, ale działa dosyć dobrze.
W pojedynczych przypadkach nie wyłapuje rzeczywiście potrzebnych modułów,
natomiast nie dodaje do Requires modułów wymaganych wewnątrz jakichś ifów
(chyba że ktoś w ogóle nie stosuje wcięć).


-- 
Jakub Bogusz    http://prioris.mini.pw.edu.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl