github.com/status-im/status-go@v1.1.0/.codeclimate.yml (about)

     1  version: "2" # required to adjust maintainability checks
     2  checks:
     3    # Methods or functions defined with a high number of arguments
     4    argument-count:
     5      config:
     6        threshold: 6
     7    # Boolean logic that may be hard to understand
     8    complex-logic:
     9      config:
    10        threshold: 4
    11    # Excessive lines of code within a single file
    12    file-lines:
    13      config:
    14        threshold: 900
    15    # Functions or methods that may be hard to understand. This is disabled as it doesn't appear to be a reliable metric.
    16    method-complexity:
    17      enabled: false
    18    # Classes defined with a high number of functions or methods.
    19    method-count:
    20      config:
    21        threshold: 21
    22    # Excessive lines of code within a single function or method
    23    method-lines:
    24      config:
    25        threshold: 500
    26    #  Deeply nested control structures like if or case
    27    nested-control-flow:
    28      config:
    29        threshold: 4
    30    # Functions or methods with a high number of return statements. This is disabled because Go encourages early returns.
    31    return-statements:
    32      enabled: false
    33    # Duplicate code which is not identical but shares the same structure (e.g. variable names may differ). This is disabled due to too many false trips.
    34    similar-code:
    35      enabled: false
    36    # Code that is identical in structure
    37    identical-code:
    38      config:
    39        threshold: # language-specific defaults. an override will affect all languages.
    40  exclude_patterns:
    41    - "vendor/"
    42    - "static/"
    43    - "t/"
    44    - "mailserver/migrations"
    45    - "**/*/bindata.go"
    46    - "protocol/protobuf/*.pb.go"
    47    - "protocol/communities/migrations/migrations.go"
    48    - "protocol/encryption/migrations/migrations.go"
    49    - "protocol/internal/sqlite/migrations.go"
    50    - "protocol/migrations/migrations.go"
    51    - "protocol/pushnotificationclient/migrations/migrations.go"
    52    - "protocol/pushnotificationserver/migrations/migrations.go"
    53    - "protocol/transport/migrations/migrations.go"
    54    - "protocol/encryption/protocol_message.pb.go"
    55    - "images/qr-assets.go"