ci(link-check): tune lychee for bot-blocking hosts and bump checkout

Accept 3xx/403/429, exclude hosts that fail HTTP/2 or 404 for bots, repository badge links and a broken cert chain; raise timeout to 60s; use actions/checkout@v5.
This commit is contained in:
Meysam Parvizi
2026-10-09 17:13:09 +02:00
parent a6e614bd7b
commit 811bf6f779
3 changed files with 20 additions and 8 deletions
+17 -5
View File
@@ -1,16 +1,28 @@
# Many sites in the README (Udemy, Medium, NXP, Microchip, ...) answer bots with 403/429
# while working fine in a browser, so those codes count as alive.
accept = [200, 203, 206, 403, 429]
# Many sites in the README (Udemy, Medium, Microchip, ...) answer bots with 403/429 while
# working fine in a browser, and some redirect to consent pages, so these count as alive.
accept = ["200..=399", "403", "429"]
# Amazon and LinkedIn return bot challenges or non-standard codes for every request.
exclude = [
# Bot challenges or non-standard codes for every request.
'^https?://(www\.)?amazon\.',
'^https?://a\.co/',
'^https?://(www\.)?linkedin\.com/',
# Return 404 to non-browser clients although the pages exist.
'^https?://(www\.)?nxp\.com/',
# Fail HTTP/2 negotiation with the checker's client.
'^https?://(www\.|wiki\.)?st\.com/',
'^https?://(www\.)?analog\.com/',
'^https?://(www\.)?embedded\.com/',
'^https?://(www\.)?electronics-tutorials\.ws',
'^https?://gemini\.google\.com/',
# Broken certificate chain on the server side.
'^https?://(www\.)?autosar\.org/',
# Repository badge links; GitHub hides these pages from anonymous clients.
'^https://github\.com/m3y54m/Embedded-Engineering-Roadmap/(stargazers|watchers|forks|graphs|releases)',
]
max_retries = 3
retry_wait_time = 5
timeout = 30
timeout = 60
max_concurrency = 8
user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0 Safari/537.36"
+1 -1
View File
@@ -22,7 +22,7 @@ jobs:
name: Check links
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Check links
id: lychee
+2 -2
View File
@@ -17,7 +17,7 @@ jobs:
name: Markdown lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: DavidAnson/markdownlint-cli2-action@v19
with:
@@ -27,7 +27,7 @@ jobs:
name: README conventions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Check entry format and duplicates
run: python3 .github/scripts/check_readme.py