Yes, the observer backend slipped through with my patch to update erlang/21 to 21.3.8.24, I dragged it from there into 25.x.
Thanks for pointing it out!

OK for Stuart's patch from my side.

NB: I also found that alongside observer-backend, the following files that used to be in -main moved to -wx:

lib/erlang21/lib/${ERL_OBSERVER}/ebin/cdv_persistent_cb.beam
lib/erlang21/lib/${ERL_OBSERVER}/src/cdv_persistent_cb.erl

Those include wx, though so that one wasn't a mistake:
https://github.com/erlang/otp/blob/2735ffc3d883afa727569fa5becba3d32e262ace/lib/observer/src/cdv_persistent_cb.erl#L24

On 10/25/22 21:20, Stuart Henderson wrote:
+CC maintainer

On 2022/10/22 12:51, la ninpre wrote:
I was updating my Pleroma instance two days ago after upgrading to OpenBSD
7.2.
Pleroma is written in Elixir, so I updated both Elixir/Erlang to
corresponding latest versions.
Then I rebuilt all the dependencies (before they were built with/for
Erlang-21).
When I tried to start Pleroma, it failed. The error was:

12:42:37.892 [notice] Application runtime_tools exited: 
:runtime_tools.start(:normal, []) returned an error: shutdown: failed to start 
child: :ttb_autostart
     ** (EXIT) an exception was raised:
         ** (UndefinedFunctionError) function 
:observer_backend.ttb_resume_trace/0 is undefined (module :observer_backend is 
not available)
             (runtime_tools 1.19) :observer_backend.ttb_resume_trace()
             (runtime_tools 1.19) ttb_autostart.erl:47: :ttb_autostart.init/1
             (stdlib 4.0.1) gen_server.erl:848: :gen_server.init_it/2
             (stdlib 4.0.1) gen_server.erl:811: :gen_server.init_it/6
             (stdlib 4.0.1) proc_lib.erl:240: :proc_lib.init_p_do_apply/3

Then I found that, indeed, observer_backend.beam is missing from
/usr/local/lib/erlang25/lib/runtime_tools-1.19.
I then checked the ports tree to see what is in PLIST for lang/erlang.
The file is missing there too, but it is available in -wx subpackage.

So my question is, shouldn't observer_backend.beam (and hrl and erl in
respective directories too)
be included in -main subpackage too? I'm no expert in Erlang, but I know
that Observer is a graphical
tool (so it's OK for it to be in -wx subpackage). But the observer_backend
module doesn't contain
any graphics and can be used in non-graphical environment (such as in
Pleroma above).

---

best regards,

la-ninpre.

I don't know Erlang at all, but if that is the case, then this diff
should do the trick.


Index: 21/Makefile
===================================================================
RCS file: /cvs/ports/lang/erlang/21/Makefile,v
retrieving revision 1.13
diff -u -p -r1.13 Makefile
--- 21/Makefile 1 Sep 2022 20:03:37 -0000       1.13
+++ 21/Makefile 25 Oct 2022 19:18:05 -0000
@@ -6,13 +6,14 @@ COMMENT-wx=   WxWidgets bindings for Erlan
  PORTROACH=    limit:^OTP-21\.
V= 21.3.8.24
-REVISION-main= 1
-REVISION-wx=   0
  DISTNAME=     otp_src_$V
  PKGNAME=      erlang-$V
  PKGNAME-main= erlang-$V
  PKGNAME-wx=   erlang-wx-$V
  EPOCH=                0
+
+REVISION-main= 2
+REVISION-wx=   1
VERSION_SPEC= >=21v0,<22v0
  PKGSPEC-main= erlang-${VERSION_SPEC}
Index: 21/pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/erlang/21/pkg/PLIST-main,v
retrieving revision 1.5
diff -u -p -r1.5 PLIST-main
--- 21/pkg/PLIST-main   11 Jul 2022 22:29:08 -0000      1.5
+++ 21/pkg/PLIST-main   25 Oct 2022 19:18:05 -0000
@@ -1,5 +1,6 @@
  @option no-default-conflict
  @pkgpath lang/erlang/21
+@conflict erlang-wx->=21v0,<=21.3.8.24p0v0
  bin/ct_run21
  bin/dialyzer21
  bin/epmd21
@@ -2183,6 +2184,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/dyntrace.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/erts_alloc_config.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/msacc.beam
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/observer_backend.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.app
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.appup
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.beam
@@ -2214,6 +2216,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/examples/user-probe.d
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/examples/user-probe.systemtap
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/observer_backend.hrl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/lib/
  @so lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/lib/dyntrace.so
@@ -2225,6 +2228,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/dyntrace.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/erts_alloc_config.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/msacc.erl
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/observer_backend.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/runtime_tools.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/runtime_tools_sup.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/scheduler.erl
Index: 21/pkg/PLIST-wx
===================================================================
RCS file: /cvs/ports/lang/erlang/21/pkg/PLIST-wx,v
retrieving revision 1.4
diff -u -p -r1.4 PLIST-wx
--- 21/pkg/PLIST-wx     21 May 2022 12:01:42 -0000      1.4
+++ 21/pkg/PLIST-wx     25 Oct 2022 19:18:05 -0000
@@ -169,9 +169,6 @@ lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/observer_wx.erl
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/ttb.erl
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/ttb_et.erl
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/observer_backend.beam
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/observer_backend.hrl
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/observer_backend.erl
  lib/${ERLANG_V}/lib/${ERL_WX}/
  lib/${ERLANG_V}/lib/${ERL_WX}/ebin/
  lib/${ERLANG_V}/lib/${ERL_WX}/ebin/gl.beam
Index: 25/Makefile
===================================================================
RCS file: /cvs/ports/lang/erlang/25/Makefile,v
retrieving revision 1.4
diff -u -p -r1.4 Makefile
--- 25/Makefile 6 Oct 2022 15:35:12 -0000       1.4
+++ 25/Makefile 25 Oct 2022 19:18:05 -0000
@@ -10,8 +10,8 @@ PKGNAME=      erlang-$V
  PKGNAME-main= erlang-$V
  PKGNAME-wx=   erlang-wx-$V
-#REVISION-main=
-#REVISION-wx=
+REVISION-main= 0
+REVISION-wx=   0
VERSION_SPEC= >=25,<26
  PKGSPEC-main= erlang-${VERSION_SPEC}
Index: 25/pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/erlang/25/pkg/PLIST-main,v
retrieving revision 1.1
diff -u -p -r1.1 PLIST-main
--- 25/pkg/PLIST-main   12 Jul 2022 20:45:16 -0000      1.1
+++ 25/pkg/PLIST-main   25 Oct 2022 19:18:05 -0000
@@ -1,4 +1,5 @@
  @option no-default-conflict
+@conflict erlang-wx->=25,<=25.1.1
  @option is-branch
  bin/ct_run25
  bin/dialyzer25
@@ -1972,6 +1973,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/dyntrace.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/erts_alloc_config.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/msacc.beam
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/observer_backend.beam
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.app
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.appup
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/runtime_tools.beam
@@ -2003,6 +2005,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/examples/user-probe.d
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/examples/user-probe.systemtap
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/observer_backend.hrl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/lib/
  @so lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/priv/lib/dyntrace.so
@@ -2014,6 +2017,7 @@ lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/dyntrace.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/erts_alloc_config.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/msacc.erl
+lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/observer_backend.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/runtime_tools.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/runtime_tools_sup.erl
  lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/scheduler.erl
Index: 25/pkg/PLIST-wx
===================================================================
RCS file: /cvs/ports/lang/erlang/25/pkg/PLIST-wx,v
retrieving revision 1.1
diff -u -p -r1.1 PLIST-wx
--- 25/pkg/PLIST-wx     12 Jul 2022 20:45:16 -0000      1.1
+++ 25/pkg/PLIST-wx     25 Oct 2022 19:18:05 -0000
@@ -172,9 +172,6 @@ lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/observer_wx.erl
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/ttb.erl
  lib/${ERLANG_V}/lib/${ERL_OBSERVER}/src/ttb_et.erl
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/ebin/observer_backend.beam
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/include/observer_backend.hrl
-lib/${ERLANG_V}/lib/${ERL_RUNTIME_TOOLS}/src/observer_backend.erl
  lib/${ERLANG_V}/lib/${ERL_WX}/
  lib/${ERLANG_V}/lib/${ERL_WX}/ebin/
  lib/${ERLANG_V}/lib/${ERL_WX}/ebin/gl.beam


Reply via email to