nccgroup / sobelow

Security-focused static analysis for the Phoenix Framework
Apache License 2.0
1.66k stars 92 forks source link

Add recommended combinations of Elixir and Erlang/OTP versions to CI #73

Closed adrianomitre closed 4 years ago

adrianomitre commented 4 years ago

This pull request makes sure all recommended Elixir and Erlang/OTP combinations are run on CI.

Quoting José Valim:

I would still advise folks to go with:

  • For each Elixir version, add a run with earliest supported Erlang/OTP
  • For the last Elixir version, also test the latest supported Erlang/OTP

Please refer to the original discussion on https://github.com/dashbitco/broadway/pull/188 for the full rationale.

Additional functionality: make sure there are no compilation warnings and checks formatting.

In case one wonders why not use otp: N.x for OTP as well as for Elixir, the reason is the following: actions/setup-elixir v1.4.0 uses semantic version resolution for Erlang/OTP, but Erlang/OTP version scheme does not follow SemVer and "In general, versions can have more than three parts.", so otp: 19.x resolves to 19.3.6, not 19.3.6.13, as expected.

GriffinMB commented 4 years ago

Thanks for the PR!