chridou / http-api-problem

A problem type to be returned by HTTP APIs
Apache License 2.0
53 stars 12 forks source link

Replace CI with GitHub actions #18

Closed thomaseizinger closed 4 years ago

thomaseizinger commented 4 years ago

Every time I contribute to this project, I am a bit afraid of messing up stuff because the CI doesn't test all the feature combinations.

This patch switches from travis to GitHub actions as they have excellent support for arbitrary build-matrices.

Ideally, we would also have a check that verifies the MSRV this project is compatible with. I'll leave that up to you to add if you want to give guarantees to your users here.

thomaseizinger commented 4 years ago

I would prefer merging https://github.com/chridou/http-api-problem/pull/17 first and then I would like to add support for the new feature flag in this PR :)

chridou commented 4 years ago

I think we could give an MSRV since I do not expect any new features in Rust soon that are necessary for this library.

thomaseizinger commented 4 years ago

I've updated the PR.

We now test against the MSRV (1.39.0) at this point. I've also replaced the features testing with a different strategy. Instead of testing every feature combination, the CI now checks of the crate compiles with:

We also test against the current nightly of Rust to see regressions in the Rust compiler early.

I would recommend to only make the MSRV build mandatory for PRs to merge.

thomaseizinger commented 4 years ago

You can see what it looks like here: https://github.com/thomaseizinger/http-api-problem/runs/398106813