Większość języków programowania ma swój style checker tudzież linter. Czy to wystarcza? Jeśli do tej pory w repozytorium miałeś/aś tylko CheckStyle, to mam zamiar przekonać Cię, że warto dorzucić też plik .editorconfig
. Napiszę też, czemu należy standard editorconfig wspierać na serwerze CI i jak to zrobić – moją propozycją jest narzędzie editorconfig-checker. Jego największą zaletą jest niezależność od typu naszego projektu. Czy to rozbudowana aplikacja w Javie albo TypeScripcie, czy repozytorium zbierające luźno powiązane skrypty w Pythonie i Bashu – zawsze będzie przydatne.
Mnie do wpięcia tego narzędzia do continuous integration przekonała typowa sytuacja – w pewnym repozytorium edytowałem dwa skrypty shellowe, w jednym ktoś narobił wcięcia spacjami, w drugim ktoś inny tabulacjami. Nie widać różnicy na pierwszy rzut oka, wstawiłem linijkę tu, linijkę tam. Patrzę w git diff
, a tam moje linijki nie równają się z otoczeniem, do tego w zmianach pojawiło się \ No newline at end of file
, czyli ktoś nie używał poprawnie ustawionego edytora tekstu. Potem znalazłem Dockerfile wcinany raz to spacjami, a raz to tabulacjami.