105 lines
5.5 KiB
YAML
105 lines
5.5 KiB
YAML
Checks:
|
|
# Estrategia: Habilitar checks uno por uno, aplicar fix, compilar, commit
|
|
# ✅ Check 1: readability-uppercase-literal-suffix (1.0f → 1.0F)
|
|
# ✅ Check 2: readability-math-missing-parentheses (claridad en ops matemáticas)
|
|
# ✅ Check 3: readability-identifier-naming (DESHABILITADO temporalmente - cascada de cambios)
|
|
# ✅ Check 4: readability-const-return-type (código ya cumple)
|
|
# ✅ Check 5: readability-else-after-return (código ya cumple)
|
|
# ✅ Check 6: readability-simplify-boolean-expr (código ya cumple)
|
|
# ✅ Check 7: readability-* (225 fixes aplicados)
|
|
- readability-*
|
|
- -readability-identifier-naming # Excluido (cascada de cambios)
|
|
- -readability-identifier-length # Excluido (nombres cortos son OK)
|
|
- -readability-magic-numbers # Excluido (muchos falsos positivos)
|
|
- -readability-convert-member-functions-to-static # Excluido (rompe encapsulación)
|
|
- -readability-use-anyofallof # Excluido (C++20 ranges - no todos los compiladores)
|
|
- -readability-function-cognitive-complexity # Excluido (complejidad ciclomática aceptable)
|
|
- -clang-analyzer-security.insecureAPI.rand # Excluido (rand() es suficiente para juegos)
|
|
# ✅ Check 8: modernize-* (215 fixes aplicados)
|
|
- modernize-*
|
|
- -modernize-use-trailing-return-type # Excluido (estilo controversial)
|
|
- -modernize-avoid-c-arrays # Excluido (arrays C son OK en algunos contextos)
|
|
# ✅ Check 9: performance-* (91 fixes aplicados)
|
|
- performance-*
|
|
- -performance-enum-size # Excluido (tamaño de enum no crítico)
|
|
# ✅ Check 10: bugprone-* (0 fixes - todos eran falsos positivos)
|
|
- bugprone-*
|
|
- -bugprone-easily-swappable-parameters # Excluido (muchos falsos positivos)
|
|
- -bugprone-narrowing-conversions # Excluido (conversiones intencionales)
|
|
- -bugprone-integer-division # Excluido (divisiones enteras OK en contexto)
|
|
- -bugprone-branch-clone # Excluido (fall-through en switch es intencional)
|
|
- -bugprone-switch-missing-default-case # Excluido (no todos los switches necesitan default)
|
|
- -bugprone-implicit-widening-of-multiplication-result # Excluido (valores pequeños, sin overflow)
|
|
- -bugprone-exception-escape # Excluido (excepciones en main terminan el programa - OK)
|
|
# ✅ Check 11: llvm-include-order (validar orden de includes - 0 errores)
|
|
- llvm-include-order
|
|
# ⏸️ Check 12: misc-include-cleaner (DESHABILITADO temporalmente - requiere refactorización masiva de includes)
|
|
- -misc-include-cleaner
|
|
|
|
WarningsAsErrors: '*'
|
|
# No usar HeaderFilterRegex - usamos .clang-tidy local en source/core/audio/ para excluir
|
|
FormatStyle: file
|
|
|
|
CheckOptions:
|
|
# Variables locales en snake_case
|
|
- { key: readability-identifier-naming.VariableCase, value: lower_case }
|
|
|
|
# Miembros privados en snake_case con sufijo _
|
|
- { key: readability-identifier-naming.PrivateMemberCase, value: lower_case }
|
|
- { key: readability-identifier-naming.PrivateMemberSuffix, value: _ }
|
|
|
|
# Miembros protegidos en snake_case con sufijo _
|
|
- { key: readability-identifier-naming.ProtectedMemberCase, value: lower_case }
|
|
- { key: readability-identifier-naming.ProtectedMemberSuffix, value: _ }
|
|
|
|
# Miembros públicos en snake_case (sin sufijo)
|
|
- { key: readability-identifier-naming.PublicMemberCase, value: lower_case }
|
|
|
|
# Namespaces en CamelCase
|
|
- { key: readability-identifier-naming.NamespaceCase, value: CamelCase }
|
|
|
|
# Variables estáticas privadas como miembros privados
|
|
- { key: readability-identifier-naming.StaticVariableCase, value: lower_case }
|
|
- { key: readability-identifier-naming.StaticVariableSuffix, value: _ }
|
|
|
|
# Constantes estáticas sin sufijo
|
|
- { key: readability-identifier-naming.StaticConstantCase, value: UPPER_CASE }
|
|
|
|
# Constantes globales en UPPER_CASE
|
|
- { key: readability-identifier-naming.GlobalConstantCase, value: UPPER_CASE }
|
|
|
|
# Variables constexpr globales en UPPER_CASE
|
|
- { key: readability-identifier-naming.ConstexprVariableCase, value: UPPER_CASE }
|
|
|
|
# Constantes locales en UPPER_CASE
|
|
- { key: readability-identifier-naming.LocalConstantCase, value: UPPER_CASE }
|
|
|
|
# Constexpr miembros en UPPER_CASE (sin sufijo)
|
|
- { key: readability-identifier-naming.ConstexprMemberCase, value: UPPER_CASE }
|
|
|
|
# Constexpr miembros privados/protegidos con sufijo _
|
|
- { key: readability-identifier-naming.ConstexprMethodCase, value: UPPER_CASE }
|
|
|
|
# Clases, structs y enums en CamelCase
|
|
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.StructCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
|
|
|
|
# Valores de enums en UPPER_CASE
|
|
- { key: readability-identifier-naming.EnumConstantCase, value: UPPER_CASE }
|
|
|
|
# Métodos en camelBack (sin sufijos)
|
|
- { key: readability-identifier-naming.MethodCase, value: camelBack }
|
|
- { key: readability-identifier-naming.PrivateMethodCase, value: camelBack }
|
|
- { key: readability-identifier-naming.ProtectedMethodCase, value: camelBack }
|
|
- { key: readability-identifier-naming.PublicMethodCase, value: camelBack }
|
|
|
|
# Funciones en camelBack
|
|
- { key: readability-identifier-naming.FunctionCase, value: camelBack }
|
|
|
|
# Parámetros en lower_case
|
|
- { key: readability-identifier-naming.ParameterCase, value: lower_case }
|
|
|
|
# misc-include-cleaner: Ignorar SDL (genera falsos positivos)
|
|
- { key: misc-include-cleaner.IgnoreHeaders, value: 'SDL3/.*' }
|