[Tech debt] Nettoyer les 51 code smells SonarQube #56

Closed
opened 2026-08-06 13:26:34 -04:00 by NixCyRy · 0 comments
NixCyRy commented 2026-08-06 13:26:34 -04:00 (Migrated from github.com)

Problème

SonarQube rapporte 51 code smells:

Sévérité Count Exemples
BLOCKER 6 Variables globales sans let/const/var (auth.js, food-modal.js, render.js, tracking.js)
CRITICAL 15 Littéraux dupliqués (python S1192), var au lieu de let/const
MAJOR 19 insertBefore -> before(), removeChild -> remove()
MINOR 11 Exception handlers vides, variables inutilisées

Solutions

BLOCKER (6)

  • Ajouter let/const aux variables globales: planningSelections = ... -> let planningSelections = ...

CRITICAL (15)

  • python S1192: Extraire en constantes les strings répétées ('Format de date invalide')
  • JS: Remplacer tous les var par const/let

MAJOR (19)

  • insertBefore(child, ref) -> ref.before(child)
  • parentNode.removeChild(child) -> child.remove()

MINOR (11)

  • Handler les catch vides ou rethrow
  • Retirer variables inutilisées
  • RegExp.exec() au lieu de String.match()

Approche

  1. Fix auto via eslint (regle no-var, prefer-const)
  2. Extraction manuelle des constantes Python
  3. Un seul PR mécanique

Priorité

P3-low

## Problème SonarQube rapporte 51 code smells: | Sévérité | Count | Exemples | |----------|-------|----------| | BLOCKER | 6 | Variables globales sans `let`/`const`/`var` (auth.js, food-modal.js, render.js, tracking.js) | | CRITICAL | 15 | Littéraux dupliqués (python S1192), `var` au lieu de `let`/`const` | | MAJOR | 19 | `insertBefore` -> `before()`, `removeChild` -> `remove()` | | MINOR | 11 | Exception handlers vides, variables inutilisées | ## Solutions ### BLOCKER (6) - Ajouter `let`/`const` aux variables globales: `planningSelections = ...` -> `let planningSelections = ...` ### CRITICAL (15) - python S1192: Extraire en constantes les strings répétées (`'Format de date invalide'`) - JS: Remplacer tous les `var` par `const`/`let` ### MAJOR (19) - `insertBefore(child, ref)` -> `ref.before(child)` - `parentNode.removeChild(child)` -> `child.remove()` ### MINOR (11) - Handler les catch vides ou rethrow - Retirer variables inutilisées - `RegExp.exec()` au lieu de `String.match()` ## Approche 1. Fix auto via eslint (regle `no-var`, `prefer-const`) 2. Extraction manuelle des constantes Python 3. Un seul PR mécanique ## Priorité P3-low
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
SlopVibe-org/nutri-food#56
No description provided.