diff --git a/.tool-versions b/.tool-versions index 5c46c3b..b8cca83 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1,2 +1,2 @@ -erlang 27.3.4.3 -elixir 1.18.4-otp-27 +erlang 28.5 +elixir 1.19.5-otp-28 diff --git a/README.md b/README.md index 1e48082..a05e85d 100644 --- a/README.md +++ b/README.md @@ -29,13 +29,13 @@ They are associated with the ext of each Dockerfile on [GitHub repository](https Only this tag (including past) provides multi-platform, `linux/amd64` and `linux/arm64`. - Jazzy Jalisco (**LTS rosdistro until May 2029**) - - jazzy-ex1.19.0-otp28.1 + - jazzy-ex1.20.0-otp29.0.1 + - jazzy-ex1.19.5-otp28.5 - jazzy-ex1.18.4-otp27.3.4.3 - - jazzy-ex1.17.3-otp27.2.4 - Humble Hawksbill (**LTS rosdistro until May 2027**) - - humble-ex1.19.0-otp28.1 - - humble-ex1.18.4-otp27.3.4.3 **[latest]** - - humble-ex1.17.3-otp27.2.4 + - humble-ex1.20.0-otp29.0.1 + - humble-ex1.19.5-otp28.5 **[latest]** + - humble-ex1.18.4-otp27.3.4.3 We highly recommend using Humble version because the previous ROS 2 distributions have already reached EOL. In particular, we have decided to stop supporting Dashing due to compatibility with Rclex code. @@ -71,13 +71,17 @@ The following versions are not yet sufficiently supported and are not used as CI The following versions were used in the past and are still available on Docker Hub, but are no longer used for the operation test of Rclex. - Jazzy Jalisco (**LTS rosdistro until May 2029**) + - jazzy-ex1.19.0-otp28.1 - jazzy-ex1.18.2-otp27.2.4 + - jazzy-ex1.17.3-otp27.2.4 - jazzy-ex1.17.3-otp27.2 - jazzy-ex1.16.3-otp26.2.5 - Iron Irwini (_EOL!_) - iron-ex1.15.5-otp26.0.2 - Humble Hawksbill (**LTS rosdistro until May 2027**) + - humble-ex1.19.0-otp28.1 - humble-ex1.18.2-otp27.2.4 + - humble-ex1.17.3-otp27.2.4 - humble-ex1.16.3-otp26.2.5 - humble-ex1.16.2-otp26.2.2 - humble-ex1.15.7-otp26.2.2 (past latest) diff --git a/lib/mix/tasks/rclex_docker.ex b/lib/mix/tasks/rclex_docker.ex index faa6141..2dd013d 100644 --- a/lib/mix/tasks/rclex_docker.ex +++ b/lib/mix/tasks/rclex_docker.ex @@ -20,31 +20,35 @@ defmodule Mix.Tasks.RclexDocker do end def latest_target_tuple() do - {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-jammy-20251001", "humble"} + {"hexpm/elixir:1.19.5-erlang-28.5-ubuntu-jammy-20260509", "humble"} end def list_target_tuples() do [ ### Jazzy - {"hexpm/elixir:1.19.0-erlang-28.1-ubuntu-noble-20251001", "jazzy"}, - {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-noble-20251001", "jazzy"}, - {"hexpm/elixir:1.17.3-erlang-27.2.4-ubuntu-noble-20251001", "jazzy"}, + {"hexpm/elixir:1.20.0-erlang-29.0.1-ubuntu-noble-20260509.1", "jazzy"}, + {"hexpm/elixir:1.19.5-erlang-28.5-ubuntu-noble-20260509.1", "jazzy"}, + {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-noble-20260509.1", "jazzy"}, ### Humble - {"hexpm/elixir:1.19.0-erlang-28.1-ubuntu-jammy-20251001", "humble"}, - {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-jammy-20251001", "humble"}, - {"hexpm/elixir:1.17.3-erlang-27.2.4-ubuntu-jammy-20251001", "humble"}, + {"hexpm/elixir:1.20.0-erlang-29.0.1-ubuntu-jammy-20260509", "humble"}, + {"hexpm/elixir:1.19.5-erlang-28.5-ubuntu-jammy-20260509", "humble"}, + {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-jammy-20260509", "humble"}, ##### The below are experimental versions ### Kilted - {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-noble-20251001", "kilted"} + {"hexpm/elixir:1.18.4-erlang-27.3.4.3-ubuntu-noble-20260509.1", "kilted"} ##### The below are already deprecated versions ### Jazzy + # {"hexpm/elixir:1.19.0-erlang-28.1-ubuntu-noble-20251001", "jazzy"}, # {"hexpm/elixir:1.18.2-erlang-27.2.4-ubuntu-noble-20250127", "jazzy"}, + # {"hexpm/elixir:1.17.3-erlang-27.2.4-ubuntu-noble-20251001", "jazzy"}, # {"hexpm/elixir:1.17.3-erlang-27.2-ubuntu-noble-20250127", "jazzy"}, # {"hexpm/elixir:1.16.3-erlang-26.2.5-ubuntu-noble-20240530", "jazzy"}, ### Iron # {"hexpm/elixir:1.15.5-erlang-26.0.2-ubuntu-jammy-20230126", "iron"}, ### Humble + # {"hexpm/elixir:1.19.0-erlang-28.1-ubuntu-jammy-20251001", "humble"}, # {"hexpm/elixir:1.18.2-erlang-27.2.4-ubuntu-jammy-20250126", "humble"}, + # {"hexpm/elixir:1.17.3-erlang-27.2.4-ubuntu-jammy-20251001", "humble"}, # {"hexpm/elixir:1.16.3-erlang-26.2.5-ubuntu-jammy-20240530", "humble"} # {"hexpm/elixir:1.16.2-erlang-26.2.2-ubuntu-jammy-20240125", "humble"}, # {"hexpm/elixir:1.15.7-erlang-26.2.2-ubuntu-jammy-20240125", "humble"}, diff --git a/lib/mix/tasks/rclex_docker/build.ex b/lib/mix/tasks/rclex_docker/build.ex index 08abe35..ed20dc4 100644 --- a/lib/mix/tasks/rclex_docker/build.ex +++ b/lib/mix/tasks/rclex_docker/build.ex @@ -136,7 +136,7 @@ defmodule Mix.Tasks.RclexDocker.Build do """ @spec parse_args([String.t()]) :: Options.t() def(parse_args(args)) do - Enum.reduce(args, %Options{}, fn arg, acc -> + Enum.reduce(args, %Options{}, fn arg, %Options{} = acc -> case arg do "--dry-run" -> %Options{acc | dry_run: true} "--latest" -> %Options{acc | latest: true} diff --git a/lib/mix/tasks/rclex_docker/push.ex b/lib/mix/tasks/rclex_docker/push.ex index c51efbf..dc357b1 100644 --- a/lib/mix/tasks/rclex_docker/push.ex +++ b/lib/mix/tasks/rclex_docker/push.ex @@ -115,7 +115,7 @@ defmodule Mix.Tasks.RclexDocker.Push do """ @spec parse_args([String.t()]) :: Options.t() def(parse_args(args)) do - Enum.reduce(args, %Options{}, fn arg, acc -> + Enum.reduce(args, %Options{}, fn arg, %Options{} = acc -> case arg do "--dry-run" -> %Options{acc | dry_run: true} "--latest" -> %Options{acc | latest: true} diff --git a/mix.lock b/mix.lock index 4da16fd..59ea15d 100644 --- a/mix.lock +++ b/mix.lock @@ -1,10 +1,10 @@ %{ "blankable": {:hex, :blankable, "1.0.0", "89ab564a63c55af117e115144e3b3b57eb53ad43ba0f15553357eb283e0ed425", [:mix], [], "hexpm", "7cf11aac0e44f4eedbee0c15c1d37d94c090cb72a8d9fddf9f7aec30f9278899"}, "bunt": {:hex, :bunt, "1.0.0", "081c2c665f086849e6d57900292b3a161727ab40431219529f13c4ddcf3e7a44", [:mix], [], "hexpm", "dc5f86aa08a5f6fa6b8096f0735c4e76d54ae5c9fa2c143e5a1fc7c1cd9bb6b5"}, - "credo": {:hex, :credo, "1.7.13", "126a0697df6b7b71cd18c81bc92335297839a806b6f62b61d417500d1070ff4e", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "47641e6d2bbff1e241e87695b29f617f1a8f912adea34296fb10ecc3d7e9e84f"}, + "credo": {:hex, :credo, "1.7.19", "cc52129665fc7c15143d47838fda0f9cd6dac9ceced7bf4da6f85fcbfe64b12a", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2d8bc95d5a7bb99dd2613621d4f08c6a3575c3fd4b62e6a2b48a100352a557b8"}, "file_system": {:hex, :file_system, "1.1.1", "31864f4685b0148f25bd3fbef2b1228457c0c89024ad67f7a81a3ffbc0bbad3a", [:mix], [], "hexpm", "7a15ff97dfe526aeefb090a7a9d3d03aa907e100e262a0f8f7746b78f8f87a5d"}, "git_hooks": {:hex, :git_hooks, "0.8.1", "1f6a1b065638e07ed89a49804dac6c24d8ac8d27c8f9fd0e9620d5bef8c30f41", [:mix], [{:recase, "~> 0.8.0", [hex: :recase, repo: "hexpm", optional: false]}], "hexpm", "267d8b82615ad439177b2a4bc2efadb7491ec1c8520dacc67ddc38c251448cbc"}, - "jason": {:hex, :jason, "1.4.4", "b9226785a9aa77b6857ca22832cffa5d5011a667207eb2a0ad56adb5db443b8a", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "c5eb0cab91f094599f94d55bc63409236a8ec69a21a67814529e8d5f6cc90b3b"}, - "mix_test_watch": {:hex, :mix_test_watch, "1.3.0", "2ffc9f72b0d1f4ecf0ce97b044e0e3c607c3b4dc21d6228365e8bc7c2856dc77", [:mix], [{:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}], "hexpm", "f9e5edca976857ffac78632e635750d158df14ee2d6185a15013844af7570ffe"}, + "jason": {:hex, :jason, "1.4.5", "2e3a008590b0b8d7388c20293e9dcc9cf3e5d642fd2a114e4cbbb52e595d940a", [:mix], [{:decimal, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "b0c823996102bcd0239b3c2444eb00409b72f6a140c1950bc8b457d836b30684"}, + "mix_test_watch": {:hex, :mix_test_watch, "1.4.0", "d88bcc4fbe3198871266e9d2f00cd8ae350938efbb11d3fa1da091586345adbb", [:mix], [{:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}], "hexpm", "2b4693e17c8ead2ef56d4f48a0329891e8c2d0d73752c0f09272a2b17dc38d1b"}, "recase": {:hex, :recase, "0.8.1", "ab98cd35857a86fa5ca99036f575241d71d77d9c2ab0c39aacf1c9b61f6f7d1d", [:mix], [], "hexpm", "9fd8d63e7e43bd9ea385b12364e305778b2bbd92537e95c4b2e26fc507d5e4c2"}, }