mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-11 10:44:38 +00:00
Clears all 29 open SonarCloud issues. - `examples/plugin-catalog/scripts/validate.sh`: `[[ ]]` in place of `[ ]` for bash tests (SonarCloud shell:S7688). Every script has a bash shebang; no test uses `-a`/`-o`, escaped parentheses or an unquoted pattern on the right of `=`. - `crates/expr/src/prelude.js`, `crates/script/src/prelude.js`, `crates/script/src/scriptui.js`: `Number.isFinite` / `Number.isNaN` / `Number.parseInt` (javascript:S7773). Every call already has a number (a `typeof` check or `Number()` before it), and `Number.parseInt === parseInt`, so nothing changes in boa. - `packaging/windows/test-legacy-fixture.ps1`: dot-sources `[scriptblock]::Create($block)` in place of `Invoke-Expression $block` (powershelldre:S8659). It runs in the same scope, so `$LegacyWxs` is still set after it. - `sonar-project.properties`: S7773 and S8786 are not raised on `*.jsx`. Those are After Effects ExtendScript (ES3), which also runs in After Effects and has no `Number.isFinite` or `String.prototype.trim`. The ignore covers 7 issues in `Ease Presets.jsx` and `Rename Layers.jsx`.
24 lines
1.5 KiB
Properties
24 lines
1.5 KiB
Properties
sonar.projectKey=storytold_effectcraft
|
|
sonar.organization=storytold
|
|
|
|
# crates/aep/tests/fixtures/tools/ holds the contributor's offline generators of the AEP test
|
|
# corpus (Node and ExtendScript run by hand against a local folder, see its README). They are not
|
|
# shipped or run by the app or CI, so they are not analysed.
|
|
sonar.exclusions=crates/aep/tests/fixtures/tools/**
|
|
|
|
# S1523 / S2137 (eval, Function): the expression runtime in crates/expr/src/prelude.js replaces
|
|
# `eval` and `Function` on purpose, with wrappers that check the code they are given before it
|
|
# runs (After Effects expressions may call them). The rules flag exactly that wrapping.
|
|
#
|
|
# S7773 / S8786 (Number.isFinite and friends, String.trim): the .jsx scripts are After Effects
|
|
# ExtendScript, which is ES3. They also run in After Effects, which has neither.
|
|
sonar.issue.ignore.multicriteria=prelude_eval,prelude_redefine,jsx_es3_globals,jsx_es3_trim
|
|
sonar.issue.ignore.multicriteria.prelude_eval.ruleKey=javascript:S1523
|
|
sonar.issue.ignore.multicriteria.prelude_eval.resourceKey=crates/expr/src/prelude.js
|
|
sonar.issue.ignore.multicriteria.prelude_redefine.ruleKey=javascript:S2137
|
|
sonar.issue.ignore.multicriteria.prelude_redefine.resourceKey=crates/expr/src/prelude.js
|
|
sonar.issue.ignore.multicriteria.jsx_es3_globals.ruleKey=javascript:S7773
|
|
sonar.issue.ignore.multicriteria.jsx_es3_globals.resourceKey=**/*.jsx
|
|
sonar.issue.ignore.multicriteria.jsx_es3_trim.ruleKey=javascript:S8786
|
|
sonar.issue.ignore.multicriteria.jsx_es3_trim.resourceKey=**/*.jsx
|