LINUX.ORG.RU

Бесплатная лицензия PVS-Studio для открытых проектов

 , , , ,


4

7

Разработчики PVS-Studio хотели бы помочь миру программного обеспечения лучше познакомиться с инструментами статического анализа кода и повысить его качество. Теперь PVS-Studio предоставляется бесплатного студентам в учебных целях, индивидуальным разработчикам и коллективам энтузиастов.

Как помочь маленьким командам разработчиков или как распространять академические лицензии? На первый взгляд кажется, что самый простой путь — дарить лицензии тем, кто развивает бесплатное программное обеспечение. К сожалению, это решение не кажется правильным. Многие компании извлекают из таких проектов прибыль косвенным путём.

Решение было найдено интуитивно.
Что отличает корпоративные проекты от проектов энтузиастов? В корпоративных проектах меньше свободы и больше бюрократии. Вряд ли руководство Microsoft будет радо, если разработчик в коде MS Office напишет, что это его персональный проект. Этим надо воспользоваться и предлагать вносить в код правки, в которых упоминается PVS-Studio. Заодно код открытых проектов будет рекламировать PVS-Studio.

Бесплатная лицензия PVS-Studio

Внесите правки во все компилируемые файлы вашего проекта. Имеются в виду файлы с расширениями c, cc, cpp, cs и так далее. Заголовочные файлы менять не требуется.

Вы должны вписать в начало каждого файла две строки с комментарием (существует выбор из нескольких вариантов). Это своего рода плата за возможность бесплатного использования PVS-Studio.

Комментарии для студентов (академическая лицензия):

// This is a personal academic project. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com

Комментарии для открытых бесплатных проектов:

// This is an open source non-commercial project. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com

Комментарии для индивидуальных разработчиков:

// This is an independent project of an individual developer. Dear PVS-Studio, please check it.
// PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com

Для Windows-разработчиков сценарий немного отличается.

Если в вашем проекте много файлов, можете воспользоваться вспомогательной утилитой. После указания комментария для вставки и каталога с кодом утилита рекурсивно обойдёт все файлы в папке и во вложенных папках, добавляя в файлы соответствующие комментарии. Скачать утилиту (вместе с исходным кодом) можно из репозитория на GitHub.

Некоторые разработчики могут сказать, что не хотят видеть в начале файла две строчки с комментарием, не относящимся к сути проекта. Это их право, и они могут просто не использовать анализатор. Или же они могут приобрести коммерческую лицензию и использовать её без ограничений. Авторы PVS-Studio рассматривают наличие этих комментариев как благодарность за предоставленную лицензию и заодно как дополнительную рекламу их продукта, и считают, что это честный обмен.

>>> Подробная статья на Хабре



Проверено: JB ()
Последнее исправление: sudopacman (всего исправлений: 10)

Ответ на: комментарий от MuZHiK-2

И список поддерживаемых из коробки компиляторов тоже прочитал?

Я сделал то, что было написано по этой ссылке: https://scan.coverity.com/download

$ cov-configure --comptype clang --compiler /usr/bin
Platform info:
Sysname = Darwin
Release = 16.1.0
Machine = x86_64

[ERROR] This platform is not supported by Coverity.
[ERROR] See documentation for the list of supported platforms.

«Refer to <coverity build tool>/docs/en/help/cov-configure.txt for more details»

$ cat doc/en/help/cov-configure.txt

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Не переворачивай мысль. Речь шла о том, что ты спрашиваешь у человека «а какая же тебе выгода, что кому-то дадут деньги», не понимая, что человек не из тех, кто «когда они пришли за мной, я не протестовал…».

Deleted
()
Ответ на: комментарий от andreyu

А когда вас обязали использовать сабжевый анализатор?

Причем здесь это? Если бы они предложили бесплатную лицензию за фото с флажком в жопе, мне бы тоже нельзя было своё фи высказать?

Просто ранее я довольно хорошо относился к статьям разработчиков сабжа как по багам в открытых проектах, так и по C++ вообще. Но их подход в данном случае вызывает вопросы и я высказал свое к нему отношение.

o-
()
Ответ на: комментарий от Deleted

Не переворачивай мысль.

Мысль перевернули вы, а не я.

Речь шла о том, что ты спрашиваешь у человека «а какая же тебе выгода, что кому-то дадут деньги»,
не понимая, что человек не из тех, кто «когда они пришли за мной, я не протестовал…».

Если человек не из тех, как вы утверждаете, то ему не срать в этой ветке нужно, а обратиться к макскому с предложением.
А так это диванный оппозиционер - «давайте делать доброе дело, а сам сидит на жопе».

andreyu ★★★★★
()
Ответ на: комментарий от o-

Если бы они предложили бесплатную лицензию за фото с флажком в жопе, мне бы тоже нельзя было своё фи высказать?

Можно. А вам предложили такой вариант использования анализатора?

Но их подход в данном случае вызывает вопросы и я высказал свое к нему отношение.

Ок.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Мысль перевернули вы, а не я.

NO U.

Deleted
()
Ответ на: комментарий от TheAnonymous

Но если они вылезут на иностранный рынок, а они туда хотят, их сразу поимеют. Если конечно они статически линкуютмя.

invy ★★★★★
()
Ответ на: комментарий от SR_team

Ну вообще-то да, могут и не жрать. Их никто не обязан кормить бесплатно.

Вопрос не в том, жрать или нет, а в том (если уж ты даешь им жратву), зачем делать это с лопаты, если можно поставить тарелку на стол? Почему ты ешь из тарелки, а они - с лопаты?

MuZHiK-2 ★★★★
()
Ответ на: комментарий от o-

Если бы они предложили бесплатную лицензию за фото с флажком в жопе, мне бы тоже нельзя было своё фи высказать?

Неловкость ситуации заключается в том, что такой вариант по-видимому удовлетворил бы некоторую часть аудитории, поскольку никоим образом не затрагивает их божественный исходный код™

kawaii_neko ★★★★
()
Ответ на: комментарий от MuZHiK-2

Вопрос не в том, жрать или нет, а в том (если уж ты даешь им жратву), зачем делать это с лопаты, если можно поставить тарелку на стол? Почему ты ешь из тарелки, а они - с лопаты?

Я правильно тебя понял: пусть лучше подохнут с голоду, если у тебя нет тарелок?

kawaii_neko ★★★★
()
Ответ на: комментарий от kawaii_neko

Я правильно тебя понял: пусть лучше подохнут с голоду, если у тебя нет тарелок?

Нет, ты шлангуешь, потому что в данном случае тарелки (лицензии) в явно есть, но намеренно предлагают жрать с лопаты с видом «не хочешь - не ешь». Я не говорю, что надо запретить это (подавать с лопаты), но просто в нормальном обществе такие люди расцениваются как подонки.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от kawaii_neko

Ну их текущее предложение скорее всего направлено на аудиторию любителей torrent edition. Они все равно не их клиенты, а так может даже рекламу им сделают и ещё спасибо скажут. Ведь можно проверять проприетарные исходники бесплатно без смс и регистрации!

Только вот этот подход для любого разработчика который использует инструменты от вменяемых западных компаний выглядит дико. Мужик вон отличную аналогию выше привел.

o-
()
Ответ на: комментарий от kawaii_neko

поскольку никоим образом не затрагивает их божественный исходный код™

А зачем это говно в исходники тащить? Можно было сделать отдельный файл в директории проекта, как у travis или appveyor. Тем более устраивать в исходниках фетиш с обращением к этой поделки - это уж слишком.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от o-

Только вот этот подход для любого разработчика который использует инструменты от вменяемых западных компаний выглядит дико

Ты (как и 75% отписавшихся в треде) — очень своеобразные люди. То есть то, что coverity навязывает вынуждает тебя хостить исходный код на github (Штольман не одобряет, кстати) — это ок, а когда тебя попросили пару строчек комментариев добавить — все, конец света.

А что ты делаешь, когда видишь в исходном коде

// vim: ft=$LANGUAGENAME
Захлебываясь слюной, начинаешь учить авторов не пользоваться отсталым редактором?

kawaii_neko ★★★★
()
Ответ на: комментарий от eao197

Думаю, я разгадал причину такого отношения в топике.

Человек разумный на предложение сипровера реагирует так: «Вставляем две строчки комментария (которые ни к чему не обязывают) в код и делаем статический анализ».

Человек с гипертрофированным эго реагирует так: «Чужой комментарий в МОЙ код?????!!!!! Текст комментария оскорбителен!!!!!!!!».

P.S. Парни из СиПроВера, сделайте на сайте раздачу соответствующих бесплатных лицензий после регистрации - получите статистику. Т.е. человек регистрируется, скачивает лицензию, вставляет комментарии -> проверяет код.

chimera19
()
Ответ на: комментарий от kawaii_neko

То есть то, что coverity навязывает вынуждает тебя хостить исходный код на github (Штольман не одобряет, кстати)

Сразу видно клоуна, читай до просветления: https://scan.coverity.com/faq

Где тебя там вынуждают на гитхабе хоститься

MuZHiK-2 ★★★★
()
Ответ на: комментарий от kawaii_neko

Ну опенсорц тем более just-for-fun.

Да, только аналогия у нас с нуждающимися была.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от MuZHiK-2

зачем делать это с лопаты, если можно поставить тарелку на стол?

Быть может у меня нет столько тарелок, что бы каждому бездомному угодить, и это вынужденная мера, что бы хоть как-то им помочь

SR_team ★★★★★
()
Ответ на: комментарий от andreyu

Но я не вижу никакого неуважения.

Ну типа нормальные люди постят рекламу в специально отведенных для этого местах, а ненормальные ведут себя как мудаки.

Vit ★★★★★
()
Ответ на: комментарий от SR_team

Быть может у меня нет столько тарелок, что бы каждому бездомному угодить, и это вынужденная мера, что бы хоть как-то им помочь

С точки зрения тарелка=лицензия, твое предположение не состоятельно.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от MuZHiK-2

читай до просветления: https://scan.coverity.com/faq
you will be able to download the Software required to submit a build of your code for analysis by Coverity Scan

По-моему, клоун тут только ты: зарегистрироваться, скачать тулзы для отправки кода на сканирования, интегрировать их в билд-систему, после чего жить с анальным ограничением в 12 сканов в неделю.

Ммм, какая прелесть, зато не надо комментарии в исходнички добавлять!

kawaii_neko ★★★★
()
Ответ на: комментарий от Vit

Ну типа нормальные люди постят рекламу в специально отведенных для этого местах

Батенька, а что за «специально отведенные места»?

kawaii_neko ★★★★
()
Ответ на: комментарий от kawaii_neko

Например те которые у некоторых адблоком выпилены :). Или которые просто обозначены как реклама, а не как помощь опенцорцу с заранее невыполнимыми условиями.

Vit ★★★★★
()
Ответ на: комментарий от kawaii_neko

Ммм, какая прелесть, зато не надо комментарии в исходнички добавлять!

Да, никакого фетиша зато.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от Vit

Ну типа нормальные люди постят рекламу в специально отведенных для этого местах, а ненормальные ведут себя как мудаки.

А как отличить рекламу от новости?

andreyu ★★★★★
()
Ответ на: комментарий от SR_team

Вполне состоятельно. Учите экономику

Электронные лицензии закончатся? По-моему, с экономикой у тебя проблемы.

MuZHiK-2 ★★★★
()
Ответ на: комментарий от MuZHiK-2

Я не говорю, что надо запретить это (подавать с лопаты), но просто в нормальном обществе такие люди расцениваются как подонки.

А чем вы лучше подонка?

andreyu ★★★★★
()
Ответ на: комментарий от MuZHiK-2

Средства уходят не на производство лицензий, а на производство софта, который активируется этими лицензиями. Ваш уровень знаний я увидел, не впечатлен, предлагаю заканчивать холивар в треде, прорсто представьте себя на месте разработчиков PVS. Лично я бы свой проприетарный софт по таким скромным условиям бесплатно не отдал бы.

SR_team ★★★★★
()
Ответ на: комментарий от Deleted

Форумом ошибся. Это opensource.ru, а не proprietary.ru.

Нет, это linux.org.ru - «Мы стараемся обеспечить возможность обмена различной Linux-ориентированной информацией, последними новостями, ссылками, документацией и другими ресурсами.»
Сабжевое приложение работает под линукс, так что можете пройти на свой opensource.ru и забрать с собой остальных идиотов.

andreyu ★★★★★
()
Ответ на: комментарий от Vit

По навязчивости

Согласен, их посты весьма навязчивы.

и проценту лживых заявлений :)

А что за лживые заявления?

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Аккуратнее с такими вопросами-то, Андрей. Неадекватных людей много, это ты с буковками в интернете разговариваешь, а кто-то обидится, и на Юго-Западный ИРЛ поедет.

fluorite ★★★★★
()
Ответ на: комментарий от andreyu

А что за лживые заявления?

Ну в данном конкретном треде речь о якобы помощи опенсорсу, но с заранее невыполнимыми условиями, если подходить объективно.

Vit ★★★★★
()
Ответ на: комментарий от fluorite

Аккуратнее с такими вопросами-то, Андрей.

Этот вопрос задан строго в контексте.

Неадекватных людей много, это ты с буковками в интернете разговариваешь, а кто-то обидится, и на Юго-Западный ИРЛ поедет.

Я хз, что такое Юго-Западный ИРЛ. Но если речь о том, что подъедет ко мне домой, то как подъедет, так и уедет.

andreyu ★★★★★
()
Ответ на: комментарий от Vit

Ну в данном конкретном треде речь о якобы помощи опенсорсу, но с заранее невыполнимыми условиями, если подходить объективно.

Я проверил свой оупенсорсный проект. Никакого лживого заявления не заметил, все условия оказались выполнимы.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Ты про разницу между исключениями и правилами в курсе :) ? Я рад, что ты не поленился по приколу добавить строчки в каждый файл. Но в массе этого делать никто не станет.

Vit ★★★★★
()
Ответ на: комментарий от Vit

Ты про разницу между исключениями и правилами в курсе :) ?

Да. Что тут правило, а что исключение?

Я рад, что ты не поленился по приколу добавить строчки в каждый файл.

Для ленивых они родили утилиту, которая это делает сама.
Менее ленивые могут сделать аналогичное sed'ом.

Но в массе этого делать никто не станет.

Откуда такая статистика?

andreyu ★★★★★
()
Ответ на: комментарий от fluorite

А я думал, что линуксоиды только в сети устраивают баталии.

Deleted
()
Ответ на: комментарий от andreyu

Тут в треде о витой паре на второй странице могут начать говорить о бабочках, а ты аппелируешь к какому-то «Мы стараемся…»

так что можете пройти на свой opensource.ru

Я на нем и нахожусь. http://opensource.ru/news/proprietary/13048262/page7?lastmod=1480610978801#co...

Deleted
()
Ответ на: комментарий от andreyu

Да. Что тут правило, а что исключение?

Ты исключение. Тебе не западло в твоем личном проекте добавлять подобные строчки в начало каждого файла. Я уважаю твой выбор. Осталось найти еще пачку авторов, разделяющих твои взгляды.

Откуда такая статистика?

Откуда может быть статистика о свежей «мегауслуге»? Просто есть личный опыт использования всяких CI. Ни на одном не было таких жлобских требований.

Vit ★★★★★
()
Ответ на: комментарий от Deleted

Тут в треде о витой паре на второй странице могут начать говорить о бабочках, а ты аппелируешь к какому-то «Мы стараемся…»

Я пытаюсь донести до вас очевидное. Но, видимо, не судьба.

Я на нем и нахожусь. http://opensource.ru/news/proprietary/13048262/page7?lastmod=1480610978801#co...

Нет, вы находитесь на ЛОРе, что ссылка и подтверждает:
Бесплатная лицензия PVS-Studio для открытых проектов (комментарий)

А так же в ссылке явно сказано proprietary, что как бы намекает.

andreyu ★★★★★
()
Ответ на: комментарий от andreyu

Я пытаюсь донести до вас очевидное. Но, видимо, не судьба.

Очевидность ― штука относительная. Для шизофреников их лепет тоже очевиден.

Не стоит путать непонимание с тем, что у людей вокруг могут быть другие взгляды. Так поступают дети, но не взрослые люди.

Deleted
()
Ответ на: комментарий от Vit

Ты исключение.

Нет, не исключение.

Тебе не западло в твоем личном проекте добавлять подобные строчки в начало каждого файла.

Как я уже сказал, для этого есть утилита.

Осталось найти еще пачку авторов, разделяющих твои взгляды.

Им нет резона отписываться в этой ветке.

Откуда может быть статистика о свежей «мегауслуге»? Просто есть личный опыт использования всяких CI. Ни на одном не было таких жлобских требований.

Это не требование, а условие. От вас никто и ничего не требует. Неужели это так сложно для понимания?

andreyu ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.