Skip to content

ci: build-mingw on UCRT64 - #493

Merged
josephnef merged 1 commit into
masterfrom
ci-ucrt64
Oct 16, 2026
Merged

josephnef merged 1 commit into
masterfrom
ci-ucrt64

Conversation

@josephnef

Copy link
Copy Markdown
Collaborator

The build-mingw job has failed on every run since 2026-10-16 (twice on #492's head after a re-run): pacman: error: target not found: mingw-w64-x86_64-libusb. The action also warns that MINGW64 is deprecated. The package file is still on the mirror, but the mingw64.db database no longer lists libusb, while ucrt64.db ships every package the job installs at the same versions (gcc 16.2.0, cmake 4.4.4, ninja 1.13.2, libusb 1.0.30, pkgconf 3.0.8, openssl 3.6.5).

The job moves to UCRT64 with the mingw-w64-ucrt-x86_64-* package names. Same gcc, same pkg-config libusb path, same binary-stdin and station-crypto test coverage; the configure and build steps are unchanged. Not a required check, so this is the only thing that turns it green again.

🤖 Generated with Claude Code

MSYS2 deprecated the MINGW64 environment and its package database no
longer carries libusb: the job has failed on every run since with
pacman "target not found: mingw-w64-x86_64-libusb" (the package file is
still on the mirror, the mingw64.db no longer lists it). The UCRT64
database ships every package the job installs at the same versions
(gcc 16.2.0, cmake 4.4.4, ninja 1.13.2, libusb 1.0.30, pkgconf 3.0.8,
openssl 3.6.5). Same compiler, same pkg-config libusb path, same
binary-stdin and station-crypto coverage.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@qodo-free-for-open-source-projects

Copy link
Copy Markdown

PR Summary by Qodo

Restore MinGW CI builds using MSYS2 UCRT64

🐞 Bug fix ⚙️ Configuration changes 🕐 Less than 10 minutes

Grey Divider

AI Description

• Switch the failing MinGW job from deprecated MINGW64 to UCRT64, where libusb remains available.
• Install UCRT64 equivalents of all six dependencies while retaining existing build and test
 coverage.
Diagram

graph TD
  Job["MinGW CI job"] --> Setup["MSYS2 UCRT64"] --> Packages["UCRT64 packages"] --> Build["CMake build"] --> Tests["CTest coverage"]
Loading
High-Level Assessment

Keep the existing MinGW job and switch its MSYS2 environment and package names together. This addresses the missing MINGW64 libusb package without changing the GCC-based build or its test coverage.

Files changed (1) +11 / -7

Bug fix (1) +11 / -7
cmake-multi-platform.ymlMove the MinGW job to UCRT64 packages +11/-7

Move the MinGW job to UCRT64 packages

• Selects UCRT64 instead of MINGW64 and replaces all six package names with their UCRT64 equivalents to restore dependency installation. Adds a comment explaining the libusb failure; configure, build, and test steps remain unchanged.

.github/workflows/cmake-multi-platform.yml

@qodo-free-for-open-source-projects

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider

Great, no issues found!

Qodo reviewed your code and found no material issues that require review

Grey Divider

Tip of the day
💡 Did you know, you can pick a display mode instead of tweaking every Display option by hand

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

@josephnef josephnef added the skip-qodo-gate Bypass the Qodo review gate (outage / maintainer decision) label Oct 16, 2026
@josephnef
josephnef merged commit 0734770 into master Oct 16, 2026
26 of 76 checks passed
@josephnef
josephnef deleted the ci-ucrt64 branch October 16, 2026 10:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-qodo-gate Bypass the Qodo review gate (outage / maintainer decision)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant