github / github/codeql

LGTM.com - py/similar-function might be too sensitive

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

Description

**Description of the false positive**

The two functions *are* similar, so I hesitate to call this a true "false positive".

But the differences are substantial enough—variations in which SQLAlchemy table is queried, which columns are used in filters, which object properties are needed, etc.—that trying to write a single function to do both jobs would (arguably) be a bigger code smell than this.

It's also worth noting that there are other pairs of functions (the `set` and `get` companions in each suite for `nick` and `channel`) _not_ marked as similar, even though they're no more or less so than the `delete` functions that were detected. And there's another suite of also-similar `plugin` functions that weren't flagged by the analysis.

**URL to the alert on the project page on LGTM.com**

https://lgtm.com/projects/g/sopel-irc/sopel/snapshot/f6d393044ee7c7f1a7ba6fe0c4e8a152eb5948b2/files/sopel/db.py?sort=name&dir=ASC&mode=heatmap#x9fad0d3c3a380402:1

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.