Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
ecd202c
chore(deps-dev): bump got from 14.6.6 to 15.0.0 (#21591)
dependabot[bot] Apr 9, 2026
25fa127
feat(route): add nanhua (#21680)
TonyRL Apr 9, 2026
718e374
fix: claude code changelog query (#21679)
rmaced0 Apr 9, 2026
86bc955
feat(route): add iapp (#21682)
TonyRL Apr 10, 2026
45b13f0
feat: add jable (#21641)
eve2ptp Apr 10, 2026
1826ba4
style: auto format
github-actions[bot] Apr 10, 2026
196d65d
chore(deps-dev): bump discord-api-types from 0.38.44 to 0.38.45 (#21686)
dependabot[bot] Apr 10, 2026
b4a2c89
chore(deps-dev): bump got from 15.0.0 to 15.0.1 (#21687)
dependabot[bot] Apr 10, 2026
5a0f687
chore(deps): bump @scalar/hono-api-reference from 0.10.6 to 0.10.7 (#…
dependabot[bot] Apr 10, 2026
aee4c81
chore(deps): bump devenv from `010a22c` to `d4410df` (#21690)
dependabot[bot] Apr 10, 2026
c04652c
chore(nix): update dependencies hash to sha256-Q7plMp6xtB7tnTyRu2/ik8…
github-actions[bot] Apr 10, 2026
a4d16fb
chore(deps-dev): bump the cloudflare group with 4 updates (#21684)
dependabot[bot] Apr 10, 2026
6a6e5c9
chore(deps): bump nixpkgs from `68d8aa3` to `4c1018d` (#21691)
dependabot[bot] Apr 10, 2026
a280e04
chore(deps): bump @sentry/node from 10.47.0 to 10.48.0 (#21689)
dependabot[bot] Apr 10, 2026
c16c258
chore(deps-dev): bump @types/node from 25.5.2 to 25.6.0 (#21685)
dependabot[bot] Apr 10, 2026
c0785bd
feat: add xhamster (#21640)
eve2ptp Apr 10, 2026
e9a1bcb
style: auto format
github-actions[bot] Apr 10, 2026
dd6e4e2
chore(deps): bump actions/github-script from 8.0.0 to 9.0.0 (#21683)
dependabot[bot] Apr 10, 2026
d375d79
feat(route): add fcbayern (#21697)
TonyRL Apr 10, 2026
72d4ee7
feat: add projectjav actress (#21698)
Exat1979 Apr 11, 2026
2af8e30
feat(route): add Castbox route (#21700)
ananyatimalsina Apr 12, 2026
c8ed099
fix(route/gameapps): fix selectors (#21703)
TonyRL Apr 12, 2026
0f7808f
docs: add sports category (#21704)
TonyRL Apr 12, 2026
03be368
fix(ci): use REST API to find PRs by branch in workflows
TonyRL Apr 12, 2026
42d7a77
fix(elamigos): fix parsing after webpage layout update (#21705)
Kylon92 Apr 12, 2026
dcafd99
chore(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 (#21709)
dependabot[bot] Apr 13, 2026
b3f364e
chore(deps): bump undici from 7.24.7 to 7.24.8 (#21713)
dependabot[bot] Apr 13, 2026
f0bfca5
chore(deps): bump @hono/node-server from 1.19.13 to 1.19.14 (#21712)
dependabot[bot] Apr 13, 2026
6bb5b68
chore(deps): bump dotenv from 17.4.1 to 17.4.2 (#21715)
dependabot[bot] Apr 13, 2026
d72267e
chore(deps): bump jsrsasign from 11.1.1 to 11.1.2 (#21717)
dependabot[bot] Apr 13, 2026
64fd21e
chore(deps-dev): bump @cloudflare/workers-types in the cloudflare gro…
dependabot[bot] Apr 13, 2026
8726775
chore(deps): bump docker/build-push-action from 7.0.0 to 7.1.0 (#21708)
dependabot[bot] Apr 13, 2026
28c0ba2
chore(deps): bump devenv from `d4410df` to `88ac631` (#21718)
dependabot[bot] Apr 13, 2026
0a9c9b7
chore(nix): update dependencies hash to sha256-v8KDnut1FrWMgre355e8Vo…
github-actions[bot] Apr 13, 2026
8e3b52c
chore(deps): bump re2js from 2.0.1 to 2.1.1 (#21714)
dependabot[bot] Apr 13, 2026
48874c7
chore(deps-dev): bump globals from 17.4.0 to 17.5.0 (#21711)
dependabot[bot] Apr 13, 2026
976eb9c
chore(deps): bump @hono/zod-openapi from 1.2.4 to 1.3.0 (#21716)
dependabot[bot] Apr 13, 2026
83e0ab0
chore(deps): bump pnpm/action-setup from 5.0.0 to 6.0.0 (#21710)
dependabot[bot] Apr 13, 2026
fa080cf
style: auto format
github-actions[bot] Apr 13, 2026
2897f51
feat: disable IPv6 (#21719)
TonyRL Apr 13, 2026
9b02373
chore: group vitest in dependabot
TonyRL Apr 13, 2026
65f80b1
chore(deps): bump devenv from `88ac631` to `8d558a8` (#21722)
dependabot[bot] Apr 13, 2026
1d5a2a7
chore(nix): update dependencies hash to sha256-b/SBHeUs+zsKjx3Et/ppNo…
github-actions[bot] Apr 13, 2026
3399670
refactor: fix first() and undefined fallback abuse
TonyRL Apr 14, 2026
cef5c68
refactor: add GraphQL annotation to queries for auto formatting in ox…
TonyRL Apr 14, 2026
7cb1e37
style: auto format
github-actions[bot] Apr 14, 2026
2c581c2
chore: fix pnpm install
TonyRL Apr 14, 2026
4a3c512
chore(deps): bump lru-cache from 11.3.3 to 11.3.5 (#21730)
dependabot[bot] Apr 14, 2026
053fb2d
chore(deps-dev): bump tsdown from 0.21.7 to 0.21.8 (#21735)
dependabot[bot] Apr 14, 2026
c3e48eb
chore(deps-dev): bump msw from 2.13.2 to 2.13.3 (#21731)
dependabot[bot] Apr 14, 2026
e3cc412
chore(deps-dev): bump discord-api-types from 0.38.45 to 0.38.46 (#21737)
dependabot[bot] Apr 14, 2026
c1829b2
chore(deps-dev): bump the typescript-eslint group with 2 updates (#21…
dependabot[bot] Apr 14, 2026
d7537d5
chore(deps): bump re2js from 2.1.1 to 2.2.0 (#21736)
dependabot[bot] Apr 14, 2026
9243fb3
chore: fix find PR no. by branch name for dependabot
TonyRL Apr 14, 2026
4ebac6c
chore(deps-dev): bump got from 15.0.1 to 15.0.2 (#21734)
dependabot[bot] Apr 14, 2026
6ff9391
chore(deps-dev): bump the cloudflare group with 3 updates (#21726)
dependabot[bot] Apr 14, 2026
1781719
chore(deps): bump undici from 7.24.8 to 7.25.0 (#21732)
dependabot[bot] Apr 14, 2026
8c824f7
chore(deps): bump @notionhq/client from 5.17.0 to 5.18.0 (#21733)
dependabot[bot] Apr 14, 2026
d92a703
chore(deps-dev): bump the oxc group across 1 directory with 5 updates…
dependabot[bot] Apr 14, 2026
62b5544
chore: update format scripts
TonyRL Apr 14, 2026
ebfe021
style: auto format
github-actions[bot] Apr 14, 2026
6c8b0b4
chore(deps-dev): bump the vitest group with 2 updates (#21729)
dependabot[bot] Apr 14, 2026
cb0e63d
style: auto format
github-actions[bot] Apr 14, 2026
bd2f18c
feat(route): add pixel update bulletins (#21740)
TonyRL Apr 14, 2026
1d7f3dc
feat(route): add caicai blog (#21741)
TonyRL Apr 14, 2026
ade1020
chore(deps-dev): bump @cloudflare/workers-types in the cloudflare gro…
dependabot[bot] Apr 15, 2026
3fc659d
chore(deps): bump devenv from `8d558a8` to `07aa7cb` (#21745)
dependabot[bot] Apr 15, 2026
0183660
chore(nix): update dependencies hash to sha256-miyvJu4AKhQVlWea8a8bYN…
github-actions[bot] Apr 15, 2026
8fe52b1
chore(deps): bump hono from 4.12.12 to 4.12.14 (#21744)
dependabot[bot] Apr 15, 2026
ecffcd3
chore: add vouch trust management system
TonyRL Apr 15, 2026
be85b3e
Update VOUCHED list
github-actions[bot] Apr 15, 2026
3aaff74
chore: close PR after denouncing
TonyRL Apr 15, 2026
d79f280
chore(deps): bump sanitize-html from 2.17.2 to 2.17.3 (#21749)
dependabot[bot] Apr 16, 2026
73e06a3
chore(deps): bump devenv from `07aa7cb` to `2012662` (#21751)
dependabot[bot] Apr 16, 2026
8529735
chore(nix): update dependencies hash to sha256-aehV414pbc2t0JsC9Rkbll…
github-actions[bot] Apr 16, 2026
82cf0fb
chore(deps): bump nixpkgs from `4c1018d` to `4bd9165` (#21752)
dependabot[bot] Apr 16, 2026
9bf423d
chore(deps): bump @scalar/hono-api-reference from 0.10.7 to 0.10.8 (#…
dependabot[bot] Apr 16, 2026
9d5f61f
chore(deps-dev): bump the cloudflare group with 3 updates (#21748)
dependabot[bot] Apr 16, 2026
1d2519f
fix(route/bestblogs): API endpoint failure (#21753)
occam-7 Apr 16, 2026
e081128
revert: "chore(deps-dev): bump the cloudflare group with 3 updates (#…
TonyRL Apr 16, 2026
0bed8a9
docs: add FANTIA_COOKIE (#21755)
TonyRL Apr 16, 2026
1063a5f
chore: bump basic-ftp and lodash
TonyRL Apr 17, 2026
a5f5082
chore: bump protobufjs
TonyRL Apr 17, 2026
52f9e7d
chore(deps-dev): bump tsdown from 0.21.8 to 0.21.9 (#21761)
dependabot[bot] Apr 17, 2026
123e803
chore(deps-dev): bump discord-api-types from 0.38.46 to 0.38.47 (#21763)
dependabot[bot] Apr 17, 2026
cfc522e
chore(deps-dev): bump msw from 2.13.3 to 2.13.4 (#21764)
dependabot[bot] Apr 17, 2026
f2c6984
chore(deps-dev): bump oxlint-tsgolint in the oxc group (#21760)
dependabot[bot] Apr 17, 2026
df42258
chore(deps): bump @sentry/node from 10.48.0 to 10.49.0 (#21762)
dependabot[bot] Apr 17, 2026
4cbb027
chore(deps): bump devenv from `2012662` to `d7aba90` (#21765)
dependabot[bot] Apr 17, 2026
3a6b902
chore(nix): update dependencies hash to sha256-ReWfQhFBGvq3C14bRhLihT…
github-actions[bot] Apr 17, 2026
a0dbb6e
fix(route/huxiu): restore article content fetching and unify metadata…
TimoYoung Apr 17, 2026
4f2d421
chore(deps-dev): bump the cloudflare group across 1 directory with 3 …
dependabot[bot] Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
17 changes: 17 additions & 0 deletions .github/VOUCHED.td
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Vouched contributors for this project.
#
# See https://github.com/mitchellh/vouch for details.
#
# Syntax:
# - One handle per line (without @), sorted alphabetically.
# - Optional platform prefix: platform:username (e.g., github:user).
# - Denounce with minus prefix: -username or -platform:username.
# - Optional details after a space following the handle.
-betterandbetterii impersonate as dvorak0, goestav, Kjasn, Loongphy, TonyRL, ttttmr and xbot. https://github.com/DIYgod/RSSHub/commit/9e6f84df79bc9efcfabb0ca0768d7fded6775a1a.
diygod
henryqw
hyoban
neverbehave
pseudoyu
tonyrl
zhenlonghe
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ updates:
typescript-eslint:
patterns:
- '@typescript-eslint/*'
vitest:
patterns:
- 'vitest'
- '@vitest/coverage-v8'

- package-ecosystem: 'nix'
directory: '/'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install pnpm
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- name: Use Node.js Active LTS
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/comment-on-issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,15 @@ jobs:
if: github.event.sender.login != 'issuehunt-oss[bot]'
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: lts/*
cache: 'pnpm'
- name: Install dependencies (pnpm) # import remark-parse and unified
run: pnpm i
- name: Generate feedback
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/docker-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ jobs:

- name: Build and push Docker image (ordinary version)
id: build-and-push
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
with:
context: .
tags: ${{ steps.image-name-ordinary.outputs.tags }}
Expand All @@ -132,7 +132,7 @@ jobs:
touch "${{ runner.temp }}/digests/ordinary/${digest#sha256:}"

- name: Upload digest (ordinary version)
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: digests-ordinary-${{ env.PLATFORM_PAIR }}
path: ${{ runner.temp }}/digests/ordinary/*
Expand Down Expand Up @@ -160,7 +160,7 @@ jobs:

- name: Build and push Docker image (Chromium-bundled version)
id: build-and-push-chromium
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
with:
context: .
build-args: PUPPETEER_SKIP_DOWNLOAD=0
Expand All @@ -187,7 +187,7 @@ jobs:
touch "${{ runner.temp }}/digests/chromium/${digest#sha256:}"

- name: Upload digest (Chromium-bundled version)
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: digests-chromium-${{ env.PLATFORM_PAIR }}
path: ${{ runner.temp }}/digests/chromium/*
Expand Down
34 changes: 13 additions & 21 deletions .github/workflows/docker-test-cont.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,13 @@ jobs:
GH_TOKEN: ${{ github.token }}
# Best practice for scripts is to reference via ENV at runtime. Avoid using the expression syntax in the script content directly:
PR_TARGET_REPO: ${{ github.repository }}
# If the PR is from a fork, prefix it with `<owner-login>:`, otherwise only the PR branch name is relevant:
PR_BRANCH: |-
${{
(github.event.workflow_run.head_repository.owner.login != github.event.workflow_run.repository.owner.login)
&& format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch)
|| github.event.workflow_run.head_branch
}}
# The REST API `head` filter requires `<owner>:<branch>` format
PR_BRANCH: ${{ format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch) }}
# Query the PR number by repo + branch, then assign to step output:
run: |
gh pr view --repo "${PR_TARGET_REPO}" "${PR_BRANCH}" \
--json 'number' --jq '"number=\(.number)"' \
gh api "repos/${PR_TARGET_REPO}/pulls" \
--method GET -f head="${PR_BRANCH}" -f state=open \
--jq '.[0] | "number=\(.number)"' \
>> "${GITHUB_OUTPUT}"

- name: Fetch PR data via GitHub API
Expand All @@ -46,7 +42,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0

- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
Expand All @@ -58,7 +54,7 @@ jobs:

- name: Fetch affected routes
id: fetch-route
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
env:
PULL_REQUEST: ${{ steps.pr-data.outputs.data }}
with:
Expand Down Expand Up @@ -127,7 +123,7 @@ jobs:
if: (env.TEST_CONTINUE)
id: generate-feedback
timeout-minutes: 10
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
env:
TEST_BASEURL: http://localhost:1200
TEST_ROUTES: ${{ steps.fetch-route.outputs.result }}
Expand Down Expand Up @@ -171,17 +167,13 @@ jobs:
GH_TOKEN: ${{ github.token }}
# Best practice for scripts is to reference via ENV at runtime. Avoid using the expression syntax in the script content directly:
PR_TARGET_REPO: ${{ github.repository }}
# If the PR is from a fork, prefix it with `<owner-login>:`, otherwise only the PR branch name is relevant:
PR_BRANCH: |-
${{
(github.event.workflow_run.head_repository.owner.login != github.event.workflow_run.repository.owner.login)
&& format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch)
|| github.event.workflow_run.head_branch
}}
# The REST API `head` filter requires `<owner>:<branch>` format
PR_BRANCH: ${{ format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch) }}
# Query the PR number by repo + branch, then assign to step output:
run: |
gh pr view --repo "${PR_TARGET_REPO}" "${PR_BRANCH}" \
--json 'number' --jq '"number=\(.number)"' \
gh api "repos/${PR_TARGET_REPO}/pulls" \
--method GET -f head="${PR_BRANCH}" -f state=open \
--jq '.[0] | "number=\(.number)"' \
>> "${GITHUB_OUTPUT}"

- name: Pull Request Labeler
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docker-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
flavor: latest=true

- name: Build Docker image
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
with:
context: .
build-args: PUPPETEER_SKIP_DOWNLOAD=0 # also test bundling Chromium
Expand Down Expand Up @@ -69,7 +69,7 @@ jobs:
run: docker save rsshub:latest | zstdmt -o rsshub.tar.zst

- name: Upload Docker image
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: docker-image
path: rsshub.tar.zst
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: lts/*
Expand Down
51 changes: 47 additions & 4 deletions .github/workflows/issue-command.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,49 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
trigger: '/wip'

vouch-manage:
name: Vouch Manage
if: ${{ startsWith(github.event.comment.body, 'vouch') || startsWith(github.event.comment.body, 'unvouch') || startsWith(github.event.comment.body, 'denounce') }}
runs-on: ubuntu-slim
timeout-minutes: 5
permissions:
contents: write
issues: write
pull-requests: write
concurrency:
group: vouch-manage
cancel-in-progress: false
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- id: vouch
uses: mitchellh/vouch/action/manage-by-issue@c6d80ead49839655b61b422700b7a3bc9d0804a9 # v1.4.2
with:
issue-id: ${{ github.event.issue.number }}
comment-id: ${{ github.event.comment.id }}
roles: admin,maintain,write
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Close PR if denounced
if: ${{ github.event.issue.pull_request && steps.vouch.outputs.status == 'denounced' }}
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
const prNumber = context.payload.issue.number;
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
body: 'This pull request has been automatically closed.',
});
await github.rest.pulls.update({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: prNumber,
state: 'closed',
});

test-on-demand:
name: Test route on demand
if: startsWith(github.event.comment.body, '/test')
Expand Down Expand Up @@ -68,7 +111,7 @@ jobs:
ref: ${{ fromJson(steps.pr-data.outputs.data).head.ref }}

- name: Install pnpm
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0

- name: Use Node.js Active LTS
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
Expand All @@ -81,7 +124,7 @@ jobs:

- name: Fetch affected routes
id: fetch-route
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
env:
EVENT: ${{ toJson(github.event) }}
with:
Expand Down Expand Up @@ -109,7 +152,7 @@ jobs:

- name: Generate feedback
if: env.TEST_CONTINUE
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
env:
TEST_BASEURL: http://localhost:1200
TEST_ROUTES: ${{ steps.fetch-route.outputs.result }}
Expand All @@ -129,7 +172,7 @@ jobs:
run: cat ${{ github.workspace }}/logs/combined.log

- name: Upload Artifact
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: logs
path: logs
Expand Down
24 changes: 22 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
security-events: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: lts/*
Expand All @@ -39,7 +39,7 @@ jobs:
sarif_file: oxlint-results.sarif
wait-for-processing: true
- name: Upload Artifact
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
path: oxlint-results.sarif

Expand Down Expand Up @@ -68,3 +68,23 @@ jobs:
- uses: actions/labeler@634933edcd8ababfe52f92936142cc22ac488b1b # v6.0.1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

vouch-check-pr:
name: Vouch check PR
if: ${{ github.event_name == 'pull_request_target' && github.event.action == 'opened' && github.repository == 'DIYgod/RSSHub' }}
permissions:
contents: read
issues: write
pull-requests: write
runs-on: ubuntu-slim
timeout-minutes: 5
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Check if PR author is denounced
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
const { default: checkPr } = await import('${{ github.workspace }}/scripts/workflow/vouch/check-pr.mjs')
await checkPr({ github, context, core })
2 changes: 1 addition & 1 deletion .github/workflows/npm-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
HUSKY: 0
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: lts/*
Expand Down
13 changes: 5 additions & 8 deletions .github/workflows/pr-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,12 @@ jobs:
env:
GH_TOKEN: ${{ github.token }}
PR_TARGET_REPO: ${{ github.repository }}
PR_BRANCH: |-
${{
(github.event.workflow_run.head_repository.owner.login != github.event.workflow_run.repository.owner.login)
&& format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch)
|| github.event.workflow_run.head_branch
}}
# The REST API `head` filter requires `<owner>:<branch>` format
PR_BRANCH: ${{ format('{0}:{1}', github.event.workflow_run.head_repository.owner.login, github.event.workflow_run.head_branch) }}
run: |
gh pr view --repo "${PR_TARGET_REPO}" "${PR_BRANCH}" \
--json 'number' --jq '"number=\(.number)"' \
gh api "repos/${PR_TARGET_REPO}/pulls" \
--method GET -f head="${PR_BRANCH}" -f state=open \
--jq '.[0] | "number=\(.number)"' \
>> "${GITHUB_OUTPUT}"

- name: Check PR author
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-full-routes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Install pnpm
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- name: Use Node.js Active LTS
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
name: Vitest on Node ${{ matrix.node-version }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node-version }}
Expand Down Expand Up @@ -76,7 +76,7 @@ jobs:
name: Vitest puppeteer on Node ${{ matrix.node-version }} with ${{ matrix.chromium.name }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node-version }}
Expand Down Expand Up @@ -123,7 +123,7 @@ jobs:
name: Build radar and maintainer on Node ${{ matrix.node-version }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4.4.0
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node-version }}
Expand All @@ -132,7 +132,7 @@ jobs:
- name: Build radar and maintainer
run: npm run build
- name: Upload assets
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: generated-assets-${{ matrix.node-version }}
path: assets/build/
Expand Down
Loading