From: Stuart Henderson Subject: Re: Retire erlang/26 for erlang/29 To: Volker Schlecht Cc: ports Date: Mon, 27 Jul 2026 22:42:39 +0100 OK to hook up 29. I agree with dropping 26 but it's missing the upgrade path. lang/erlang/27 needs @pkgpath markers in 27's pkg/PLIST-* (@pkgpath lang/erlang/26,-main and ,-wx). rebar3 needs a quirks $stem_extensions entry from erl26-rebar3 to erl27-rebar3 and @pkgpath devel/rebar3,erlang26 for rebar3,erlang27 (can be done unconditionally for now, but if an erlang28 flavour is added to rebar3 then the @pkgpath will need to only be in the PLIST for ,erlamg27 - this can be done in a PFRAG or via a variable that expands to @comment or nothing). And 27 in -current will need to keep REVISION above 7.9-stable (as will rebar3 if there are any updates in -stable: unlikely I guess, but worth a comment just in case). On 2026/07/27 22:01, Volker Schlecht wrote: > Erlang 26 is not supported anymore, and Erlang 29 has been building > and testing fine for the past 4 releases. > > I'd like to sent 26 to the attic, and hook up 29. > > Unfortunately devel/rebar3 still doesn't play nice with 29 yet, so I'd just > disable building a 29 FLAVOR for now. > > ok? > Index: Makefile > =================================================================== > RCS file: /cvs/ports/lang/erlang/Makefile,v > retrieving revision 1.79 > diff -u -p -r1.79 Makefile > --- Makefile 19 Jun 2025 13:24:55 -0000 1.79 > +++ Makefile 27 Jul 2026 19:51:38 -0000 > @@ -1,6 +1,6 @@ > SUBDIR = > - SUBDIR += 26 > SUBDIR += 27 > SUBDIR += 28 > + SUBDIR += 29 > > .include > Index: erlang.port.mk > =================================================================== > RCS file: /cvs/ports/lang/erlang/erlang.port.mk,v > retrieving revision 1.49 > diff -u -p -r1.49 erlang.port.mk > --- erlang.port.mk 6 May 2026 15:52:38 -0000 1.49 > +++ erlang.port.mk 27 Jul 2026 19:51:38 -0000 > @@ -23,7 +23,7 @@ MODERL_HANDLE_FLAVORS ?= No > # If erlang.port.mk should handle FLAVORS, define a separate FLAVOR > # for each erlang runtime > . if !defined(FLAVORS) > -FLAVORS = erlang26 erlang27 erlang28 > +FLAVORS = erlang27 erlang28 erlang29 > . endif > > FULLPKGNAME ?= ${MODERL_PKG_PREFIX}-${PKGNAME} > @@ -38,27 +38,27 @@ FLAVOR = ${_MODERL_DEFAULT_FLAVOR} > MODERL_PKG_PREFIX = erl${MODERL_VERSION} > > .if defined(MODERL_VERSION) > -. if ${MODERL_VERSION} == 26 > -_MODERL_FLAVOR = erlang26 > -. elif ${MODERL_VERSION} == 27 > +. if ${MODERL_VERSION} == 27 > _MODERL_FLAVOR = erlang27 > . elif ${MODERL_VERSION} == 28 > _MODERL_FLAVOR = erlang28 > +. elif ${MODERL_VERSION} == 29 > +_MODERL_FLAVOR = erlang29 > . else > ERRORS += "Invalid MODERL_VERSION set: ${MODERL_VERSION}." > . endif > .else > # When only flavour is set, derive version > . if !empty(FLAVOR) > -. if ${FLAVOR} == erlang26 > -MODERL_VERSION ?= 26 > -_MODERL_FLAVOR ?= erlang26 > -. elif ${FLAVOR} == erlang27 > +. if ${FLAVOR} == erlang27 > MODERL_VERSION ?= 27 > _MODERL_FLAVOR ?= erlang27 > . elif ${FLAVOR} == erlang28 > MODERL_VERSION ?= 28 > _MODERL_FLAVOR ?= erlang28 > +. elif ${FLAVOR} == erlang29 > +MODERL_VERSION ?= 29 > +_MODERL_FLAVOR ?= erlang29 > . endif > . endif > .endif > @@ -81,7 +81,7 @@ MODERL_USE_REBAR3 = Yes > MODERL_BUILD_DEPENDS += devel/rebar3,${_MODERL_FLAVOR} > REBAR_BIN ?= ${LOCALBASE}/bin/rebar3-${MODERL_VERSION} > # Make sure rebar gets called as 'rebar3', otherwise escript tries to call the > -# binary name (e.g. rebar3-27) as the script entrypoint. > +# binary name (e.g. rebar3-28) as the script entrypoint. > _MODERL_LINKS += rebar3-${MODERL_VERSION} rebar3 > .endif > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/devel/Makefile,v > retrieving revision 1.2597 > diff -u -p -r1.2597 Makefile > --- Makefile 24 Jul 2026 20:18:19 -0000 1.2597 > +++ Makefile 27 Jul 2026 19:56:12 -0000 > @@ -1882,7 +1882,6 @@ > SUBDIR += rcs-fast-import > SUBDIR += re2c > SUBDIR += readline > - SUBDIR += rebar3,erlang26 > SUBDIR += rebar3,erlang27 > SUBDIR += rebar3,erlang28 > SUBDIR += reflection-cpp > Index: rebar3/Makefile > =================================================================== > RCS file: /cvs/ports/devel/rebar3/Makefile,v > retrieving revision 1.22 > diff -u -p -r1.22 Makefile > --- rebar3/Makefile 28 Feb 2026 18:47:22 -0000 1.22 > +++ rebar3/Makefile 27 Jul 2026 19:56:17 -0000 > @@ -3,7 +3,10 @@ COMMENT = Erlang build tool > GH_ACCOUNT = erlang > GH_PROJECT = rebar3 > GH_TAGNAME = 3.27.0 > +REVISION = 0 > + > CATEGORIES = devel > + > HOMEPAGE = https://www.rebar3.org > MAINTAINER = Volker Schlecht > > @@ -15,6 +18,8 @@ MODULES = lang/erlang > # for tests > MODERL_MODULES += meck 0.8.13 > MODERL_HANDLE_FLAVORS= Yes > +FLAVOR ?= erlang28 > +FLAVORS = erlang27 erlang28 > CONFIGURE_STYLE = None > > DISTFILES = rebar3-{}${GH_TAGNAME}.tar.gz