🌐 AI搜索 & 代理 主页
Skip to content

Conversation

@mahabaleshwars
Copy link
Contributor

@mahabaleshwars mahabaleshwars commented Jun 6, 2025

Description:

  • Added support for using a github_token from the environment to make authenticated requests to GitHub, which helps avoid API rate limits when downloading GraalVM.
  • Refactored the codebase for improved readability and maintainability.

Related issue:

Check list:

  • Mark if documentation changes are required.
  • Mark if tests were added or updated to cover the changes.

@mahabaleshwars mahabaleshwars self-assigned this Jun 6, 2025
@robstoll
Copy link

robstoll commented Jun 7, 2025

out of curiosity, I also hit API Rate Limit issues when using jetbrains does your fix address this as well?

@mahabaleshwars mahabaleshwars marked this pull request as ready for review June 11, 2025 09:40
Copilot AI review requested due to automatic review settings June 11, 2025 09:40
@mahabaleshwars mahabaleshwars requested a review from a team as a code owner June 11, 2025 09:40
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request adds support for GitHub tokens to address API rate limits and refactors code for improved readability and maintainability.

  • Introduces an optional token parameter to the GitHub HTTP headers helper.
  • Refactors URL construction and error handling in the GraalVM installer.
  • Updates associated tests with better grouping and improved mocking.

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

File Description
src/util.ts Added an optional token parameter to getGitHubHttpHeaders to support GitHub token usage.
src/distributions/graalvm/installer.ts Refactored file URL construction, error handling, and platform logic for the GraalVM installer.
tests/distributors/graalvm-installer.test.ts Improved test grouping, added helpers for mocking HTTP responses, and refined architecture mapping tests.
Comments suppressed due to low confidence (1)

src/util.ts:186

  • Consider updating the function's documentation or inline comments to clearly describe the new optional 'token' parameter and its behavior.
export function getGitHubHttpHeaders(token?: string): OutgoingHttpHeaders {

const osType = distribution.getPlatform();
if (osType === 'windows' && distroArch == 'aarch64') {
if (osType === 'windows' && distroArch === 'aarch64') {
return; // skip, aarch64 is not available for Windows
Copy link

Copilot AI Jun 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] Instead of returning early inside the test body to skip the unsupported Windows aarch64 case, consider using a conditional test skip (e.g. test.skip for that iteration) to make the intent clearer.

Suggested change
return; // skip, aarch64 is not available for Windows
test.skip('Skipping test: aarch64 is not available for Windows');

Copilot uses AI. Check for mistakes.
@mahabaleshwars mahabaleshwars changed the title Add GitHub Token Support and Refactor Code. Add GitHub Token Support for GraalVM and Refactor Code Jul 3, 2025
@mahabaleshwars mahabaleshwars added the feature request New feature or request to improve the current logic label Sep 16, 2025
priyagupta108
priyagupta108 previously approved these changes Oct 13, 2025
aparnajyothi-y
aparnajyothi-y previously approved these changes Oct 14, 2025
Copy link
Contributor

@fniephaus fniephaus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for adding support for authenticated requests to avoid hitting rate limits.

@fniephaus
Copy link
Contributor

out of curiosity, I also hit API Rate Limit issues when using jetbrains does your fix address this as well?

@robstoll this PR is not touching the code responsible for pulling JetBrains JDKs. The relevant code seems to support the $GITHUB_TOKEN env var, but not the token option. Hope this helps.

aparnajyothi-y
aparnajyothi-y previously approved these changes Nov 11, 2025
priyagupta108
priyagupta108 previously approved these changes Nov 11, 2025
@HarithaVattikuti HarithaVattikuti merged commit 46c56d6 into actions:main Nov 18, 2025
370 checks passed
mergify bot added a commit to ArcadeData/arcadedb that referenced this pull request Dec 8, 2025
[//]: # (dependabot-start)
⚠️ \*\*Dependabot is rebasing this PR\*\* ⚠️
Rebasing might not happen immediately, so don't worry if this takes some time.
Note: if you make any changes to this PR yourself, they will take precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 5.0.0 to 5.1.0.
Release notes

*Sourced from [actions/setup-java's releases](https://github.com/actions/setup-java/releases).*

> v5.1.0
> ------
>
> What's Changed
> --------------
>
> ### New Features
>
> * Add support for `.sdkmanrc` file in `java-version-file` parameter by [`@​guicamest`](https://github.com/guicamest) in [actions/setup-java#736](https://redirect.github.com/actions/setup-java/pull/736)
> * Add support for Microsoft OpenJDK 25 builds by [`@​the-mod`](https://github.com/the-mod) in [actions/setup-java#927](https://redirect.github.com/actions/setup-java/pull/927)
>
> ### Bug Fixes & Improvements
>
> * Update Regex to Support All ASDF Versions for the supported distributions in tool-versions File by [`@​aparnajyothi-y`](https://github.com/aparnajyothi-y) in [actions/setup-java#767](https://redirect.github.com/actions/setup-java/pull/767)
> * Enhance error logging for network failures to include endpoint/IP details, add retry mechanism and update workflows to use macos-15-intel by [`@​priya-kinthali`](https://github.com/priya-kinthali) in [actions/setup-java#946](https://redirect.github.com/actions/setup-java/pull/946)
> * Update SapMachine URLs by [`@​RealCLanger`](https://github.com/RealCLanger) in [actions/setup-java#955](https://redirect.github.com/actions/setup-java/pull/955)
> * Add GitHub Token Support for GraalVM and Refactor Code by [`@​mahabaleshwars`](https://github.com/mahabaleshwars) in [actions/setup-java#849](https://redirect.github.com/actions/setup-java/pull/849)
>
> ### Documentation changes
>
> * Update documentation to use checkout and Java v5 by [`@​lmvysakh`](https://github.com/lmvysakh) in [actions/setup-java#903](https://redirect.github.com/actions/setup-java/pull/903)
> * Clarify JAVA\_HOME and PATH setup in README by [`@​chiranjib-swain`](https://github.com/chiranjib-swain) in [actions/setup-java#841](https://redirect.github.com/actions/setup-java/pull/841)
>
> ### Dependency updates
>
> * Upgrade prettier from 2.8.8 to 3.6.2 and document breaking changes in v5 by [`@​dependabot`](https://github.com/dependabot) in [actions/setup-java#873](https://redirect.github.com/actions/setup-java/pull/873)
> * Upgrade actions/publish-action from 0.3.0 to 0.4.0 by [`@​dependabot`](https://github.com/dependabot) in [actions/setup-java#912](https://redirect.github.com/actions/setup-java/pull/912)
>
> New Contributors
> ----------------
>
> * [`@​lmvysakh`](https://github.com/lmvysakh) made their first contribution in [actions/setup-java#903](https://redirect.github.com/actions/setup-java/pull/903)
> * [`@​chiranjib-swain`](https://github.com/chiranjib-swain) made their first contribution in [actions/setup-java#841](https://redirect.github.com/actions/setup-java/pull/841)
> * [`@​the-mod`](https://github.com/the-mod) made their first contribution in [actions/setup-java#927](https://redirect.github.com/actions/setup-java/pull/927)
> * [`@​priya-kinthali`](https://github.com/priya-kinthali) made their first contribution in [actions/setup-java#946](https://redirect.github.com/actions/setup-java/pull/946)
> * [`@​guicamest`](https://github.com/guicamest) made their first contribution in [actions/setup-java#736](https://redirect.github.com/actions/setup-java/pull/736)
>
> **Full Changelog**: <actions/setup-java@v5...v5.1.0>


Commits

* [`f2beeb2`](actions/setup-java@f2beeb2) Bump actions/publish-action from 0.3.0 to 0.4.0 ([#912](https://redirect.github.com/actions/setup-java/issues/912))
* [`4e7e684`](actions/setup-java@4e7e684) feat: Add support for `.sdkmanrc` file in `java-version-file` parameter ([#736](https://redirect.github.com/actions/setup-java/issues/736))
* [`46c56d6`](actions/setup-java@46c56d6) Add GitHub Token Support for GraalVM and Refactor Code ([#849](https://redirect.github.com/actions/setup-java/issues/849))
* [`66b9457`](actions/setup-java@66b9457) Update SapMachine URLs ([#955](https://redirect.github.com/actions/setup-java/issues/955))
* [`6ba5449`](actions/setup-java@6ba5449) Enhance error logging for network failures to include endpoint/IP details, ad...
* [`de5a937`](actions/setup-java@de5a937) adds microsoft openjdk25 builds ([#927](https://redirect.github.com/actions/setup-java/issues/927))
* [`ead9eaa`](actions/setup-java@ead9eaa) Update Regex to Support All ASDF Versions for the supported distributions in ...
* [`8c57fa3`](actions/setup-java@8c57fa3) Clarify JAVA\_HOME and PATH setup in README ([#841](https://redirect.github.com/actions/setup-java/issues/841))
* [`a7ab372`](actions/setup-java@a7ab372) Bump prettier from 2.8.8 to 3.6.2 ([#873](https://redirect.github.com/actions/setup-java/issues/873))
* [`d0351b4`](actions/setup-java@d0351b4) Update documentation to use checkout and Java v5 ([#903](https://redirect.github.com/actions/setup-java/issues/903))
* See full diff in [compare view](actions/setup-java@dded088...f2beeb2)
  
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility\_score?dependency-name=actions/setup-java&package-manager=github\_actions&previous-version=5.0.0&new-version=5.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature request New feature or request to improve the current logic

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants