run: timeout: 15m tests: true linters: enable: - megacheck - govet - gocritic - gocyclo - err113 - goheader - gofmt - goimports - revive - misspell disable: - scopelint # Obsolete, using exportloopref instead - durationcheck - goconst - musttag presets: - bugs - unused fast: false linters-settings: nestif: min-complexity: 6 goheader: template-path: code-header-template.txt issues: exclude-rules: # Exclude some linters from running on tests files. - path: _test\.go linters: - gocyclo - deadcode - errorlint - path: pkg/integrations/* linters: - gocyclo - deadcode - varcheck - unparam - bodyclose - path: pkg/integrations/* text: "unlambda" linters: - gocritic - path: pkg/modules/background/unsplash/unsplash\.go linters: - bodyclose - path: pkg/migration/* linters: - exhaustive - err113 - path: pkg/models/task_collection_filter\.go linters: - exhaustive - path: pkg/utils/random_string\.go text: "G404:" # We don't care about cryptographically secure randomness when we're using that utility function. linters: - gosec - path: pkg/modules/dump/* linters: - err113 - path: pkg/ text: "do not define dynamic errors, use wrapped static errors instead:" linters: - err113 - text: "commentFormatting: put a space between `//` and comment text" linters: - gocritic - path: pkg/modules/migration linters: - gocyclo - path: pkg/routes/api/v1/docs.go linters: - goheader - misspell - gosmopolitan - text: "Missed string" linters: - goheader - path: pkg/.*/error.go linters: - errorlint - path: pkg/models/favorites\.go linters: - nilerr - path: pkg/models/project\.go text: "string `parent_project_id` has 3 occurrences, make it a constant" - path: pkg/models/events\.go linters: - musttag - path: pkg/models/task_collection.go text: 'append result not assigned to the same slice' - path: pkg/modules/migration/ticktick/ticktick_test.go linters: - testifylint - path: pkg/migration/* text: "parameter 'tx' seems to be unused, consider removing or renaming it as" linters: - revive - path: pkg/models/typesense.go text: 'structtag: struct field Position repeats json tag "position" also at' linters: - govet