Пока во всём мире обсуждают 89-ю церемонию вручения наград премии «Оскар» и составляют различные рейтинги актёров и их костюмов, мы решили подготовить обзорную статью в IT-сфере. Речь пойдёт о самых интересных ошибках, допущенных в проектах с открытым исходным кодом в 2016 году. Этот год был примечателен тем, что наш анализатор PVS-Studio стал доступен и в операционных системах, основанных на Linux. Представленные ошибки наверняка уже исправлены, и каждый читатель может убедиться в серьёзности ошибок, которые допускают разработчики.
Читать полностью »
Рубрика «Блог компании PVS-Studio» - 29
Топ 10 ошибок в открытых проектах С++ за 2016 год
2017-03-10 в 11:44, admin, рубрики: c++, microsoft, open source, pvs-studio, static code analysis, Visual Studio, Блог компании PVS-Studio, разработка под windowsПоддержка пользователей, использующих бесплатную лицензию PVS-Studio, теперь осуществляется на сайте StackOverflow
2017-03-09 в 14:23, admin, рубрики: pvs-studio, stack overflow, stackoverflow, анализ кода, Блог компании PVS-Studio, статический анализ кода
Популярность бесплатного варианта лицензирования PVS-Studio постепенно растёт, и всё больше бесплатных пользователей обращаются к нам в поддержку с различными вопросами. Многие вопросы повторяют друг друга и, чтобы сократить объем переписки, мы с настоящего момента будем оказывать поддержку бесплатным пользователям только через сайт StackOverflow. Так нам будет проще работать с вопросами, и мы сможем давать ссылки на более ранние ответы. Кроме того, множество вопросов просто отпадёт, так как ответ можно будет сразу найти с помощью поиска на StackOverflow, и не потребуется ожидать ответа по почте. Данное решение облегчит жизнь как нам, так и пользователям PVS-Studio.
Читать полностью »
Ищем и анализируем ошибки в коде Media Portal 2
2017-03-06 в 7:38, admin, рубрики: .net, C#, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, статический анализ кодаMedia Portal 2 — это открытое программное обеспечение класса медиа центр, которое позволяет смотреть видео, фотографии, слушать музыку и многое другое. Для нас, разработчиков статического анализатора PVS-Studio, это еще одна возможность проверить интересный проект, рассказать людям (и разработчикам в том числе) о найденных ошибках и, в свою очередь, еще раз показать возможности нашего анализатора.
Топ 10 ошибок в проектах C# за 2016 год
2017-02-27 в 7:22, admin, рубрики: .net, C#, microsoft, open source, pvs-studio, static code analysis, Visual Studio, Блог компании PVS-Studio, разработка под windows Для оценки качества работы нашего анализатора, а также с целью популяризации методологии статического анализа, мы регулярно проверяем на наличие ошибок проекты с открытым исходным кодом и пишем про это статьи. Не стал исключением и прошедший 2016 год, который примечателен ещё и тем, что это было время своеобразного «взросления» C# анализатора. PVS-Studio получил значительное количество новых C# диагностик, улучшенный механизм работы с виртуальными значениями (symbolic execution) и многое другое. По результатам проделанной нашей командой работы, я составил своеобразный хит-парад наиболее интересных ошибок, обнаруженных в проектах С# в 2016 году.
Читать полностью »
Баги из СССР
2017-02-20 в 9:14, admin, рубрики: автоваз, безопасность, Блог компании PVS-Studio, империя зла, интуиция, информационная безопасность, Программирование, Промышленное программирование, ракеты, СССР, метки: автоваз, империя зла, сссрИстория — это опыт, который позволяет современному поколению не наступить вновь на грабли. Но в программировании, как и в других активно развивающихся областях, такой идеальный сценарий не всегда возможен. Почему? Потому что появляются новые языки программирования, многие процессы становятся сложнее, а машины умнее. В этой статье я приведу две реальные истории. Что их объединяет? Во-первых, время — все они произошли в СССР; во-вторых, люди — каждая история могла пойти по другому сценарию, если бы главные герои не проявили свои лучшие/худшие человеческие качества; в-третьих, конечно же, программирование, иначе статья была бы просто неуместна в нашем блоге.
Портирование — дело тонкое: проверка Far Manager под Linux
2017-02-16 в 7:59, admin, рубрики: c++, far manager, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, статический анализ кодаОдним из популярных файловых менеджеров в среде Microsoft Windows является Far Manager, принявший эстафету у Norton Commander, созданной еще для DOS. Far Manager позволяет облегчить работу с файловой системой (создание, редактирование, просмотр, копирование, перемещение, поиск, удаление файлов), а также расширяет стандартный функционал (работа с сетью, архивами, резервными копиями и т.д.). Недавно была произведена работа по портированию Far Manager на Linux, и на текущий момент была выпущена альфа-версия. Команда PVS-Studio не могла обойти стороной данное событие и решила проверить качество адаптированного кода.
Проверка open-source сервера World of Warcraft CMaNGOS
2017-02-14 в 12:12, admin, рубрики: c++, open source, pvs-studio, static code analysis, world of warcraft, Блог компании PVS-Studio, разработка игр, статический анализ кодаВ этой статье мне хотелось бы поделиться результатами проверки статическим анализатором PVS-Studio открытой реализации сервера игры World of Warcraft – CMaNGOS.
Введение
C(ontinued)MaNGOS является активно развивающимся ответвлением старого проекта MaNGOS (Massive Network Game Object Server), призванного создать свободный альтернативный сервер для игры World of Warcraft. Большая часть разработчиков MaNGOS продолжает работу в проекте CMaNGOS.
Как пишут сами разработчики, их цель – создать открытый «well written server in C++» для одной из лучших MMORPG. Постараюсь немного помочь им в этом, и проверю CMaNGOS при помощи статического анализатора PVS-Studio.
Примечание: Для проверки использовался сервер CMaNGOS-Classic, доступный в репозитории проекта на github.
Читать полностью »
Инкрементальный анализ в PVS-Studio: теперь и на сборочном сервере
2017-02-13 в 11:13, admin, рубрики: build server, continuous integration, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, Разработка под Linux, разработка под windows, статический анализ кода
Введение
При внедрении статического анализатора в существующий процесс разработки, команда может столкнуться с определенными трудностями. Например, очень полезно проверять измененный код перед тем, как он попадет в систему контроля версий. Однако, выполнение статического анализа в этом случае может требовать достаточно продолжительного времени, особенно на проектах с большой кодовой базой. В этой статье мы рассмотрим режим инкрементального анализа в статическом анализаторе PVS-Studio, который позволяет проверять только измененные файлы, что значительно сокращает время, необходимое для анализа кода. Следовательно, разработчики смогут использовать статический анализ так часто, как это необходимо, и минимизировать риски попадания кода, содержащего ошибку, в систему контроля версий. Поводом для написания статьи послужило, во-первых, желание еще раз рассказать о такой полезной функции нашего анализатора, а во-вторых, тот факт, что мы полностью переписали механизм инкрементального анализа и добавили поддержку этого режима в версию нашего анализатора для командной строки.
Читать полностью »
PVS-Studio и GitHub-сообщество: начало дружбы
2017-02-10 в 11:30, admin, рубрики: C#, c++, freesoftware, github, open source, pvs-studio, reviews, static code analysis, Блог компании PVS-Studio, статический анализ кодаНекоторое время назад было принято решение сделать статический анализатор кода PVS-Studio бесплатным для отдельных категорий разработчиков: студентов в учебных целях, индивидуальных разработчиков и коллективов энтузиастов. Постепенно количество бесплатных пользователей увеличивается, но мы решили напомнить о такой возможности, так как многие разработчики могли пропустить соответствующую новость.
Итак, всё началось со статьи: Как использовать PVS-Studio бесплатно.
Читать полностью »
Предложи проект для проверки анализатором PVS-Studio: теперь и на GitHub
2017-02-08 в 12:33, admin, рубрики: C, C#, c++, github, open source, pvs-studio, static code analysis, Блог компании PVS-Studio
Проверка проектов с помощью статического анализатора и написание обзорных статей с найденными в них ошибками – задача не из лёгких. Почти всегда это работа не одного человека, а коллектива. Большую роль в этом процессе играет выбор проекта. От него напрямую зависит интерес читателей к той или иной статье. В этой заметке я хочу рассказать, как можно предложить интересный проект для анализа через GitHub.
Читать полностью »