mix minimum_elixir_version (mix_minimum_elixir_version v0.1.0)

Mix task to find the minimum Elixir version requirement for a particular project. It traverses every dependency defined in the project and then finds which Elixir version satisfies all the requirements.

⚠️ No validation is done to verify that the project is actually compatible with the emitted version requirement. For example, the output of this script might indicate a version requirement of ~> 1.13 even if you use Kernel.binary_slice/2, which was introduced in Elixir 1.14. You still need to test your project in both the target version as well as all succeeding versions.

Usage

Run the task in the same directory as the mix.exs file for the project:

mix minimum_elixir_version

If nothing went wrong, you should see something like

This project targets `~> 1.16`, but the minimum version it can target is `~> 1.13`.