# Perl::Critic configuration for freenas-proxmox # Severity scale: 1 (brutal) → 5 (gentle). We start at 4 and tighten over time. # Run: perlcritic --profile .perlcriticrc perl5/PVE/Storage/Custom/TrueNAS.pm severity = 4 theme = core verbose = %f:%l:%c [%p] %m\n # ── Rules currently disabled ───────────────────────────────────────────────── # These are known issues being fixed in Phase 2 (code hardening). # Remove entries here as the underlying code is fixed. # eval { } block is fine; only string eval is risky — keep disabled [-BuiltinFunctions::ProhibitStringyEval] # Postfix conditionals (if/unless at end of line) — style preference, keep [-ControlStructures::ProhibitPostfixControls] # TrueNAS.pm has necessarily large subs (PVE plugin interface methods) [-Subroutines::ProhibitExcessComplexity] # our $VERSION and our $state are intentional package-level declarations [-Variables::ProhibitPackageVars] # ── Rules with custom settings ──────────────────────────────────────────────── [InputOutput::RequireCheckedSyscalls] functions = :builtins exclude_functions = print say warn [ValuesAndExpressions::ProhibitMagicNumbers] allowed_values = 0 1 2 200 201 204 302 307 [Subroutines::ProhibitBuiltinHomonyms] severity = 5