Сайт Pinguem.ru и команда PVS-Studio организуют конкурс, посвященный повышению качества открытого программного обеспечения. Для победы в конкурсе необходимо исправить как можно больше ошибок в одном или нескольких открытых проектах. Ошибки должны быть обнаружены с помощью статического анализатора кода PVS-Studio. Главный приз: консоль PlayStation 4 Pro.
Правила конкурса на сайте Pinguem.ru. Участвовать в конкурсе.
Конкурс состоит из двух этапов. На первом этапе следует отправить как можно больше Pull Request'ов с исправлением ошибок разработчикам. Второй этап сложнее и требует не только исправить ошибки, но и описать последовательность действий, при которых эти ошибки проявят себя в программе.
Первый этап:
- Скачайте и установите PVS-Studio (в Windows или Linux).
На время проведения конкурса участники могут воспользоваться специальным лицензионным ключом, позволяющим использовать анализатор без каких-либо ограничений:- Ключ для Windows-версии:
Pinguem
TX6G-3T8B-18P0-MK80 - Ключ для Linux-версии:
Pinguem
TX6G-7T8B-18P0-MK82
Создание файла с лицензией:
pvs-studio-analyzer credentials Pinguem TX6G-7T8B-18P0-MK82
- Ключ для Windows-версии:
- Выберите один или несколько открытых проектов, с которыми будете работать. Анализатор умеет искать ошибки в проектах, написанных на языках C, C++ и C#.
Засчитываются проекты, которые имеют хотя-бы 10 звёзд на github.com. - Проверьте код, найдите ошибки.
- Отправьте Pull Request'ы с исправлением ошибок разработчикам. В описании каждого Pull Request'а обязательно должно присутствовать упоминание Pinguem.ru и анализатора PVS-Studio. Например, Вы можете написать фразу:
I'm a member of the Pinguem.ru competition on finding errors in open source projects. A bug, found using PVS-Studio. Warning: _предупреждение_которое_выдал_анализатор_ - Отправьте ссылки на все Pull Request'ы, которые вы сделали. Для этого воспользуйтесь формой на сайте Pinguem.ru: отправить ссылку на пулл реквест.
Мы также подготовили небольшое видео, где продемонстрировали пример участия в конкурсе. Ознакомиться с видео.
Второй этап:
Необходимо описать последовательность действий пользователя, при которых найденная ошибка проявит себя. Это сложная задача, однако, если участник сможет описать последовательность воспроизведения хотя бы двух ошибок, у него будет хороший шанс на победу.
Автор: Andrey2008