Skip to content
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

CI: Test Against Geos Versions #362

Open
wants to merge 25 commits into
base: main
Choose a base branch
from
Open

Conversation

keithdoggett
Copy link
Member

Summary

Picking up from where we left off on #355.

@keithdoggett
Copy link
Member Author

@BuonOmo I was able to get this to install and work across all versions on ubuntu systems but I'm having issues with cmake not working on some of the macos runners. It's strange because the issue is only happening on some of the runners. I can look into this more in a bit, but if you have any ideas/suggestions let me know.

@BuonOmo
Copy link
Member

BuonOmo commented Aug 25, 2023

@keithdoggett by looking at the logs I can see that installing cmake installs version 3.27.2, but then while installing Geos we're looking for the version 3.27.3.

Idk what software is asking for a specific version, but that is for sure the issue.

Maybe some brew update may help. Might be brew upgrade. I'd have to look on my laptop.

@keithdoggett
Copy link
Member Author

keithdoggett commented Aug 28, 2023

@BuonOmo good insight, thank you. Yes when I run brew update it lists cmake as outdated and says to run brew upgrade. We'll see if this fixes it.

.github/workflows/CI.yml Outdated Show resolved Hide resolved
@keithdoggett
Copy link
Member Author

@BuonOmo it's almost working now. For whatever reason the macos jruby builds can't find the libgeos_c library when loading it via FFI. I even tried specifying the path explicitly with an environment variable, but no luck. Not sure if there's some JRuby quirk I'm just not aware of that's causing the issue. Can investigate more in a little while.

Comment on lines 79 to 82
- name: Set GEOS_LIBRARY_PATH (macos jruby)
if: matrix.os == 'macos' && matrix.ruby == 'jruby'
run: export GEOS_LIBRARY_PATH=/usr/local/lib/libgeos_c.dylib
- uses: ruby/setup-ruby@v1
Copy link
Member

@BuonOmo BuonOmo Sep 4, 2023

Choose a reason for hiding this comment

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

I tried on my mac, and I didn't need this GEOS_LIBRARY_PATH variable in my path.

$ ruby -v
jruby 9.4.3.0 (3.1.4) 2023-06-07 3086960792 OpenJDK 64-Bit Server VM 20.0.2 on 20.0.2 +jit [arm64-darwin]
$ geos-config --version
3.12.0

Although my geos installation is done through homebrew

Copy link
Member Author

Choose a reason for hiding this comment

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

yeah I'll try again I'm pretty stumped as to why this it isn't recognizing Geos. I shouldn't have to specify a path but clearly something's not configured correctly.

@keithdoggett
Copy link
Member Author

@BuonOmo split out the CI between OS testing with package manger geos install and just ubuntu but with supported geos versions like we discussed.

@BuonOmo
Copy link
Member

BuonOmo commented Nov 15, 2023

@keithdoggett thanks for getting that ball rolling !

It feels to me like a lot of redundancy both in execution (some tests are played twice) and in code. I don't have access to a laptop here to dig a bit the subject. Although I'm sure we could find a way to make this DRYer and still quite consistent and clear. What do you think?

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.

None yet

2 participants