Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[CI] Remove OpenSSL install added in #1937 when `cryptography` ships `win_arm64` wheels

オープン 初心者向け
#1,945 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
78/100
issue の種類
リファクタリング
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
github-actions, python

調査の方向性

.github/workflows/wheels.yml から開始し、Windows ARM64 ジョブとその一時的な OpenSSL ステップを確認します。解決された cryptography のバージョンと、PyPI 上のその win_arm64 wheel を確認してから、bootstrap と TODO コメントを削除します。windows-11-arm ジョブを実行し、OPENSSL_DIR や vcpkg build なしで、より短い時間で成功することを確認します。

索引モデルが issue の本文から書いたものです。

説明

CI-CD enhancement

Context

#1937 added Windows ARM64 (win_arm64) wheel builds. cryptography is a base
dependency of autobahn and publishes no win_arm64 wheel, so pip builds it from
sdist on the windows-11-arm runner. That build links openssl-sys, which needs a
native ARM64 OpenSSL.

To unblock the ARM64 build we added a temporary bootstrap step in
.github/workflows/wheels.yml:

- name: Build OpenSSL for cryptography (Windows ARM64 only)
  if: matrix.os == 'windows-11-arm'
  shell: pwsh
  run: |
    vcpkg install --triplet arm64-windows-static-md --clean-after-build openssl
    "OPENSSL_DIR=$env:VCPKG_INSTALLATION_ROOT\installed\arm64-windows-static-md" |
      Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

This step exists only to work around the missing upstream wheel. It should be
deleted once upstream ships one again.

Upstream status

WoA support landed via pyca/cryptography#15350
and win_arm64 wheels were published — then dropped again:

cryptography win_arm64 wheels
46.0.0 – 46.0.3 yes (cp38-abi3, cp311-abi3, cp314-cp314t)
46.0.4 – 50.0.1 no

Verified against the PyPI JSON API on 2026-09-22; latest release is 50.0.1 and still
has none.

Do NOT gate this on the version floor

pyproject.toml declares cryptography>=3.4.6. Tying removal to that floor — or to any
version bound — is unsound, because availability is not monotonic: 46.0.3 has the
wheel and 46.0.4+ do not. A >=46.0.0 floor would wrongly imply the bootstrap is
unnecessary.

The correct condition is about the resolved version at build time, not a declared
bound.

Exit criteria

Remove the step when the version that actually resolves on the ARM64 runner ships a
win_arm64 wheel:

pip index versions cryptography     # note the version that resolves
# then confirm a *-win_arm64.whl exists for it on PyPI

Work items

  • Confirm the resolved cryptography ships a win_arm64 wheel
  • Delete the Build OpenSSL for cryptography (Windows ARM64 only) step from wheels.yml
  • Confirm the windows-11-arm job still passes (no OPENSSL_DIR, no vcpkg build)
  • Check job duration — removing the vcpkg OpenSSL build should be a noticeable saving
  • Remove the TODO comment block above the step

Related

See also #1935 (wheel tiers) — win_arm64 is best-effort, which is part of why this
workaround is acceptable in the interim.

主要言語
Python
スター
2.5k
フォーク
767
平均マージ
12時間 40分
マージ済み PR(30日)
20

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

crossbario/autobahn-python のほかの issue

crossbario/autobahn-python の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。