Skip to content

Ruby 3.1 on windows - #162

Merged
jwillemsen merged 1 commit into
RemedyIT:masterfrom
jwillemsen:jwi-win31
Sep 8, 2025
Merged

Ruby 3.1 on windows#162
jwillemsen merged 1 commit into
RemedyIT:masterfrom
jwillemsen:jwi-win31

Conversation

@jwillemsen

@jwillemsen jwillemsen commented Sep 8, 2025

Copy link
Copy Markdown
Member
* .github/workflows/taox11.yml:

Summary by CodeRabbit

  • Chores
    • Updated Windows CI to use Ruby 3.1 and Visual Studio 2022 for improved compatibility.
    • Ensured build flags propagate to all nested builds (examples and tests) for consistent configuration.
    • Streamlined Windows build steps to improve stability across the matrix.
    • These changes affect the build pipeline only; no user-facing functionality is altered.

    * .github/workflows/taox11.yml:
@coderabbitai

coderabbitai Bot commented Sep 8, 2025

Copy link
Copy Markdown

Walkthrough

The GitHub Actions workflow .github/workflows/taox11.yml updates Windows matrix Ruby versions to 3.1, sets vsversion: 2022 for ilammy/msvc-dev-cmd@v1, and amends build steps to pass matrix.make_flags to all nested make invocations (examples, orbsvcs/tests, tests).

Changes

Cohort / File(s) Summary of Changes
CI matrix updates
.github/workflows/taox11.yml
Updated Windows job matrix: Ruby 3.0 → 3.1 for windows-2025 entries.
Toolchain setup input
.github/workflows/taox11.yml
Added input vsversion: 2022 to ilammy/msvc-dev-cmd@v1 step.
Build flag propagation
.github/workflows/taox11.yml
Reworked brix11 make step to repeat matrix.make_flags for each nested make (examples, orbsvcs/tests, tests).

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor GitHub as GitHub Actions
  participant Job as Windows Job (matrix)
  participant MSVC as msvc-dev-cmd@v1
  participant Build as brix11 make
  participant Sub1 as make examples
  participant Sub2 as make orbsvcs/tests
  participant Sub3 as make tests

  GitHub->>Job: Start job (Ruby 3.1)
  Job->>MSVC: Setup MSVC (vsversion: 2022)
  MSVC-->>Job: Env configured
  Job->>Build: make (with matrix.make_flags)
  Build->>Sub1: make examples (with matrix.make_flags)
  Build->>Sub2: make orbsvcs/tests (with matrix.make_flags)
  Build->>Sub3: make tests (with matrix.make_flags)
  Sub3-->>Build: results
  Build-->>Job: build status
  Job-->>GitHub: job result
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

Thump-thump! my paws applaud the queue,
Ruby hops to 3.1—fresh and new.
VS set to twenty-twenty-two,
Flags now follow every make we do.
In CI burrow, greens accrue—
Carrots for builds, and lettuce too! 🥕✨

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (3)
.github/workflows/taox11.yml (3)

141-149: Windows matrix: Ruby 3.1 pin — OK; verify toolchain compat

Looks good. Please confirm ridl and its gem dependencies are 3.1-compatible on Windows, and that ruby/setup-ruby picks the correct RubyInstaller/MSYS2 toolchain on windows-2025. Consider enabling bundler caching for speed.

Possible speed-up near the ruby/setup-ruby step:

 - uses: ruby/setup-ruby@v1
   with:
     ruby-version: ${{ matrix.ruby }}
+    bundler-cache: true

185-187: Pin VS version — good; also pin architecture to avoid surprises

Explicit vsversion: 2022 is solid. To future-proof against default changes on new images, also pin arch (x64).

 - uses: ilammy/msvc-dev-cmd@v1
   with:
-    vsversion: 2022
+    vsversion: 2022
+    arch: x64

208-208: Propagating make_flags to all nested makes — good; reduce duplication for maintainability

Works as intended. Minor DRY improvement: define FLAGS once so future flag tweaks are single-touch.

-        %X11_BASE_ROOT%/bin/brix11 make ${{ matrix.make_flags }} -N -d %X11_BASE_ROOT% -- make ${{ matrix.make_flags }} -N -d %TAOX11_ROOT%/examples -- make ${{ matrix.make_flags }} -N -d %TAOX11_ROOT%/orbsvcs/tests -- make ${{ matrix.make_flags }} -N -d %TAOX11_ROOT%/tests
+        set "FLAGS=${{ matrix.make_flags }} -N -d"
+        %X11_BASE_ROOT%/bin/brix11 make %FLAGS% %X11_BASE_ROOT% -- make %FLAGS% %TAOX11_ROOT%/examples -- make %FLAGS% %TAOX11_ROOT%/orbsvcs/tests -- make %FLAGS% %TAOX11_ROOT%/tests
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 254fe8e and 1505d7b.

📒 Files selected for processing (1)
  • .github/workflows/taox11.yml (3 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Codacy Static Code Analysis

@jwillemsen
jwillemsen merged commit cb90631 into RemedyIT:master Sep 8, 2025
16 of 18 checks passed
@jwillemsen
jwillemsen deleted the jwi-win31 branch September 8, 2025 12:21
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.

1 participant