Skip to content

v1.0.0

Latest
Compare
Choose a tag to compare
@sorenlind sorenlind released this 02 Nov 12:06

daa0acd - Add compatibility with VS Code October 2023

The October 2023 version of VS Code deprecates built-in linting and
formatting features that were shipped with the Python extension. This
means linters and formatters will have to run through dedicated
extensions. There are currently extensions for Black, Pylint and Flake8,
but there are no extensions for Bandit and Pydocstyle. This means they
must be run in another way. Luckily there are Flake8 plugins for both
Bandit and Pydocstyle. With the changes in this commit, Voight-Kampff
now expects the user to use the plugins if they want to run Bandit and
Pydocstyle, and consequently the standalone linters are disabled by
default when running vk. It is still possible to run the linters by
explicitly specifying their names as arguments to the vk command.

Unfortunately, the Bandit Flake8 plugin expects a config file in INI
format while Voight-Kampff originally expected a YAML config file for
Bandit. For compatibility with the plugin, this commit updates
Voight-Kampff to expect an INI file. This breaks backwards compatibility.

Further, the functionality for disabling rules are different between the
standalone Bandit and the Flake8-plugin. Consequently if, say, the rule
that detects for hardcoded passwords is to be disabled inline, it must
be done in one way to work with the standalone linter, and in another
way to work with the Flake8 plugin. This means any code that disables
Bandit rules inline should be updated. Pydocstyle does not suffer from
this problem.

The Voight-Kampff code itself has been updated to expect both plugins to
be installed.

a8560be - Use | None instead of Optional

ef4a28c - Add git commit message rulers

f7c19be - Update tox environment to Python 3.10

cf34b13 - Add flake8 extensions and make code lint

The following flake8 extensions are added to the `dev requirements:

  • flake8-annotations
  • flake8-plus
  • flake8-pytest-style

53a7a93 - Sort requirements

fa0a393 - Update Pylint config to work with latest Pylint

d48adcf - Update Flake8 config to work with latest Flake8

6371972 - Update CirclCI images to Python 3.10

fc6dffb - Remove references to nonexistent contexts