zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

.credo.exs (8513B)


      1 # This file contains the configuration for Credo and you are probably reading
      2 # this after creating it with `mix credo.gen.config`.
      3 #
      4 # If you find anything wrong or unclear in this file, please report an
      5 # issue on GitHub: https://github.com/rrrene/credo/issues
      6 #
      7 %{
      8   #
      9   # You can have as many configs as you like in the `configs:` field.
     10   configs: [
     11     %{
     12       #
     13       # Run any config using `mix credo -C <name>`. If no config name is given
     14       # "default" is used.
     15       #
     16       name: "default",
     17       #
     18       # These are the files included in the analysis:
     19       files: %{
     20         #
     21         # You can give explicit globs or simply directories.
     22         # In the latter case `**/*.{ex,exs}` will be used.
     23         #
     24         included: [
     25           "lib/",
     26           "src/",
     27           "test/",
     28           "web/",
     29           "apps/*/lib/",
     30           "apps/*/src/",
     31           "apps/*/test/",
     32           "apps/*/web/"
     33         ],
     34         excluded: [~r"/_build/", ~r"/deps/", ~r"/node_modules/"]
     35       },
     36       #
     37       # Load and configure plugins here:
     38       #
     39       plugins: [],
     40       #
     41       # If you create your own checks, you must specify the source files for
     42       # them here, so they can be loaded by Credo before running the analysis.
     43       #
     44       requires: [],
     45       #
     46       # If you want to enforce a style guide and need a more traditional linting
     47       # experience, you can change `strict` to `true` below:
     48       #
     49       strict: false,
     50       #
     51       # To modify the timeout for parsing files, change this value:
     52       #
     53       parse_timeout: 5000,
     54       #
     55       # If you want to use uncolored output by default, you can change `color`
     56       # to `false` below:
     57       #
     58       color: true,
     59       #
     60       # You can customize the parameters of any check by adding a second element
     61       # to the tuple.
     62       #
     63       # To disable a check put `false` as second element:
     64       #
     65       #     {Credo.Check.Design.DuplicatedCode, false}
     66       #
     67       checks: %{
     68         enabled: [
     69           #
     70           ## Consistency Checks
     71           #
     72           {Credo.Check.Consistency.ExceptionNames, []},
     73           {Credo.Check.Consistency.LineEndings, []},
     74           {Credo.Check.Consistency.ParameterPatternMatching, []},
     75           {Credo.Check.Consistency.SpaceAroundOperators, []},
     76           {Credo.Check.Consistency.SpaceInParentheses, []},
     77           {Credo.Check.Consistency.TabsOrSpaces, []},
     78 
     79           #
     80           ## Design Checks
     81           #
     82           # You can customize the priority of any check
     83           # Priority values are: `low, normal, high, higher`
     84           #
     85           {Credo.Check.Design.AliasUsage,
     86            [priority: :low, if_nested_deeper_than: 2, if_called_more_often_than: 0]},
     87           # You can also customize the exit_status of each check.
     88           # If you don't want TODO comments to cause `mix credo` to fail, just
     89           # set this value to 0 (zero).
     90           #
     91           {Credo.Check.Design.TagTODO, [exit_status: 2]},
     92           {Credo.Check.Design.TagFIXME, []},
     93 
     94           #
     95           ## Readability Checks
     96           #
     97           {Credo.Check.Readability.AliasOrder, []},
     98           {Credo.Check.Readability.FunctionNames, []},
     99           {Credo.Check.Readability.LargeNumbers, []},
    100           {Credo.Check.Readability.MaxLineLength, [priority: :low, max_length: 120]},
    101           {Credo.Check.Readability.ModuleAttributeNames, []},
    102           {Credo.Check.Readability.ModuleDoc, []},
    103           {Credo.Check.Readability.ModuleNames, []},
    104           {Credo.Check.Readability.ParenthesesInCondition, []},
    105           {Credo.Check.Readability.ParenthesesOnZeroArityDefs, []},
    106           {Credo.Check.Readability.PipeIntoAnonymousFunctions, []},
    107           {Credo.Check.Readability.PredicateFunctionNames, []},
    108           {Credo.Check.Readability.PreferImplicitTry, []},
    109           {Credo.Check.Readability.RedundantBlankLines, []},
    110           {Credo.Check.Readability.Semicolons, []},
    111           {Credo.Check.Readability.SpaceAfterCommas, []},
    112           {Credo.Check.Readability.StringSigils, []},
    113           {Credo.Check.Readability.TrailingBlankLine, []},
    114           {Credo.Check.Readability.TrailingWhiteSpace, []},
    115           {Credo.Check.Readability.UnnecessaryAliasExpansion, []},
    116           {Credo.Check.Readability.VariableNames, []},
    117           {Credo.Check.Readability.WithSingleClause, []},
    118 
    119           #
    120           ## Refactoring Opportunities
    121           #
    122           {Credo.Check.Refactor.Apply, []},
    123           {Credo.Check.Refactor.CondStatements, []},
    124           {Credo.Check.Refactor.CyclomaticComplexity, []},
    125           {Credo.Check.Refactor.FunctionArity, []},
    126           {Credo.Check.Refactor.LongQuoteBlocks, []},
    127           {Credo.Check.Refactor.MatchInCondition, []},
    128           {Credo.Check.Refactor.MapJoin, []},
    129           {Credo.Check.Refactor.NegatedConditionsInUnless, []},
    130           {Credo.Check.Refactor.NegatedConditionsWithElse, []},
    131           {Credo.Check.Refactor.Nesting, []},
    132           {Credo.Check.Refactor.UnlessWithElse, []},
    133           {Credo.Check.Refactor.WithClauses, []},
    134           {Credo.Check.Refactor.FilterFilter, []},
    135           {Credo.Check.Refactor.RejectReject, []},
    136           {Credo.Check.Refactor.RedundantWithClauseResult, []},
    137 
    138           #
    139           ## Warnings
    140           #
    141           {Credo.Check.Warning.ApplicationConfigInModuleAttribute, []},
    142           {Credo.Check.Warning.BoolOperationOnSameValues, []},
    143           {Credo.Check.Warning.ExpensiveEmptyEnumCheck, []},
    144           {Credo.Check.Warning.IExPry, []},
    145           {Credo.Check.Warning.IoInspect, []},
    146           {Credo.Check.Warning.OperationOnSameValues, []},
    147           {Credo.Check.Warning.OperationWithConstantResult, []},
    148           {Credo.Check.Warning.RaiseInsideRescue, []},
    149           {Credo.Check.Warning.SpecWithStruct, []},
    150           {Credo.Check.Warning.WrongTestFileExtension, []},
    151           {Credo.Check.Warning.UnusedEnumOperation, []},
    152           {Credo.Check.Warning.UnusedFileOperation, []},
    153           {Credo.Check.Warning.UnusedKeywordOperation, []},
    154           {Credo.Check.Warning.UnusedListOperation, []},
    155           {Credo.Check.Warning.UnusedPathOperation, []},
    156           {Credo.Check.Warning.UnusedRegexOperation, []},
    157           {Credo.Check.Warning.UnusedStringOperation, []},
    158           {Credo.Check.Warning.UnusedTupleOperation, []},
    159           {Credo.Check.Warning.UnsafeExec, []}
    160         ],
    161         disabled: [
    162           #
    163           # Checks scheduled for next check update (opt-in for now, just replace `false` with `[]`)
    164 
    165           #
    166           # Controversial and experimental checks (opt-in, just move the check to `:enabled`
    167           #   and be sure to use `mix credo --strict` to see low priority checks)
    168           #
    169           {Credo.Check.Consistency.MultiAliasImportRequireUse, []},
    170           {Credo.Check.Consistency.UnusedVariableNames, []},
    171           {Credo.Check.Design.DuplicatedCode, []},
    172           {Credo.Check.Design.SkipTestWithoutComment, []},
    173           {Credo.Check.Readability.AliasAs, []},
    174           {Credo.Check.Readability.BlockPipe, []},
    175           {Credo.Check.Readability.ImplTrue, []},
    176           {Credo.Check.Readability.MultiAlias, []},
    177           {Credo.Check.Readability.NestedFunctionCalls, []},
    178           {Credo.Check.Readability.SeparateAliasRequire, []},
    179           {Credo.Check.Readability.SingleFunctionToBlockPipe, []},
    180           {Credo.Check.Readability.SinglePipe, []},
    181           {Credo.Check.Readability.Specs, []},
    182           {Credo.Check.Readability.StrictModuleLayout, []},
    183           {Credo.Check.Readability.WithCustomTaggedTuple, []},
    184           {Credo.Check.Refactor.ABCSize, []},
    185           {Credo.Check.Refactor.AppendSingleItem, []},
    186           {Credo.Check.Refactor.DoubleBooleanNegation, []},
    187           {Credo.Check.Refactor.FilterReject, []},
    188           {Credo.Check.Refactor.IoPuts, []},
    189           {Credo.Check.Refactor.MapMap, []},
    190           {Credo.Check.Refactor.ModuleDependencies, []},
    191           {Credo.Check.Refactor.NegatedIsNil, []},
    192           {Credo.Check.Refactor.PipeChainStart, []},
    193           {Credo.Check.Refactor.RejectFilter, []},
    194           {Credo.Check.Refactor.VariableRebinding, []},
    195           {Credo.Check.Warning.LazyLogging, []},
    196           {Credo.Check.Warning.LeakyEnvironment, []},
    197           {Credo.Check.Warning.MapGetUnsafePass, []},
    198           {Credo.Check.Warning.MixEnv, []},
    199           {Credo.Check.Warning.UnsafeToAtom, []}
    200 
    201           # {Credo.Check.Refactor.MapInto, []},
    202 
    203           #
    204           # Custom checks can be created using `mix credo.gen.check`.
    205           #
    206         ]
    207       }
    208     }
    209   ]
    210 }