content: [run]
    timeout = "5m"
  
  [linters-settings]
  
    [linters-settings.govet]
      check-shadowing = true
  
    [linters-settings.golint]
      min-confidence = 0.0
  
    [linters-settings.gocyclo]
      min-complexity = 15.0
  
    [linters-settings.gocognit]
      min-complexity = 15.0
  
    [linters-settings.goconst]
      min-len = 3.0
      min-occurrences = 3.0
  
    [linters-settings.misspell]
      locale = "US"
  
    [linters-settings.stylecheck]
      checks = ["all", "-ST1000"]
  
    [linters-settings.gomoddirectives]
      replace-allow-list = [
       "github.com/abbot/go-http-auth",
       "github.com/go-check/check",
       "github.com/gorilla/mux",
       "github.com/mailgun/minheap",
      ]
  
  [linters]
    enable-all = true
    disable = [
      "sqlclosecheck", # Not relevant (SQL)
      "rowserrcheck", # Not relevant (SQL)
      "ifshort", # Deprecated
      "interfacer", # Deprecated
      "golint", # Deprecated
      "maligned", # Deprecated
      "scopelint", # Deprecated
      "cyclop", # Duplicate of gocyclo
      "lll", # Long lines are ok.
      "dupl", # Not relevant
      "prealloc", # Not relevant
      "gochecknoinits", # Too strict
      "gochecknoglobals", # Too strict
      "gomnd", # Does not allow for any config or time values
      "gosec", # Does not allow exec.Command with variable
      "bodyclose", # Too many false positives
      "goconst", # Too many false positives
      "wrapcheck", # Too strict
      "goerr113", # Forces wrapping all errors
      "noctx", # Too strict
      "exhaustive", # Too strict
      "exhaustivestruct", # Too strict
      "exhaustruct", # Duplicate of exhaustivestruct
      "nlreturn", # Too strict
      "ireturn", # Not relevant
      "varnamelen", # Not relevant
      "nilnil", # Not relevant
      "testpackage", # Does not allow testing private funcs
      "tparallel", # Not relevant
      "paralleltest", # Not relevant
      "forcetypeassert", # Too strict
      "nonamedreturns", # Not relevant
      "structcheck", # Duplicate of unused
      "funlen",
    ]
  
  [issues]
    exclude-use-default = false
    max-per-linter = 0
    max-same-issues = 0
    exclude = [
      "Error return value of .((os\\.)?std(out|err)\\..*|.*Close|.*Flush|os\\.Remove(All)?|.*printf?|os\\.(Un)?Setenv). is not checked",
      "should have a package comment, unless it's in another file for this package",
    ]
  