Freshen dependency locks and take espex 0.10 - #197
Merged
Merged
Conversation
Everything the current constraints already admit moves up: phoenix 1.8.14, LiveView 1.2.12, LiveDashboard 0.9.1, cowboy 2.19.0 / cowlib 2.20.0 / ranch 2.3.0, mint 1.10.1, ring_logger 0.11.7, ssh_subsystem_fwup 0.6.9, nerves_discovery 0.1.5, dialyxir 1.4.8, and the stock Nerves systems (bbb 2.30.2, mangopi_mq_pro 0.17.2, qemu_aarch64 0.4.2). espex 0.10.0 needs its constraint widened to ~> 0.10. It is additive for every adapter this app implements (SerialProxy.Info gains configured_line_states with a [] default; the new API 1.16 acknowledgement builders and runtime-reconfiguration calls are opt-in), with one visible change: an unknown serial instance is now rejected with INVALID_ARGUMENT rather than the generic ERROR, so the SerialProxyTest assertion moves with it. Left alone deliberately: nerves_system_br stays pinned at 1.34.3 to match custom systems v0.1.10, muontrap 2.0.0 and decibel 1.0.1 are outside their ~> constraints, and mdns_lite is our vendored fork. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FUnTV1ZaRvoAn1R91VertT
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Routine dependency freshening: every hex package the current constraints already admit moves to its latest release, plus one constraint widening for
espex.Lock-only bumps
No lock entries were added or removed — 96 before, 96 after, versions only.
espex 0.9.0 → 0.10.0 (
~> 0.9→~> 0.10)The only change outside the lock. 0.10.0 advertises API 1.16 and is additive for every adapter this app implements:
SerialProxy.Infogainsconfigured_line_states, defaulting to[], so our%Info{}construction is unaffected. Advertising the RTS/DTR lines our ports can drive is available but not taken here.serial_request_response/3,modem_pins_response/2,zwave_request_response/2), the runtime-reconfiguration calls (update_device_config/2,update_adapters/2,disconnect_clients/1) and theDeviceCapabilitiesRPC are all opt-in; no existing callback signature changed.SERIAL_PROXY_STATUS_INVALID_ARGUMENTinstead of the genericSERIAL_PROXY_STATUS_ERROR. The app's behaviour is unchanged — only the status espex picks — so theSerialProxyTestassertion moves with it. That is the single test edit in this PR.The climate
feature_flagsrework in 0.10 does not reach us; the app exposes no climate entities.Left alone deliberately
nerves_system_brstays pinned at 1.34.3 to match custom systems v0.1.10, per the note inmix.exs.muontrap2.0.0 anddecibel1.0.1 are outside their~> 1.8/~> 0.2constraints — major bumps, not freshening.mdns_liteis our vendored path fork, not lockable..mise.tomltoolchain pins (erlang 29.0.5 / elixir 1.20.3-otp-29) are untouched.Verification
Run locally on Elixir 1.20.3 / OTP 29.0.5, matching the CI pins:
mix compile --warnings-as-errors— cleanmix format --check-formatted— cleanmix credo— no issues across 121 filesmix dialyzer— passed (7 errors, all 7 pre-existing ignores, 0 unnecessary skips)mise run test— 1633/1635 passedThe two remaining test failures are container artifacts, not regressions — both fail identically on
main's lock:UniversalProxy.IdentifyTest"a failed trigger restore is logged" chmods a file to0444and expects the write to fail; this container runs as root, which ignores the read-only bit.UniversalProxy.SSHAccessTest"the private key round-trips…" needsssh-keygen, which is not installed here (the test's own message says to exclude the:ssh_keygentag on such a host).Both pass in CI, which runs unprivileged with openssh present.
🤖 Generated with Claude Code
https://claude.ai/code/session_01FUnTV1ZaRvoAn1R91VertT
Generated by Claude Code