/ / Wątpliwości co do wymagań i wymagań dev Composer - php, composer-php, zarządzanie zależnościami

Wątpliwości dotyczące wymagania i wymagania-dev od Composer - php, composer-php, dependency-management

Konfiguruję repozytorium do zainstalowania przez kompozytora. Przeczytałem dokumentację Composer i z powodzeniem konfiguruję moje repozytorium. Co zrozumiałem z różnicy między require i require-dev było to, że require-dev służy do deklarowania zależności, które nie są obowiązkowe, aby repozytorium działało poprawnie.

Jednak oglądałem composer.json niektórych bibliotek na Githubie, na przykład Formularz Zend i Respect Validation, a na tych dwóch repozytoriach znajdują się pakiety, które są wymagane, aby te repozytoria działały poprawnie i były wymienione w require-dev. Na przykład egulias/email-validator zależność jest wymieniona w require-dev w odniesieniu do sprawdzania poprawności, ale włączone ten plik, ta zależność jest wymagana do działania Email Validatora. Dlaczego więc tej zależności nie ma na liście require?

To samo dzieje się z zendframework/zend-captcha, wymagane do tego Element Captcha Prace.

Odpowiedzi:

1 dla odpowiedzi № 1

ta zależność jest wymagana do działania walidatora poczty e-mail.

To nie jest. Możesz to zobaczyć RespectValidationRulesEmail ma opcjonalną zależność od EguliasEmailValidatorEmailValidator. Jeśli egulias/email-validator jest zapewniona, wtedy klasa będzie Użyj tego, w przeciwnym razie nastąpi powrót do filter_var. Klasa będzie działać w obu kierunkach. Pakiet może zrobić sugerować aby go zainstalować.