Updates lang/elixir to most recent release 1.15.4

Pulling in one commit from upstream fixing test failures:

https://github.com/elixir-lang/elixir/commit/9b7b7d655d140203044af181842754db7bdbb7ef

This needs to go in *after* net/rabbitmq 3.11.20.

Builds and tests fine on amd64.
I've had all the 1.15.x releases running on OpenBSD without
any issue.
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/elixir/Makefile,v
retrieving revision 1.67
diff -u -p -r1.67 Makefile
--- Makefile	10 Apr 2023 08:57:06 -0000	1.67
+++ Makefile	19 Jul 2023 16:58:47 -0000
@@ -1,6 +1,6 @@
 COMMENT=		functional language for building scalable applications
 
-V=			1.14.4
+V=			1.15.4
 GH_ACCOUNT=		elixir-lang
 GH_PROJECT=		elixir
 GH_TAGNAME=		v$V
@@ -31,7 +31,8 @@ CONFIGURE_STYLE=	None
 MAKE_ENV+=		LC_ALL="en_US.UTF-8"
 
 pre-configure:
-	${SUBST_CMD} ${WRKSRC}/bin/elixir
+	${SUBST_CMD} ${WRKSRC}/bin/elixir \
+		${WRKSRC}/Makefile
 
 pre-install:
 	-rm ${WRKSRC}/bin/*{.beforesubst,${PATCHORIG}}
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/elixir/distinfo,v
retrieving revision 1.57
diff -u -p -r1.57 distinfo
--- distinfo	10 Apr 2023 08:57:06 -0000	1.57
+++ distinfo	19 Jul 2023 16:58:47 -0000
@@ -1,2 +1,2 @@
-SHA256 (elixir-1.14.4.tar.gz) = B9Zs8UesrcIb0WefSG79b41kpzhW7Mg8cbXpAwgbRdI=
-SIZE (elixir-1.14.4.tar.gz) = 3076206
+SHA256 (elixir-1.15.4.tar.gz) = MCv4Blq3kqiPbDoMAaa7WHN74+T8JWTIr9QYv5eSUBw=
+SIZE (elixir-1.15.4.tar.gz) = 3146690
Index: patches/patch-Makefile
===================================================================
RCS file: patches/patch-Makefile
diff -N patches/patch-Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-Makefile	19 Jul 2023 16:58:47 -0000
@@ -0,0 +1,21 @@
+Explicitly start and kill epmd, to avoid lingering instances after tests are
+complete.
+
+Index: Makefile
+--- Makefile.orig
++++ Makefile
+@@ -279,12 +279,13 @@ test_elixir: test_stdlib test_ex_unit test_logger test
+ 
+ test_stdlib: compile
+ 	@ echo "==> elixir (ex_unit)"
+-	$(Q) exec epmd & exit
++	$(Q) exec epmd${MODERL_VERSION} & exit
+ 	$(Q) if [ "$(OS)" = "Windows_NT" ]; then \
+ 		cd lib/elixir && cmd //C call ../../bin/elixir.bat --sname primary -r "test/elixir/test_helper.exs" -pr "test/elixir/**/$(TEST_FILES)"; \
+ 	else \
+ 		cd lib/elixir && ../../bin/elixir --sname primary -r "test/elixir/test_helper.exs" -pr "test/elixir/**/$(TEST_FILES)"; \
+ 	fi
++	$(Q) exec epmd${MODERL_VERSION} -kill
+ 
+ #==> Dialyzer tasks
+ 
Index: patches/patch-bin_elixir
===================================================================
RCS file: /cvs/ports/lang/elixir/patches/patch-bin_elixir,v
retrieving revision 1.9
diff -u -p -r1.9 patch-bin_elixir
--- patches/patch-bin_elixir	18 Jan 2023 09:33:59 -0000	1.9
+++ patches/patch-bin_elixir	19 Jul 2023 16:58:47 -0000
@@ -3,7 +3,7 @@ Detect erlang ERTS directory at runtime.
 Index: bin/elixir
 --- bin/elixir.orig
 +++ bin/elixir
-@@ -226,7 +226,9 @@ fi
+@@ -225,7 +225,9 @@ fi
  
  # One MAY change ERTS_BIN= but you MUST NOT change
  # ERTS_BIN=$ERTS_BIN as it is handled by Elixir releases.
@@ -13,4 +13,4 @@ Index: bin/elixir
 +done
  ERTS_BIN="$ERTS_BIN"
  
- set -- "$ERTS_BIN$ERL_EXEC" -pa "$SCRIPT_PATH"/../lib/*/ebin $ELIXIR_ERL_OPTIONS $ERL "$@"
+ set -- "$ERTS_BIN$ERL_EXEC" -noshell -elixir_root "$SCRIPT_PATH"/../lib -pa "$SCRIPT_PATH"/../lib/elixir/ebin $ELIXIR_ERL_OPTIONS -s elixir start_$MODE $ERL "$@"
Index: patches/patch-lib_mix_lib_mix_compilers_elixir_ex
===================================================================
RCS file: patches/patch-lib_mix_lib_mix_compilers_elixir_ex
diff -N patches/patch-lib_mix_lib_mix_compilers_elixir_ex
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-lib_mix_lib_mix_compilers_elixir_ex	19 Jul 2023 16:58:47 -0000
@@ -0,0 +1,14 @@
+Backport https://github.com/elixir-lang/elixir/commit/9b7b7d655d140203044af181842754db7bdbb7ef 
+Index: lib/mix/lib/mix/compilers/elixir.ex
+--- lib/mix/lib/mix/compilers/elixir.ex.orig
++++ lib/mix/lib/mix/compilers/elixir.ex
+@@ -454,6 +454,9 @@ defmodule Mix.Compilers.Elixir do
+       8 -> :crypto.hash(:blake2b, contents)
+       _ -> :crypto.hash(:blake2s, contents)
+     end
++  rescue
++    # Blake may not be available on all OpenSSL distribution
++    _ -> :erlang.md5(contents)
+   end
+ 
+   defp set_compiler_opts(opts) do
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/lang/elixir/pkg/PLIST,v
retrieving revision 1.21
diff -u -p -r1.21 PLIST
--- pkg/PLIST	4 Sep 2022 08:36:45 -0000	1.21
+++ pkg/PLIST	19 Jul 2023 16:58:47 -0000
@@ -144,6 +144,7 @@ lib/elixir/lib/elixir/ebin/Elixir.Kernel
 lib/elixir/lib/elixir/ebin/Elixir.Kernel.ParallelRequire.beam
 lib/elixir/lib/elixir/ebin/Elixir.Kernel.SpecialForms.beam
 lib/elixir/lib/elixir/ebin/Elixir.Kernel.Typespec.beam
+lib/elixir/lib/elixir/ebin/Elixir.Kernel.TypespecError.beam
 lib/elixir/lib/elixir/ebin/Elixir.Kernel.Utils.beam
 lib/elixir/lib/elixir/ebin/Elixir.Kernel.beam
 lib/elixir/lib/elixir/ebin/Elixir.KeyError.beam
@@ -162,6 +163,7 @@ lib/elixir/lib/elixir/ebin/Elixir.MapSet
 lib/elixir/lib/elixir/ebin/Elixir.MatchError.beam
 lib/elixir/lib/elixir/ebin/Elixir.Module.LocalsTracker.beam
 lib/elixir/lib/elixir/ebin/Elixir.Module.ParallelChecker.beam
+lib/elixir/lib/elixir/ebin/Elixir.Module.Types.Behaviour.beam
 lib/elixir/lib/elixir/ebin/Elixir.Module.Types.Error.beam
 lib/elixir/lib/elixir/ebin/Elixir.Module.Types.Expr.beam
 lib/elixir/lib/elixir/ebin/Elixir.Module.Types.Helpers.beam
@@ -318,6 +320,7 @@ lib/elixir/lib/iex/ebin/Elixir.IEx.Info.
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Atom.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.BitString.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Date.beam
+lib/elixir/lib/iex/ebin/Elixir.IEx.Info.DateTime.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Float.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Function.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Integer.beam
@@ -326,35 +329,36 @@ lib/elixir/lib/iex/ebin/Elixir.IEx.Info.
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.NaiveDateTime.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.PID.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Port.beam
+lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Range.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Reference.beam
+lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Regex.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Time.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.Tuple.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Info.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Introspection.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Pry.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.Server.beam
-lib/elixir/lib/iex/ebin/Elixir.IEx.State.beam
 lib/elixir/lib/iex/ebin/Elixir.IEx.beam
 lib/elixir/lib/iex/ebin/iex.app
 lib/elixir/lib/logger/
 lib/elixir/lib/logger/ebin/
 lib/elixir/lib/logger/ebin/Elixir.Logger.App.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.BackendSupervisor.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Config.beam
 lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Console.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.Config.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.Filter.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Handler.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Internal.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Supervisor.beam
+lib/elixir/lib/logger/ebin/Elixir.Logger.Backends.Watcher.beam
 lib/elixir/lib/logger/ebin/Elixir.Logger.Formatter.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.Handler.beam
 lib/elixir/lib/logger/ebin/Elixir.Logger.Translator.beam
 lib/elixir/lib/logger/ebin/Elixir.Logger.Utils.beam
-lib/elixir/lib/logger/ebin/Elixir.Logger.Watcher.beam
 lib/elixir/lib/logger/ebin/Elixir.Logger.beam
 lib/elixir/lib/logger/ebin/logger.app
 lib/elixir/lib/mix/
 lib/elixir/lib/mix/ebin/
 lib/elixir/lib/mix/ebin/Elixir.Collectable.Mix.Shell.beam
+lib/elixir/lib/mix/ebin/Elixir.Mix.AppLoader.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.CLI.beam
-lib/elixir/lib/mix/ebin/Elixir.Mix.Compilers.ApplicationTracer.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Compilers.Elixir.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Compilers.Erlang.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Compilers.Test.beam
@@ -377,7 +381,6 @@ lib/elixir/lib/mix/ebin/Elixir.Mix.NoPro
 lib/elixir/lib/mix/ebin/Elixir.Mix.NoTaskError.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Project.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.ProjectStack.beam
-lib/elixir/lib/mix/ebin/Elixir.Mix.PublicKey.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Rebar.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.Release.beam
 lib/elixir/lib/mix/ebin/Elixir.Mix.RemoteConverger.beam

Reply via email to