From nobody Sun Dec 17 20:11:05 2023 X-Original-To: freebsd-ports@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4StYxb11QCz548gg for ; Sun, 17 Dec 2023 20:11:15 +0000 (UTC) (envelope-from luca.pizzamiglio@gmail.com) Received: from mail-io1-f53.google.com (mail-io1-f53.google.com [209.85.166.53]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4StYxY2KKyz3FgQ for ; Sun, 17 Dec 2023 20:11:13 +0000 (UTC) (envelope-from luca.pizzamiglio@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of luca.pizzamiglio@gmail.com designates 209.85.166.53 as permitted sender) smtp.mailfrom=luca.pizzamiglio@gmail.com; dmarc=none Received: by mail-io1-f53.google.com with SMTP id ca18e2360f4ac-7b435966249so118037839f.0 for ; Sun, 17 Dec 2023 12:11:13 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702843871; x=1703448671; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8bUy2iBf9Z8PVU4wT3zRCkkIzeKa7w3Bgv+i/Xvc6Ms=; b=QET/qXQFWaEr0b6ylexO/W7LCphxzrvpZ7cBpvU3UFOMKcl/Y6gsnbTQ5Oln67Ug/H Fm+IgRbbQ3v77HbJ8MZ38i0m4NTQm/tlM17jDQRMupR9fybDpzw+xldqE8ojAwLctOtp Qlmraoa3U5MrBZEPiyf5ytnbLul1sTppPuBclBWINPUF8VmMAgfoRBDbPnyPI7koUs6E s8s8J79+9R9X4WSTy243/F5K1vfCcpyU5ugAtUQJOL9oh1eOUmW2o1gO7OQRLCCb0Hbk azqnWECxt6AL0mTJ/ycHQFGF4fPn+ehf1ymjEYJEh5JktZuG0DzylqUkWH7+ceDvIzpM W2zQ== X-Gm-Message-State: AOJu0YwXEopz+7iqc+2zx7xj5AVxm3szlDY/fgq9mfa/DjhB5idOu3Vm FpDDyQB2k5wPlMQawT6aXE+EPpET6mY= X-Google-Smtp-Source: AGHT+IEskb1eo65DO1NeWeSem/9LchiIoBgC7ft/pD6dfbmGI3Mha7BX2LheD/TSwVhsZDsu76M1vg== X-Received: by 2002:a6b:dd0f:0:b0:7b6:fa10:e826 with SMTP id f15-20020a6bdd0f000000b007b6fa10e826mr17312723ioc.37.1702843871000; Sun, 17 Dec 2023 12:11:11 -0800 (PST) Received: from mail-il1-f172.google.com (mail-il1-f172.google.com. [209.85.166.172]) by smtp.gmail.com with ESMTPSA id y23-20020a5e8717000000b007b457153a6bsm5760947ioj.28.2023.12.17.12.11.10 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 17 Dec 2023 12:11:10 -0800 (PST) Received: by mail-il1-f172.google.com with SMTP id e9e14a558f8ab-35facbb87b2so2709155ab.1 for ; Sun, 17 Dec 2023 12:11:10 -0800 (PST) X-Received: by 2002:a05:6e02:1a0c:b0:35d:50a8:8e00 with SMTP id s12-20020a056e021a0c00b0035d50a88e00mr23456591ild.18.1702843870265; Sun, 17 Dec 2023 12:11:10 -0800 (PST) List-Id: Porting software to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-ports List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-ports@freebsd.org X-BeenThere: freebsd-ports@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Luca Pizzamiglio Date: Sun, 17 Dec 2023 21:11:05 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Fwd: Support for subpackages in the portstree is going to land soon! To: FreeBSD Ports mailing list Content-Type: multipart/alternative; boundary="000000000000feca5b060cba3bd4" X-Spamd-Result: default: False [-1.00 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_SPAM_LONG(1.00)[1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FORGED_SENDER(0.30)[pizzamig@freebsd.org,lucapizzamiglio@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-ports@freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[209.85.166.172:received,209.85.166.53:from]; ARC_NA(0.00)[]; FROM_NEQ_ENVFROM(0.00)[pizzamig@freebsd.org,lucapizzamiglio@gmail.com]; TO_DOM_EQ_FROM_DOM(0.00)[]; SUBJECT_ENDS_EXCLAIM(0.00)[]; TO_DN_ALL(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; MLMMJ_DEST(0.00)[freebsd-ports@freebsd.org]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[gmail.com]; R_DKIM_NA(0.00)[]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.166.53:from] X-Rspamd-Queue-Id: 4StYxY2KKyz3FgQ X-Spamd-Bar: / --000000000000feca5b060cba3bd4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable ---------- Forwarded message --------- From: Luca Pizzamiglio Date: Sat, Dec 16, 2023 at 7:36=E2=80=AFPM Subject: Support for subpackages in the portstree is going to land soon! To: developers Hi everyone. It's with pleasure that we are announcing that soon the portstree will support subpackages. Subpackage is the feature to create multiple packages from one port. There has been a lighting talk at EuroBSD 2023 ( https://youtu.be/e-FUYbGNdBg?t=3D824) introducing the topic. While this feature is used in many Linux distro to split packages (i.e. -docs, -srcs, -devel, -man or similar), this is *not* the intended goal we have. Our primary goal is to get rid of ports that are currently compiled separately in order to be packaged separately. Examples are php modules or qt libraries, currently using the so called master/slave port approach. Build time will benefit from it. The slave ports will become subpackages of the master port (we can keep the build optional via OPTIONS). This doesn't mean that all ports based on master/slave need to adopt subpackages, there will be situations where it won't be possible. We want to merge the feature in the framework now (end of the year), but adopt it in ports slowly over the next quarters. To limit the adoption, we will deploy a git hook server-side to request approval from portmgr before introducing subpackages for specific ports. While poudriere (3.4.x) already supports subpackages, other tools don't, and we want to give time to their maintainer to add support. The slow adoption will also allow us to catch problems one at a time and fix them. The patch is available for review here: https://reviews.freebsd.org/D40549 This implementation is heavily based on mat@ (7 years) old implementation ( https://reviews.freebsd.org/D16457) We don't have documentation yet, but another patch ( https://reviews.freebsd.org/D43079) containing two fake ports, used to build and test this feature. They provide the best example of how subpackages would look like and they will be used to write the documentation. The roadmap * successful EXP-RUN to not introduce regressions ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D275735#h0) * add a git hook server-side to allow only controlled adoption * merge the support of subpackages in the portstree (before 2023.12.31) * prepare and update the handbook * success! There will be a lot of questions, I will answer to all of them, but give me some time, I could be AFK from time to time during holiday season. Best regards, pizzamig on behalf of portmgr --000000000000feca5b060cba3bd4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


---------- Forwarded message ---------
From: Luca Pizzamiglio <= ;pizzamig@freebsd.org>
Date: Sat, Dec 16, 2023 at 7:36=E2=80=AFPM
Subject: Support for sub= packages in the portstree is going to land soon!
To: developers <developers@freebsd.org>


Hi everyone.

It's wi= th pleasure that we are announcing that soon the portstree will support sub= packages.

Subpackage is the feature to create mult= iple packages from one port.
There has been a lighting talk at Eu= roBSD 2023 (https://youtu.be/e-FUYbGNdBg?t=3D824) introducing the topic.
While this feature is used in many Linux distro to split packages (= i.e. -docs, -srcs, -devel, -man or similar), this is not the intende= d goal we have.
Our primary goal is to get rid of ports that = are currently compiled separately in order to be packaged separately. Examp= les are php modules or qt libraries, currently using the so called master/s= lave port approach. Build time will benefit from it. The slave ports will b= ecome subpackages of the master port (we can keep the build optional via OP= TIONS).
This doesn't mean that all ports based on master/= slave need to adopt subpackages, there will be situations where it won'= t be possible.

We want to merge the feature i= n the framework now (end of the year), but adopt it in ports slowly over th= e next quarters. To limit the adoption, we will deploy a git hook server-si= de to request approval from portmgr before introducing subpackages for spec= ific ports.
While poudriere (3.4.x) already supports subpacka= ges, other tools don't, and we want to give time to their maintainer to= add support.
The slow adoption will also allow us to catch probl= ems one at a time and fix them.

The patch is a= vailable for review here: https://reviews.freebsd.org/D40549
This imple= mentation is heavily based on mat@ (7 years) old implementation (https://reviews.free= bsd.org/D16457)

We don't have documentati= on yet, but another patch (https://reviews.freebsd.org/D43079) containing two fak= e ports, used to build and test this feature. They provide the best example= of how subpackages would look like and they will be used to write the docu= mentation.

The roadmap
* successful EXP-= RUN to not introduce regressions (https://bugs.freebsd.org= /bugzilla/show_bug.cgi?id=3D275735#h0)
* add a git hook server-sid= e to allow only controlled adoption
* merge the support of subpack= ages in the portstree (before 2023.12.31)
* prepare and updat= e the handbook
* success!

There will be = a lot of questions, I will answer to all of them, but give me some time, I = could be AFK from time to time during holiday season.

Best regards,
pizzamig on behalf of portmgr
=



--000000000000feca5b060cba3bd4--