Checks:
  - '-*'
  - 'boost-*'
  # We use ranges where it suits us, but not everywhere.
  - '-boost-use-ranges'
  - 'bugprone-*'
  # We have too much code violating this. Consider re-enabling in the future (nice to have)
  - '-bugprone-easily-swappable-parameters'
  # We should enable this, but we have some tricky cases to fix first
  - '-bugprone-exception-escape'
  # We have too much code violating this. Consider re-enabling in the future
  - '-bugprone-narrowing-conversions'
  # Sometimes, assignment in if make code more readable
  - '-bugprone-assignment-in-if-condition'
  - 'clang-analyzer-*'
  - 'misc-*'
  # We do allow using recursive functions
  - '-misc-no-recursion'
  # We have too much code violating this. Consider re-enabling in the future.
  - '-misc-non-private-member-variables-in-classes'
  - 'modernize-*'
  # We have too much code violating this. Consider re-enabling in the future.
  - '-modernize-avoid-c-arrays'
  # We use nodiscard in some key classes, but it's a bit noisy to enable everywhere.
  - '-modernize-use-nodiscard'
  # We're not using trailing return types for regular functions
  - '-modernize-use-trailing-return-type'
  - 'performance-*'
  # We use std::endl in some places, where we want to flush the stream
  - '-performance-avoid-endl'

CheckOptions:
  misc-include-cleaner.IgnoreHeaders: 'boost/.*;fontconfig/.*;glib.h'

WarningsAsErrors: ''
