Preparing report...

Report for github.com/Alex950808/proxypool038

B    Not bad!    Found 41 issues across 43 files

Tweet

gofmt74%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo95%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.


golint11%

Golint is a linter for Go source code.

    • proxypool038/pkg/tool/httpclient.go
    • Line 9: warning: exported const UserAgent should have comment or be unexported (golint)
    • Line 11: warning: exported type HttpClient should have comment or be unexported (golint)
    • Line 22: warning: exported function GetHttpClient should have comment or be unexported (golint)
    • Line 27: warning: exported method HttpClient.Get should have comment or be unexported (golint)
    • Line 37: warning: exported method HttpClient.Post should have comment or be unexported (golint)
    • proxypool038/pkg/getter/subscribe.go
    • Line 18: warning: comment on exported type Subscribe should be of the form "Subscribe ..." (with optional leading article) (golint)
    • Line 23: warning: comment on exported method Subscribe.Get should be of the form "Get ..." (golint)
    • Line 45: warning: exported method Subscribe.Get2Chan should have comment or be unexported (golint)
    • Line 54: warning: exported function NewSubscribe should have comment or be unexported (golint)
    • proxypool038/pkg/getter/tgchannel.go
    • Line 17: warning: exported type TGChannelGetter should have comment or be unexported (golint)
    • Line 24: warning: exported function NewTGChannelGetter should have comment or be unexported (golint)
    • Line 52: warning: exported method TGChannelGetter.Get should have comment or be unexported (golint)
    • Line 80: warning: exported method TGChannelGetter.Get2Chan should have comment or be unexported (golint)
    • proxypool038/pkg/getter/web_fuzz.go
    • Line 18: warning: comment on exported type WebFuzz should be of the form "WebFuzz ..." (with optional leading article) (golint)
    • Line 23: warning: comment on exported method WebFuzz.Get should be of the form "Get ..." (golint)
    • Line 38: warning: exported method WebFuzz.Get2Chan should have comment or be unexported (golint)
    • Line 47: warning: exported function NewWebFuzzGetter should have comment or be unexported (golint)
    • proxypool038/pkg/getter/base.go
    • Line 12: warning: comment on exported type Getter should be of the form "Getter ..." (with optional leading article) (golint)
    • Line 25: warning: exported function Register should have comment or be unexported (golint)
    • Line 29: warning: exported function NewGetter should have comment or be unexported (golint)
    • Line 37: warning: comment on exported function String2Proxy should be of the form "String2Proxy ..." (golint)
    • Line 56: warning: exported function StringArray2ProxyArray should have comment or be unexported (golint)
    • Line 64: warning: exported function GrepLinksFromString should have comment or be unexported (golint)
    • Line 72: warning: exported function FuzzParseProxyFromString should have comment or be unexported (golint)
    • Line 77: warning: exported var ErrorUrlNotFound should have comment or be unexported (golint)
    • Line 81: warning: exported function AssertTypeStringNotNull should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/trojan.go
    • Line 15: warning: exported var ErrorNotTrojanink should have comment or be unexported (golint)
    • Line 18: warning: exported type Trojan should have comment or be unexported (golint)
    • Line 41: warning: exported method Trojan.Identifier should have comment or be unexported (golint)
    • Line 53: warning: exported method Trojan.ToClash should have comment or be unexported (golint)
    • Line 61: warning: exported method Trojan.ToSurge should have comment or be unexported (golint)
    • Line 65: warning: exported method Trojan.Clone should have comment or be unexported (golint)
    • Line 69: warning: comment on exported method Trojan.Link should be of the form "Link ..." (golint)
    • Line 87: warning: exported function ParseTrojanLink should have comment or be unexported (golint)
    • Line 158: warning: exported function GrepTrojanLinkFromString should have comment or be unexported (golint)
    • proxypool038/pkg/getter/web_fuzz_sub.go
    • Line 17: warning: exported type WebFuzzSub should have comment or be unexported (golint)
    • Line 21: warning: exported method WebFuzzSub.Get should have comment or be unexported (golint)
    • Line 40: warning: exported method WebFuzzSub.Get2Chan should have comment or be unexported (golint)
    • Line 49: warning: exported function NewWebFuzzSubGetter should have comment or be unexported (golint)
    • proxypool038/pkg/tool/base64.go
    • Line 7: warning: exported function Base64DecodeString should have comment or be unexported (golint)
    • Line 30: warning: exported function Base64EncodeString should have comment or be unexported (golint)
    • Line 37: warning: exported function Base64EncodeBytes should have comment or be unexported (golint)
    • proxypool038/pkg/getter/web_free_ssr_xyz.go
    • Line 22: warning: exported type WebFreessrXyz should have comment or be unexported (golint)
    • Line 25: warning: exported function NewWebFreessrxyzGetter should have comment or be unexported (golint)
    • Line 29: warning: exported method WebFreessrXyz.Get should have comment or be unexported (golint)
    • Line 35: warning: exported method WebFreessrXyz.Get2Chan should have comment or be unexported (golint)
    • proxypool038/internal/cache/cache.go
    • Line 12: warning: exported function GetProxies should have comment or be unexported (golint)
    • Line 20: warning: exported function SetProxies should have comment or be unexported (golint)
    • Line 24: warning: exported function SetString should have comment or be unexported (golint)
    • Line 28: warning: exported function GetString should have comment or be unexported (golint)
    • proxypool038/pkg/getter/web_fanqiangdang.go
    • Line 18: warning: exported type WebFanqiangdang should have comment or be unexported (golint)
    • Line 24: warning: exported function NewWebFanqiangdangGetter should have comment or be unexported (golint)
    • Line 39: warning: exported method WebFanqiangdang.Get should have comment or be unexported (golint)
    • Line 65: warning: exported method WebFanqiangdang.Get2Chan should have comment or be unexported (golint)
    • proxypool038/config/config.go
    • Line 15: warning: exported type ConfigOptions should have comment or be unexported (golint)
    • Line 57: warning: comment on exported function ReadFile should be of the form "ReadFile ..." (golint)
    • Line 66: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • proxypool038/internal/database/proxy.go
    • Line 12: warning: comment on exported type Proxy should be of the form "Proxy ..." (with optional leading article) (golint)
    • Line 22: warning: exported function InitTables should have comment or be unexported (golint)
    • Line 40: warning: exported function SaveProxyList should have comment or be unexported (golint)
    • Line 68: warning: exported function GetAllProxies should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/geoip.go
    • Line 17: warning: exported function InitGeoIpDB should have comment or be unexported (golint)
    • Line 29: warning: comment on exported type GeoIP should be of the form "GeoIP ..." (with optional leading article) (golint)
    • Line 35: warning: exported type CountryEmoji should have comment or be unexported (golint)
    • Line 40: warning: comment on exported function NewGeoIP should be of the form "NewGeoIP ..." (golint)
    • Line 81: warning: comment on exported method GeoIP.Find should be of the form "Find ..." (golint)
    • proxypool038/pkg/proxy/vmess.go
    • Line 18: warning: exported var ErrorNotVmessLink should have comment or be unexported (golint)
    • Line 22: warning: exported type Vmess should have comment or be unexported (golint)
    • Line 36: warning: exported type HTTPOptions should have comment or be unexported (golint)
    • Line 42: warning: exported method Vmess.Identifier should have comment or be unexported (golint)
    • Line 54: warning: exported method Vmess.ToClash should have comment or be unexported (golint)
    • Line 62: warning: exported method Vmess.ToSurge should have comment or be unexported (golint)
    • Line 79: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 85: warning: exported method Vmess.Clone should have comment or be unexported (golint)
    • Line 89: warning: exported method Vmess.Link should have comment or be unexported (golint)
    • Line 132: warning: exported function ParseVmessLink should have comment or be unexported (golint)
    • Line 210: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 269: warning: exported function GrepVmessLinkFromString should have comment or be unexported (golint)
    • proxypool038/pkg/provider/clash.go
    • Line 11: warning: exported type Clash should have comment or be unexported (golint)
    • Line 15: warning: exported method Clash.CleanProxies should have comment or be unexported (golint)
    • Line 25: warning: comment on exported method Clash.Provide should be of the form "Provide ..." (golint)
    • proxypool038/pkg/proxy/check.go
    • Line 42: warning: exported function CleanBadProxiesWithGrpool should have comment or be unexported (golint)
    • Line 94: warning: exported function CleanBadProxies should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/proxies.go
    • Line 10: warning: exported type ProxyList should have comment or be unexported (golint)
    • Line 17: warning: exported method ProxyList.TypeLen should have comment or be unexported (golint)
    • Line 40: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 50: warning: comment on exported method ProxyList.Deduplication should be of the form "Deduplication ..." (golint)
    • Line 65: warning: exported method ProxyList.Sort should have comment or be unexported (golint)
    • Line 70: warning: exported method ProxyList.NameAddCounrty should have comment or be unexported (golint)
    • Line 91: warning: exported method ProxyList.NameAddIndex should have comment or be unexported (golint)
    • Line 99: warning: exported method ProxyList.NameReIndex should have comment or be unexported (golint)
    • Line 109: warning: comment on exported method ProxyList.NameAddTG should be of the form "NameAddTG ..." (golint)
    • Line 118: warning: exported function Deduplication should have comment or be unexported (golint)
    • Line 132: warning: exported method ProxyList.Clone should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/shadowsocks.go
    • Line 18: warning: exported var ErrorNotSSLink should have comment or be unexported (golint)
    • Line 21: warning: exported type Shadowsocks should have comment or be unexported (golint)
    • Line 29: warning: exported method Shadowsocks.Identifier should have comment or be unexported (golint)
    • Line 41: warning: exported method Shadowsocks.ToClash should have comment or be unexported (golint)
    • Line 49: warning: exported method Shadowsocks.ToSurge should have comment or be unexported (golint)
    • Line 58: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 64: warning: exported method Shadowsocks.Clone should have comment or be unexported (golint)
    • Line 68: warning: comment on exported method Shadowsocks.Link should be of the form "Link ..." (golint)
    • Line 75: warning: exported function ParseSSLink should have comment or be unexported (golint)
    • Line 155: warning: exported function GrepSSLinkFromString should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/shadowsocksr.go
    • Line 18: warning: exported var ErrorNotSSRLink should have comment or be unexported (golint)
    • Line 26: warning: comment on exported type ShadowsocksR should be of the form "ShadowsocksR ..." (with optional leading article) (golint)
    • Line 38: warning: exported method ShadowsocksR.Identifier should have comment or be unexported (golint)
    • Line 50: warning: exported method ShadowsocksR.ToClash should have comment or be unexported (golint)
    • Line 58: warning: exported method ShadowsocksR.ToSurge should have comment or be unexported (golint)
    • Line 62: warning: exported method ShadowsocksR.Clone should have comment or be unexported (golint)
    • Line 66: warning: comment on exported method ShadowsocksR.Link should be of the form "Link ..." (golint)
    • Line 79: warning: exported function ParseSSRLink should have comment or be unexported (golint)
    • Line 180: warning: exported function GrepSSRLinkFromString should have comment or be unexported (golint)
    • proxypool038/internal/app/getter.go
    • Line 15: warning: exported var Getters should have comment or be unexported (golint)
    • Line 17: warning: exported function InitConfigAndGetters should have comment or be unexported (golint)
    • Line 24: warning: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary) (golint)
    • proxypool038/api/router.go
    • Line 15: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 205: warning: exported function Run should have comment or be unexported (golint)
    • Line 219: warning: comment on exported function LoadTemplate should be of the form "LoadTemplate ..." (golint)
    • Line 236: warning: comment on exported function GetAllFilePaths should be of the form "GetAllFilePaths ..." (golint)
    • proxypool038/pkg/proxy/base.go
    • Line 3: warning: comment on exported type Base should be of the form "Base ..." (with optional leading article) (golint)
    • Line 16: warning: exported method Base.TypeName should have comment or be unexported (golint)
    • Line 23: warning: exported method Base.SetName should have comment or be unexported (golint)
    • Line 27: warning: exported method Base.SetIP should have comment or be unexported (golint)
    • Line 31: warning: comment on exported method Base.BaseInfo should be of the form "BaseInfo ..." (golint)
    • Line 36: warning: exported method Base.Clone should have comment or be unexported (golint)
    • Line 41: warning: exported method Base.SetUseable should have comment or be unexported (golint)
    • Line 45: warning: exported method Base.SetCountry should have comment or be unexported (golint)
    • Line 49: warning: exported type Proxy should have comment or be unexported (golint)
    • proxypool038/pkg/proxy/convert.go
    • Line 9: warning: exported function SS2SSR should have comment or be unexported (golint)
    • Line 28: warning: exported function SSR2SS should have comment or be unexported (golint)
    • Line 49: warning: exported var SSRCipherList should have comment or be unexported (golint)
    • Line 73: warning: exported var SSCipherList should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign95%

IneffAssign detects ineffectual assignments in Go code.


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!