Picture 5

Проверка проектов с помощью статического анализатора и написание обзорных статей с найденными в них ошибками – задача не из лёгких. Почти всегда это работа не одного человека, а коллектива. Большую роль в этом процессе играет выбор проекта. От него напрямую зависит интерес читателей к той или иной статье. В этой заметке я хочу рассказать, как можно предложить интересный проект для анализа через GitHub.

Введение


PVS-Studio — это инструмент для выявления ошибок в исходном коде программ, написанных на языках С, C++ и C#.

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

Так мы пользуемся анализатором, когда проверяем выбранные проекты для написания статей. На нашем сайте опубликованы статьи о проверке более, чем 270 проектов с открытым исходным кодом. Суммарное количество ошибок превысило значение в 10000. Все обзоры попадают в обновляемый список статей на сайте. Теперь предлагать проекты можно не только через форму обратной связи, но и GitHub.

Как предложить проект


В репозитории на GitHub мы разместили список проектов, в который будем заглядывать перед выбором темы для статьи. Пока список будет общий для C/C++ и C# проектов.

Любой желающий может добавлять интересный проект с открытым исходным кодом и присылать Pull Request.

Необходимая информация о проекте:
  1. Название проекта;
  2. Краткое описание на английском;
  3. Ссылка на официальный сайт (если есть);
  4. Ссылка на исходники (репозиторий или страница сайта с информацией, где скачать исходный код).

Важно. Нет смысла добавлять в список свои личные небольшие проекты. Для его проверки вы можете бесплатно воспользоваться анализатором и даже применять его регулярно (как использовать PVS-Studio бесплатно). Также не стоит добавлять уже проверенные проекты. Иногда мы их перепроверяем, но для этого обычно нужен особый повод. Незаконно утекшие в сеть исходники тоже не приветствуются.

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



Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Svyatoslav Razmyslov. Propose a project for analysis by PVS-Studio: now on GitHub
Поделиться с друзьями
-->

Комментарии (28)


  1. datacompboy
    08.02.2017 15:43

    То есть оперу не проверите, да?


    1. SvyatoslavMC
      08.02.2017 15:53
      +1

      Незаконно утекшие в сеть исходники тоже не приветствуются.

      Если вы об этом, то да.


    1. zanac
      08.02.2017 16:28
      -6

      Завтра)


  1. ZogG
    08.02.2017 16:04
    +3

    PVS-Studio конечно же. Выложите ее на гитхаб для всех, а потом проверьте =)


  1. worldmind
    08.02.2017 16:15
    +1

    https://github.com/irungentoo/toxcore было бы интересно, правда что-то там подзаглохла активность


    1. Randl
      08.02.2017 17:00

      Они в другом месте продолжают: https://github.com/viva64/pvs-studio-check-list/pull/8


      1. worldmind
        08.02.2017 17:09

        очередной форк?


        1. Randl
          08.02.2017 17:13

          Не вникал слишком глубоко, но вроде просто irungentoo перестал заниматься Tox и они переехали. Основные лица вроде те же


          1. worldmind
            08.02.2017 17:16

            Ссылку на репозиторий которую я привёл я откопал на tox.chat


            1. Kurnevsky
              13.02.2017 14:47
              +2

              На tox.chat уже довольно давно линка на новый репозиторий (в левом нижнем углу). Вот здесь детальное описание, чего хотят достичь: https://toktok.ltd. Один из главных пунктов — документация протокола


              1. worldmind
                13.02.2017 17:29

                Я брал ссылку отсюда.


                1. SvyatoslavMC
                  13.02.2017 21:21

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


                  1. worldmind
                    13.02.2017 21:36
                    +1

                    Похоже просто на вики не обновили, актуальными должны быть эти исходники https://github.com/TokTok/c-toxcore
                    ну и хорошо бы ещё клиент проверить
                    https://github.com/TokTok/qTox


                  1. Randl
                    14.02.2017 13:05

                    Я указал в PR актуальные исходники


                    1. SvyatoslavMC
                      14.02.2017 14:50

                      Видел, просто ждал окончания обсуждения.


                      1. Randl
                        14.02.2017 15:50

                        Просто уточнил, что те исходники — актуальные


  1. quzor
    08.02.2017 16:36
    -5

    А смысл? Все-равно будете отбирать только те проекты, на которых Ваш анализатор будет работать лучше и проявлять себя с хорошей стороны


    1. SvyatoslavMC
      08.02.2017 16:45
      +1

      Для статьи достаточно 10-25 примеров ошибок, обычно столько очень легко собрать.

      Конечно сложно работать лучше на проекте из 100 файлов, качество кода во многом коррелирует с размером проекта, но описанной вами проблемы у нас нет.

      Смысл затеи как раз собрать проектов, в проверке которых заинтересованы пользователи.


      1. Andrey2008
        08.02.2017 16:54
        +1

        «качество кода во многом коррелирует с размером проекта». Поясню, что имел в виду коллега. Чем меньше проект, тем ниже плотность ошибок: Ощущения, которые подтвердились числами.


  1. Randl
    08.02.2017 17:03

    Закинул с десяток интересных мне проектов. Буду ждать :)


  1. WRONGWAY4YOU
    08.02.2017 17:38

    V8 (https://github.com/v8/v8)


  1. nitrofox
    08.02.2017 23:00
    +1

    Вы проверили уже KDE 4. Могу ли я предложить проверить KDE 5(Plasma, Frameworks)?


    1. SvyatoslavMC
      08.02.2017 23:02

      Конечно можете. С KDE 5 интересная идея, давно хотел проверить.


  1. Paul_Nice
    08.02.2017 23:53

    Как на счёт FFmpeg?
    https://github.com/FFmpeg/FFmpeg


    1. SvyatoslavMC
      09.02.2017 09:53

      Уже видел Pull Request с ним, посмотрим.


  1. zanac
    11.02.2017 21:45

    Предложил OpenXRay engine


    1. SvyatoslavMC
      11.02.2017 22:49
      +1

      Не этот случайно?


      1. zanac
        12.02.2017 01:00

        Упс