FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Add Windows ARM64 support to CI by chinazhangchao · Pull Request #3851 · apache/iceberg-python · GitHub

Add Windows ARM64 support to CI - #3851

Open
chinazhangchao wants to merge 3 commits into
apache:mainfrom
chinazhangchao:chao/winarm64
Open

Add Windows ARM64 support to CI#3851
chinazhangchao wants to merge 3 commits into
apache:mainfrom
chinazhangchao:chao/winarm64

Conversation

chinazhangchao commented Aug 25, 2026
edited
Loading

Copy link
Copy Markdown

Hi @kevinjqliu , I'm from Microsoft and recently I'm working on improving Python ecosystem support for Windows on Arm.
So I updates the CI workflows to add support for Windows ARM64 builds and tests. Could you please help to review? Thanks.

Rationale for this change

Add Windows ARM64 to the PyPI and source distribution artifact build workflows.

Because PyArrow does not currently publish Windows ARM64 wheels, the Windows ARM64 runner uses a minimal test environment with pytest==9.1.1 and runs the Avro decoder test directly. Other platforms continue to use the existing development-environment setup and test command.

Are these changes tested?

The Windows ARM64 configuration runs:

python -m pytest --confcutdir={project}/tests/avro {project}/tests/avro/test_decoder.py

chinazhangchao marked this pull request as ready for review August 25, 2026 07:52
Copilot AI lite review requested due to automatic review settings August 25, 2026 07:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Pull request overview

Adds Windows ARM64 coverage to the artifact build workflows so PyPI/SVN release-candidate builds can run on a Windows ARM runner, with a minimal test setup to avoid the current lack of PyArrow Windows ARM64 wheels.

Changes:

  • Extend the OS matrix in both artifact-build workflows to include a Windows ARM runner.
  • Allow per-matrix overrides of CIBW_BEFORE_TEST / CIBW_TEST_COMMAND to run a minimal pytest invocation for Windows ARM.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/svn-build-artifacts.yml Adds Windows ARM runner to the build matrix and introduces matrix-based overrides for cibuildwheel test steps.
.github/workflows/pypi-build-artifacts.yml Same as SVN workflow: adds Windows ARM runner and matrix-based overrides for cibuildwheel test steps.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
chinazhangchao requested a lite review from Copilot August 25, 2026 09:04

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Pull request overview

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

Suppressed comments (1)

.github/workflows/pypi-build-artifacts.yml:82

  • Given the goal is Windows ARM64 support, it would be safer to explicitly set CIBW_ARCHS_WINDOWS for the windows-11-arm matrix entry rather than relying on CIBW_ARCHS: auto64. This helps ensure the Windows ARM64 leg always produces ARM64 wheels (and avoids accidentally building AMD64 wheels if that’s what the available interpreter resolves to).
          CIBW_ARCHS: "auto64"

rambleraptor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

It might be worth publishing Windows ARM64 wheels if there's interest.

include:
- os: windows-11-arm
before_test: "uv pip install pytest==9.1.1"
test_command: "python -m pytest --confcutdir={project}/tests/avro {project}/tests/avro/test_decoder.py"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Why are we running just this single test for Windows ARM?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

This is the existing wheel smoke test run on every platform to verify the compiled decoder_fast extension. Windows ARM64 only uses a minimal environment because PyArrow does not publish Windows ARM64 wheels.

Explicitly select ARM64 wheels on the Windows ARM runner and document why its minimal environment still runs the same decoder smoke test as every platform.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants


Back | FazBrowse Home | New Git URL