Update raycast-language-tool extension - #30166
Conversation
|
Thank you for your contribution! 🎉 🔔 @lucastaonline you might want to have a look. You can use this guide to learn how to check out the Pull Request locally in order to test it. 📋 Quick checkout commandsBRANCH="ext/raycast-language-tool"
FORK_URL="https://github.com/pasqualesalza/raycast-extensions.git"
EXTENSION_NAME="language-tool"
REPO_NAME="raycast-extensions"
git clone -n --depth=1 --filter=tree:0 -b $BRANCH $FORK_URL
cd $REPO_NAME
git sparse-checkout set --no-cone "extensions/$EXTENSION_NAME"
git checkout
cd "extensions/$EXTENSION_NAME"
npm install && npm run devWe're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 15 business days. |
Greptile SummaryThe PR fixes Premium account checks by routing authenticated requests to LanguageTool’s Premium API while leaving unauthenticated requests on the free endpoint.
Confidence Score: 5/5The PR appears safe to merge with no actionable runtime, build, publishing, or security defects identified. Authenticated checks now use the Premium API documented by the bundled specification, unauthenticated checks retain the existing endpoint, and the removed generated declaration is recreated by the standard Ray CLI workflow. Important Files Changed
Reviews (1): Last reviewed commit: "Send authenticated requests to the Langu..." | Re-trigger Greptile |
Description
Premium accounts cannot be used at all: filling in Username/Email and API Key makes every check fail.
The credentials are sent to
https://api.languagetool.org/v2/check, the free endpoint, which rejects any authenticated request:The same request against
https://api.languagetoolplus.com/v2/checkis accepted and authenticated instead — and that is the host the bundledsrc/languagetool-swagger.jsonalready documents ("host": "api.languagetoolplus.com").So
checkTextWithAPInow picks the endpoint to match the request: only requests carrying credentials go to the Premium host. Without credentials nothing changes — same host, same behaviour, no regression risk for free users.Verified with a real Premium account: before, every check failed with the 400 above; after, checks return results normally. Also checked that the free path still works with the credential fields left empty.
One note on the diff:
raycast-env.d.tsshows up as deleted. It is generated and listed in this extension's.gitignore, so the publish CLI did not carry it over. Happy to restore it if you would rather keep it tracked.Screencast
N/A
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare placed outside of themetadatafolder