Skip to content

Fix windows ci - #321

Merged
mpkorstanje merged 2 commits into
cucumber:mainfrom
mbraendli:fix-windows-ci
Nov 1, 2026
Merged

mpkorstanje merged 2 commits into
cucumber:mainfrom
mbraendli:fix-windows-ci

Conversation

@mbraendli

Copy link
Copy Markdown
Contributor

Summary

Removed unused Ruby workflow step that was causing Windows build failures. Updated actions/cache from v3.5.0 to v6.1.0 to resolve Node.js 20 warnings. Analysis, implementation, and tests were realized with Claude Code. Manual tests and reviews were done for all changes.

Details

The changes include:

  • Removed Ruby workflow step: The Ruby step has been unused since Windows workflow introduction (b8832de, 2024). run-windows.ps1 only builds the library, Examples and Tests are OFF.
  • Build failure cause: The step failed because sys-uname 1.5.1 on Windows pulls in win32ole whose native extension doesn't build on the runner.
  • zizmor finding: Removing the step eliminates the only zizmor finding in the file (low, adhoc-packages).
  • Updated actions/cache: v3.5.0 → v6.1.0 to resolve Node.js 20 warnings. Restoring existing caches (e.g., Boost) was tested in the current run, but creating a new cache will only be verified on the next cache miss (e.g., with a new Boost version).

Motivation and Context

The pipeline needs to be green to get another Pull Request (#320) through. The Windows build was failing due to the unused Ruby step.

How Has This Been Tested?

Types of changes

  • Bug fix (non-breaking change which fixes an issue).
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).

Checklist:

  • It is my own work, its copyright is implicitly assigned to the project and no substantial part of it has been copied from other sources (including Stack Overflow). In rare occasions this is acceptable, like in CMake modules where the original copyright information should be kept.
  • I'm using the same code standards as the existing code (indentation, spacing, variable naming, ...).
  • I've added tests for my code.
  • I have verified whether my change requires changes to the documentation.
  • My change either requires no documentation change or I've updated the documentation accordingly.
  • My branch has been rebased to main, keeping only relevant commits.

run-windows.ps1 only builds the library, examples and tests are off, so
the Windows build never runs Cucumber. Installing the Ruby gems fails
since sys-uname 1.5.1 pulls in win32ole on Windows, whose native
extension does not build on the runner.

Assisted-by: Claude Code
v3.5.0 runs on Node.js 20, which GitHub has deprecated. The runner
forces it onto Node.js 24 and warns in every Windows job.

Assisted-by: Claude Code
@mpkorstanje
mpkorstanje merged commit 2d467fb into cucumber:main Nov 1, 2026
11 checks passed
@mbraendli
mbraendli deleted the fix-windows-ci branch November 2, 2026 16:22
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.

2 participants