Существует несколько вариантов бесплатного лицензирования статического анализатора кода PVS-Studio, предназначенного для поиска ошибок и потенциальных уязвимостей. Бесплатной лицензией могут воспользоваться открытые проекты, маленькие закрытые проекты, публичные специалисты по безопасности и обладатели статуса Microsoft MVP. В статье кратко рассматривается каждый из этих вариантов.
Некоторые потенциальные пользователи жалуются, что описанные здесь способы бесплатного лицензирования не удобны или не подходят им для того, чтобы попробовать PVS-Studio. Поэтому важно примечание: то, что здесь описано, это не способ попробовать PVS-Studio! Для изучения возможностей инструмента следует воспользоваться временным лицензионным ключом, который можно запросить на странице скачивания продукта. И только если вы решили, что хотите использовать PVS-Studio и при этом бесплатно, эта статья расскажет, как это можно сделать.
PVS-Studio — это инструмент для выявления ошибок и потенциальных уязвимостей в исходном коде программ, написанных на языках С, C++, C# и Java. Работает в среде Windows, Linux и macOS.
PVS-Studio является платным B2B решением и используется большим количеством команд в различных компаниях. Список клиентов.
Рассмотрим варианты, когда анализатор PVS-Studio может использоваться бесплатно.
PVS-Studio может бесплатно использоваться разработчиками, участвующими в развитии открытых проектов, размещённых на GitHub, GitLab или Bitbucket. Всем желающим мы выдаём бесплатную лицензию сроком на 1 год. Чтобы получить лицензию, необходимо:
По истечении срока действия лицензии, вы сможете тем же самым способом получить новый лицензионный ключ.
Ключ является индивидуальным и может быть использован только для проверки открытых проектов, опубликованных на GitHub/GitLab/Bitbucket. Бесплатная лицензия не распространяется на зеркала проектов.
Дополнительные детали этого типа бесплатного лицензирования описаны в статье "Бесплатный PVS-Studio для тех, кто развивает открытые проекты".
Существует много небольших закрытых проектов, развиваемых энтузиастами. Например, это игры, создаваемые инди-разработчиками, или проекты академической направленности.
Для этих проектов может подойти вариант бесплатного лицензирования, основанный на добавлении в код комментариев специального вида. Идея в том, что такие комментарии неприемлемы в больших корпоративных проектах, но программисты вполне могут добавлять их в свои индивидуальные проекты.
Вот эти комментарии:
Комментарии для студентов (академическая лицензия):
// This is a personal academic project. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: https://pvs-studio.com
Комментарии для индивидуальных разработчиков:
// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: https://pvs-studio.com
Кстати, на самом деле данный вид бесплатной лицензии можно использовать не только в закрытых, но и в открытых проектах.
Комментарии для открытых бесплатных проектов:
// This is an open source non-commercial project. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: https://pvs-studio.com
Чтобы начать бесплатно использовать статический анализатор PVS-Studio, вы должны выполнить два следующих шага:
Шаг 1. Если вы используете PVS-Studio как плагин к Visual Studio или используете утилиту "C and C++ Compiler Monitoring UI" (Standalone.exe), то введите следующий лицензионный ключ:
Name: PVS-Studio Free
Key: FREE-FREE-FREE-FREE
Если Вы используете PVS-Studio for Linux/macOS, то воспользуйтесь командой:
pvs-studio-analyzer credentials PVS-Studio Free FREE-FREE-FREE-FREE
Примечание. Ранее для активации бесплатной лицензии для Linux-версии было достаточно только комментария. Теперь требуется вводить и этот специальный ключ, так как без него некоторые сценарии использования анализатора оказались неудобными. Подробнее.
Шаг 2. Вы должны вписать в начало каждого файла две строки с комментарием. Внесите правки во все компилируемые файлы вашего проекта. Имеются в виду файлы с расширениями c, cc, cpp, cs, java и так далее. Заголовочные h-файлы менять не требуется.
Если в вашем проекте много файлов, то вы можете воспользоваться вспомогательной утилитой. Вы должны будете указать ей, какой комментарий вставлять, и каталог с кодом. Затем утилита рекурсивно обойдет все файлы в папке и вложенных папках, добавляя в файлы с исходным кодом соответствующие комментарии. Скачать утилиту (вместе с исходным кодом) можно здесь: how-to-use-pvs-studio-free.
Дополнительные детали этого типа бесплатного лицензирования описаны в статье "Как использовать PVS-Studio бесплатно". Просим обязательно ознакомиться с этой статьёй, если вы решили выбрать рассмотренный вариант бесплатного использования.
Публичные эксперты в области безопасности, занимающиеся поиском уязвимостей, могут написать нам и получить бесплатную лицензию для анализатора PVS-Studio.
Желающие получить лицензию и поддержку, должны будут подтвердить, что они занимаются вопросами безопасности и ведут публичную деятельность, например, пишут статьи. Эти моменты будут уточнены в ходе переписки.
Подробнее: "Предоставляем анализатор PVS-Studio экспертам безопасности".
Первыми, кому мы предложили бесплатные лицензии, стали Microsoft MVP. Ещё в 2011 году появилась публикация "Бесплатные лицензии на PVS-Studio для MVP". Мало кто уже помнит про это, но эта акция продолжает действовать.
Если вы являетесь Microsoft MVP, то напишите нам и укажите свой MVP-профиль на сайте Microsoft. Мы вышлем вам лицензию, которая позволяет использовать PVS-Studio в течение 12 месяцев без каких-либо ограничений, в том числе и для коммерческих целей. Затем лицензию можно будет продлить.
Следует напомнить и про основной сценарий.
Спасибо за внимание и желаем предотвратить с помощью PVS-Studio как можно больше ошибок в коде. Только не забывайте, что суть методологии статического анализа кода в регулярном использовании, а не в разовых проверках. Удачи!