Code Quality использует следующие запросы CodeQL для анализа кода Java и выявления проблем с качеством кода по:
- Ваша стандартная ветка, с результатами, отображаемыми на панели управления репозитория "Стандартные выводы"
-
**Pull requests**, при этом выводы отображаются как комментарии, сделанные `github-code-quality[бот]`
Copilot Autofix предлагаются предложения по результатам, где это возможно.
| Имя запроса | Категория | Severity |
|---|
[Доступ к неподдерживаемому внутреннему API JDK](https://codeql.github.com/codeql-query-help/java/java-jdk-internal-api-access/) | Ремонтопригодность | Recommendation |
|
Переменная в коробке никогда не является нулевой | Ремонтопригодность | Предупреждение |
|
Отливка от абстрактной к конкретной коллекции | Ремонтопригодность | Предупреждение |
|
Класс имеет то же название, что и суперкласс | Ремонтопригодность | Recommendation |
|
Запутанные названия методов из-за заглавной буквы | Ремонтопригодность | Recommendation |
|
Запутанная перегрузка методов | Ремонтопригодность | Recommendation |
|
Постоянный антипаттерн интерфейса | Ремонтопригодность | Recommendation |
|
Содержимое контейнера никогда не доступно | Ремонтопригодность | Ошибка |
|
Неэффективный тест пустых строк | Ремонтопригодность | Recommendation |
|
Неэффективный конструктор строк | Ремонтопригодность | Recommendation |
|
Внутренний класс может быть статичным | Ремонтопригодность | Recommendation |
|
Интерфейс нельзя реализовать | Ремонтопригодность | Предупреждение |
|
У Javadoc есть невозможный тег 'throws' | Ремонтопригодность | Recommendation |
|
Вводящая в заблуждение вмятины | Ремонтопригодность | Предупреждение |
|
Отсутствующая аннотация Override | Ремонтопригодность | Recommendation |
|
Отсутствующее пространство в литерале строки | Ремонтопригодность | Recommendation |
|
Высмеивание всех публичных методов класса может указывать на слишком сильное тестирование юнит-теста | Ремонтопригодность | Recommendation |
|
Метка в операторе switch, не в case label | Ремонтопригодность | Recommendation |
|
Неявные элементы управления и пробелы | Ремонтопригодность | Предупреждение |
|
Возможная путаница между местными и полями | Ремонтопригодность | Recommendation |
|
Поддельные теги Javadoc @param | Ремонтопригодность | Recommendation |
|
Тонкий вызов наследственного метода | Ремонтопригодность | Предупреждение |
|
Подчеркивание используется в качестве идентификатора | Ремонтопригодность | Recommendation |
|
Непрочитанная локальная переменная | Ремонтопригодность | Recommendation |
|
Неиспользуемые классы и интерфейсы | Ремонтопригодность | Recommendation |
|
Аргумент неиспользованного формата | Ремонтопригодность | Предупреждение |
|
Неиспользованная этикетка | Ремонтопригодность | Recommendation |
|
Использование VisibleForTesting в производственном коде | Ремонтопригодность | Предупреждение |
|
Бесполезная нулевая проверка | Ремонтопригодность | Предупреждение |
|
Бесполезный параметр | Ремонтопригодность | Recommendation |
|
Бесполезный toString on String | Ремонтопригодность | Recommendation |
|
Бесполезный тип теста | Ремонтопригодность | Предупреждение |
|
Индекс массива выходит за пределы | Reliability | Ошибка |
|
Символ передаётся конструктору StringBuffer или StringBuilder | Reliability | Ошибка |
|
Сравнение идентичных значений | Reliability | Ошибка |
|
Постоянное условие петли | Reliability | Предупреждение |
|
Содержимое контейнера никогда не инициализируется | Reliability | Ошибка |
|
Размер контейнера по сравнению с нулём | Reliability | Предупреждение |
|
Продолжить заявление, которое не продолжается | Reliability | Предупреждение |
|
Проверки противоречивых типов | Reliability | Ошибка |
|
Дедеферированное выражение может быть нулевым | Reliability | Предупреждение |
|
Деферированная переменная всегда равна нулю | Reliability | Ошибка |
|
Дедетерминированная переменная может быть нулевой | Reliability | Предупреждение |
|
Прямой вызов методу run() | Reliability | Recommendation |
|
Не звони finalize() | Reliability | Ошибка |
|
Дважды проверенное блокирование небезопасно по резьбе | Reliability | Ошибка |
|
Метод эквивалентов не проверяет тип аргумента | Reliability | Ошибка |
|
Равны на несравнимых типах | Reliability | Ошибка |
|
Equals или hashCode на массивах | Reliability | Ошибка |
|
Экрапирование | Reliability | Предупреждение |
|
Экспозиция внутреннего представления | Reliability | Recommendation |
|
Выражение всегда вычисляется по одному и тому же значению | Reliability | Предупреждение |
|
Хешированное значение без определения хэш-кода | Reliability | Ошибка |
|
Игнорированный статус ошибки вызова | Reliability | Recommendation |
|
Игнорируемый сериализационный элемент класса записи | Reliability | Предупреждение |
|
Неявное преобразование из массива в строку | Reliability | Recommendation |
|
Несогласованные эквивалентности и хэш-код | Reliability | Ошибка |
|
Несогласованная синхронизация геттера и сеттера | Reliability | Ошибка |
|
Неэффективный выходной поток | Reliability | Предупреждение |
|
Неэффективный примитивный конструктор | Reliability | Recommendation |
|
Неэффективное использование итератора набора клавиш | Reliability | Recommendation |
|
Итерируемая обёртка итератора | Reliability | Предупреждение |
|
Итератор, реализующий Iterable | Reliability | Предупреждение |
|
Сдвиг влево, превышающий ширину шрифта | Reliability | Предупреждение |
|
Отсутствует @Nested аннотация по внутреннему тесту класса JUnit 5 | Reliability | Предупреждение |
|
Отсутствующий нюанс NumberFormatException | Reliability | Recommendation |
|
Аргумент отсутствующего формата | Reliability | Ошибка |
|
Вызов неконечного метода в конструкторе | Reliability | Ошибка |
|
Несинхронизированное переопределение синхронизированного метода | Reliability | Предупреждение |
|
Не безопасна для резьбы | Reliability | Предупреждение |
|
Возможная утечка ресурсов базы данных | Reliability | Предупреждение |
|
Возможная утечка входных ресурсов | Reliability | Предупреждение |
|
Возможная утечка выходных ресурсов | Reliability | Предупреждение |
|
Состояние гонки при двойной проверке инициализации объектов блокировки | Reliability | Предупреждение |
|
Тест равенства ссылок для коробочных типов | Reliability | Ошибка |
|
Результат умножения, отливанного в более широкий шрифт | Reliability | Предупреждение |
|
Безопасная публикация | Reliability | Предупреждение |
|
Самоназначение | Reliability | Ошибка |
|
Подозрительный формат свидания | Reliability | Предупреждение |
|
Синхронизация на коробочных типах или строках | Reliability | Ошибка |
|
Несоответствие типов при доступе к контейнеру | Reliability | Ошибка |
|
Несоответствие типов при модификации контейнера | Reliability | Ошибка |
|
Недостижимая оговорка о ловле | Reliability | Предупреждение |
|
Использование с String#replaceAll первым аргументом, который не является регулярным выражением | Reliability | Recommendation |
|
Использование по умолчанию toString() | Reliability | Recommendation |
|
Бесполезный тест сравнения | Reliability | Предупреждение |
|
Белое пространство противоречит приоритету операторов | Reliability | Предупреждение |
|
Неправильное сравнение NaN | Reliability | Ошибка |
|
Ноль потоков, заданных для java.util.concurrent.ScheduledThreadPoolExecutor | Reliability | Recommendation |