#############################  Runtime  #############################

# Reasonable concurrency to avoid rate-limiting small hosts.
max_concurrency = 14

# File extensions to scan
extensions = ["c", "h", "md", "html", "txt"]

#############################  Requests  ############################

# Accepted status codes
# - Include 429 (Too Many Requests) to avoid marking throttled links as dead.
accept = ["100..=103", "200..=299", "429"]

# Retry each request a few times on transient network errors
retries = 2
retry_wait_time = 2

# Timeout per request in seconds
timeout = 60

#############################  Exclusions  ##########################

exclude = [
  '^https?://sys/file$',
  '^file://.*',
  '^https?://(www\.)?badges\.debian\.net/.*$',
  '^https?://(www\.)?repology\.org/.*$',
  '^https?://scan\.coverity\.com/.*$',
  '^https?://(www\.)?img\.shields\.io/.*$',
  '^https?://(www\.)?fossies\.org/.*$',
  '^https?://(www\.)?adobe\.com.*$',
  '^https?://(www\.)?google\.com.*$',
  '^https?://(www\.)?forum\.vmssoftware\.com/.*$',
  '^http://mnv\.sourceforge\.net/scripts/script\.php\?script_id=40$',
  '^https://is\.gd/.*$',
  '^https://wiki\.contextgarden\.net/MNV$',
  '^https://github\.com/you/foobar\.git$',
  '^https?://flatassembler\.net',
  '^https?://www\.fleiner\.com/mnv/download.html',
]

# Lychee only reads UTF-8 files
exclude_path = [
  'src/po',
  'src/testdir',
]
