Nette Code Checker
Code Checker sprawdza Twoje pliki źródłowe i znajduje w nich formalne usterki, takie jak niewidoczny BOM, znaki kontrolne, błędne kodowanie czy nieprawidłowa składnia plików PHP, Latte, NEON, JSON i YAML, oraz potrafi je automatycznie naprawić.
Instalacja
Zainstaluj go globalnie za pomocą Composera:
composer global require nette/code-checker
Upewnij się, że Twój globalny katalog bin Composera znajduje się w zmiennej $PATH. Polecenie code-checker jest
wtedy dostępne z dowolnego miejsca, w dowolnym systemie operacyjnym.
Alternatywnie zainstaluj go jako samodzielny projekt:
composer create-project nette/code-checker
Wymaga PHP 8.0 lub nowszego.
Użytkowanie
Domyślnie Code Checker działa w trybie tylko do odczytu i jedynie wypisuje znalezione problemy:
code-checker
Aby faktycznie naprawić pliki, dodaj --fix. Najpierw wykonaj kopię zapasową plików lub uruchom narzędzie na
czystym drzewie roboczym, abyś mógł później przejrzeć zmiany za pomocą git diff:
code-checker --fix
Skanowanie możesz ograniczyć do konkretnej ścieżki, pominąć pliki lub uruchomić szybszą kontrolę samej składni:
code-checker -d src --ignore "temp/*"
code-checker --only-syntax
W trybie tylko do odczytu narzędzie kończy działanie z kodem 0, gdy wszystko jest w porządku, oraz
1, gdy znajdzie jakikolwiek problem, dzięki czemu dobrze pasuje do procesów CI.
Pełna lista opcji:
Usage: code-checker [options]
Options:
-d <path> Folder or file to scan (default: current directory)
-i | --ignore <mask> Files to ignore
-f | --fix Fix the files
-l | --eol Normalize line endings to the system default
--only-syntax Check syntax only (faster)
--no-progress Do not show progress dots
--version Show version
Co robi Code Checker
- sprawdza składnię szablonów Latte oraz plików
.php,.neoni.json - usuwa BOM
- weryfikuje, czy pliki są poprawnym UTF-8
- sprawdza występowanie znaków kontrolnych
- wykrywa błędnie zapisane komentarze phpDoc (np.
/* @varzamiast/** @var) - wymusza wcięcia tabulatorami w plikach PHP, CSS, JS i TS oraz spacjami w YAML
- usuwa końcowe spacje i puste wiersze na końcu plików
- normalizuje końce wierszy do domyślnych dla systemu (za pomocą parametru
-l)