-
Notifications
You must be signed in to change notification settings - Fork 7
Upgrade elixir_make to 0.9.0 #26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Upgrade elixir_make to 0.9.0 #26
Conversation
.tool-versions
Outdated
| @@ -1,2 +1,2 @@ | |||
| erlang 23.2.6 | |||
| elixir 1.11.3 | |||
| erlang erlang 27.0.1 | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it a typo?
| erlang erlang 27.0.1 | |
| erlang 27.0.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! Looks like I mistakenly ran asdf set erlang erlang 27.0.1 which either just didn't work and asdf defaulted to my global Erlang version, or was somehow luckily still correctly parsed. Fixed.
383aef8 to
3f429b6
Compare
joaothallis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
|
Thanks for the approval! Note: I (rightfully) don't have the permissions to merge and tag so I'll leave that to you. |
.tool-versions
Outdated
| elixir 1.18.2-otp-27 | ||
| erlang 27.0.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it necessary to update the Elixir and Erlang to upgrade the library? If yes, could you please update all other places using this old Elixir/Erlang version in the project?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good question. I'll make some tests to figure the minimal versions out and I'll update this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All right! I looked it up and turns out Elixir Make works for Elixir 1.9 and up. It wasn't working for me because older versions of OTP require some SSL-related shenanigans. I removed the changes to .tool-versions, since they are not needed for this change.
I would recommend completely removing this file and instead relying on mix.exs to enforce the Elixir and OTP versions instead, but this is out of the scope of this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update: I also slightly change the mix.exs to stop this warning:
Run mix compile --warnings-as-errors
warning: using single-quoted strings to represent charlists is deprecated.
Use ~c"" if you indeed want a charlist or use "" instead.
You may run "mix format --migrate" to change all single-quoted
strings to use the ~c sigil and fix this warning.
│
4 │ if :erlang.system_info(:otp_release) < '21' do
│ ~
│
└─ /home/runner/work/console/console/deps/gen_magic/mix.exs:4:42
```
3f429b6 to
9eadd24
Compare
Problem:
Since GenMagic uses Elixir Make 0.7.7, it isn't compatible with modern Phoenix applications.
Solution:
Upgrade Elixir Make to 0.9.0.