Skip to content

ci: added macOS build and unit-test job - #134

Open
FlareCoding wants to merge 2 commits into
masterfrom
pr/macos-ci-job
Open

ci: added macOS build and unit-test job#134
FlareCoding wants to merge 2 commits into
masterfrom
pr/macos-ci-job

Conversation

@FlareCoding

Copy link
Copy Markdown
Owner

Summary

  • macOS support had no CI enforcement — nothing stopped a change from silently breaking it.
  • A macos-15 (arm64) job runs make deps and the full make test flow for both architectures on every push, with Darwin-scoped sysroot caches (deliberately not shared with the ubuntu jobs, so the Darwin build paths stay continuously exercised).
  • Runs parallel to the build matrix; warm runs fit inside the existing ~10-minute pipeline envelope.

Made with Cursor

macOS support had no enforcement, so any change could silently break
it. A macos-15 (arm64) job builds its own Darwin-scoped sysroot caches
and runs the full make test flow for both architectures on every push.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Jul 27, 2026

Copy link
Copy Markdown

Current version of PR was reviewed by /review-bugbot on Jul 27, 14:26 PDT. It flagged 0 findings.

Bugbot on commit 208db98 is skipped.

checksharedmods runs the build interpreter with PYTHONPATH into the
cross-build tree, so its own imports can dlopen cross-built Linux ELF
modules and crash on macOS build pythons with dynamic stdlib modules.
The guard exits before any shadowable import; Linux hosts run the
check unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>

@cursor cursor 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.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 2894467. Configure here.

- name: Run unit tests
env:
STLX_TEST_TIMEOUT: "300"
run: make test ARCH=${{ matrix.arch }} 2>&1 | tee test-log-macos-${{ matrix.arch }}.txt

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Missing GNU timeout on macOS

High Severity · Logic Bug

The macos-tests job fails with a false timeout because the timeout command used in scripts/run_tests.sh isn't found. macOS doesn't have a native timeout utility, and although make deps installs GNU coreutils (as gtimeout), the workflow doesn't add the necessary gnubin directory to the PATH for it to be accessible.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 2894467. Configure here.

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