Как стать автором
Обновить
52
0
Sergey Khrenov @n0mo

COO

Отправить сообщение

Будда хорош :)

Спасибо и Вам за тёплые слова и развёрнутый ответ с комментариями к ошибкам.

А с .NET и его версиями мы тоже регулярно сражаемся :) Вот, например, небольшая статья из нашего блога про поддержку .NET5.

Честно говоря, я даже не подумал про такой сценарий, так как был уверен, что за 5 лет те старые и такие очевидные ошибки будут исправлены.

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

Вот только я не вхожу в группу разработки PascalABC.NET. Если бы было по-другому, то конечно, ещё в 2017 году те старые сообщения можно было бы подавить и уже не отвлекаться на них сегодня. А ещё лучше - исправить самые очевидные ошибки, а потом подавить оставшееся как "технический долг".

В статье же я как раз описал неэффективный сценарий использования анализатора время от времени. Причем в моем случае перерыв составил несколько лет :)

Честно говоря, не очень представляю себе работу по канбан совсем без доски. Визуализация очень здорово помогает. Наверное, можно и без неё, но зачем?

Возможно, у Вас есть какой-то практический опыт в данном направлении? Был бы очень признателен за информацию.
Рискну с Вами не согласиться. Канбан и scrum по сути являются конкретными подходами к реализации методологии agile, и да, это все про улучшение процессов. Но вот собcтвенно канбан как раз про доску. Канбан и есть доска, даже в переводе с японского — рекламный щит и т.п.
В тот момент нам показалось удобным ничего особо не меняя (в том числе и трекер задач) попробовать поработать по канбан. Физические доски помогли с этим. А уже потом пришло понимание, что это нам подходит, и мы пошли в сторону нового трекера.
Проверил при помощи PVS-Studio. Ничего интересного не нашлось. Это объяснимо, так как проект очень маленький: 5 непустых КLOC в 44 файлах cs. В общем, пока что искать там нечего.
Да, наверное в статье следовало упомянуть про библиотеку osu-framework. Я проверял и её, но там нашлась всего одна интересная ошибка на 643 файла .cs и 66К непустых строк кода (без учета тестов). Для очистки совести — приведу эту ошибку :)

V3123 [CWE-783] Perhaps the '??' operator works in a different way than it was expected. Its priority is lower than priority of other operators in its left part. Drawable.cs 1187
public abstract partial class Drawable : Transformable, IDisposable, IDrawable
{
  ....
  public Vector2 AnchorPosition => 
    RelativeAnchorPosition * Parent?.ChildSize ?? Vector2.Zero;
  ....
}

Подобные ошибки были в статье. Не хватает скобок. Сейчас выражение вычисляется так:
 x = (a * b) ?? c

В коде osu-framework есть ещё порядка 10 хороших предупреждений «V3080 [CWE-476] Possible null dereference» про небезопасное использование потенциально нулевой ссылки, которая приходит из метода, но это уже скучновато.
Обычная ситуация. Статья же не пишется за один день.
Мы в PVS-Studio подсмотрели у вас идею статьи с ответами на задачки и тоже написали подобную :)
Ответы на задачи со стенда PVS-Studio на конференциях 2018-2019
Спасибо. Подправил.
Тогда к чему статья?

То есть как это «к чему»? PVS-Studio порекламировать, конечно же :)
А если серьезно — то, наверное, в данном случае не надо так серьезно. Просто развлекательная статья с небольшим описанием нашей внутренней кухни. Никакого особого менторства я туда не вкладывал.
Да, спасибо, так действительно лучше. Исправил.
Как обычно, всё самое интересное вначале :) Вторая часть статьи содержит и другие найденные ошибки.
Не совсем. Собственно автогенерируемый код мы не трогаем, так как студия его периодически затирает при внесении изменений. Но в коде тестовых методов, при необходимости, вносятся изменения в свойства объектов и т.п. Что же касается UI MAP, то там масса изменений, но все их лучше вносить через редактор. Хотя иногда бывает удобно вносить правки в xml, хранящую настройки UI MAP, вручную.
Возможно. Но статья же про VS CUIT. Цели подробно рассматривать другие технологии я не ставил. Конечно, если делать развёрнутый обзор — про pom обязательно следует рассказать. Спасибо за Ваш отзыв.
Простите, но тогда я не понимаю смысл Вашего первого комментария. Он про то, что я не упомянул pom в своей статье?
Спасибо. А что конкретно Вы предлагаете нам? Использовать эту технологию вместо VS CUIT?
Это я, наверное, не совсем понятно написал. Имелось в виду «Jenkins запускает по ночам много чего, включая тестеры». А вот костыль с регулярным перезапуском Jenkins при падении действительно был прикручен после появления описанной в статье проблемы. Надеюсь, больше он не понадобится.
1

Информация

В рейтинге
Не участвует
Откуда
Тула, Тульская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность