Edburns/2323 java windows x64 embed rust - #2393
Conversation
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Pull request overview
Extends Java’s experimental in-process runtime packaging from Linux x64 to Windows x64 while preserving host-gated builds.
Changes:
- Adds Windows classifier packaging and host validation.
- Expands loader tests and CI to Windows.
- Updates user and architecture documentation.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/java-sdk-tests.yml |
Adds Windows in-process CI. |
java/copilot-native/pom.xml |
Adds Windows native packaging profile. |
java/copilot-native/scripts/fetch-native.test.mjs |
Tests Windows artifact staging. |
java/copilot-native/scripts/validate-native-host.mjs |
Validates Windows x64 hosts. |
java/copilot-native/scripts/validate-native-host.test.mjs |
Tests Windows host validation. |
java/docs/adr/adr-007-native-bundling-strategy.md |
Documents Windows classifier support. |
java/README.md |
Adds Windows setup guidance. |
java/sdk/pom.xml |
Selects the host classifier for tests. |
java/sdk/src/main/java/com/github/copilot/ffi/NativeRuntimeLoader.java |
Handles Windows publication races. |
java/sdk/src/test/java/com/github/copilot/ffi/JnaNativeBindingTest.java |
Supports Windows library locking. |
java/sdk/src/test/java/com/github/copilot/ffi/NativeRuntimeLoaderTest.java |
Makes loader tests platform-aware. |
2323-java-windows-x64-embed-rust-remove-before-merge/20260824-ghcp-sdk-2323-prompt.md |
Temporary task prompt. |
2323-java-windows-x64-embed-rust-remove-before-merge/20260816-notes-to-linux-x64-agent.md |
Temporary Linux validation notes. |
2323-java-windows-x64-embed-rust-remove-before-merge/20260815-make-it-so-no-incorrect-os-arch-artifacts-are-produced.md |
Temporary implementation plan. |
Review details
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- Files reviewed: 14/15 changed files
- Comments generated: 4
- Review effort level: Balanced
| 4. Loads it via [JNA](#references) using the C ABI entry points, per the [binding technology decision](#binding-technology-jna-over-panama-ffm) above. The JNA-specific code is confined behind an internal binding interface to preserve a future FFM migration path. | ||
| * A validated supported-host profile fetches the pinned matching `@github/copilot-<classifier>` npm package, verifies its SHA-512 integrity from `nodejs/package-lock.json`, and packages the version-matched runtime and CLI files. | ||
| * The current release work publishes the `linux-x64` classifier. The planned classifier set expands to the other detected platforms. | ||
| * The current release work publishes the `linux-x64` and `win32-x64` classifiers. The planned classifier set expands to the other detected platforms. |
Remove the redundant native download property so the Windows in-process job does not pass a dotted -D argument through PowerShell. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e2a48f51-02fe-445b-a253-40776b09a44f
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e2a48f51-02fe-445b-a253-40776b09a44f
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e2a48f51-02fe-445b-a253-40776b09a44f
This comment has been minimized.
This comment has been minimized.
Cross-SDK Consistency Review ✅This PR makes changes exclusively to:
No changes are made to any public-facing SDK API surface. The Windows x64 native bundling strategy is a Java-specific implementation concern (JNA/FFI integration), analogous to how other SDKs handle their own native Rust bindings via their respective mechanisms. No cross-SDK API additions, removals, or behavioral changes are introduced. No cross-SDK consistency issues found. 🎉
|
No description provided.