|
|
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Peganza Pascal analyzer и SockSoftware CodeHealer - программы для поиска потенциальных ошибок и аномалий в исходном коде на Delphi, построения метрик и отчетов по структуре проектов. 1. Есть ли аналоги этих программ? Лучше бесплатные и opensource :) 2. Есть ли в России фирмы, которые официально занимаются продажей этих программ? Хочется немного переплатить, но упростить оформление покупки для бухгалтерии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 07:48 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
dp06 Peganza Pascal analyzer Долго и успешно использую. dp061. Есть ли аналоги этих программ? Лучше бесплатные и opensource :) Аналог встречал, название не помню, но PAL лучше. Бесплатных не нашел, кроме Icarus'а той же Peganza. dp062. Есть ли в России фирмы, которые официально занимаются продажей этих программ? Скорее всего нет. Попробуйте обратиться в любую фирму продающую софт для программистов. Удачи, Дмитрий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 09:35 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev dp062. Есть ли в России фирмы, которые официально занимаются продажей этих программ? Скорее всего нет. Попробуйте обратиться в любую фирму продающую софт для программистов Спасибо за ответ. Попробую обратиться, но сомневаюсь, что будет результат, т.к. нужна только 1 лицензия, а за $140(текущая цена PAL)+комиссионные они вряд ли захотят с этим возиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2006, 10:01 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Сегодня был анонсирован open-source проект CodeWrench . Потенциал велик. На данный момент состояние скорее зачаточное, что понятно для версии 0.2. Удачи, Дмитрий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2006, 12:04 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Спасибо за ссылку, уже закачал, буду смотреть. p.s. оперативно вы за новостями следите :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2006, 12:29 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Dmitry ArefievСегодня был анонсирован open-source проект CodeWrench . Потенциал велик. На данный момент состояние скорее зачаточное, что понятно для версии 0.2. Удачи, Дмитрий Ссылка уже битая :( проект наверное умер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2012, 13:39 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev CodeWrench http://sourceforge.net/projects/codewrench/ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2012, 13:50 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
У меня было сделано несколько проверок кода, написанного на Delphi, решил оформить их в виде программки, вдруг кому-нибудь пригодится :) Выложил здесь P.S. Дизайном и оформлением не особо заморачивался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2012, 02:55 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorУ меня было сделано несколько проверок кода, написанного на Delphi, решил оформить их в виде программки, вдруг кому-нибудь пригодится :) Выложил здесь P.S. Дизайном и оформлением не особо заморачивался. Прикольно. Особенно прикольно натравить на исходник Delphi. Из багов: " to 0" ищет даже в комментариях :). Возможно, и другие проверки этим грешат. Из фич: 1) таки выбор каталога стоит прикрутить; 2) стоит предусмотреть анти-чекер, например, вид комментария в строке а-ля Код: pascal 1. Иначе тяжело отсеивать новые из кучи ранее известных проблем, которые на поверку оказались идеальным кодом. После чего можно: а) или добавить ещё одну опцию, сброшенную по умолчанию: "Игнорировать анти-чекер"; б) или добавить ещё один вид тестов: "Искать строки с анти-чекером". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2012, 10:08 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
АнатоЛой2) стоит предусмотреть анти-чекер ... После чего можно: а) или добавить ещё одну опцию, сброшенную по умолчанию: "Игнорировать анти-чекер"; б) или добавить ещё один вид тестов: "Искать строки с анти-чекером". Ибо первое правило "улучшения": "новая фича хороша тогда, когда ей можно не пользоваться (или отключить)" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2012, 10:10 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
АнатоЛойИз багов: " to 0" ищет даже в комментариях :). Возможно, и другие проверки этим грешат. Да, сейчас комментарии не игнорятся во всех проверках. АнатоЛой1) таки выбор каталога стоит прикрутить; Хорошая идея. АнатоЛой2) стоит предусмотреть анти-чекер, например, вид комментария в строке а-ля Код: pascal 1. Иначе тяжело отсеивать новые из кучи ранее известных проблем, которые на поверку оказались идеальным кодом. После чего можно: а) или добавить ещё одну опцию, сброшенную по умолчанию: "Игнорировать анти-чекер"; б) или добавить ещё один вид тестов: "Искать строки с анти-чекером". У меня есть другая идея. Чтобы в программе можно было выбрать для игнорирования какое-нибудь сообщение, и чтобы программа запомнила эту строчку вместе с ближайшим окружением (например десять строк сверху и снизу от нее). При следующей проверке будет проверяться, если для какой-то ошибки строчка и ее окружение совпадает со списком игнорируемых, то не показывать эту ошибку. Вообще у меня времени мало, чтобы этим заниматься. Может быть в выходные займусь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2012, 14:07 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorУ меня есть другая идея. Чтобы в программе можно было выбрать для игнорирования какое-нибудь сообщение, и чтобы программа запомнила эту строчку вместе с ближайшим окружением (например десять строк сверху и снизу от нее). При следующей проверке будет проверяться, если для какой-то ошибки строчка и ее окружение совпадает со списком игнорируемых, то не показывать эту ошибку. С точки зрения анализа чужих исходников - хорошее решение. В своих же лучше комментировать прямо в исходнике, раз уж есть возможность влиять на первоисточник проблемного места... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2012, 14:55 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
АнатоЛойИз багов: " to 0" ищет даже в комментариях :). Возможно, и другие проверки этим грешат. Сделал, чтобы комментарии при проверке не учитывались АнатоЛойИз фич: 1) таки выбор каталога стоит прикрутить; Прикрутил :) АнатоЛой2) стоит предусмотреть анти-чекер, например, вид комментария в строке а-ля [src delphi] //[ANTI_CHECKER:DOUBLED_LINE] THIS LINE IS REALLY CORRECT! Анти-чекер пока не стал делать. Выложил новую версию здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2012, 16:11 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator, Вот только запустил и сразу виден мелкий недочет: как прочитать весь текст у чекбоксов? Ни хинта, ни сплиттера... :( Далее: нумерация строк не совпадает, выдает номер следующей строки. Одну ошибку таки нашёл: %в вместо %d. Чем так плох sleep, на который он тоже ругается? П.С. И эта... Выделения - это несколько из другой оперы. Но идея хороша! Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2012, 09:14 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Натравил на AnyDAC: 1) "Пустая секция except". Если в секции стоит коментарий, например "// silent" или "// nothing", то видать так оно и нужно. Нужна настройка - пустая без коментариев, пустая без кода. 2) Окно кода позволяет редактировать. Неплохо иметь возможность сохранить изменения. 3) "После пары строк идет точно такая же пара". Выдается, например на: Код: pascal 1. 2. 3. 4. 5. В данном случае IFDEF / ENDIF позволяет вложение. Ругаться на это точно не надо - компилятор и так скажет. В большинстве остальных случаев срабатывания ложные. Одно сообщение на сотню оказалось правильным :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2012, 10:07 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
1. Имена тестов нельзя полностью просмотреть 2. Орфография единицы измерения не понимает 3. Ложное срабатывание на двух одинаковых строках: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. но в одном месте действительно нашел опечатку мою - стоят "begin begin" и в конце "end end" :) 4. Пустые except с комментариями, как сказали выше, не нужно считать ошибкой. ну пока все, другие ошибки программа у меня не нашла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2012, 10:37 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
wadmanВот только запустил и сразу виден мелкий недочет: как прочитать весь текст у чекбоксов? Ни хинта, ни сплиттера... :( Согласен. Пожалуй сделаю сплиттер :) wadmanДалее: нумерация строк не совпадает, выдает номер следующей строки. Я у себя не замечал. Можно примерчик какой-нибудь? wadmanЧем так плох sleep, на который он тоже ругается? У нас некоторые товарищи ставят sleep просто для отладки, чтобы на них можно было брейкпоинты ставить, а потом забывают убрать. Поэтому и сделал, чтобы они искались. wadmanП.С. И эта... Выделения - это несколько из другой оперы. В смысле красным? Я делал по аналогии с Дельфой, она тоже красным выделяет ошибки. wadmanНо идея хороша! Спасибо! Пожалуйста :) Dmitry ArefievНатравил на AnyDAC: 1) "Пустая секция except". Если в секции стоит коментарий, например "// silent" или "// nothing", то видать так оно и нужно. Нужна настройка - пустая без коментариев, пустая без кода. 2) Окно кода позволяет редактировать. Неплохо иметь возможность сохранить изменения. 3) "После пары строк идет точно такая же пара". Выдается, например на: Код: pascal 1. 2. 3. 4. 5. В данном случае IFDEF / ENDIF позволяет вложение. Ругаться на это точно не надо - компилятор и так скажет. В большинстве остальных случаев срабатывания ложные. Одно сообщение на сотню оказалось правильным :) Согласен. Насчет того, что много ложных срабатываний - это да. Я исключаю из проверки некоторые случаи, которые точно правильные, этот тоже добавлю. К сожалению все исключить не получится. Но я в наших проектах так нашел несколько ошибок. Кстати, я не все проверки включил в публичную версию, просто там еще больше ложных срабатываний :) Yed2. Орфография единицы измерения не понимает А какие именно? Проверил 'кг', 'см', 'гр', 'м'. На них не ругается. На остальные вопросы уже ответил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2012, 00:57 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorА какие именно? Проверил 'кг', 'см', 'гр', 'м'. На них не ругается. На остальные вопросы уже ответил. В моем случае не понял литры (л.). Вот еще слова и общепринятые сокращения, которые можно добавить в словарь: н/д банкомат Автомагазин Вкл. Выкл. Автомойка Шиномонтаж ОК пикс. Вообще спасибо за работу, хотелось бы иметь такой "quick code checker" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2012, 02:53 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorЯ у себя не замечал. Можно примерчик какой-нибудь? См. рисунок. AKdominatorВ смысле красным? В смысле названия кнопки "Выделить все". Над этим (точнее над аналогичным названием кнопки) девушки ржали долго Заменить-бы на "Отметить" или на что-то подобное. Но это моя придирка, связанная с моим прошлым. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2012, 08:46 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
даешь программу на Bitbucket ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2012, 09:26 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
YedВот еще слова и общепринятые сокращения, которые можно добавить в словарь:Имхо, правильнее было бы вынести словарь во внешний файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2012, 15:16 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
YedAKdominatorА какие именно? Проверил 'кг', 'см', 'гр', 'м'. На них не ругается. На остальные вопросы уже ответил. В моем случае не понял литры (л.). Вот еще слова и общепринятые сокращения, которые можно добавить в словарь: н/д банкомат Автомагазин Вкл. Выкл. Автомойка Шиномонтаж ОК пикс. Я брал за основу словарь OpenOffice, там таких слов нет, зато есть "банкомет" Я так понимаю надо делать, чтобы можно было самим добавлять слова в свой словарь. wadmanAKdominatorЯ у себя не замечал. Можно примерчик какой-нибудь? См. рисунок. Чёта я ступил. Спасибо, исправлю. wadmanВ смысле названия кнопки "Выделить все". Над этим (точнее над аналогичным названием кнопки) девушки ржали долго Заменить-бы на "Отметить" или на что-то подобное. Но это моя придирка, связанная с моим прошлым. :) Не вижу тут ничего странного. Например, в uTorrent'е тоже есть кнопка "Выделить все". В принципе я не против переименования, только не знаю как обратную операцию назвать. "Разотметить", "Снять отметки" - как-то странно звучит. Bitbucketдаешь программу на Bitbucket ! Не могу исходники открыть, потому что использую чужие модули. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2012, 00:57 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorНе вижу тут ничего странного. Например, в uTorrent'е тоже есть кнопка "Выделить все". В принципе я не против переименования, только не знаю как обратную операцию назвать. "Разотметить", "Снять отметки" - как-то странно звучит. использовать молчаливый toolbar :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2012, 03:28 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorВ принципе я не против переименования Можно и не напрягаться по этому поводу, обычным пользователям программа вряд-ли понадобится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2012, 08:51 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Выпустил новую версию. Скачать можно здесь Всем спасибо за замечания! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2012, 13:09 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
это наподобие FxCop в мире шарпа только под паскаль? Помню, как первый раз скормил свою сборку FxCop'у, глаза повылазили от количества предложений что-то улучшить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2012, 13:13 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Не работал раньше с FxCop. Сейчас посмотрел на Википедии, похоже у них подход немного другой. Я анализирую исходные коды, а они компилированный объектный код. Предупреждений действительно много выдается. Пытаюсь сократить, оставив только нужное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2012, 00:55 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorЯ анализирую исходные коды, а они компилированный объектный код.Ну дык, дотнет такой дотнет, код свой не защитишь, считай исходники отдал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2012, 10:26 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Выпустил новую версию программы CodeVerifier - 0.4 Список изменений: Добавлен тест "Деструктор не содержит в себе inherited". Отсутствие inherited в деструкторе означает, что не будет вызван деструктор предка - это может приводить к утечкам памяти ли неправильной работе программы. Добавлен тест "Проверка расположения компонентов друг относительно друга". Он проверяет небольшие сдвиги компонентов одного типа друг относительно друга. Добавлен тест "Поиск создания Exception'ов без ключевого слова raise". Отсутствие ключевого слова raise перед созданием исключения может означать, что исключение не будет возбуждено, выполнение программы не прервется, а созданный объект исключения останется висеть в памяти. Скачать можно здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 00:54 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator, Спасибо. Может Вы отдельную ветку создадите, для удобства? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 06:25 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator, Спасибо. Может Вы отдельную ветку создадите, для удобства? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 06:25 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
inherited Destroy - неправильно отрабатывает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 16:13 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
YedСпасибо. Может Вы отдельную ветку создадите, для удобства? Я наверное лучше блог заведу. inherited Destroyinherited Destroy - неправильно отрабатывает А что неправильно? Можете пример привести? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 16:31 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorА что неправильно? Можете пример привести? Если в деструкторе написано не просто inherited, а inherited Destroy, то выдается сообщение, что в деструкторе не указан inherited. А он есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 17:00 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Ну или вот Код: pascal 1. 2. 3. 4. 5. 6. Если Exception.Create не находится на одной строке с raise, матюкается на использование Exception без raise ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 17:21 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
inherited DestroyЕсли в деструкторе написано не просто inherited, а inherited Destroy, то выдается сообщение, что в деструкторе не указан inherited. А он есть. Это скорее всего не из-за того, что написан Destroy, я делал, чтобы такие случаи учитывались. Наверное парсер неправильно определил где заканчивается деструктор. Можете привести пример содержимого деструктора? inherited DestroyНу или вот Код: pascal 1. 2. 3. 4. 5. 6. Если Exception.Create не находится на одной строке с raise, матюкается на использование Exception без raise Тоже связано с хреновым парсингом. Попробую прикрутить Castalia Delphi Parser, должно стать лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2012, 18:46 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator Можете привести пример содержимого деструктора? Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 10:14 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
inherited Destroy Код: pascal 1. 2. 3. 4. Тут перед inherited TAB стоит, из-за этого не работало. Спасибо. Исправил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2012, 13:48 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Выпустил новую версию 0.5 Изменения в новой версии: Добавлен тест "Поиск некорректного создания объектов". Он находит ошибки типа "VarName := VarName.Create", а также создание объектов, которые никому не присваиваются. Возможны ложные срабатывания, например, при вызове Create у record'ов, у потоков и у объектов, владелец которых сам передается конструктор. Добавлен тест "Проверка того, что после после then, do и т.д. нет нескольких значимых строчек, выровненных по одному уровню". Для корректной работы теста нужно, чтобы код был оформлен в стандартном стиле Delphi. Добавлен тест "Проверяет, чтобы в функции Format и подобных, количество параметров в строке совпадало с количеством передаваемых параметров." В нескольких тестах устранены ложные срабатывания. Исправлены ошибки, выявленные в работе программы. Теперь информацию о выходе новых версий и о других изменениях буду выкладывать в блоге http://ak-coder.blogspot.ru/] http://ak-coder.blogspot.ru/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2013, 23:09 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorПроверка того, что после после then, do и т.д. нет нескольких значимых строчек, выровненных по одному уровню"Это весьма полезно. Еще один тест - после then и do не стоит точка с запятой. Когда-то такой код Код: pascal 1. 2. 3. 4. стоил мне больших нервов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2013, 02:39 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Да, такой тест тоже есть. Тоже напарывался на такую ошибку :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2013, 15:10 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Что-то на долго забросил проект CodeVerifier'а. Но вот появилось время заняться им опять. Изменения в версии 0.6: - Добавлен тест "Проверка правильности использования except в транзакциях". - Добавлен тест "Проверка отсутствия Exit внутри try ... Commit...; except". - Добавлен тест "Поиск неиспользуемых процедур и функций" он ищет процедуры и функции, описанные в implementation части и не используемые ниже. - Добавлен тест "Поиск неиспользуемых переменных" он ищет переменные, описанные в implementation части и не встречающиеся ниже. - Добавлен тест "Проверка наличия const или out модификатора у String аргумента процедур и функций". - Добавлен тест "Поиск вызова Create не от типа, а от переменой (тип определяется по формальным признакам вроде префикса "T")". - Добавлен тест "Возможно, вместо изменения массива через SetLength можно изменить его через Delete" - Добавлен тест "Проверка на соответствие параметров компонентов форм". - Теперь после проверки в списке тестов показывается сколько было найдено ошибок в конкретном тесте. При щелчке по тесту показываются отчеты именно этого теста. - Доработаны некоторые существующие тесты. - Исправлены ошибки, выявленные в работе программы. Новую версию можно скачать здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 17:55 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator, вообще непонятно как работает. Файлы из указываемого каталога не видит. Написал вручную A := A; , никаких предупреждений нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 18:10 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
asutp2, оптимизатор сам вырежет такую конструкцию, так как это бессмысленно в любом случае ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 18:19 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
shonli95asutp2, оптимизатор сам вырежет такую конструкцию, так как это бессмысленно в любом случае 1. Смысл может быть, если A - property, хотя от такого лучше избавляться. 2. Скорее всего, должны были написать что-то другое, но ошиблись - предупреждение об этом может быть очень полезным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 19:17 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
так вообще никаких предупреждений не выдалось. что я сделал не так? это вопрос к автору ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 20:01 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
x1ca4064, Т.е. если я добавлю пару страниц комментариев, эта Peganza не среагирует? А если я кусок процедуры перенёс в другую процедуру/метод или вообще в новый юнит вставил? Тоже молча проглотит? Тогда в топку эту пеганцу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2019, 22:32 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Gator, Я не знаком с пеганзой, но задачи которые Вы описали, совершенно не относятся к статическому анализу, а пеганза, как я понял, и есть статический анализатор: примерно то, что дельфи выдает в качества ворнингов, только более "хитрый". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2019, 04:23 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
asutp2AKdominator, вообще непонятно как работает. Файлы из указываемого каталога не видит. Написал вручную A := A; , никаких предупреждений нет Конкретно при проверке на равенство левой и правой частей неравенства делается так: 1) отбрасываются все комментарии в файле. 2) в каждой строке проверяемого файла ищется первое вхождение ":=". 3) если нашлось, и строка заканчивается на ";", тогда берется подстрока слева от присваивания и делается ей trim потом берется подстрока справа от присваивания без учета последнего символа и делается ей trim 4) полученные подстроки сравниваются. Если одинаковые, то заносятся в отчет. Я думаю проблема могла быть? если после точки с запятой были пробелы. Сейчас сделал чтобы для проверяемой строки тоже сразу делался trim. Так что теперь такого быть не должно. asutp2так вообще никаких предупреждений не выдалось. что я сделал не так? это вопрос к автору Возможно в вашем коде нет ничего такого, что могла бы найти программа :) Да, еще после окончания проверки, в левом списке с тестами, в скобках показывается сколько подозрительных мест найдено конкретным тестом, если все по нулям, то значит ничего не нашлось. Если не ноль, тогда можно выбрать этот тест и будет показано в каких файлах сработала проверка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2019, 09:29 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
посмотрел. хорошо, как для фришного. с хотелками есть смысл обращаться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2019, 16:47 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
makhaonпосмотрел. хорошо, как для фришного. с хотелками есть смысл обращаться? Есть смысл. Что смогу - то сделаю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2019, 17:23 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator2) в каждой строке проверяемого файла ищется первое вхождение ":=". 3) если нашлось, и строка заканчивается на ";", тогда берется подстрока слева от... Т.е. Вы не строите синтаксическое дерево? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2019, 20:02 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominator, несколько мелких для начала: хоткей (например - return) для перехода из отчета к месту бага, сейчас только даббл-клик, неудобно какая-то кнопка + хоткей с открытием текущего исходника и строки прямо в delphi (надо поискать как, это как-то точно можно сделать, пеганза и эврикалог это умеют делать). возможность редактирования в 'соотвествующем коде' есть, но сохранения нет, стоит дописать по собственно детекции. баг: Код: pascal 1. срабатывает правило для 'Else;' хотя не должно было бы хорошо обнаруживать массивы, записи и строки, передаваемые без модификаторов const/var (довольно важная функция для оптимизации, многие исходники страдают) позже еще допишу. вообще - стоит смотреть пеганзу или FixInsight, многое уже там сделано. но у тебя есть некоторые новые фишки, смотрю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.06.2019, 10:43 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Еще. Баг, ложное срабатывание: Код: pascal 1. 2. Еще удобнее было бы не жать 'Enter' (retrun), а просто при переходе вверх-вниз по списку найденных записей сразу синхронизировать место в исходниках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2019, 10:13 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
На десятке без русской локали зависает при запуске. Загрузка процессора под 100%. После удаления словаря стартует нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.06.2019, 11:16 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
x1ca4064Т.е. Вы не строите синтаксическое дерево? Не строю. makhaonAKdominator, баг: Код: pascal 1. срабатывает правило для 'Else;' хотя не должно Исправил. makhaonЕще. Баг, ложное срабатывание: Код: pascal 1. 2. Исправил. makhaonЕще удобнее было бы не жать 'Enter' (retrun), а просто при переходе вверх-вниз по списку найденных записей сразу синхронизировать место в исходниках. Сделал. Kazantsev AlexeyНа десятке без русской локали зависает при запуске. Загрузка процессора под 100%. После удаления словаря стартует нормально. Поменял кодировку словаря на Unicode, может быть поможет. Мне повторить зависание не удалось. Остальное с ходу не получилось сделать. Новую версию выложил здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2019, 16:45 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorПоменял кодировку словаря на Unicode, может быть поможет. Помогло. Ложные детекты: Часть case Код: pascal 1. 2. - одинаковые строки Часть константного массива Код: pascal 1. 2. - одинаковые строки Начало декларации двухмерного константного массива Код: pascal 1. 2. 3. 4. - одинаковые строки (на скобки) Вызов метода Код: pascal 1. - предлагается заменить на "Arr := NIL;" Декларация внешней функции Код: pascal 1. - неиспользуемая переменная "rnd" Декларация локального типа в процедуре Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. - неиспользуемые переменные (перечислено несколько полей) Декларация переменной-записи Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. - неиспользуемые переменные (перечислено несколько полей) Оператор выбора Код: pascal 1. 2. 3. 4. - неиспользуемая переменная "doCopy" и "doShare" Оператор выбора Код: pascal 1. 2. 3. 4. - неиспользуемая переменная "'+'" и "'-'" Реагирует на конструкторы типов если имя типа не начинается с T, даже на декларацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2019, 01:03 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Честно говоря, не понимаю, как можно делать подобные тулзни не используя AST... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2019, 14:42 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
white_nigger, +1. Хотя, тому же FixInsight AST не особо помогает, там фолсов тоже куча, не таких глупых, но анализ там примитивный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2019, 14:59 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
Kazantsev AlexeyХотя, тому же FixInsight AST не особо помогает, там фолсов тоже куча, не таких глупых, но анализ там примитивный.Я пользовался и пеганзой и фиксинсайтом: что-то находили, на чём-то лажали. К слову сказать, оба автора относительно оперативно фиксили те баги что я им присылал. Правда уже давно не слежу за развитием этих продуктов и не знаю как сейчас обстоят дела. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2019, 16:29 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
white_nigger, Я Роме писал о фолсах на вложенных вызовах конструкторов, тут на форуме. Потом ещё раз попробовал его анализатор, когда он сделал детект вызовов инлайновых методов расположеных выше тела метода (что не даст компилятору возможность сделать подстановку), фолсы на конструкторах так и остались плюс добавились фолсы на детекте вызовов инлайновых методов. Пеганзу тоже пробовал, но она мне показалась слишком "шумной", возбуждается по всяким пустякам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2019, 17:03 |
|
||
|
Peganza Pascal analyzer, SockSoftware CodeHealer: ищу аналоги и продавцов в России
|
|||
|---|---|---|---|
|
#18+
AKdominatorНовую версию выложил здесь попробовал, интересное решение, понаходилось парочка "ляпов". на мой взгляд не хватает копирования имени модуля из отчёта. новых версий не было? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2020, 16:51 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2038250]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
207ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 512ms |

| 0 / 0 |
