New refactorings and bug fixes


New Refactorings

Remove empty nested block

Sourcery refactoring id: remove-empty-nested-block

Description:

Remove nested block which has no effect

Before:

for i in range(3):
    pass

After:

Here the code has been removed:

Explanation:

An if or for which is empty and has no effect should not be present in the code. It clutters things up and makes it harder to see what the code is really doing.

Simplify dictionary update

Sourcery refactoring id: simplify-dictionary-update

Description:

Add single value to dictionary directly rather than using update()

Before:

def foo(d: dict) -> None:
    d.update({"request": HttpRequest()})
    frobnicate(d)

After:

def foo(d: dict) -> None:
    d["request"] = HttpRequest()
    frobnicate(d)

Explanation:

When we are just adding one entry to a dictionary it is simpler to do it directly rather than via the update() method. This also eliminates the overhead of constructing another dictionary and calling a method, so should slightly improve performance.

Enhancements

Bug fixes