PHPLint, CodeSniffer, Psalm

Проверка корректности кода с PHPLint. Валидация и корректировка стиля кода с CodeSniffer. Подключение статических анализаторов.

Скрытый контент
Комментарии (22)
Arunas

Спасибо :)

Ответить
Arunas

команда make init не заработала, ошибка: Generating autoload files ocramius/package-versions: Generating version class... ocramius/package-versions: ...done generating version class docker run --rm -v /api:/app -w /app alpine chmod 777 var chmod: var: No such file or directory Makefile:26: recipe for target 'api-permissions' failed make: *** [api-permissions] Error 1

Ответить
Arunas

На Линукс Ubuntu 18.04 всё ок, видимо, какие то не поладки в видовс, с вагрантом...

Ответить
Ruslan

Еще однин мученик на винде :) Скажите как вы организовали свою работу, особенно где у вас установлен PhpStorm? как прокинули портя в Винду?

Ответить
Arunas

Никаких мучений не испытываю. C Виндовс 10 про (там PhpStorm): Vagrant UP...-> VM (Ubuntu 16 голый - там инсталируем docker-compose и др.) -> вид 192.168.56.101:8081, 192.168.56.101:8080. В PhpStorme VM достигаем через ssh (C:\Users\arsku\projects\lPggCH\puphpet\files\dot\ssh\id_rsa)... и т.д.

Ответить
Ruslan

я так понимаю докер вы не используете, поэтому и мучений нет :)

Ответить
Arunas

Docker у меня не в Винде, а в VM (которую запускаю с Vagrant), Vagrant позволяет работать с тем-же каталогами и от Виндовса (там PhpStorm и вид в Crome через 192.168.56.101) и от Линукса (там же Docker и др). Дайте емайл - скину скрин-шот (извините за ошибки...)

Ответить
Ruslan

Vagrant and VirtualBox моя рабочая среда :) , в смысле для работы. tvjelgava@gmail.com И Vgrantfile скиньте, хочу посмотреть какие порты пробрасываете.

Сильно тормозит такой набор?

Ответить
Arunas

Пока не тормозит. с Vagrantfile не заморачиваюсь. Скинул.

Ответить
Arunas

Интересно, как Вы без Виндовс задействуете работу с кассовими апаратами и др. бизнес приборими (им надо ActiveX), ведь в магазинах, офисах стоит ВИНДОВС :)

Ответить
Ruslan

Я вас цельком поддерживаю MS Word никто не отменял. Просто я давно присматриваеюсь к Докеру и не видел в нем особой пользы, но сейчас всё проясняется и мне бы хотелось его использовать. Думал вы тоже с этим бьётесь и можно было обменятся опытом.

Ответить
Arunas

после make up, команды: make lint и make analyze прошли успешно.

Ответить
Александр

У меня у одного видео при просмотре подвисает?

Ответить
Юлия Елисеева

У меня всё нормально воспроизводится. Может, у вас скорость интернет-соединения низкая?

Ответить
Александр

Сейчас все хорошо даже на 2х скорости. Но вчера вечером даже на нормальной скорости были подвисания.

Ответить
Александр

Что вы думаете по поводу анализатора phan ? от творца php, пишут что он единственный настоящий статический анализатор - так как строит синтаксическое дерево при анализе. Но он сложноват в настройке.

Ответить
Ruslan

У меня под Виндой линтер ругается : End of line character is invalid; expected "\n" but found "\r\n"

Если делать деплой git-ом, то это заменятся автоматически, должен ли я это сообщение добавить в игнор, или всё таки нужно фиксить?

Ответить
Дмитрий Елисеев

Настройте в редакторе использование "\n" для файлов.

Ответить
Sergei

Дмитрий, позвольте получить от вас комментарий, что за phpspec, что за зверь такой, почему мы его не используем и чем он отличается от mockery? Спасибо.

Ответить
Дмитрий Елисеев

Mockery - это независимая библиотека для создания моков и стабов вместо createMock и createStab.

PHPSpec как Behavior Driven тестовый фреймворк позволяет записывать юнит-тесты через описание поведения кода более человекочитаемым языком.

BDD подход мы будем использовать для написания приёмочных тестов.

Ответить
Андрей

Дмитрий, у меня после добавления "squizlabs/php_codesniffer" или "overtrue/phplint" в composer.json и запуска make api-composer-install не происходит установки этих библиотек через Composer.

Composer выводит сообщение:

Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. It is recommended that you run `composer update` or `composer update <package name>`.
Nothing to install or update.

При запуске composer install и при наличии файла composer.lock не проверяются изменения в файле composer.json. Приходится запускать вручную composer update.

Что вы можете посоветовать в данном случае?

Ответить
Дмитрий Елисеев

Да, в lock-файле сохраняется хэш зависимостей из файла composer.json. И при ручном изменении это ломается. Так что добавляйте зависимости в файл не вручную, а через require:

composer require --dev overtrue/phplint

Иначе если правите вручную, то придётся запускать composer update, чтобы хэш персчитался. Но это обновит все пакеты.

Ответить
Зарегистрируйтесь или войдите чтобы оставить комментарий