Проверка проектов с помощью статического анализатора и написание обзорных статей с найденными в них ошибками – задача не из лёгких. Почти всегда это работа не одного человека, а коллектива. Большую роль в этом процессе играет выбор проекта. От него напрямую зависит интерес читателей к той или иной статье. В этой заметке я хочу рассказать, как можно предложить интересный проект для анализа через GitHub.
Введение
PVS-Studio — это инструмент для выявления ошибок в исходном коде программ, написанных на языках С, C++ и C#.
В последние годы возможности анализатора и область его применения значительно выросли. Сейчас это мощный инструмент для повышения качества кода, доступный как для Windows, так и для Linux. В анализатор добавлены режимы работы, позволяющие легко запускать анализ независимо от используемой сборочной системы. Такой способ дает возможность без лишних усилий познакомиться с инструментом, а позже полноценно интегрировать себе анализатор для регулярного использования.
Так мы пользуемся анализатором, когда проверяем выбранные проекты для написания статей. На нашем сайте опубликованы статьи о проверке более, чем 270 проектов с открытым исходным кодом. Суммарное количество ошибок превысило значение в 10000. Все обзоры попадают в обновляемый список статей на сайте. Теперь предлагать проекты можно не только через форму обратной связи, но и GitHub.
Как предложить проект
В репозитории на GitHub мы разместили список проектов, в который будем заглядывать перед выбором темы для статьи. Пока список будет общий для C/C++ и C# проектов.
Любой желающий может добавлять интересный проект с открытым исходным кодом и присылать Pull Request.
Необходимая информация о проекте:
- Название проекта;
- Краткое описание на английском;
- Ссылка на официальный сайт (если есть);
- Ссылка на исходники (репозиторий или страница сайта с информацией, где скачать исходный код).
Важно. Нет смысла добавлять в список свои личные небольшие проекты. Для его проверки вы можете бесплатно воспользоваться анализатором и даже применять его регулярно (как использовать PVS-Studio бесплатно). Также не стоит добавлять уже проверенные проекты. Иногда мы их перепроверяем, но для этого обычно нужен особый повод. Незаконно утекшие в сеть исходники тоже не приветствуются.
Если вы являетесь разработчиком какого-нибудь проекта с открытым кодом, то возможно более интересное сотрудничество: совместная статья, обсуждение найденных ошибок и т.п.
Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Svyatoslav Razmyslov. Propose a project for analysis by PVS-Studio: now on GitHub
Комментарии (28)
worldmind
08.02.2017 16:15+1https://github.com/irungentoo/toxcore было бы интересно, правда что-то там подзаглохла активность
Randl
08.02.2017 17:00Они в другом месте продолжают: https://github.com/viva64/pvs-studio-check-list/pull/8
worldmind
08.02.2017 17:09очередной форк?
Randl
08.02.2017 17:13Не вникал слишком глубоко, но вроде просто irungentoo перестал заниматься Tox и они переехали. Основные лица вроде те же
worldmind
08.02.2017 17:16Ссылку на репозиторий которую я привёл я откопал на tox.chat
Kurnevsky
13.02.2017 14:47+2На tox.chat уже довольно давно линка на новый репозиторий (в левом нижнем углу). Вот здесь детальное описание, чего хотят достичь: https://toktok.ltd. Один из главных пунктов — документация протокола
worldmind
13.02.2017 17:29Я брал ссылку отсюда.
SvyatoslavMC
13.02.2017 21:21Так где сейчас актуальные исходники лежат? Сейчас не к спеху, пару лет назад пробовал проверять, ничего не нашлось серьёзного. Как я помню, это был очень маленький проект тогда.
worldmind
13.02.2017 21:36+1Похоже просто на вики не обновили, актуальными должны быть эти исходники https://github.com/TokTok/c-toxcore
ну и хорошо бы ещё клиент проверить
https://github.com/TokTok/qTox
Randl
14.02.2017 13:05Я указал в PR актуальные исходники
quzor
08.02.2017 16:36-5А смысл? Все-равно будете отбирать только те проекты, на которых Ваш анализатор будет работать лучше и проявлять себя с хорошей стороны
SvyatoslavMC
08.02.2017 16:45+1Для статьи достаточно 10-25 примеров ошибок, обычно столько очень легко собрать.
Конечно сложно работать лучше на проекте из 100 файлов, качество кода во многом коррелирует с размером проекта, но описанной вами проблемы у нас нет.
Смысл затеи как раз собрать проектов, в проверке которых заинтересованы пользователи.Andrey2008
08.02.2017 16:54+1«качество кода во многом коррелирует с размером проекта». Поясню, что имел в виду коллега. Чем меньше проект, тем ниже плотность ошибок: Ощущения, которые подтвердились числами.
nitrofox
08.02.2017 23:00+1Вы проверили уже KDE 4. Могу ли я предложить проверить KDE 5(Plasma, Frameworks)?
datacompboy
То есть оперу не проверите, да?
SvyatoslavMC
Если вы об этом, то да.
zanac
Завтра)