Accepting request 1150121 from home:alessio.biancalana:branches:devel:languages:erlang

Upgrade to Elixir 1.16.1

OBS-URL: https://build.opensuse.org/request/show/1150121
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang/elixir?expand=0&rev=92
This commit is contained in:
Matwey Kornilov 2024-02-26 07:25:22 +00:00 committed by Git OBS Bridge
parent 7c4a1f521c
commit d09c4ea27f
9 changed files with 103 additions and 77 deletions

View File

@ -0,0 +1,89 @@
From c50863615c0e8ac957e22ae01a6f9af23978c3f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Valim?= <jose.valim@dashbit.co>
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

View File

@ -1,28 +0,0 @@
From 8bc67d384b0c21d9bbc7145829ecd49e128038b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Valim?= <jose.valim@dashbit.co>
Date: Sun, 2 Jul 2023 10:28:58 +0200
Subject: [PATCH] Use PID valid for 32-bit systems, closes #12741
---
lib/logger/test/logger/formatter_test.exs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/logger/test/logger/formatter_test.exs b/lib/logger/test/logger/formatter_test.exs
index 82a2ac6a9..2ea4ca08b 100644
--- a/lib/logger/test/logger/formatter_test.exs
+++ b/lib/logger/test/logger/formatter_test.exs
@@ -116,9 +116,9 @@ test "format with format string" do
format = format(compiled, :error, nil, nil, meta: :data)
assert IO.chardata_to_string(format) == "meta=data "
- pid = :erlang.list_to_pid(~c"<0.123.4>")
+ pid = :erlang.list_to_pid(~c"<0.123.0>")
format = format(compiled, :error, nil, nil, meta: :data, pid: pid)
- assert IO.chardata_to_string(format) == "meta=data pid=<0.123.4> "
+ assert IO.chardata_to_string(format) == "meta=data pid=<0.123.0> "
# Hack to get the same predictable reference for every test run.
ref =
--
2.35.3

View File

@ -1,39 +0,0 @@
From e00524ba5b0e682488fa99bca4aa89e4e7071aa0 Mon Sep 17 00:00:00 2001
From: Peter Lemenkov <lemenkov@gmail.com>
Date: Fri, 7 Jul 2023 20:47:26 +0200
Subject: [PATCH] Use PID valid for 32-bit systems, followup to #12741 (#12772)
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
---
lib/iex/test/iex/helpers_test.exs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/lib/iex/test/iex/helpers_test.exs b/lib/iex/test/iex/helpers_test.exs
index 31984a390..ed5190e82 100644
--- a/lib/iex/test/iex/helpers_test.exs
+++ b/lib/iex/test/iex/helpers_test.exs
@@ -1364,8 +1364,8 @@ test "reloads Erlang modules" do
describe "pid/1,3" do
test "builds a PID from string" do
- assert inspect(pid("0.32767.3276")) == "#PID<0.32767.3276>"
- assert inspect(pid("0.5.6")) == "#PID<0.5.6>"
+ assert inspect(pid("0.32767.0")) == "#PID<0.32767.0>"
+ assert inspect(pid("0.5.0")) == "#PID<0.5.0>"
assert_raise ArgumentError, fn ->
pid("0.6.-6")
@@ -1381,8 +1381,8 @@ test "builds a PID from atom" do
end
test "builds a PID from integers" do
- assert inspect(pid(0, 32767, 3276)) == "#PID<0.32767.3276>"
- assert inspect(pid(0, 5, 6)) == "#PID<0.5.6>"
+ assert inspect(pid(0, 32767, 0)) == "#PID<0.32767.0>"
+ assert inspect(pid(0, 5, 0)) == "#PID<0.5.0>"
assert_raise FunctionClauseError, fn ->
pid(0, 6, -6)
--
2.35.3

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:115afa2842dd630dd15c6488849007b6f08bb661d072a812d53b11e5f4f6dfdf
size 4246858

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:78bde2786b395515ae1eaa7d26faa7edfdd6632bfcfcd75bccb6341a18e8798f
size 3151775

3
elixir-1.16.1-doc.zip Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:473820610430a67c1a8bf59038b2730d0ecdaee70f6b2a8d3796eb8c14b1bb8e
size 7058750

3
elixir-1.16.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b9e845458e03d62a24325b8424069e401cc7468e21143ecbca5514724d7cbaa0
size 3353282

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Sat Feb 24 11:56:38 UTC 2024 - Alessio Biancalana <alessio.biancalana@suse.com>
- Upgrade to Elixir 1.16.1
-------------------------------------------------------------------
Tue Nov 21 15:47:29 UTC 2023 - Matwey Kornilov <matwey.kornilov@gmail.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package elixir
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -19,7 +19,7 @@
%define elixirdir %{_prefix}/lib/elixir
Name: elixir
Version: 1.15.7
Version: 1.16.1
Release: 0
Summary: Functional meta-programming aware language built atop Erlang
License: Apache-2.0
@ -28,8 +28,7 @@ URL: http://elixir-lang.org
Source0: https://github.com/elixir-lang/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: https://github.com/elixir-lang/%{name}/releases/download/v%{version}/Docs.zip#/%{name}-%{version}-doc.zip
Source2: macros.elixir
Patch0: 0001-Use-PID-valid-for-32-bit-systems-closes-12741.patch
Patch1: 0001-Use-PID-valid-for-32-bit-systems-followup-to-12741-1.patch
Patch0: 0001-Skip-tests-if-Erlang-compiled-without-docs-closes-13322.patch
BuildRequires: fdupes
BuildRequires: gcc
BuildRequires: make