Współtworzenie
Konfiguracja środowiska deweloperskiego
Dział zatytułowany „Konfiguracja środowiska deweloperskiego”-
Utwórz fork i sklonuj
Okno terminala git clone https://github.com/sqrcz/numerik.gitcd numerik -
Zainstaluj zależności PHP
Okno terminala composer install -
Uruchom zestaw testów
Okno terminala composer test
Lokalne sprawdzenia
Dział zatytułowany „Lokalne sprawdzenia”| Polecenie | Opis |
|---|---|
composer test | Zestaw testów PHPUnit |
composer test:cover | PHPUnit z raportami pokrycia HTML + Clover |
composer stan | PHPStan na poziomie 10 |
composer cs-fix | PHP CS Fixer — automatyczne formatowanie kodu |
composer cs-check | PHP CS Fixer — tylko sprawdzanie (używane w CI) |
composer mutation | Testy mutacyjne Infection |
composer check | cs-check + stan + test po kolei |
Uruchom composer check przed otwarciem PR, aby wykryć wszystkie problemy lokalnie.
Dodawanie nowego identyfikatora
Dział zatytułowany „Dodawanie nowego identyfikatora”Dodanie nowego identyfikatora (np. Dowód Osobisty, IBAN PL) wymaga zmian w kilku miejscach:
- Utwórz
src/ValueObjects/NewIdentifier.php(klasa readonly implementującaIdentifierInterface) - Utwórz
src/Identifiers/NewIdentifierIdentifier.php(implementujeValidatorInterfaceiParserInterface; przyjmujebool $strict = true) - Dodaj nowe przypadki
ValidationFailureReasonjeśli identyfikator wprowadza nowe typy błędów - Dodaj metodę fabryczną do
src/Numerik.php(Numerik::newIdentifier(bool $strict = true)) - Dodaj
tests/Fixtures/NewIdentifierFixtures.phpz metodami statycznymi::valid()i::invalid() - Dodaj testy jednostkowe walidatora, parsera i obiektu wartości
- Dodaj stronę identyfikatora w
docs/src/content/docs/identifiers/idocs/src/content/docs/pl/identifiers/ - Zaktualizuj
CHANGELOG.md
Styl commitów
Dział zatytułowany „Styl commitów”Używaj Conventional Commits:
feat: add Dowód Osobisty validationfix: correct PESEL checksum for 2100s birth datesdocs: update REGON algorithm descriptiontest: add NIP fixtures for invalid tax office codeschore: update PHPStan to 2.xProces pull requestów
Dział zatytułowany „Proces pull requestów”- Utwórz gałąź od
main(np.feature/dowod-osobisty). - Wprowadź zmiany.
- Upewnij się, że
composer checkprzechodzi. - Otwórz PR względem
maini wypełnij szablon.
Zgłaszanie błędu
Dział zatytułowany „Zgłaszanie błędu”Użyj szablonu Bug Report na GitHub.
Luki w zabezpieczeniach
Dział zatytułowany „Luki w zabezpieczeniach”Prosimy nie otwierać publicznego zgłoszenia. Zgłoś przez prywatny system zgłoszeń GitHub. Zobacz SECURITY.md.
If this saved you time → ☕ Buy me a coffee