Skip to content

deps: update elixir to 1.20.2 - #3237

Open
deanshi wants to merge 7 commits into
mainfrom
deanshi/update_elixir_erlang
Open

deps: update elixir to 1.20.2 #3237
deanshi wants to merge 7 commits into
mainfrom
deanshi/update_elixir_erlang

Conversation

@deanshi

@deanshi deanshi commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Asana task: Update Screens to Elixir 1.20 / OTP 29

Description

  • Updated Elixir to 1.20.2 OTP 29 and erlang to 29.0.2
  • Cleaned up compiler warnings, removed a test that's now caught by a compiler warning and removed logger backend + added the LoggerBackends helper for Sentry

@robbie-sundstrom - looking at your previous code, I attempted to do the dependency upgrades but ran into an issue with clashing hackney versions for timex -> tzdata and ex_aws. I think this is fixable by replacing our few timex calls with something else, but after spending some time trying to replace it I decided that it would be best as a follow up task instead of in this PR. I'll create a ticket/add that code in after this. Ticket here.

  • Tests modified?

- remove `require Logger`
- fix redundant functions
- replace `Tuple.append` with `Tuple.insert_at`
- fix some type matching changes
- added matching in a few areas for compiler warnings
- remove logger backends and include Sentry in application.ex
- removed test that is now handled by a compiler warning
@deanshi
deanshi marked this pull request as ready for review August 14, 2026 14:55
@deanshi
deanshi requested a review from a team as a code owner August 14, 2026 14:55

@rwaskiewicz rwaskiewicz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM - only non-blocking questions/comments

Comment thread config/config.exs Outdated
Comment thread mix.lock
Comment thread lib/screens/application.ex
- fix mix.lock file
- change logger: :console to :default_formatter
end

# Both stop and route are not nil (route type ignored)
defp informed_entity_to_zone(

@digitalcora digitalcora Aug 14, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This seems like it might actually be the compiler unearthing a bug. On L130 the comment for the following clause says "only stop is not nil" (emphasis mine), meaning that the intent was that this clause was only entered if route is nil — however, it doesn't actually match on that. This discrepancy between the apparent intent and the actual implementation is what causes this clause to be unreachable.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Good catch - I added route: nil to that particular function, added a not_is_nil(route) guard to the one on L144 and removed the one on L149 since it overlaps with this removed function. I re-added this function (with a not is_nil(route) guard) and also fixed tests (by just adding appropriate routes to the LocationContext)

I think this now covers all cases and matches them properly (everything nil, route_type is not nil, stop is not nil, route is not nil, stop and route are not nil).

- fixed `informed_entity_to_zone` function usages
- fixed tests associated with those functions
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