content: target-version = "py39"
  line-length = 120
  
  [lint]
  select = [
    "B",           # flake8-bugbear
    "C4",          # flake8-comprehensions
    "COM",         # flake8-commas
    "E", "F", "W", # flake8
    "Q",           # flake8-quote
    "ICN",         # flake8-import-conventions
    "ISC",         # flake8-implicit-str-concat
    "NPY",         # NumPy specific rules
    "PGH",         # pygrep-hooks
    "PL",          # pylint
    "RET",         # flake8-return
    "RUF",         # Ruff-specific
    "UP",          # pyupgrade
    "YTT",         # flake8-2020
    "W",           # Warning
  ]
  
  extend-ignore = [
    "PLW0603", # Using the global statement to update `var` is discouraged
  
    "PLR0912", # Too many branches
    "PLR0915", # Too many statements
    "PLR2004", # Magic value used in comparison
  
    "RET505",  # Unnecessary `elif` after `return` statement
  
    # Disable linting rules conflicting with "ruff formatter"
    # See https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules
    "COM812",
    "COM819",
    "E111",
    "E114",
    "E117",
    "ISC001",
    "ISC002",
    "W191",
  ]
  