#4393·mamba

Track conda-forge win-arm64 packages needed to drop environment-dev-win-arm64.yml

Author: jjerphanCreated Aug 24, 2026Updated Sep 7, 2026
Labelstype::general-improvementwhat::ciwhere::windows

Windows ARM64 shared-library CI currently uses dev/environment-dev-win-arm64.yml instead of dev/environment-dev.yml, because several development and test dependencies are not yet published (or not yet solvable) for win-arm64 on conda-forge.

Once the packages below are available, we should:

  • use dev/environment-dev.yml on windows-11-arm as well
  • delete dev/environment-dev-win-arm64.yml
  • stop skipping the tests that depend on those packages

Related:

Packages that currently fail to solve on win-arm64

These are listed in environment-dev.yml (or required by tests / static CI) and cannot currently be installed from conda-forge for win-arm64:

Package Why we need it Notes
cxx-compiler libmamba / micromamba build Replaced by vs2022_win-arm64 plus ilammy/msvc-dev-cmd in CI
pkg-config CMake dependency discovery Migration PR: conda-forge/pkg-config-feedstock#49
make Unix build helper in environment-dev.yml Optional on Windows (Ninja is used)
cryptography dependency of conda-content-trust and mitmproxy No win-arm64 build; also blocked upstream: pyca/cryptography#14293
bcrypt pinned extra for mitmproxy No win-arm64 build
mitmproxy micromamba/tests/test_proxy.py (mitmdump) noarch, but unsolvable without cryptography / bcrypt
conda-content-trust signed-repo tests (micromamba/test-server/reposerver.py) noarch, but unsolvable without cryptography
mypy libmambapy stub generation Current builds do not solve with Python 3.14 on win-arm64
doxygen documentation No win-arm64 build
binutils PE/DLL check in the Windows static build No win-arm64 build; previous attempt: conda-forge/binutils-feedstock#89

Python on this platform is currently 3.14 (and experimental 3.15). environment-dev-win-arm64.yml pins python=3.14 for that reason.

Tests skipped until the corresponding packages exist

Test / job Missing package Skip mechanism
micromamba/tests/test_proxy.py mitmproxy (mitmdump) pytest.skip
micromamba/tests/test_login.py pytest-xprocess pytest.importorskip("xprocess")
micromamba/tests/test_menuinst.py pywin32 (win32com.client) pytest.importorskip("win32com.client")
micromamba/tests/test_package.py zstandard pytest.importorskip("zstandard")
micromamba/tests/test_create.py (test_create_with_empty_lines_and_comments) memory_profiler pytest.importorskip("memory_profiler")
Windows static build (Check micromamba PE dependencies) binutils (objdump) job step skipped when matrix.arch == 'arm64'

pytest-xprocess, pywin32, zstandard, and memory_profiler can already be solved on win-arm64 as of this writing, but they are still omitted from the reduced environment. They can be added incrementally; unifying on environment-dev.yml remains blocked by the compiled packages above.

Close when

  • The packages in the table install on win-arm64 from conda-forge
  • CI uses dev/environment-dev.yml for Windows ARM64
  • dev/environment-dev-win-arm64.yml is removed
  • The skips listed above are dropped (or only remain as generic missing-optional-dep guards)