Skip to content
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

chore: Erlang 27/Elixir 1.17 #842

Merged
merged 12 commits into from
Dec 19, 2024
Merged

chore: Erlang 27/Elixir 1.17 #842

merged 12 commits into from
Dec 19, 2024

Conversation

cmaddox5
Copy link
Contributor

@cmaddox5 cmaddox5 commented Dec 17, 2024

Summary of changes

Asana Ticket: [extra] 🍎💳 Update API to Erlang 26 and Elixir 1.16

Updated Erlang, Elixir, and any dependency that required an update for CI to pass. Based on a comment from Paul S. I also removed support for protobufs. Confirmed that we only use the enhanced feeds so there is nothing using the protobuf definitions.

@cmaddox5 cmaddox5 force-pushed the cm/upgrade-erlang-elixir branch 4 times, most recently from 6bf761c to b6ce557 Compare December 18, 2024 15:13
@cmaddox5 cmaddox5 force-pushed the cm/upgrade-erlang-elixir branch from b6ce557 to 89bdd47 Compare December 18, 2024 15:36
@cmaddox5 cmaddox5 changed the title Cm/upgrade erlang elixir chore: Update Erlang/Elixir Dec 18, 2024
@cmaddox5 cmaddox5 changed the title chore: Update Erlang/Elixir chore: Erlang 27/Elixir 1.17 Dec 18, 2024
@cmaddox5 cmaddox5 requested review from a team and dks-mbta and removed request for a team December 18, 2024 19:09
@cmaddox5 cmaddox5 marked this pull request as ready for review December 18, 2024 19:09
Dockerfile Outdated
ARG ALPINE_VERSION=3.17.7
ARG ELIXIR_VERSION=1.17.3
ARG ERLANG_VERSION=27.2
ARG ALPINE_VERSION=3.17.9
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: latest Alpine is 3.21

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like libssl1.1 is no longer supported in the latest Alpine so will update that to libssl3 as well.

@@ -36,13 +36,4 @@ defmodule ApiWeb.CanaryTest do

assert_receive {:EXIT, ^pid, :normal}
end

test "stops with reason if given a value that is not a function for notify_fn" do
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: what changed such that we don't need this test?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is me misunderstanding the code in canary after seeing a test failure. Turns out this is failing because it isn't receiving a message after the exit anymore. Not 100% sure why at the moment so will look into it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I may need to phone a friend on this one. I'm not seeing anything in the changelogs to suggest this exit behavior has changed. If I don't trap the exit, I can see that it is exiting but the process mailbox is always empty. Am I missing something?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm thinking that it's this change from Erlang 26:

proc_lib:start*/* has become synchronous when the started process fails. This requires that a failing process use a new function proc_lib:init_fail/2,3, or exits, to indicate failure. All OTP behaviours have been fixed to do this.

I think what this means is that the new behavior doesn't cause an exit: only the the [:error, _} return value. You can remove the exit trapping part of the assertion, but keep the {:error, _} assertion.

@cmaddox5 cmaddox5 merged commit adc0810 into master Dec 19, 2024
7 checks passed
@cmaddox5 cmaddox5 deleted the cm/upgrade-erlang-elixir branch December 19, 2024 19:21
@cmaddox5 cmaddox5 mentioned this pull request Dec 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants