-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathlychee.toml
More file actions
60 lines (52 loc) · 2.48 KB
/
lychee.toml
File metadata and controls
60 lines (52 loc) · 2.48 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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Lychee link checker configuration
# https://lychee.cli.rs/#/usage/config
#
# CI runs against built HTML with --root-dir:
# hugo && lychee './public/**/*.html' --root-dir "$(pwd)/public"
# Include URL fragments in checks
include_fragments = true
# Resolve directory URLs to index.html for fragment checking (Hugo pretty URLs)
index_files = ["index.html"]
# Don't allow any redirects
max_redirects = 0
# Accept these HTTP status codes
# 100-103: Informational responses
# 200-299: Success responses
# 403: Forbidden (some sites use for rate limiting)
# 429: Too Many Requests
# 500-599: Server errors (temporary issues shouldn't fail CI)
# 999: LinkedIn's custom status code
accept = [
"100..=103",
"200..=299",
"403",
"429",
"500..=599",
"999"
]
# Exclude URL patterns from checking (treated as regular expressions)
exclude = [
'^https://deno\.land', # Deno documentation
'^https://github\.com/[^/]+/[^/]+/blob/[0-9a-fA-F]+/.+#L\d+$', # GitHub blob URLs with line numbers
'^https://jsr\.io', # JSR (JavaScript Registry)
'^https://sandbox\.maxmind\.com', # MaxMind sandbox environment
'^https://minfraud\.maxmind\.com', # MaxMind minFraud service
'https://www\.iso\.org/obp/ui/#iso:code:3166:ZA', # ISO country code reference
'^https://www\.maxmind\.com/en/accounts/', # MaxMind account pages (require login)
'^https://search\.maven\.org/#', # Hash-based JS routing, not HTML fragments
'^https://github\.com/maxmind/device-android', # README fragment not parseable
'^https://github\.com/maxmind/device-tracking', # README fragment not parseable
'maxmind-ip-network-data#anycast', # Fragment not parseable on support site
'fraud-prevention/overview#buy-now', # Fragment not parseable on maxmind.com
'Address_Verification_System#', # Wikipedia fragment with encoded chars
'^https://www\.gzip\.org', # Returns 415 to automated requests
]
# Exclude file paths from getting checked (treated as regular expressions)
exclude_path = [
'node_modules', # Exclude node_modules directory
]
# Cache results for 1 day to speed up repeated checks
cache = true
max_cache_age = "1d"
# Skip missing input files instead of erroring
skip_missing = true