dingdayu/dnsx

View on GitHub

Showing 12 of 12 total issues

Method Logger.Print has a Cognitive Complexity of 28 (exceeds 12 allowed). Consider refactoring.
Open

func (l *Logger) Print(values ...interface{}) {
    if len(values) > 1 {
        var (
            sql             string
            formattedValues []string
Severity: Minor
Found in pkg/log/gorm.go - About 2 hrs to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Function httpDNS has a Cognitive Complexity of 15 (exceeds 12 allowed). Consider refactoring.
Open

func httpDNS(c *gin.Context) {
    // 转换参数
    var err error
    msg := new(dns.Msg)

Severity: Minor
Found in api/router/http.go - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method Engine.Handle has a Cognitive Complexity of 13 (exceeds 12 allowed). Consider refactoring.
Open

func (h *Engine) Handle(msg *dns.Msg) (err error) {
    // load cache
    if has, _ := h.LoadCache(msg); has {
        return
    }
Severity: Minor
Found in internal/engine/engine.go - About 25 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

type JsonMsgAdditional should be JSONMsgAdditional
Open

type JsonMsgAdditional struct {
Severity: Minor
Found in model/entity/doh.go by golint

2: cannot find package "github.com/miekg/dns" in any of:
Open

    "github.com/miekg/dns"
Severity: Minor
Found in api/controller/dns/a.go by govet

func WithHttpAPIHandle should be WithHTTPAPIHandle
Open

func WithHttpAPIHandle(httpAPIHandle *gin.Engine) OptionsFunc {
Severity: Minor
Found in internal/engine/option.go by golint

func MsgToJson should be MsgToJSON
Open

func MsgToJson(msg *dns.Msg) (resp JsonMsgResponse) {
Severity: Minor
Found in model/entity/doh.go by golint

func WithHttpDNSHandle should be WithHTTPDNSHandle
Open

func WithHttpDNSHandle(httpDNSHandle *gin.Engine) OptionsFunc {
Severity: Minor
Found in internal/engine/option.go by golint

type JsonMsgAnswer should be JSONMsgAnswer
Open

type JsonMsgAnswer struct {
Severity: Minor
Found in model/entity/doh.go by golint

type JsonMsgResponse should be JSONMsgResponse
Open

type JsonMsgResponse struct {
Severity: Minor
Found in model/entity/doh.go by golint

Your code does not pass gofmt in 1 place. Go fmt your code!
Open

package tests
Severity: Minor
Found in tests/dns_test.go by gofmt

type JsonMsgQuestion should be JSONMsgQuestion
Open

type JsonMsgQuestion struct {
Severity: Minor
Found in model/entity/doh.go by golint
Severity
Category
Status
Source
Language