mirror of
https://github.com/actions/setup-java.git
synced 2026-08-25 16:00:54 +00:00
885218c5e4
2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
955f34f16f
|
Add conditional JDK caching (#1201)
* Add JDK caching Cache resolved JDK tool-cache entries by exact platform and release identity, with a default-on cache-jdk input and explicit opt-out. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Apply batched suggestions from code review Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Fix JDK cache CI validation Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Update brace-expansion security fix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Refresh brace-expansion license metadata Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Refine JDK cache semantics Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Refine JDK cache documentation Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Simplify JDK cache identity Use one normalized runner OS dimension, reset the internal cache key schema for the unreleased feature, and align documentation, tests, and bundles. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Align JDK cache OS identity Use the established RUNNER_OS value directly and retain process.platform only as a non-Actions fallback. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Harden JDK cache saves and document tool-cache reuse Bind each JDK cache key to the installation identity it was computed for, keep post-job saves best-effort per entry, and state the real reuse and verification guarantee in the documentation. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * docs: restructure README caching section Rename '## Caching dependencies' to '## Caching' and add a what-gets-cached overview table covering the dependency, wrapper, and JDK caches. Lead with the common 'cache: maven' example and the dependency-cache material, and demote JDK caching into its own subsection. Also corrects the IMPORTANT callout, which implied JDK caching required an explicit opt-in; it is enabled implicitly whenever 'cache' is set. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * docs: fix caching documentation defects - Remove pull-request framing that compared behavior to `main`; state the tool-cache and `jdkfile` behavior directly and unconditionally. - Clarify that the JDK cache is a separate cache *entry* from the dependency and wrapper caches, while its *enablement* is coupled to `cache`, so the opening paragraph agrees with the enablement matrix. - Cite the actions/setup-java-benchmarks repository instead of an open PR and a self-referential PR comment, keeping the measured figures and caveats. - Keep the `cache`/`cache-jdk` matrix only in docs/advanced-usage.md and summarize the rules in prose in README.md to avoid divergence. - Describe the guarantee that a cache key is only saved with the installation it was computed for, instead of documenting inode/size/timestamp internals. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * docs: add V6 what's new entry for JDK caching Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: e2755464-4e83-47b6-ba71-731bb481b418 --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Copilot-Session: e2755464-4e83-47b6-ba71-731bb481b418 |
||
|
|
3cc3643700
|
Optimize Temurin tool-cache fast path with lazy loading (#1179)
Some checks failed
Validate Java e2e / ${{ matrix.distribution }} version (should be from input) - ${{ matrix.os }} (corretto, .tool-versions, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version (should be from input) - ${{ matrix.os }} (microsoft, .java-version, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version (should be from input) - ${{ matrix.os }} (microsoft, .tool-versions, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version (should be from input) - ${{ matrix.os }} (temurin, .java-version, ubuntu-latest) (push) Failing after 6s
Validate Java e2e / ${{ matrix.distribution }} version (should be from input) - ${{ matrix.os }} (temurin, .tool-versions, ubuntu-latest) (push) Failing after 11s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (corretto, .java-version, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (corretto, .tool-versions, ubuntu-latest) (push) Failing after 6s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (liberica, .java-version, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (liberica, .tool-versions, ubuntu-latest) (push) Failing after 11s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (microsoft, .java-version, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (microsoft, .tool-versions, ubuntu-latest) (push) Failing after 8s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (temurin, .java-version, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (temurin, .tool-versions, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (zulu, .java-version, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version from file X - ${{ matrix.os }} (zulu, .tool-versions, ubuntu-latest) (push) Failing after 11s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (adopt, .java-version, ubuntu-latest) (push) Failing after 10s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (adopt, .tool-versions, ubuntu-latest) (push) Failing after 15s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (adopt-openj9, .java-version, ubuntu-latest) (push) Failing after 12s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (adopt-openj9, .tool-versions, ubuntu-latest) (push) Failing after 12s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (zulu, .java-version, ubuntu-latest) (push) Failing after 9s
Validate Java e2e / ${{ matrix.distribution }} version from file X.Y.Z - ${{ matrix.os }} (zulu, .tool-versions, ubuntu-latest) (push) Failing after 9s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (adopt, .java-version, ubuntu-latest) (push) Failing after 7s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (adopt, .sdkmanrc, ubuntu-latest) (push) Failing after 12s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (adopt, .tool-versions, ubuntu-latest) (push) Failing after 9s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (liberica, .java-version, ubuntu-latest) (push) Failing after 13s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (liberica, .sdkmanrc, ubuntu-latest) (push) Failing after 10s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (liberica, .tool-versions, ubuntu-latest) (push) Failing after 9s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (zulu, .java-version, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (zulu, .sdkmanrc, ubuntu-latest) (push) Failing after 5s
Validate Java e2e / ${{ matrix.distribution }} version from file '${{ matrix.java-version-file }}' - ${{ matrix.os }} (zulu, .tool-versions, ubuntu-latest) (push) Failing after 10s
* Optimize Temurin tool-cache fast path - Lazy-load distribution installers so only the selected distro module is initialized - Defer cache feature/cache module loading until cache input is provided - Start cache restore early and await it safely alongside Java setup flow - Update orchestration and lazy-loading tests; regenerate dist artifacts Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: cc2c0256-c55e-4a35-a584-5bed7e8b11ad * Address PR review comments - Lazy-load cache save in cleanup path so no-cache runs avoid cache module init in post action - Stage dist/setup/package.json in release script for chunked setup bundle completeness Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: cc2c0256-c55e-4a35-a584-5bed7e8b11ad * Fix CodeQL comment tag filter finding Patch is-unsafe's XML comment-close detector during builds so generated bundles recognize both HTML comment end forms and satisfy CodeQL until the dependency publishes a fix. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 277302b1-aa95-4012-817b-9752cdaee14e * Rebuild generated dist bundles Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: cc2c0256-c55e-4a35-a584-5bed7e8b11ad --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: cc2c0256-c55e-4a35-a584-5bed7e8b11ad Copilot-Session: 277302b1-aa95-4012-817b-9752cdaee14e |