jeremyjh / dialyxir

Mix tasks to simplify use of Dialyzer in Elixir projects.
Apache License 2.0
1.69k stars 141 forks source link

update CI to the latest Elixir 1.11 and Erlang 23. Add Elixir 1.12 and Erlang 24 #436

Closed baseballlover723 closed 3 years ago

baseballlover723 commented 3 years ago

Also upgrades the local Elixir version to 1.12.2 and the Erlang version to 24.0.5. This also includes a mix format since Elixir 1.12 made a backwards incompatible formatting change as well as only running the format check in CI on Elixir 1.12+.

This also changes CI to not fail as soon a single job fails, this is needed for now, since CI fails on Erlang 24. This is probably for the better since you can see if CI fails for just a single Elixir / Erlang combination or for all of them.

jeremyjh commented 3 years ago

Hi, thanks for working on this! I think to resolve the errors on OTP 24 we could just remove this entire check from the tests: https://github.com/jeremyjh/dialyxir/blob/242c0e89fd08535eedfdb971993bb550b32bdcce/.github/workflows/test.yml#L98; it would be hard to keep broad compatibility and still check this.

Also, I would be fine with dropping the 1.9.4 targets entirely since that is 4 releases ago, my original thought was to support the 3 most recent releases anyway.

baseballlover723 commented 3 years ago

This has been updated

baseballlover723 commented 3 years ago

I have no idea why the tests fail now, but most of them did work when I originally pushed it up, https://github.com/jeremyjh/dialyxir/runs/3248958978

jeremyjh commented 3 years ago

The problem is we're no longer running any dialyzer check before the output_test, so output_test has to build the PLTs etc. Re-ordering the output tests like this will fix it.

jeremyjh commented 3 years ago

Thanks!