Skip to content

Conversation

Copy link

Copilot AI commented Dec 2, 2025

Windows and macOS cibuildwheel builds were failing due to:

  1. macOS: hardcoded .so extension instead of .dylib
  2. Windows: CMake architecture mismatch when building multi-arch wheels (x86/AMD64/ARM64) against single-arch prebuilt library

Changes

  • CI workflow: Remove USE-LIB flag so librsync C sources compile directly into the extension, avoiding CMake architecture issues entirely
  • setup.py: Add macOS .dylib handling for local --use-lib builds
  • Runners: Use macos-13 instead of macos-15-intel; drop riscv64 (limited support)

The cmake step is retained solely to generate config.h which is required by librsync sources.

# Before: tried to link prebuilt library (failed on multi-arch)
CIBW_ENVIRONMENT: USE-CYTHON="1" USE-CFFI="1" USE-LIB="1"

# After: compile sources directly (works for all architectures)
CIBW_ENVIRONMENT: USE-CYTHON="1" USE-CFFI="1"
Original prompt

This section details on the original issue you should resolve

<issue_title>Windows and macos ci fails</issue_title>
<issue_description>Linux ci is ok though. Refer https://github.com/synodriver/pyrsync/actions/runs/19860094659/job/56907688409.</issue_description>

<agent_instructions>I can build it on my pc with win10... looks like the ci's environment is strange...</agent_instructions>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 3 commits December 2, 2025 13:42
…iling librsync source directly

- Remove USE-LIB from CI environment to compile librsync C source directly into extension
- Add macOS support for .dylib extension in setup.py when using --use-lib locally
- Change macOS CI runner from macos-15-intel to macos-13
- Remove riscv64 architecture (limited support)
- Simplify CI by running cmake only for config.h generation

Co-authored-by: synodriver <50922489+synodriver@users.noreply.github.com>
Change glob pattern from '*.dylib*' to '*.dylib' to avoid matching unintended files.

Co-authored-by: synodriver <50922489+synodriver@users.noreply.github.com>
Co-authored-by: synodriver <50922489+synodriver@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix Windows and macOS CI failures Fix Windows and macOS CI failures by compiling librsync source directly Dec 2, 2025
Copilot AI requested a review from synodriver December 2, 2025 13:49
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.

Windows and macos ci fails

2 participants