I was doing some maintanence tasks for an other gem and when I added the new Ruby 3.3 to the CI pipeline, I saw a few deprecation warnings coming from this gem (as one of our dependencies). I saw that there's a PR already to get rid of the warning (#75), but the project lacks of a working pipeline to verify that change (travis seems to be unavailable). Looking at the open pull requests, there were others trying to make sure that the gem works with recent Ruby versions (#74, #71).
Fast-forward to my PR: I'm trying to add Github Actions as it seems to be a reliable pipeline for open source repositories hosted on Github.
The changes I made:
replaced .travis.yml with .github/workflows/test.yml
dropped Ruby 1.8 from the CI: the ubuntu-20.04 image does not support installing it - I can look into if we can get it work on other base OS, but it's EOL for ages
dropped Ruby 1.9 from the CI: I wasn't able to setup the required gems, there's no compatible rexml version on rubygems: https://github.com/ruby/rexml/issues/38
included all 2.x and 3.x Ruby versions and ruby-head as allowed failure
included JRuby 9.3, 9.4 and jruby-head as allowed failure
added some Gemfile constrains for Ruby < 2.1 to make sure it passes the CI
added a Rakefile to make it easier to run the tests. we should convert the scripts folder to be rake tasks as well later
cherry-picked a commit from #74 to make the CI pass for recent Ruby versions
I hope you'll find this PR helpful. Let me know if you need anything else before you can merge it in.
I was doing some maintanence tasks for an other gem and when I added the new Ruby 3.3 to the CI pipeline, I saw a few deprecation warnings coming from this gem (as one of our dependencies). I saw that there's a PR already to get rid of the warning (#75), but the project lacks of a working pipeline to verify that change (travis seems to be unavailable). Looking at the open pull requests, there were others trying to make sure that the gem works with recent Ruby versions (#74, #71).
Fast-forward to my PR: I'm trying to add Github Actions as it seems to be a reliable pipeline for open source repositories hosted on Github.
The changes I made:
.travis.yml
with.github/workflows/test.yml
I hope you'll find this PR helpful. Let me know if you need anything else before you can merge it in.
(edit) And example of a green pipeline could be found here https://github.com/kiskoza/crack/actions/runs/7384963412