git: 299c79dead88 - 2026Q3 - mail/sympa: Update 6.2.78 => 6.2.80

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Tue, 15 Sep 2026 14:38:56 UTC
The branch 2026Q3 has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=299c79dead88519bee4db93f15485020abd2c6ac

commit 299c79dead88519bee4db93f15485020abd2c6ac
Author:     geoffroy desvernay <dgeo@centrale-med.fr>
AuthorDate: 2026-09-15 14:33:42 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2026-09-15 14:38:44 +0000

    mail/sympa: Update 6.2.78 => 6.2.80
    
    Changelog:
    https://github.com/sympa-community/sympa/blob/6.2.80/NEWS.md
    
    Improve port:
    - Remove unnecessary GNU_CONFIGURE_MANPREFIX.
    - Remove unused ICONSDIR.
    - Fix antipattern BUILD_DEPENDS=RUN_DEPENDS.
    - Fix warning from portclippy.
    
    PR:             298519 283227
    Sponsored by:   UNIS Labs (vvd, improve port)
    Co-authored-by: Vladimir Druzenko <vvd@FreeBSD.org>
    MFH:            2026Q3
    
    (cherry picked from commit 00e774dc9c7575932f14bd8bdfde7619935e8e67)
---
 mail/sympa/Makefile              |  14 ++--
 mail/sympa/distinfo              |   6 +-
 mail/sympa/files/patch-issue1984 | 177 ---------------------------------------
 3 files changed, 9 insertions(+), 188 deletions(-)

diff --git a/mail/sympa/Makefile b/mail/sympa/Makefile
index ebd965beb7c5..026bd090a305 100644
--- a/mail/sympa/Makefile
+++ b/mail/sympa/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	sympa
-DISTVERSION=	6.2.78
+DISTVERSION=	6.2.80
 CATEGORIES=	mail
 
 MAINTAINER=	dgeo@centrale-med.fr
@@ -9,9 +9,7 @@ WWW=		https://www.sympa.community
 LICENSE=	GPLv2+
 LICENSE_FILE=	${WRKSRC}/COPYING
 
-BUILD_DEPENDS=	${RUN_DEPENDS} \
-		postfix:mail/postfix
-RUN_DEPENDS=	mhonarc>=0:www/mhonarc \
+BR_DEPENDS=	mhonarc>=0:www/mhonarc \
 		p5-App-cpanminus>=0:devel/p5-App-cpanminus \
 		p5-Archive-Zip>=1.05:archivers/p5-Archive-Zip \
 		p5-CGI>=3.51:www/p5-CGI \
@@ -53,6 +51,9 @@ RUN_DEPENDS=	mhonarc>=0:www/mhonarc \
 		p5-URI>=1.35:net/p5-URI \
 		p5-URI-Find>0:textproc/p5-URI-Find \
 		p5-XML-LibXML>=1.70:textproc/p5-XML-LibXML
+BUILD_DEPENDS=	${BR_DEPENDS} \
+		postfix:mail/postfix
+RUN_DEPENDS=	${BR_DEPENDS}
 
 # Shebang is corrected by configure script
 USES=		autoreconf cpe fakeroot gettext gmake perl5 shebangfix
@@ -61,8 +62,6 @@ GH_ACCOUNT=	sympa-community
 USE_RC_SUBR=	sympa
 
 GNU_CONFIGURE=	yes
-GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
-
 CONFIGURE_ARGS+=	--bindir=${PREFIX}/bin \
 			--datadir=${DATADIR} \
 			--enable-fhs \
@@ -112,15 +111,14 @@ APACHE_USES=		apache:run
 FASTCGI_RUN_DEPENDS=	p5-CGI-Fast>=1.08:www/p5-CGI-Fast \
 			p5-FCGI>=0.67:www/p5-FCGI
 MYSQL_RUN_DEPENDS=	${DBD_MYSQL}
+MYSQL_USES=		mysql
 MYSQL_SUB_LIST=		REQ_MYSQL=mysql
 MYSQL_SUB_LIST_OFF=	REQ_MYSQL=""
-MYSQL_USES=		mysql
 PGSQL_RUN_DEPENDS=	p5-DBD-Pg>=2.00:databases/p5-DBD-Pg
 PGSQL_SUB_LIST=		REQ_PGSQL=postgresql
 PGSQL_SUB_LIST_OFF=	REQ_PGSQL=""
 SQLITE_RUN_DEPENDS=	p5-DBD-SQLite>=1.31:databases/p5-DBD-SQLite
 
-ICONSDIR?=	www/icons
 post-patch:
 	@${REINPLACE_CMD} -e 's|^\( *staticdir=\).*$$|\1${DATADIR}|'	\
 	    -e 's|^\( *arcdir=\).*$$|\1${DATADIR}/arc|'			\
diff --git a/mail/sympa/distinfo b/mail/sympa/distinfo
index 13574f69b319..2cd4cf9048b4 100644
--- a/mail/sympa/distinfo
+++ b/mail/sympa/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1784703882
-SHA256 (sympa-community-sympa-6.2.78_GH0.tar.gz) = 7bd20fbbbcc206413c5247febb39724df4c7d21e907388f37cee79df5a0e8713
-SIZE (sympa-community-sympa-6.2.78_GH0.tar.gz) = 10549542
+TIMESTAMP = 1789457702
+SHA256 (sympa-community-sympa-6.2.80_GH0.tar.gz) = 80f5a1a6dfbb4bf5629750c1d07a366a2fbf7f20222942cb779376e64bc0168a
+SIZE (sympa-community-sympa-6.2.80_GH0.tar.gz) = 10558984
diff --git a/mail/sympa/files/patch-issue1984 b/mail/sympa/files/patch-issue1984
deleted file mode 100644
index 6aee7dd71cc1..000000000000
--- a/mail/sympa/files/patch-issue1984
+++ /dev/null
@@ -1,177 +0,0 @@
-https://github.com/sympa-community/sympa/issues/2049
-
-https://github.com/sympa-community/sympa/pull/1984
-
-
-From 2fb03a9d3220f55208aea7ad5149f5d3b2a13da3 Mon Sep 17 00:00:00 2001
-From: IKEDA Soji <mail@ikedas.net>
-Date: Thu, 23 Apr 2026 20:49:45 +0900
-Subject: [PATCH] correct broken refactoring occurred on #1984
-
----
- src/lib/Sympa/CLI.pm        | 58 +++++++++++++++++++------------------
- src/lib/Sympa/CLI/create.pm |  2 +-
- t/CLI_getoptions.t          |  7 ++---
- 3 files changed, 34 insertions(+), 33 deletions(-)
-
-diff --git a/src/lib/Sympa/CLI.pm b/src/lib/Sympa/CLI.pm
-index 5b72cb9c5..e408bc4f5 100644
---- src/lib/Sympa/CLI.pm
-+++ src/lib/Sympa/CLI.pm
-@@ -75,14 +75,10 @@ sub run {
-         map {s/[.].*\z//r} grep {defined} @ENV{qw(LANGUAGE LC_ALL LANG)};
-     $language->set_lang(@langs, 'en-US', 'en');
- 
--    # Parse options if necessary.
-+    # Parse command and options.
-     my %options;
--    if ($options) {
--        %options = %$options;
--    } else {
--        $class = $class->getoptions(\%options, \@argv);
--        return undef unless $class;
--    }
-+    ($class, %options) = $class->getoptions($options, \@argv);
-+    return undef unless $class;
- 
-     # Suppress console output if specified.
-     # Setup language if specified.
-@@ -92,26 +88,24 @@ sub run {
-     $class->arrange(%options) if $class->_need_priv;
- 
-     # Parse arguments.
--    if (@argv) {
--        @argv = $class->parseargs(@argv);
--        return unless @argv;
--    }
-+    return undef unless $class->parseargs(\@argv);
- 
-     $class->_run(\%options, @argv);
- }
- 
- sub getoptions {
--    my $class     = shift;
--    my $options_r = shift;
--    my $argv_r    = shift;
-+    my $class   = shift;
-+    my $options = shift;
-+    my $argv_r  = shift;
-+    my @argv    = @$argv_r;
- 
--    while (@$argv_r and ($argv_r->[0] // '') =~ /\A\w+\z/) {
-+    while (@argv and ($argv[0] // '') =~ /\A\w+\z/) {
-         # Check if (sub-)command is implemented.
-         my $dir = $INC{($class =~ s|::|/|gr) . '.pm'} =~ s/[.]pm\z//r;
--        last unless -e "$dir/$argv_r->[0].pm";
-+        last unless -e "$dir/$argv[0].pm";
- 
-         # Load module for the command.
--        my $command = shift @$argv_r;
-+        my $command = shift @argv;
-         my $subclass = sprintf '%s::%s', $class, $command;
-         unless (eval(sprintf 'require %s', $subclass)
-             and $subclass->isa($class)) {
-@@ -126,17 +120,21 @@ sub getoptions {
-         # No valid main command.
-         warn $language->gettext_sprintf(
-             'Invalid argument \'%s\' (command is expected)',
--            ($argv_r->[0] // ''))
-+            ($argv[0] // ''))
-             . "\n";
-         return undef;
-     }
- 
--    if (grep /^-/, $class->_options) {
-+    # Parse options if necessary.
-+    my %options;
-+    if ($options) {
-+        %options = %$options;
-+    } elsif (grep /^-/, $class->_options) {
-         ;
-     } elsif (
-         not Getopt::Long::GetOptionsFromArray(
--            $argv_r,
--            $options_r,
-+            \@argv,
-+            \%options,
-             map {
-                 # If option name contains hyphen-minus, underscore is also
-                 # allowed and the latter will be used for keys in the hash.
-@@ -154,13 +152,16 @@ sub getoptions {
-         return undef;
-     }
- 
--    return $class;
-+    @$argv_r = @argv;
-+    return ($class, %options);
- }
- 
--# Parse arguments.
- sub parseargs {
--    my $class = shift;
--    my @argv  = @_;
-+    my $class  = shift;
-+    my $argv_r = shift;
-+    my @argv   = @$argv_r;
-+
-+    return $argv_r unless @argv;
- 
-     my @parsed_argv = ();
-     foreach my $argdefs ($class->_args) {
-@@ -176,7 +177,7 @@ sub parseargs {
-             warn $language->gettext_sprintf('Missing argument (%s)',
-                 _arg_expected($defs))
-                 . "\n";
--            return;
-+            return undef;
-         }
-         foreach my $arg (@a) {
-             my $val;
-@@ -233,12 +234,13 @@ sub parseargs {
-                     'Invalid argument \'%s\' (%s)',
-                     $arg, _arg_expected($defs))
-                     . "\n";
--                return;
-+                return undef;
-             }
-         }
-     }
- 
--    return (@parsed_argv, @argv);
-+    @$argv_r = (@parsed_argv, @argv);
-+    return $argv_r;
- }
- 
- sub _options       {qw(config|f=s debug|d lang|l=s log_level=s mail|m noout)}
-diff --git a/src/lib/Sympa/CLI/create.pm b/src/lib/Sympa/CLI/create.pm
-index c9a73d406..4a060688e 100644
---- src/lib/Sympa/CLI/create.pm
-+++ src/lib/Sympa/CLI/create.pm
-@@ -31,7 +31,7 @@ use Sympa::Spindle::ProcessRequest;
- 
- use parent qw(Sympa::CLI);
- 
--use constant _options => qw(input-file=s);
-+use constant _options => qw(input_file=s);
- use constant _args    => qw(family|domain?);
- 
- sub _run {
-diff --git a/t/CLI_getoptions.t b/t/CLI_getoptions.t
-index afbaa772e..475128793 100644
---- t/CLI_getoptions.t
-+++ t/CLI_getoptions.t
-@@ -59,11 +59,10 @@ sub dotest {
-     my $wishedArgv    = shift;
-     my @argv          = @_;
- 
--    diag join(' ', @argv) =~ s/(.{73}).*/$1.../r;
--    my %options;
--    my $class = Sympa::CLI->getoptions(\%options, \@argv);
-+    my ($class, %options) = Sympa::CLI->getoptions(undef, \@argv);
- 
--    is $class, $wishedClass, "Class $wishedClass";
-+    ok $class, join(' ', @_) =~ s/(.{73}).*/$1.../r;
-+    is $class, $wishedClass, $wishedClass;
-     is_deeply \%options, $wishedOptions, sprintf '{%s}',
-         join(', ', sort keys %$wishedOptions) =~ s/(.{65}).*/$1.../r;
-     is_deeply \@argv, $wishedArgv, sprintf '[%s]',