njh / ruby-mqtt

Pure Ruby gem that implements the MQTT protocol, a lightweight protocol for publish/subscribe messaging.
http://www.rubydoc.info/gems/mqtt
MIT License
538 stars 135 forks source link

Port CI setup from Travis to GitHub Actions #150

Closed lucaong closed 1 year ago

lucaong commented 1 year ago

The CI setup on Travis CI stopped working. This commit implements the same setup on GitHub Actions (additionally adding Ruby 3.x to the test matrix). The old Travis CI setup was removed.

Note that on Ruby > 3.0 I had to use a newer version of RuboCop, as the old one is not supported anymore. The new RuboCop also introduces a lot of new checks: in order to keep parity with the existing setup on older Ruby versions, I disabled the new checks that were failing. Ideally, they should be checked one by one, to decide whether to enable the cop and fix the violation, or keep it disabled. I think that can be safely done as a cleanup after the new release is done.

njh commented 1 year ago

Just remembered another thing. I am in the process of deleting my Travis CI integration.

Is there a GitHub actions equivalent of this in the README.md:

[![Build Status](https://travis-ci.com/njh/ruby-mqtt.svg?branch=main)](https://travis-ci.com/njh/ruby-mqtt)

(or do we just delete it?)

lucaong commented 1 year ago

Ah yes, you can have a badge, let me send another PR

lucaong commented 1 year ago

I just sent https://github.com/njh/ruby-mqtt/pull/151 to add a CI status badge to the README