Skip to content

Commit 9cc5e27

Browse files
committed
gemini review
1 parent 3eae1c9 commit 9cc5e27

2 files changed

Lines changed: 12 additions & 10 deletions

File tree

apps/core/lib/mix/tasks/alchemy.ci.ex

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -150,21 +150,15 @@ defmodule Mix.Tasks.Alchemy.Ci do
150150
defp elixir_test(failed, _, _), do: failed
151151

152152
# MIX_ENV=test で子プロセスの mix を起動。[D] の test は GitHub elixir-test と同様。
153+
# System.cmd の :env は親プロセスの環境を継承しつつ上書き(PATH 等は維持される)。
153154
defp mix_cmd(args, root) when is_list(args) do
154155
System.cmd("elixir", ["-S", "mix"] ++ args,
155156
cd: root,
156157
stderr_to_stdout: true,
157-
env: env_with(%{"MIX_ENV" => "test"})
158+
env: [{"MIX_ENV", "test"}]
158159
)
159160
end
160161

161-
# System.cmd の :env は「全環境の置き換え」のため、PATH 等を落とさないよう現在の環境にマージする。
162-
defp env_with(overrides) when is_map(overrides) do
163-
System.get_env()
164-
|> Map.merge(overrides)
165-
|> Map.to_list()
166-
end
167-
168162
defp run_step(failed, name, fun) do
169163
case fun.() do
170164
{_, 0} ->

apps/network/lib/network/udp/server.ex

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,16 @@ defmodule Network.UDP do
112112
case port do
113113
0 ->
114114
case :inet.port(socket) do
115-
{:ok, p} -> p
116-
{:error, _} -> port
115+
{:ok, p} ->
116+
p
117+
118+
{:error, reason} ->
119+
Logger.warning(
120+
"[Network.UDP] :inet.port/1 failed after bind on port 0: #{inspect(reason)}; " <>
121+
"state.port may be incorrect"
122+
)
123+
124+
port
117125
end
118126

119127
_ ->

0 commit comments

Comments
 (0)