Изменить указанную c часть в правиле сонаркуба - PullRequest
0 голосов
/ 16 апреля 2020

Я новичок в использовании SonarQube и пытаюсь найти обходное правило в нем -

В SonarQube есть встроенное правило - Встроенные объекты не должны быть переопределены , который в основном описывается как:

Overriding an object changes its behavior and could potentially impact all code using that object. 
Overriding standard, built-in objects could therefore have broad, potentially catastrophic effects on previously-working code.

This rule detects overrides of the following native objects:

Fundamental objects - Object, Function, Boolean, Symbol, Error, EvalError, InternalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError
Numbers and dates - Number, Math, Date
Text processing - String, RegExp
Indexed collections - Array, Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Unit16Array, Int32Array, Uint32Array, Float32Array, Float64Array
Keyed collections - Map, Set, WeakMap, WeakSet
Structured data - ArrayBuffer, DataView, JSON
Control abstraction objects - Promise
Reflection - Reflect, Proxy
Internationalization - Intl
Non-standard objects - Generator, Iterator, ParallelArray, StopIteration

Поскольку код, на котором я хочу выполнить сонарное сканирование, основан на JavaScript, а кодовая база активно использует обещание синей птицы

Эта строка всегда помечается как ошибка: const Promise = require('bluebird'); в соответствии с правилом, которое я упоминал ранее.

Я пытался найти способ игнорировать только использование Promise в качестве ошибки, позволяя остальной части правила оставаться неизменной но я могу думать только о том, чтобы вообще отключить это правило и написать правило, которое работает для всех других объектов, кроме Promise.

Есть ли способ не допустить, чтобы этот оператор импорта был помечен как ошибка? Любая помощь приветствуется! Спасибо.

PS: я знаю, что редактирование правила в SonarQube для JavaScript устарело - https://docs.sonarqube.org/latest/analysis/languages/javascript/, но мне все еще нужен обходной путь.

...