Current section

Files

Jump to
Raw

.credo.exs

checks = [
#Consistency Checks
{Credo.Check.Consistency.ExceptionNames, []},
{Credo.Check.Consistency.LineEndings, [force: :unix]},
{Credo.Check.Consistency.MultiAliasImportRequireUse, []},
{Credo.Check.Consistency.ParameterPatternMatching, [force: :after]},
{Credo.Check.Consistency.SpaceAroundOperators, []},
{Credo.Check.Consistency.SpaceInParentheses, []},
{Credo.Check.Consistency.TabsOrSpaces, [force: :spaces]},
{Credo.Check.Consistency.UnusedVariableNames, false},
# Design Checks
{Credo.Check.Design.AliasUsage, false},
{Credo.Check.Design.SkipTestWithoutComment, false},
{Credo.Check.Design.TagFIXME, false},
{Credo.Check.Design.TagTODO, false},
# Readability Checks
{Credo.Check.Readability.AliasAs, false},
{Credo.Check.Readability.AliasOrder, [priority: :normal]},
{Credo.Check.Readability.BlockPipe, false},
{Credo.Check.Readability.FunctionNames, []},
{Credo.Check.Readability.ImplTrue, []},
{Credo.Check.Readability.LargeNumbers, []},
{Credo.Check.Readability.MaxLineLength, [priority: :high, max_length: 100]},
{Credo.Check.Readability.ModuleAttributeNames, []},
{Credo.Check.Readability.ModuleDoc, false},
{Credo.Check.Readability.ModuleNames, []},
{Credo.Check.Readability.MultiAlias, [priority: :high]},
{Credo.Check.Readability.NestedFunctionCalls, [min_pipeline_length: 3]},
{Credo.Check.Readability.ParenthesesInCondition, []},
{Credo.Check.Readability.ParenthesesOnZeroArityDefs, []},
{Credo.Check.Readability.PipeIntoAnonymousFunctions, []},
{Credo.Check.Readability.PredicateFunctionNames, [priority: :normal]},
{Credo.Check.Readability.PreferImplicitTry, []},
{Credo.Check.Readability.RedundantBlankLines, [priority: :normal]},
{Credo.Check.Readability.Semicolons, []},
{Credo.Check.Readability.SeparateAliasRequire, [priority: :normal]},
{Credo.Check.Readability.SingleFunctionToBlockPipe, false},
{Credo.Check.Readability.SinglePipe, false},
{Credo.Check.Readability.SpaceAfterCommas, [priority: :high]},
{Credo.Check.Readability.Specs, false},
{Credo.Check.Readability.StrictModuleLayout, [priority: :normal]},
{Credo.Check.Readability.StringSigils, [priority: :normal]},
{Credo.Check.Readability.TrailingBlankLine, [priority: :normal]},
{Credo.Check.Readability.TrailingWhiteSpace, [priority: :normal]},
{Credo.Check.Readability.UnnecessaryAliasExpansion, false},
{Credo.Check.Readability.VariableNames, []},
{Credo.Check.Readability.WithCustomTaggedTuple, [priority: :normal]},
{Credo.Check.Readability.WithSingleClause, [priority: :high]},
# Refactoring Opportunities
{Credo.Check.Refactor.ABCSize, false},
{Credo.Check.Refactor.AppendSingleItem, false},
{Credo.Check.Refactor.Apply, [priority: :normal]},
{Credo.Check.Refactor.CondStatements, [priority: :normal]},
{Credo.Check.Refactor.CyclomaticComplexity, []},
{Credo.Check.Refactor.DoubleBooleanNegation, [priority: :normal]},
{Credo.Check.Refactor.FilterFilter, [priority: :normal]},
{Credo.Check.Refactor.FilterReject, [priority: :normal]},
{Credo.Check.Refactor.FunctionArity, [priority: :normal, max_arity: 6]},
{Credo.Check.Refactor.IoPuts, [priority: :high]},
{Credo.Check.Refactor.LongQuoteBlocks, []},
{Credo.Check.Refactor.MapJoin, []},
{Credo.Check.Refactor.MapMap, [priority: :normal]},
{Credo.Check.Refactor.MatchInCondition, [priority: :normal]},
{Credo.Check.Refactor.ModuleDependencies, false},
{Credo.Check.Refactor.NegatedConditionsInUnless, []},
{Credo.Check.Refactor.NegatedConditionsWithElse, []},
{Credo.Check.Refactor.NegatedIsNil, [priority: :normal]},
{Credo.Check.Refactor.Nesting, [priority: :normal]},
{Credo.Check.Refactor.PipeChainStart, false},
{Credo.Check.Refactor.RedundantWithClauseResult, [priority: :normal]},
{Credo.Check.Refactor.RejectFilter, [priority: :normal]},
{Credo.Check.Refactor.RejectReject, [priority: :normal]},
{Credo.Check.Refactor.UnlessWithElse, []},
{Credo.Check.Refactor.VariableRebinding, false},
{Credo.Check.Refactor.WithClauses, []},
# Warnings
{Credo.Check.Warning.ApplicationConfigInModuleAttribute, []},
{Credo.Check.Warning.BoolOperationOnSameValues, []},
{Credo.Check.Warning.ExpensiveEmptyEnumCheck, []},
{Credo.Check.Warning.IExPry, []},
{Credo.Check.Warning.IoInspect, []},
{Credo.Check.Warning.LazyLogging, false},
{Credo.Check.Warning.LeakyEnvironment, false},
{Credo.Check.Warning.MapGetUnsafePass, []},
{Credo.Check.Warning.MixEnv, []},
{Credo.Check.Warning.OperationOnSameValues, []},
{Credo.Check.Warning.OperationWithConstantResult, []},
{Credo.Check.Warning.RaiseInsideRescue, []},
{Credo.Check.Warning.SpecWithStruct, false},
{Credo.Check.Warning.UnsafeExec, []},
{Credo.Check.Warning.UnsafeToAtom, []},
{Credo.Check.Warning.UnusedEnumOperation, []},
{Credo.Check.Warning.UnusedFileOperation, []},
{Credo.Check.Warning.UnusedKeywordOperation, []},
{Credo.Check.Warning.UnusedListOperation, []},
{Credo.Check.Warning.UnusedPathOperation, []},
{Credo.Check.Warning.UnusedRegexOperation, []},
{Credo.Check.Warning.UnusedStringOperation, []},
{Credo.Check.Warning.UnusedTupleOperation, []},
{Credo.Check.Warning.WrongTestFileExtension, []},
]
%{
configs: [
%{
name: "default",
files: %{
included: [
"lib/",
"priv/repo/migrations/"
],
},
plugins: [],
requires: [],
strict: false,
parse_timeout: 5000,
color: true,
checks: %{
enabled: [
{Credo.Check.Design.DuplicatedCode, []} | checks
]
}
},
%{
name: "test",
files: %{
included: [
"test/"
],
},
plugins: [],
requires: [],
strict: false,
parse_timeout: 5000,
color: true,
checks: %{
enabled: checks
}
}
]
}