From 8006dc80dedd08b1c460cfd6623d3384811b05e5 Mon Sep 17 00:00:00 2001 From: "Haelwenn (lanodan) Monnier" Date: Sun, 10 Mar 2024 19:09:24 +0100 Subject: dev-lang/elixir: add 1.16.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Includes the following upstream patch to skip tests relying on erlang[doc]: https://github.com/elixir-lang/elixir/commit/c50863615c0e8ac957e22ae01a6f9af23978c3f9 Closes: https://bugs.gentoo.org/925670 Signed-off-by: Haelwenn (lanodan) Monnier Signed-off-by: Petr Vaněk --- ...r-1.16.1-skip-tests-requiring-erlang-docs.patch | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 dev-lang/elixir/files/elixir-1.16.1-skip-tests-requiring-erlang-docs.patch (limited to 'dev-lang/elixir/files/elixir-1.16.1-skip-tests-requiring-erlang-docs.patch') diff --git a/dev-lang/elixir/files/elixir-1.16.1-skip-tests-requiring-erlang-docs.patch b/dev-lang/elixir/files/elixir-1.16.1-skip-tests-requiring-erlang-docs.patch new file mode 100644 index 000000000000..187c45a7d902 --- /dev/null +++ b/dev-lang/elixir/files/elixir-1.16.1-skip-tests-requiring-erlang-docs.patch @@ -0,0 +1,90 @@ +Upstream-Commit: https://github.com/elixir-lang/elixir/commit/c50863615c0e8ac957e22ae01a6f9af23978c3f9 + +From c50863615c0e8ac957e22ae01a6f9af23978c3f9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jos=C3=A9=20Valim?= +Date: Thu, 8 Feb 2024 08:08:03 +0100 +Subject: [PATCH] Skip tests if Erlang was compiled without docs, closes #13322 + +--- + lib/iex/test/iex/helpers_test.exs | 12 +++++++++--- + lib/iex/test/test_helper.exs | 10 +++++++++- + 2 files changed, 18 insertions(+), 4 deletions(-) + +diff --git a/lib/iex/test/iex/helpers_test.exs b/lib/iex/test/iex/helpers_test.exs +index 54f946516ce..171acc72abc 100644 +--- a/lib/iex/test/iex/helpers_test.exs ++++ b/lib/iex/test/iex/helpers_test.exs +@@ -332,17 +332,20 @@ defmodule IEx.HelpersTest do + assert help =~ "Welcome to Interactive Elixir" + end + ++ @tag :erlang_doc + test "prints Erlang module documentation" do + captured = capture_io(fn -> h(:timer) end) + assert captured =~ "This module provides useful functions related to time." + end + ++ @tag :erlang_doc + test "prints Erlang module function specs" do + captured = capture_io(fn -> h(:timer.sleep() / 1) end) + assert captured =~ ":timer.sleep/1" + assert captured =~ "-spec sleep(Time) -> ok when Time :: timeout()." + end + ++ @tag :erlang_doc + test "handles non-existing Erlang module function" do + captured = capture_io(fn -> h(:timer.baz() / 1) end) + assert captured =~ "No documentation for :timer.baz was found" +@@ -1008,13 +1011,15 @@ defmodule IEx.HelpersTest do + cleanup_modules([TypeSample]) + end + +- test "prints all types in erlang module" do ++ @tag :erlang_doc ++ test "prints all types in Erlang module" do + captured = capture_io(fn -> t(:queue) end) + assert captured =~ "-type queue() :: queue(_)" + assert captured =~ "-opaque queue(Item)" + end + +- test "prints single type from erlang module" do ++ @tag :erlang_doc ++ test "prints single type from Erlang module" do + captured = capture_io(fn -> t(:erlang.iovec()) end) + assert captured =~ "-type iovec() :: [binary()]" + assert captured =~ "A list of binaries." +@@ -1024,7 +1029,8 @@ defmodule IEx.HelpersTest do + assert captured =~ "A list of binaries." + end + +- test "handles non-existing types from erlang module" do ++ @tag :erlang_doc ++ test "handles non-existing types from Erlang module" do + captured = capture_io(fn -> t(:erlang.foo()) end) + assert captured =~ "No type information for :erlang.foo was found or :erlang.foo is private" + +diff --git a/lib/iex/test/test_helper.exs b/lib/iex/test/test_helper.exs +index f5a55f0aa80..b32c8be4e91 100644 +--- a/lib/iex/test/test_helper.exs ++++ b/lib/iex/test/test_helper.exs +@@ -7,11 +7,19 @@ IEx.configure(colors: [enabled: false]) + {line_exclude, line_include} = + if line = System.get_env("LINE"), do: {[:test], [line: line]}, else: {[], []} + ++erlang_doc_exclude = ++ if match?({:docs_v1, _, _, _, _, _, _}, Code.fetch_docs(:array)) do ++ [] ++ else ++ IO.puts("Erlang/OTP compiled without docs, some tests are excluded...") ++ [:erlang_doc] ++ end ++ + ExUnit.start( + assert_receive_timeout: assert_timeout, + trace: !!System.get_env("TRACE"), + include: line_include, +- exclude: line_exclude ++ exclude: line_exclude ++ erlang_doc_exclude + ) + + defmodule IEx.Case do -- cgit v1.2.3-65-gdbad