-
junglecat © (08.10.14 12:16) [59]
Он этим и хорош в качестве образца для правил подобного анализатора. Потому что анализатор тоже не завязан на предметную область.
В рамках предметной области я бы рекомендовал ставить в коде какой-нибудь мета-тег, чтобы анализатор на код не реагировал, например.
По аналогии с {$HINTS OFF} в компиляторе
-
Ром, сия штука удаляется (обновляется)?
-
> turbouser © (08.10.14 10:13) [49]
>
> > Kerk ©
>
> А можно сделать portable версию? Что бы без setup/install?
Это как? Будешь вручную пакеты в IDE устанавливать? :)
> Dennis I. Komarov © (08.10.14 12:45) [61]
>
> Ром, сия штука удаляется (обновляется)?
Не понял связь между удалением и обновлением. Но удалить ее можно через диалог "Установки/удаления программ" Windows.
-
> Kerk © (08.10.14 12:47) [62]
Я не знаю, как ты ее в IDE запихиваешь, поэтому спросил)
-
> Dennis I. Komarov © (08.10.14 12:54) [63]
Никакой магии. В дельфовом диалоге Components->Install Packages ты можешь увидеть пакет.
-
> В дельфовом диалоге Components->Install Packages ты можешь
> увидеть пакет.
наверное могу... но не вижу(
-
Ну тут одно из двух. Либо оно у тебя не установлено, либо плохо ищешь :)
-
> Kerk © (08.10.14 13:09) [66]
Ну черт знает... запустил setup -> c:\Program Files\FixInsight\
Запускаю IDE...
Components->Install Packages
Что не так? Ребут нужен?
-
Dennis I. Komarov © (08.10.14 13:59) [67]
Сетап спрашивает, для какой версии Delphi установить. Он у тебя спрашивает ? :)
-
> Игорь Шевченко © (08.10.14 14:04) [68]
Да, XE5
-
> Dennis I. Komarov © (08.10.14 14:12) [69]
Ты конкретно в списке установленных пакетов найти не можешь или у тебя вообще в IDE ничего нового не появилось? Меню "Run FixInsight..." и всего такого тоже нет?
-
> Kerk © (08.10.14 12:47) [62]
> Это как? Будешь вручную пакеты в IDE устанавливать? :)
Ну, в общем да
-
> Меню "Run FixInsight..." и всего такого тоже нет?
нет
-
Скрины в почте
-
Ого. Так бы сразу и сказал. Ответил в почту. Предлагаю там продолжить)
> turbouser © (08.10.14 14:23) [71]
>
> > Kerk © (08.10.14 12:47) [62]
> > Это как? Будешь вручную пакеты в IDE устанавливать? :)
>
> Ну, в общем да
Это можно легко сделать. Но смысл?
-
Отпишусь здесь. В принципе Ром ты это уже все от меня слышал, но пишу чтоб народ мог дооформить саму идею.
Итак: консоль нужна обязательно.
По пунктам:
1. любое нормальное ПО собирает билдсервер, проводящий кучу проверок при самом билде и принимающий решение на каждом этапе - можем ли мы собрать релиз или нет.
2. анализ кода, проводимый твоей утилитой, очень хорошо способствует нахождению непреднамеренных ошибок (очепяток).
Кстати вчера тестируя твою бету выловил опасный глюк в коде от аутсорсера (в том модуле над которым ты смеялся... ага - он там опять внес свои правки :)
Что хотелось бы от консоли:
Конфигурилка параметров запуска.
Самое простое что я вижу, пока цеплять настройки из внешнего СFG файла (люого формата INI или XML), бо писать обвес еще и на парсинг командной строки - просто потратишь время.
Вывод результата - он должен быть двухуровневый, краткий в виде кода завершения процесса, который покажет что есть проблемма. И расширенный, желательно формализованный в виде XML, по которому билдсервер уже сам сможет принять решение - бродолжать сборку или нет.
Третье:
Обязательно введи такую вещь, как исключение по дефайнам. К примеру я точно знаю что код от строчки А до строчки Б - кривой, и я не хочу чтоб твой анализатор на нем спотыкался. Помимо этого обязательно введи глобальный дефайн на модуль целиком, чтоб можно было сказать - вот этот модуль вообще страшный: "Это писал ПРОГРАММИСТ - Это надо переписывать" © :)
-
Ну и обязательно конечно разберись с ошибками двойного присваивания на Add, а так-же перекрытия классового оператора In.
Ждем апдейта.
-
ЗЫ: ну и отдельное респектище тебе Ромч, за то что твой анализатор ввел в наш обиход такое понятие, как "передернуть переменную" :)
Показав нам вот такую глупость в коде аутсорсера :)
procedure ItogRebuild;
begin
with fmSetupExportItog.GsSmetaItog do
begin
if ChapterNumber=0 then
begin ChapterNumber := 1;
ChapterNumber := 0;
end
else begin ChapterNumber := ChapterNumber - 1;
ChapterNumber := ChapterNumber + 1;
end;
end;
end;
-
windows 8.1 ругается на дистрибутив (smartscreen), не дает запустить. имеет смысл, отказаться пока что от exe обертки вокруг msi.
https://dl.dropboxusercontent.com/u/26403307/smartscreen.png
-
>Показав нам вот такую глупость в коде аутсорсера :)
достойно
http://govnokod.ru/:)
хороший анализатор, кто бы что ни говорил. стоит дальше развивать, определенно.