prysm-pulse/nogo_config.json
rkapka 6228b3cd9f
Identical expression comparison analyzer (#7066)
* static analyzer with tests
* Merge branch 'origin-master' into identical-expression-comparison-analyzer
* resolve analyzer errors
* Merge branch 'origin-master' into identical-expression-comparison-analyzer
* change excluded file in nogo_config
* remove tests from bazel file
* exclude test file explicitly
* extracted common code to helper file
* Revert "extracted common code to helper file"

This reverts commit e9ccea73604c920451975214d0305e6d16943b3c.
* Merge refs/heads/master into identical-expression-comparison-analyzer
* Merge refs/heads/master into identical-expression-comparison-analyzer
2020-08-21 16:48:27 +00:00

121 lines
3.4 KiB
JSON

{
"unsafeptr": {
"exclude_files": {
"external/.*": "Unsafe third party code",
"rules_go_work-.*": "Third party code"
}
},
"unreachable": {
"exclude_files": {
"shared/messagehandler/messagehandler_test.go": "Necessary panic before return for test",
"external/.*": "Unreachable third party code"
}
},
"lostcancel": {
"exclude_files": {
"validator/client/runner.go": "No need to cancel right when goroutines begin",
"external/.*": "Third party code"
}
},
"nilness": {
"exclude_files": {
"external/.*": "Third party code",
"rules_go_work-.*": "Third party code"
}
},
"pkgfact": {
"exclude_files": {
"external/.*": "Third party code",
"rules_go_work-.*": "Third party code"
}
},
"stdmethods": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"copylocks": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"composites": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"cgocall": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"assign": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"structtag": {
"exclude_files": {
"external/.*": "Third party code"
}
},
"maligned": {
"exclude_files": {
"external/.*": "Third party code",
"rules_go_work-.*": "Third party code",
"shared/params/config.go": "This config struct needs to be organized for now",
"proto/.*": "Excluding protobuf objects for now"
}
},
"roughtime": {
"only_files": {
"beacon-chain/.*": "",
"shared/.*": "",
"validator/.*": ""
},
"exclude_files": {
".*/.*_test\\.go": "Tests are OK to use time.Now()",
"shared/version/version\\.go": "Used for printing build time",
"shared/roughtime/roughtime\\.go": "Required to bootstrap roughtime",
"beacon-chain/blockchain/testing/*": "Test-only package",
"beacon-chain/p2p/sender\\.go": "Libp2p uses time.Now and this file sets a time based deadline in such a way that roughtime cannot be used",
"beacon-chain/sync/deadlines\\.go": "Libp2p uses time.Now and this file sets a time based deadline in such a way that roughtime cannot be used",
"shared/grpcutils/grpcutils\\.go": "Uses time.Now() for gRPC duration logging"
}
},
"errcheck": {
"exclude_files": {
"external/.*": "Third party code",
"rules_go_work-.*": "Third party code",
"shared/mock/.*\\.go": "Mocks are OK",
".*/.*mock\\.go": "Mocks are OK",
".*/testmain\\.go": "Test runner generated code",
"proto/.*": "Generated protobuf related code"
}
},
"featureconfig": {
"only_files": {
".*_test\\.go": "Only tests"
}
},
"cryptorand": {
"only_files": {
"beacon-chain/.*": "",
"shared/.*": "",
"validator/.*": ""
},
"exclude_files": {
".*/.*_test\\.go": "Tests are OK to use weak crypto",
"shared/rand/rand\\.go": "Abstracts CSPRNGs for common use",
"shared/aggregation/testing/bitlistutils.go": "Test-only package"
}
},
"comparesame": {
"exclude_files": {
"external/.*": "Third party code",
"rules_go_work-.*": "Third party code",
"tools/analyzers/comparesame/testdata/compare_len.go": "Analyzer testdata has to break rules"
}
}
}