agones.dev/agones@v1.53.0/.golangci.yml (about)

     1  ---
     2  # This file contains all available configuration options
     3  # with their default values.
     4  # options for analysis running
     5  run:
     6    # default concurrency is a available CPU number
     7    concurrency: 4
     8  
     9    # timeout for analysis, e.g. 30s, 5m, default is 1m
    10    deadline: 5m
    11  
    12    # exit code when at least one issue was found, default is 1
    13    issues-exit-code: 1
    14  
    15    # include test files or not, default is true
    16    tests: true
    17  
    18    # list of build tags, all linters use it. Default is empty list.
    19    build-tags:
    20  
    21    # which files to skip: they will be analyzed, but issues from them
    22    # won't be reported. Default value is empty list, but there is
    23    # no need to include all autogenerated files, we confidently recognize
    24    # autogenerated files. If it's not please let us know.
    25    skip-files:
    26    modules-download-mode: vendor
    27  # output configuration options
    28  output:
    29    # the formats used to render issues
    30    # formats: colored-line-number, line-number, json, colored-tab,
    31    #          tab, html, checkstyle, code-climate, junit-xml,
    32    #          junit-xml-extended, github-actions, teamcity, sarif
    33    # output path can be either `stdout`, `stderr`
    34    # or path to the file to write to
    35    formats:
    36      - format: colored-line-number
    37        path: stdout
    38  
    39    # print lines of code with issue, default is true
    40    print-issued-lines: true
    41  
    42    # print linter name in the end of issue text, default is true
    43    print-linter-name: true
    44  linters:
    45    enable:
    46      - bodyclose
    47      - copyloopvar
    48      - dupl
    49      - goconst
    50      - gocritic
    51      - gocyclo
    52      - goimports
    53      - gosimple
    54      - govet
    55      - misspell
    56      - nakedret
    57      - revive
    58      - staticcheck
    59      - unconvert
    60      - unparam
    61      - unused
    62  linters-settings:
    63    govet:
    64      disable-all: false
    65      enable-all: true
    66      disable:
    67        # extremely noisy, also against common Go style in most cases
    68        - shadow
    69    gocritic:
    70      enabled-tags: [performance, opinionated, diagnostic]
    71      disabled-checks: [paramTypeCombine, unnamedResult, unnecessaryDefer]
    72      settings:  # settings passed to gocritic
    73        hugeParam:
    74          sizeThreshold: 512
    75        rangeValCopy:
    76          sizeThreshold: 512
    77          skipTestFuncs: true
    78  issues:
    79    # This turns off the default excludes - which was causing the linter
    80    # to miss things like erroneous comments
    81    exclude-use-default: false
    82    exclude: [Using the variable on range scope .* in function literal]
    83    exclude-rules:
    84      # Skip fieldalignment checks on:
    85      # - tests: memory footprint doesn't matter
    86      # - cmd/: we assume these are one-off config entries
    87      # - pkg/apis: Keep strong convention on TypeMeta/ObjectMeta/Spec/Status
    88      - path: (.+)_test\.go|^test/|^cmd/.*|^pkg/apis/.*
    89        # fieldalignment is in the `govet` linter, so exclude based on text instead of all of govet
    90        text: '^fieldalignment: .*'
    91  
    92    # which dirs to exclude: issues from them won't be reported
    93    # default dirs are skipped independently of this option's value
    94    # (see exclude-dirs-use-default)
    95    # default: []
    96    exclude-dirs:
    97      - test/sdk/restapi