github / github/codeql

False positive for `go/incomplete-hostname-regexp` and `\Q`

Open
#15,894 1 comment 0 reactions 0 assignees View on GitHub
false-positive Go
Dominant language
CodeQL
Stars
10.1k
Forks
2.1k
Avg merge
2d 15h
Merged PRs (30d)
141

Description

**Description of the false positive**

```go
var todoRE = regexp.MustCompile(`^// TODO (\Qhttps://github.com/FerretDB/\E([-\w]+)/issues/(\d+))$`)
```

That line is annotated with: "This regular expression has an unescaped dot before 'com', so it might match more hosts than expected when the regular expression is used."

What it misses is [`\Q...\E` escape syntax](https://pkg.go.dev/regexp/syntax).

**Code samples or links to source code**

https://github.com/FerretDB/FerretDB/blob/ea9c5bda8f3f80a9263e006995d4257084a600a5/tools/checkcomments/checkcomments.go#L32

**URL to the alert on GitHub code scanning (optional)**

https://github.com/FerretDB/FerretDB/security/code-scanning/9

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.