# # Lint # # Exclude assigns for ECR files Lint/UselessAssign: Excluded: - src/invidious.cr - src/invidious/helpers/errors.cr - src/invidious/routes/**/*.cr # Ignore false negative (if !db.query_one?...) Lint/UnreachableCode: Excluded: - src/invidious/database/base.cr # Ignore shadowed variable `key` (it works for now, and that's # a sensitive part of the code) Lint/ShadowingOuterLocalVar: Excluded: - src/invidious/helpers/tokens.cr Lint/NotNil: Enabled: false # # Style # Style/RedundantBegin: Enabled: false Style/RedundantReturn: Enabled: false Style/ParenthesesAroundCondition: Enabled: false # This requires a rewrite of most data structs (and their usage) in Invidious. Style/QueryBoolMethods: Enabled: false # # Metrics # # Ignore function complexity (number of if/else & case/when branches) # For some functions that can hardly be simplified for now Metrics/CyclomaticComplexity: Enabled: false