dnstats/dnstatsio

View on GitHub

Showing 232 of 232 total issues

Merge this if statement with the enclosing one.
Open

                if not validate_url(value):
Severity: Major
Found in dnstats/dnsvalidate/caa.py by sonar-python

Merging collapsible if statements increases the code's readability.

Noncompliant Code Example

if condition1:
    if condition2:
        # ...

Compliant Solution

if condition1 and condition2:
    # ...

Refactor this function to reduce its Cognitive Complexity from 78 to the 15 allowed.
Open

def validate(dmarc_result_set: list) -> dict:
Severity: Critical
Found in dnstats/dnsvalidate/dmarc.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Merge this if statement with the enclosing one.
Open

                        if not has_spf:
Severity: Major
Found in dnstats/dnsvalidate/spf.py by sonar-python

Merging collapsible if statements increases the code's readability.

Noncompliant Code Example

if condition1:
    if condition2:
        # ...

Compliant Solution

if condition1 and condition2:
    # ...

Refactor this function to reduce its Cognitive Complexity from 21 to the 15 allowed.
Open

def _get_redirect_record(record):
Severity: Critical
Found in dnstats/dnsutils/spf.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Either remove or fill this block of code.
Open

            pass
Severity: Major
Found in dnstats/dnsvalidate/spf.py by sonar-python

Most of the time a block of code is empty when a piece of code is really missing. So such empty block must be either filled or removed.

Noncompliant Code Example

for i in range(3):
    pass

Exceptions

When a block contains a comment, this block is not considered to be empty.

Either merge this branch with the identical one on line "218" or change one of the implementations.
Open

            pass
Severity: Major
Found in dnstats/dnsvalidate/spf.py by sonar-python

Having two branches in the same if structure with the same implementation is at best duplicate code, and at worst a coding error. If the same logic is truly needed for both instances, then they should be combined.

Noncompliant Code Example

if 0 <= a < 10:
    do_the_thing()
elif 10 <= a < 20:
    do_the_other_thing()
elif 20 <= a < 50:
    do_the_thing()  # Noncompliant; duplicates first condition
else:
    do_the_rest()

b = 4 if a > 12 else 4

Compliant Solution

if (0 <= a < 10) or (20 <= a < 50):
    do_the_thing()
elif 10 <= a < 20:
    do_the_other_thing()
else:
    do_the_rest()

b = 4

or

if 0 <= a < 10:
    do_the_thing()
elif 10 <= a < 20:
    do_the_other_thing()
elif 20 <= a < 50:
    do_the_third_thing()
else:
    do_the_rest()

b = 8 if a > 12 else 4

Refactor this function to reduce its Cognitive Complexity from 17 to the 15 allowed.
Open

def import_list():
Severity: Critical
Found in dnstats/celery.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Refactor this function to reduce its Cognitive Complexity from 57 to the 15 allowed.
Open

def validate(caa_result_set: list, domain: str) -> dict:
Severity: Critical
Found in dnstats/dnsvalidate/caa.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Refactor this function to reduce its Cognitive Complexity from 134 to the 15 allowed.
Open

def _validate_spf(spf: str, domain: str) -> {}:
Severity: Critical
Found in dnstats/dnsvalidate/spf.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Refactor this function to reduce its Cognitive Complexity from 28 to the 15 allowed.
Open

def get_dmarc_stats(ans):
Severity: Critical
Found in dnstats/dnsutils/__init__.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Either remove or fill this block of code.
Open

            pass
Severity: Major
Found in dnstats/dnsvalidate/spf.py by sonar-python

Most of the time a block of code is empty when a piece of code is really missing. So such empty block must be either filled or removed.

Noncompliant Code Example

for i in range(3):
    pass

Exceptions

When a block contains a comment, this block is not considered to be empty.

Refactor this function to reduce its Cognitive Complexity from 22 to the 15 allowed.
Open

    def _validate(self, records: list) -> dict:
Severity: Critical
Found in dnstats/dnsvalidate/bimi.py by sonar-python

Cognitive Complexity is a measure of how hard the control flow of a function is to understand. Functions with high Cognitive Complexity will be difficult to maintain.

See

Severity
Category
Status
Source
Language