-
Notifications
You must be signed in to change notification settings - Fork 38
Fix macOS ARM compatibility issues #264
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This commit addresses multiple issues affecting JuliaCall on macOS ARM systems: 1. **Fix version parsing and documentation mismatch**: - Changed default from "latest" to "lts" for better ARM64 compatibility - Added julia_lts_version() function to get LTS versions - Updated install_julia() to handle both "lts" and "latest" strings - Fixed documentation to match actual defaults 2. **Improve dependency management**: - Added curl as suggested dependency to fix test failures - Enhanced install_dependency.jl with better error handling for ARM64 - Added registry update and isolated environment fallback for package conflicts 3. **Address test infrastructure issues**: - Fixed missing curl dependency that caused 25 test failures - Improved version handling to prevent "invalid version specification" errors These changes resolve the CI failures on macOS ARM runners and improve compatibility with the Julia ecosystem on Apple Silicon. Fixes compatibility issues reported in diffeqr and broader Julia-R interop. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Member
|
@jjlynch2 Is this PR ok to merge? |
Member
|
@ChrisRackauckas I think the default should be latest, and not LTS. |
Member
|
I've switched the default install to |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR addresses multiple critical compatibility issues affecting JuliaCall on macOS ARM (M1/M2) systems that were causing CI failures and preventing proper usage with packages like diffeqr.
Issues Fixed
1. Version Parsing and Documentation Mismatch
julia_lts_version()function to reliably get LTS versionsinstall_julia()now properly handles both "lts" and "latest" strings2. Test Infrastructure Problems (25 failing tests)
curlas suggested dependency to resolve network-related test failures3. Julia Package Dependency Management
install_dependency.jlwith robust error handling for ARM64 package conflictsTechnical Details
Root Causes Identified:
Changes Made:
R/installJulia.R:
julia_lts_version()function with proper LTS detectioninstall_julia()to handle both "lts" and "latest"R/zzz.R:
julia_setup()default from "latest" to "lts"inst/julia/install_dependency.jl:
DESCRIPTION:
curlas suggested dependency for test compatibilityTest Results
Impact on diffeqr
This resolves the compatibility issues affecting diffeqr on macOS ARM systems by:
Compatibility
🤖 Generated with Claude Code