-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlychee.toml
More file actions
43 lines (38 loc) · 1.98 KB
/
Copy pathlychee.toml
File metadata and controls
43 lines (38 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Config for the lychee link checker (https://lychee.cli.rs/usage/config/)
# Run in CI via .github/workflows/pr-checks.yml
timeout = 20
retry_wait_time = 5
max_retries = 3
# Some sites (Cornell Merlin, Crunchbase) block the default lychee/curl
# user agent as a bot-filtering heuristic; a browser-like UA resolves it.
user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
# Example/placeholder hosts used in API documentation samples — not real endpoints.
# The next few entries are real, live sites that reject automated/CI
# requests regardless of user agent (verified manually) and are excluded
# rather than accepted outright, so a genuine break elsewhere still fails:
# - linkedin.com returns a nonstandard 999 to any non-browser client
# - merlin.allaboutbirds.org 403s CI IP ranges
# - crunchbase.com intermittently 403s automated requests
# - the GCP console has a known HTTP/2 handshake issue with automated clients
# The last entry excludes the site's own canonical/self-referencing URLs
# (e.g. mkdocs-material's <link rel="canonical">), since a page added or
# moved in a PR won't exist on the live deployment until the PR merges —
# checking those against production would always 404. Everything else on
# the page is still checked normally, either as a relative path against
# the local build or as a real external link.
exclude = [
"^https?://localhost",
"^https?://<.*>",
"^https?://(www\\.)?linkedin\\.com",
"^https?://merlin\\.allaboutbirds\\.org",
"^https?://(www\\.)?crunchbase\\.com",
"^https?://console\\.cloud\\.google\\.com",
"^https?://brstuder\\.github\\.io/portfolio/",
]
# mkdocs-material's generated 404 page intentionally uses site_url-rooted
# absolute paths (it can be served from any depth on the real domain), which
# only resolve against the live deployment, not a local build.
exclude_path = [
"404\\.html$",
]
accept = [200, 201, 202, 203, 204, 206, 301, 302, 303, 307, 308, 429]