(chore): Explicitly specify GitHub mode when using GitHub API#2837
(chore): Explicitly specify GitHub mode when using GitHub API#2837
Conversation
WalkthroughThis PR updates 70+ Scoop bucket manifest files by renaming configuration field keys in ChangesManifest Configuration Key Updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~10 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Your changes did not pass all checks. Please address the issues in the manifest and comment starting with 7zip-zstd
arduino-ide-rc
atom-beta
bottom-nightly
cherry-studio-pre
cosmosdbexplorer-beta
ffmpeg-nightly
ffmpeg-shared-nightly
ffmpeg-shared-yt-dlp-nightly
ffmpeg-yt-dlp-nightly
freac-continuous
freecad-weekly
git-without-openssh
github-beta
godot-beta
godot-dev
godot-mono-beta
godot-mono-dev
godot-mono-rc
godot-rc
goneovim-nightly
greenshot-unstable
hadoop-winutils33
helium-pre
ipfilter-nightly
komorebi-nightly
lapce-nightly
librehardwaremonitor-dotnet10-nightly
librehardwaremonitor-nightly
logseq-nightly
micro-nightly
mpv.net-beta
nanazip-beta
neovide-dev
neovim-nightly
obs-studio-pre
ols-dev
orcaslicer-nightly
pester4
pragtical-rolling
prismlauncher-git
prusaslicer-pre
pwsh-beta
qbittorrent-nightly
qt-creator-beta
qview-nightly
raddebugger-alpha
rufus-beta
rustdesk-nightly
sfsu-beta
sharex-dev
smplayer-with-smtube
spotbugs-beta
spotify-qt-nightly
sqlitebrowser-nightly
sunshine-pre
syncplay-beta
taiga-beta
v2rayn-pre
vidcoder-beta
windows-terminal-preview
winsw-pre
xdman-beta
xournalpp-nightly
yazi-nightly
zed-nightly
zed-opengl-nightly
zed-pre
Invalid manifests
|
There was a problem hiding this comment.
Actionable comments posted: 13
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
bucket/qbittorrent-nightly.json (1)
68-75:⚠️ Potential issue | 🔴 CriticalUse the
"url"key instead of"github"for fullapi.github.comURLs.Scoop's checkver automatically appends
/releases/latestto values provided under the"github"key. Passing a fullapi.github.comURL here will result in a malformed URL likehttps://api.github.com/.../runs?branch=master&status=success/releases/latest, causing the script to fail.The
"github"key is designed for repository homepage URLs (https://github.com/owner/repo). For custom API endpoints, use the"url"key instead. Change line 68 from"github":to"url":.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@bucket/qbittorrent-nightly.json` around lines 68 - 75, Replace the JSON key "github" with "url" for the full api.github.com endpoint in the qbittorrent-nightly.json entry so Scoop's checkver does not append "/releases/latest" to the API URL; keep the value string unchanged (the api.github.com/.../runs?branch=master&status=success) and leave the surrounding "script" and "regex" fields as-is.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@bucket/godot-beta.json`:
- Line 37: The manifest's "github" field currently contains a full API URL which
breaks Scoop's checkver; change the "github" entry to a repo identifier
(owner/repo or https://github.com/owner/repo) or move the full API URL into a
"url" field instead so checkver can correctly append /releases/latest—update the
"github" value from "https://api.github.com/repos/godotengine/godot-builds/tags"
to "godotengine/godot-builds" (or use "url" for the original API endpoint) to
fix checkver behavior.
In `@bucket/greenshot-unstable.json`:
- Line 19: The manifest uses the "github" checkver key which Scoop's checkver
will append "/releases/latest" (via checkver.github) causing a malformed
endpoint; replace the "github" key with the "url" key (i.e., change "github":
"https://api.github.com/repos/greenshot/greenshot/releases" to "url":
"https://api.github.com/repos/greenshot/greenshot/releases") so the full
/releases endpoint is passed through unchanged and your regex can match the
UNSTABLE-UNSIGNED asset; using "url" also retains GitHub API token support for
api.github.com URLs.
In `@bucket/helium-pre.json`:
- Around line 33-36: The checkver block currently uses the "github" key which
triggers special handling and breaks jsonpath extraction; update the checkver
object by replacing the "github" key with "url" while keeping the same JSON API
endpoint and the existing "jsonpath" (i.e., change checkver.github ->
checkver.url and leave checkver.jsonpath unchanged) so Scoop will pass the
GitHub API response through to jsonpath for correct version detection.
In `@bucket/librehardwaremonitor-dotnet10-nightly.json`:
- Around line 38-41: The checkver block currently uses checkver.github with a
full GitHub API endpoint which causes Scoop to append /releases/latest; change
the property name from "github" to "url" in the checkver object (keep the same
API URL string) and retain the existing "jsonpath" so the workflow-runs API
endpoint is used correctly (i.e., replace checkver.github with checkver.url
while leaving jsonpath unchanged).
In `@bucket/logseq-nightly.json`:
- Line 19: The manifest sets "github" to the API endpoint with a tag path which
conflicts with checkver.ps1 logic (the script's useGithubAPI handling and
unconditional append of /releases/latest), so fix the manifest by either: 1)
change the "github" value to the normal repo URL
("https://github.com/logseq/logseq") and remove custom checkver properties
(jsonpath/regex/replace) so the default /releases/latest behavior is used, or 2)
remove the "github" key entirely and add a "url" entry with your explicit
JSON/regex/replace values so checkver runs in custom-url mode and does not
mutate the API path; reference checkver.ps1's useGithubAPI behavior when making
the choice.
In `@bucket/orcaslicer-nightly.json`:
- Line 20: The checkver block change renamed the "url" field to "github", which
breaks Scoop's GitHub API detection for direct api.github.com endpoints; restore
the original "url" field and move the API endpoint back into "url" (not
"github") so the /releases/tags/nightly-builds API call is used verbatim; update
the checkver object to use "url":
"https://api.github.com/repos/OrcaSlicer/OrcaSlicer/releases/tags/nightly-builds"
and remove the "github" key so Scoop's checkver logic treats it as a direct API
URL.
In `@bucket/pragtical-rolling.json`:
- Line 22: Replace the incorrect "github" key under the "checkver" block with
"url" so the full custom API endpoint is used as-is; update the "checkver"
object to remove the "github" entry and add a "url" entry set to
"https://api.github.com/repos/pragtical/pragtical/actions/workflows/rolling.yml/runs?branch=master&status=success"
(i.e., change the key name from "github" to "url" for that endpoint) to prevent
Scoop from appending /releases/latest.
In `@bucket/pwsh-beta.json`:
- Line 30: Update the "github" field value to remove the trailing "/releases" so
Scoop's checkver.ps1 doesn't produce a double "/releases/releases/latest";
locate the "github" key in pwsh-beta.json and replace
"https://api.github.com/repos/PowerShell/PowerShell/releases" with either
"https://github.com/PowerShell/PowerShell" or
"https://api.github.com/repos/PowerShell/PowerShell" so Scoop can correctly
append "/releases/latest".
In `@bucket/rufus-beta.json`:
- Line 25: The checkver object currently uses the "github" key with a GitHub API
URL which Scoop will append "/releases/latest" to, producing a malformed URL;
change the "github" key to the "url" key inside the checkver object (keep the
same API URL), and ensure the accompanying "jsonpath" and "regex" entries remain
(e.g., "checkver": { "url":
"https://api.github.com/repos/pbatard/rufus/releases?per_page=1", "jsonpath":
"$[0].tag_name", "regex": "v([\\w._]+)" }) so Scoop treats the value as a
complete URL and does not append extra path segments.
In `@bucket/sfsu-beta.json`:
- Line 23: The manifest uses the "github" key with a full
api.github.com/releases URL which is unsupported by Scoop's documented checkver
behavior and references a non-existent PR; update the JSON so the direct GitHub
API endpoint is provided via the "url" key instead of "github" (or alternatively
replace the bogus PR reference with a valid Scoop PR/commit if you can confirm
new support), i.e., locate the manifest entry containing the "github" field and
change it to "url" with the same API URL so checkver will treat it as a direct
API endpoint.
In `@bucket/spotbugs-beta.json`:
- Around line 26-27: Remove the "github" key from the checkver block because
Scoop will append "/releases/latest" to it and produce an invalid URL; instead,
put the full GitHub API endpoint into the "url" key (e.g., the existing API URL)
and keep the existing "jsonpath": "$[0].tag_name" to extract the version—update
the checkver object by deleting "github" and ensuring "url" contains the direct
API URL used for parsing.
In `@bucket/syncplay-beta.json`:
- Line 20: The github field in syncplay-beta.json is using the GitHub API
endpoint instead of the repository URL; update the "github" value to the repo
URL format (for example "https://github.com/Syncplay/syncplay") so Scoop can
detect releases correctly, and remove or correct any non-verifiable PR reference
(the noted PR `#6641`) in metadata or comments if present; locate the "github" key
in this JSON and replace only the URL value accordingly.
In `@bucket/winsw-pre.json`:
- Line 18: The checkver entry currently uses "github":
"https://api.github.com/repos/winsw/winsw/releases" which mixes the API URL with
the github field; either revert the field name to "url" and keep the API
endpoint (i.e., change "github" back to "url" with the same
https://api.github.com/repos/winsw/winsw/releases value) or keep the "github"
key but change its value to the standard repo URL
"https://github.com/winsw/winsw" so Scoop can construct the API path; update the
key/value in the same JSON object where "github"/"url" is defined to match the
`checkver.github` specification.
---
Outside diff comments:
In `@bucket/qbittorrent-nightly.json`:
- Around line 68-75: Replace the JSON key "github" with "url" for the full
api.github.com endpoint in the qbittorrent-nightly.json entry so Scoop's
checkver does not append "/releases/latest" to the API URL; keep the value
string unchanged (the api.github.com/.../runs?branch=master&status=success) and
leave the surrounding "script" and "regex" fields as-is.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 6df72471-f9bf-4231-8bbc-6e1b9e8c41fe
📒 Files selected for processing (70)
bucket/7zip-zstd.jsonbucket/arduino-ide-rc.jsonbucket/atom-beta.jsonbucket/bottom-nightly.jsonbucket/bun-canary.jsonbucket/cherry-studio-pre.jsonbucket/cosmosdbexplorer-beta.jsonbucket/ffmpeg-nightly.jsonbucket/ffmpeg-shared-nightly.jsonbucket/ffmpeg-shared-yt-dlp-nightly.jsonbucket/ffmpeg-yt-dlp-nightly.jsonbucket/freac-continuous.jsonbucket/freecad-weekly.jsonbucket/git-without-openssh.jsonbucket/github-beta.jsonbucket/godot-beta.jsonbucket/godot-dev.jsonbucket/godot-mono-beta.jsonbucket/godot-mono-dev.jsonbucket/godot-mono-rc.jsonbucket/godot-rc.jsonbucket/goneovim-nightly.jsonbucket/greenshot-unstable.jsonbucket/hadoop-winutils33.jsonbucket/helium-pre.jsonbucket/ipfilter-nightly.jsonbucket/komorebi-nightly.jsonbucket/lapce-nightly.jsonbucket/librehardwaremonitor-dotnet10-nightly.jsonbucket/librehardwaremonitor-nightly.jsonbucket/logseq-nightly.jsonbucket/micro-nightly.jsonbucket/mpv.net-beta.jsonbucket/nanazip-beta.jsonbucket/neovide-dev.jsonbucket/neovim-nightly.jsonbucket/obs-studio-pre.jsonbucket/ols-dev.jsonbucket/orcaslicer-nightly.jsonbucket/pester4.jsonbucket/pragtical-rolling.jsonbucket/prismlauncher-git.jsonbucket/prusaslicer-pre.jsonbucket/pwsh-beta.jsonbucket/qbittorrent-nightly.jsonbucket/qt-creator-beta.jsonbucket/qview-nightly.jsonbucket/raddebugger-alpha.jsonbucket/rufus-beta.jsonbucket/rustdesk-nightly.jsonbucket/sfsu-beta.jsonbucket/sharex-dev.jsonbucket/smplayer-with-smtube.jsonbucket/spotbugs-beta.jsonbucket/spotify-qt-nightly.jsonbucket/sqlitebrowser-nightly.jsonbucket/sunshine-pre.jsonbucket/syncplay-beta.jsonbucket/taiga-beta.jsonbucket/v2rayn-pre.jsonbucket/vidcoder-beta.jsonbucket/windows-terminal-preview.jsonbucket/winsw-pre.jsonbucket/xdman-beta.jsonbucket/xournalpp-nightly.jsonbucket/yazi-nightly.jsonbucket/zed-nightly.jsonbucket/zed-opengl-nightly.jsonbucket/zed-pre.jsondeprecated/strawberry-nightly.json
Per ScoopInstaller/Scoop#6641, to make authenticated GitHub API requests with a token in checkver, GitHub mode must be explicitly specified. Additionally,
checkver.githubnow allows configuring either a GitHub repo URL or a GitHub API URL.Some
checkvermay still not work. However, since there is still another breaking change (ScoopInstaller/Scoop#6653) that hasn't been merged yet, we may wait until it is merged before fixing this issue to avoid duplicating work.<manifest-name[@version]|chore>: <general summary of the pull request>Summary by CodeRabbit
urlfields to explicitgithubfields for improved clarity and consistency in package update mechanisms.