# Python

# Configuration - Analysis

This section covers configuration specific to python analyzer. Please make sure to read the general configuration guide first.

# name

  • Type: String
  • Presence: mandatory
  • Description: Shortcode of the analyzer.
  • Example:
name = "python"

# enabled

  • Type: Boolean
  • Presence: mandatory
  • Description: Toggle whether this analyzer should be run.
  • Example:
enabled = true

# dependency_file_paths

  • Type: Array
  • Presence: optional
  • Description: List of files that contain the list of external dependencies.
  • Example:
dependency_file_paths = [
  "dev_requirements.txt",
  "prod_requirements.txt"
]

TIP

By default requirements.txt, Pipfile, Pipfile.lock and setup.py are automatically detected and scanned for dependencies if found in the repository's root.

# meta

  • Type: Table
  • Presence: optional
  • Description: Any supported metadata to pass to the analyzer.
  • Example:
[analyzers.meta]
  runtime_version = "3.x.x"
  max_line_length = 88
  skip_doc_coverage = ["module", "magic", "init"]

# runtime_version

  • Type: String
  • Presence: optional
  • Description: Runtime version of your language in semver.
  • Available Values: "2.x.x", "3.x.x"
  • Default Value: "3.x.x"
  • Example:
runtime_version = "3.x.x"

# max_line_length

  • Type: Integer
  • Presence: optional
  • Description: Maximum allowed line length (including documentation).
  • Available Value: Any integer value greater than or equal to 79
  • Default Value:88
  • Example:
max_line_length = 88

# skip_doc_coverage

  • Type: Array

  • Presence: optional

  • Description: Specify which artifacts to skip when calculating documentation coverage.

  • Available Values: module, magic, init and class

    • module - Ignore module docstrings
    • magic - Ignore docstrings of magic methods (except "init")
    • init - Ignore docstrings of "init" methods
    • class - Ignore docstrings of class definitions
  • Default Value: ["module", "magic", "init"]

  • Example:

skip_doc_coverage = ["module", "magic", "init"]

# type_checker

  • Type: String
  • Presence: optional
  • Description: Activates type checking analyzer. Please note: This will only raise type annotation issues.
  • Available Value: "mypy"
  • Default Value: None
  • Example:
type_checker = "mypy"

# Sample config

version = 1

test_patterns = [
  "tests/**",
  "test_*.py"
]

exclude_patterns = [
  "migrations/**",
  "**/examples/**"
]

[[analyzers]]
name = "python"
enabled = true
dependency_file_paths = ["requirements/development.txt"]

  [analyzers.meta]
  runtime_version = "3.x.x"
  type_checker = "mypy"
  max_line_length = 88
  skip_doc_coverage = ["module", "magic", "init"]
Last Updated: 12/5/2019, 4:19:36 PM