-
Notifications
You must be signed in to change notification settings - Fork 37
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
Fix OSX Homebrew build issues and made build script more consistent #90
Conversation
The failing nightly builds are due to an issue in ZipFile.jl that seems to have been fixed in fhs/ZipFile.jl@b90db13. A release with this fix hasn't been tagged yet. Let me know how you'd like me to handle that. |
Awesome. First thing: can you add 0.6 to the testing matrices? You surely know this already, but here and here (two lines worth in the latter case). On 0.6, ZipFile shouldn't fail because the alignment issue hasn't been merged. Assuming 0.6 passes, I'm fine with nightly failing until ZipFile gets tagged. |
Puzzling. Exit code 56 is "Failure with receiving network data," https://curl.haxx.se/libcurl/c/libcurl-errors.html. I'm going to restart in case it was just a temporary outage. |
This looks unrelated to the changes, perhaps it's a DNS issue again, somewhere? The OSX 0.5 version works this time, perhaps you could restart OSX 0.6 as well to make sure it passes? |
This is one of those PRs where there aren't enough happy emojis to go around. Many thanks, @Allardvm! |
You're welcome! Thanks for the work to get this merged so quickly 👍 |
For a while now, we've had issues with OSX builds breaking, sometimes even resulting in a segfault:
It's likely that these issues have different root causes, but at least one of them has to do with the way Homebrew.jl handles the translation from
homebrew/core
tostaticfloat/juliadeps
.In some cases, the ImageMagick.jl build script would ask for the Homebrew prefix to the homebrew/core/imagemagick@6 library, but the Julia homebrew library would still have the staticfloat/juliadeps version installed. Rebuilding the library would not replace the installed version (despite calling for "homebrew/core/imagemagick@6"), but it would update
deps.jl
to point to the new version—resulting in errors. After testing and merging of the PR, we should probably tag a new version of the package to fix this for the users that filed issues.This PR includes three sets of changes:
deps.jl
.success('brew list imagemagick@6'
) isn't consistent. After loading the Homebrew package in Julia, the detect call would call the Julia Homebrew, rather than the system-wide Homebrew—which in rare cases would lead to further inconsistencies. The PR now uses theMAGICK_HOME
environment variable to allow users to specify their own installation of ImageMagick—similar to the Unix version of the package.Note that some users that have tried to fix the issue manually in the past by taking control of Julia's Homebrew might have to manually remove the library installed by Homebrew.jl, prune the remaining symlinks, and rebuild the ImageMagick package: