# SPDX-License-Identifier: Apache-2.0

// config for https://github.com/ennru/site-link-validator/
site-link-validator {
  root-dir = "docs/target/paradox/site/main/"
  # relative to `root-dir`
  start-file = "index.html"

  # Resolves URLs with the given prefix as local files instead
  link-mappings = [
    {
      prefix = "https://pekko.apache.org/docs/pekko/current/"
      replace = ""
    }
    # ScalaDoc from unidoc
    {
      prefix = "https://pekko.apache.org/api/pekko/current/"
      replace = "/../../../../../target/scala-2.13/unidoc/"
    }
    {
      prefix = "https://pekko.apache.org/api/pekko/current/"
      replace = "/../../../../../target/scala-2.13/unidoc/"
    }
    {
      prefix = "https://pekko.apache.org/api/pekko/snapshot/"
      replace = "/../../../../../target/scala-2.13/unidoc/"
    }
    # Java APIs from genjavadoc
    {
      prefix = "https://pekko.apache.org/japi/pekko/current/"
      replace = "/../../../../../target/javaunidoc/"
    }
    {
      prefix = "https://pekko.apache.org/japi/pekko/current/"
      replace = "/../../../../../target/javaunidoc/"
    }
    {
      prefix = "https://pekko.apache.org/japi/pekko/snapshot/"
      replace = "/../../../../../target/javaunidoc/"
    }
  ]

  ignore-missing-local-files-regex = ""
  // e.g. "^api/alpakka/snapshot/pekko/stream/alpakka/googlecloud/storage/impl/Formats.*"

  ignore-files = [
    # This file is generated, we can't do much about the invalid links here
    "project/license-report.html"
  ];

  ignore-prefixes = [
    ## GitHub will block with "429 Too Many Requests"
    "https://github.com/"
    "https://www.scala-lang.org/api/2.13.16/scala/runtime/AbstractFunction1.html"
    "https://www.scala-lang.org/api/2.13.16/scala/runtime/AbstractFunction2.html"
    "https://www.scala-lang.org/api/2.13.16/scala/runtime/AbstractFunction3.html"
    "https://www.scala-lang.org/api/2.13.16/scala/runtime/AbstractPartialFunction.html"
    ## Bug, see https://github.com/scala/bug/issues/12807 and https://github.com/lampepfl/dotty/issues/17973
    "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/StandardOpenOption$.html"
  ]

  non-https-whitelist = [
    "http://cidrdb.org/cidr2015/Papers/CIDR15_Paper16.pdf"
    "http://spray.io"
    "http://www.bailis.org/blog/doing-redundant-work-to-speed-up-distributed-queries/"
    "http://www.cs.columbia.edu/~nahum/w6998/papers/sosp87-timing-wheels.pdf"
    ## Sigar site has been removed
    "http://www.hyperic.com/products/sigar"
    "http://www.tom-e-white.com/2007/11/consistent-hashing.html"
    ## generated by @apidoc
    "http://www.scala-lang.org/api/2.13."
    "http://www.scala-lang.org/"
  ]
}
