Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package debhelper for openSUSE:Factory 
checked in at 2026-02-19 14:25:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/debhelper (Old)
 and      /work/SRC/openSUSE:Factory/.debhelper.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "debhelper"

Thu Feb 19 14:25:05 2026 rev:34 rq:1333918 version:13.30

Changes:
--------
--- /work/SRC/openSUSE:Factory/debhelper/debhelper.changes      2026-01-08 
15:29:56.995378080 +0100
+++ /work/SRC/openSUSE:Factory/.debhelper.new.1977/debhelper.changes    
2026-02-19 14:25:41.112461402 +0100
@@ -1,0 +2,12 @@
+Thu Feb 19 11:32:45 UTC 2026 - Jan Baier <[email protected]>
+
+- update to 13.30
+  * dh_installsystemd[user]: ensure excluded units via -X do not get
+    processed due to `Also=`
+  * dh_clean: Catch missing trailing `/` on directories
+  * d/control: Drop unnecessary `Priority: optional`
+  * dh_installchangelogs: Keep more entries if timestamp cannot be parsed
+    (Closes: #1126043)
+  * Update on Portuguese translation of the man pages (Closes: #1124415)
+
+-------------------------------------------------------------------

Old:
----
  debhelper-debian-13.29.tar.gz

New:
----
  debhelper-debian-13.30.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ debhelper.spec ++++++
--- /var/tmp/diff_new_pack.XmBUye/_old  2026-02-19 14:25:42.240508202 +0100
+++ /var/tmp/diff_new_pack.XmBUye/_new  2026-02-19 14:25:42.240508202 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           debhelper
-Version:        13.29
+Version:        13.30
 Release:        0
 Summary:        Helper programs for debian/rules
 License:        GPL-2.0-or-later

++++++ debhelper-debian-13.29.tar.gz -> debhelper-debian-13.30.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/debian/changelog 
new/debhelper-debian-13.30/debian/changelog
--- old/debhelper-debian-13.29/debian/changelog 2025-12-13 13:21:34.000000000 
+0100
+++ new/debhelper-debian-13.30/debian/changelog 2026-02-15 11:49:09.000000000 
+0100
@@ -1,3 +1,20 @@
+debhelper (13.30) unstable; urgency=medium
+
+  [ Luca Boccassi ]
+  * dh_installsystemd[user]: ensure excluded units via -X do not get
+    processed due to `Also=`
+
+  [ Niels Thykier ]
+  * dh_clean: Catch missing trailing `/` on directories
+  * d/control: Drop unnecessary `Priority: optional`
+  * dh_installchangelogs: Keep more entries if timestamp cannot be parsed
+    (Closes: #1126043)
+
+  [ Américo Monteiro ]
+  * Update on Portuguese translation of the man pages (Closes: #1124415)
+
+ -- Niels Thykier <[email protected]>  Sun, 15 Feb 2026 10:48:53 +0000
+
 debhelper (13.29) unstable; urgency=medium
 
   [ Niels Thykier ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/debian/control 
new/debhelper-debian-13.30/debian/control
--- old/debhelper-debian-13.29/debian/control   2025-12-13 13:21:34.000000000 
+0100
+++ new/debhelper-debian-13.30/debian/control   2026-02-15 11:49:09.000000000 
+0100
@@ -1,6 +1,5 @@
 Source: debhelper
 Section: devel
-Priority: optional
 Maintainer: Debhelper Maintainers <[email protected]>
 Uploaders:
  Niels Thykier <[email protected]>,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/dh_clean 
new/debhelper-debian-13.30/dh_clean
--- old/debhelper-debian-13.29/dh_clean 2025-12-13 13:21:34.000000000 +0100
+++ new/debhelper-debian-13.30/dh_clean 2026-02-15 11:49:09.000000000 +0100
@@ -96,7 +96,7 @@
 # Remove the debhelper stamp file
 rm_files('debian/debhelper-build-stamp') if not $dh{D_FLAG};
 
-my (@clean_files, @clean_dirs, %seen);
+my (@clean_files, @requested_clean_files, @clean_dirs, %seen);
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
@@ -137,7 +137,7 @@
 
 if (! $dh{D_FLAG}) {
        if (@ARGV) {
-               push(@clean_files, grep { !m@/$@ } @ARGV);
+               push(@requested_clean_files, grep { !m@/$@ } @ARGV);
                push(@clean_dirs, grep { m@/$@ } @ARGV);
        }
 
@@ -148,7 +148,7 @@
                        # Silently ignore missing files - for all we know, 
dh_clean is run before
                        # they have been created.
                        } filearray('debian/clean', ["."], 
\&glob_expand_error_handler_silently_ignore);
-                       push(@clean_files, grep { !m@/$@ } @clean);
+                       push(@requested_clean_files, grep { !m@/$@ } @clean);
                        push(@clean_dirs, grep { m@/$@ } @clean);
                }
 
@@ -157,6 +157,17 @@
        }
 }
 
+my @dir_in_clean_files = grep { -d } @requested_clean_files;
+
+if (@dir_in_clean_files) {
+       warning("Removal of the following *files* that turned out to be 
*directories*:");
+       warning("");
+       warning(" * $_") for @dir_in_clean_files;
+       warning("");
+       error("If the removals of these directories were intentional, ensure it 
ends with a trailing slash.");
+}
+
+unshift(@clean_files, @requested_clean_files);
 xargs(\@clean_files, 'rm', '-f', '--') if @clean_files;
 xargs(\@clean_dirs, 'rm', '-fr', '--') if @clean_dirs;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/dh_installchangelogs 
new/debhelper-debian-13.30/dh_installchangelogs
--- old/debhelper-debian-13.29/dh_installchangelogs     2025-12-13 
13:21:34.000000000 +0100
+++ new/debhelper-debian-13.30/dh_installchangelogs     2026-02-15 
11:49:09.000000000 +0100
@@ -164,14 +164,10 @@
        my $changelog_trimmed = generated_file($package, 
"dh_installchangelogs.dch.trimmed");
        my $changelog_binnmu = generated_file($package, 
"dh_installchangelogs.dch.binnmu");
 
-       my ($error_in_changelog, $has_been_trimmed, $oldest_entry_time) =
+       my ($has_been_trimmed, $oldest_entry_time) =
                prepare_changesfile("CHANGELOG", $changelog, 
$changelog_trimmed, $changelog_binnmu);
 
-       if ($error_in_changelog) {
-               # If the changelog could not be trimmed, fall back to the full 
changelog.
-               warning("$changelog could not be trimmed. The full changelog 
will be installed.");
-               $changelog_trimmed = $changelog;
-       } elsif ($has_been_trimmed) {
+       if ($has_been_trimmed) {
                # Otherwise add a comment stating that this changelog has been 
trimmed.
                my $note = "\n";
                $note .= "# Older entries have been removed from this 
changelog.\n";
@@ -200,18 +196,10 @@
 
        my $news_trimmed = generated_file($package, 
"dh_installchangelogs.news.trimmed");
 
-       my ($error_in_news, $has_been_trimmed, $oldest_entry_time) =
-               prepare_changesfile("NEWS", $news, $news_trimmed, undef, 
$oldest_log_entry_time);
-
-       if ($error_in_news) {
-               # If the NEWS file could not be trimmed, fall back to the full 
NEWS file.
-               warning("$news could not be trimmed. The full NEWS file will be 
installed.");
-               $news_trimmed = $news;
-       }
-
+       my ($has_been_trimmed) = prepare_changesfile("NEWS", $news, 
$news_trimmed, undef, $oldest_log_entry_time);
+       my $source = $has_been_trimmed ? $news_trimmed : $news;
        # Install NEWS unless there are no recent news.
-       install_file($news_trimmed, "$tmp/usr/share/doc/$package/$news_name")
-               unless (-z $news_trimmed);
+       install_file($source, "$tmp/usr/share/doc/$package/$news_name") unless 
(-z $source);
 }
 
 sub prepare_changesfile {
@@ -225,10 +213,10 @@
        open(my $log2, ">", $changesfile_trimmed) or error("Cannot 
open($changesfile_trimmed): $!");
 
        my $oldest_entry_time;
-       my $error_in_changesfile = 0;
        my $is_binnmu = 0;
        my $entry = "";
        my $entry_num = 0;
+       my $warned_once = 0;
        while (my $line=<$log1>) {
                $entry .= $line;
 
@@ -265,10 +253,13 @@
                        my $entry_time;
                        eval { $entry_time = Time::Piece->strptime($timestamp, 
'%d %b %Y %T %z') };
                        if (! defined $entry_time) {
-                               $error_in_changesfile = 1;
-                               warning("Could not parse timestamp 
'$timestamp'. $changesfile will not be trimmed.");
-                               truncate($log2, 0) or error("Cannot 
truncate($changesfile_trimmed): $!");
-                               last;
+                               warning("Could not parse timestamp 
'$timestamp'. May keep too many entries") if $warned_once;
+                               $warned_once = 1;
+                               # If we do not know, we just keep it and the 
first one after that. The rationale here is that
+                               # the NEWS file has to keep the exact same 
entries and if we end up on a timestamp we cannot
+                               # parse, we might get that wrong.
+                               $entry_num = MIN_NUM_ENTRIES - 1 if $entry_num 
>= MIN_NUM_ENTRIES;
+                               next;
                        }
 
                        # Stop processing the changelog if we reached the 
cut-off date and
@@ -296,7 +287,7 @@
        close($log1) or error("Cannot close($changesfile): $!");
        close($log2) or error("Cannot close($changesfile_trimmed): $!");
 
-       return $error_in_changesfile, $has_been_trimmed, $oldest_entry_time
+       return $has_been_trimmed, $oldest_entry_time
 }
 
 # INTROSPECTABLE: CONFIG-FILES pkgfile(changelog) pkgfile(NEWS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/dh_installsystemd 
new/debhelper-debian-13.30/dh_installsystemd
--- old/debhelper-debian-13.29/dh_installsystemd        2025-12-13 
13:21:34.000000000 +0100
+++ new/debhelper-debian-13.30/dh_installsystemd        2026-02-15 
11:49:09.000000000 +0100
@@ -389,6 +389,10 @@
                # only to suport a very specific use case in network-manager.
                unless ($dh{NO_ALSO}) {
                        push @args, $_ for grep { !$seen{$_}++ } 
extract_key($path, 'Also');
+                       # Ensure excluded units do not sneak back in via Also=.
+                       foreach my $x (@{$dh{EXCLUDE}}) {
+                               @args = grep !/(^|\/)$x$/, @args;
+                       }
                }
 
                # Extract unit aliases.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/dh_installsystemduser 
new/debhelper-debian-13.30/dh_installsystemduser
--- old/debhelper-debian-13.29/dh_installsystemduser    2025-12-13 
13:21:34.000000000 +0100
+++ new/debhelper-debian-13.30/dh_installsystemduser    2026-02-15 
11:49:09.000000000 +0100
@@ -238,6 +238,10 @@
                # cannot read the unit file when disabling as it has already
                # been deleted.
                push @args, $_ for grep { !$seen{$_}++ } extract_key($path, 
'Also');
+               # Ensure excluded units do not sneak back in via Also=.
+               foreach my $x (@{$dh{EXCLUDE}}) {
+                       @args = grep !/(^|\/)$x$/, @args;
+               }
 
                push @enable_units, $name if contains_install_section($path);
                push @start_units, $name;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/debhelper-debian-13.29/man/po4a/po/pt.po 
new/debhelper-debian-13.30/man/po4a/po/pt.po
--- old/debhelper-debian-13.29/man/po4a/po/pt.po        2025-12-13 
13:21:34.000000000 +0100
+++ new/debhelper-debian-13.30/man/po4a/po/pt.po        2026-02-15 
11:49:09.000000000 +0100
@@ -5,10 +5,10 @@
 # SPDX-FileCopyrightText: 2014 - 2025 Américo Monteiro <[email protected]>
 msgid ""
 msgstr ""
-"Project-Id-Version: debhelper 13.28\n"
+"Project-Id-Version: debhelper 13.29\n"
 "Report-Msgid-Bugs-To: [email protected]\n"
 "POT-Creation-Date: 2025-12-13 13:20+0100\n"
-"PO-Revision-Date: 2025-10-18 19:52+0100\n"
+"PO-Revision-Date: 2025-12-31 22:15+0000\n"
 "Last-Translator: Américo Monteiro <[email protected]>\n"
 "Language-Team: Portuguese <>\n"
 "Language: pt\n"
@@ -562,12 +562,6 @@
 
 #. type: textblock
 #: debhelper.pod:228
-#, fuzzy
-#| msgid ""
-#| "To avoid infinite loops and resource exhaustion, debhelper will stop with "
-#| "an error if the text contains many substitution variables (50) or they "
-#| "expand beyond a certain size (4096 characters or 3x length of the "
-#| "original input - whichever is bigger)."
 msgid ""
 "To avoid infinite loops and resource exhaustion, debhelper will stop with an "
 "error if the token contains many substitution variables (50) or the total "
@@ -575,9 +569,9 @@
 "length of the original input - whichever is bigger)."
 msgstr ""
 "Para evitar ciclos infinitos e exaustão de recursos, o debhelper irá parar "
-"com um erro se o texto conter muitas variáveis de substituição (50) ou se "
-"elas expandirem para lá de um determinado tamanho (4096 caracteres ou 3x o "
-"comprimento da entrada original - qual deles for maior)."
+"com um erro se o token conter muitas variáveis de substituição (50) ou se o "
+"valor total do valor expandido exceder um determinado tamanho (4096 "
+"caracteres ou 3x o comprimento da entrada original - qual deles for maior)."
 
 #. type: textblock
 #: debhelper.pod:233
@@ -586,6 +580,9 @@
 "token. The common case of files like F<< debian/I<package>.install >>, each "
 "token is a file/path name."
 msgstr ""
+"Note que o limite é por token. Cada ajudante decide a sua própria definição "
+"de um token. O caso comum de ficheiros como F<< debian/I<package>.install "
+">>, cada token é um nome de ficheiro/caminho."
 
 #. type: =head3
 #: debhelper.pod:237
@@ -1633,6 +1630,15 @@
 "or hand-written management of configuration files. These things should "
 "generally occur before the B<#DEBHELPER#> token."
 msgstr ""
+"Ao inserir o token B<#DEBHELPER#> num script, considere se qualquer do "
+"código escrito à mão tem uma razão convincente para aparecer I<antes> do "
+"token B<#DEBHELPER#>. O token B<#DEBHELPER#> irá geralmente conter o código "
+"que arranca (F<postinst>) ou pára (F<prerm>/F<preinst>) quaisquer serviços "
+"que o pacote fornece. Muitas vezes (mas nem sempre), é melhor deixar o "
+"código de B<#DEBHELPER#> correr primeiro. Exceções comuns incluem coisas "
+"como B<set -e>, inicializar B<debconf> (quando necessário) e casos especiais "
+"como geração de gestão escrita à mão de ficheiros de configuração. Estas "
+"coisas devem geralmente ocorrer antes do token B<#DEBHELPER#>."
 
 #. type: textblock
 #: debhelper.pod:645
@@ -8721,17 +8727,14 @@
 
 #. type: textblock
 #: dh_installdeb:45
-#, fuzzy
-#| msgid ""
-#| "The B<#DEBHELPER#> token should be placed on its own line as it is often "
-#| "replaced by a multi-line shell script."
 msgid ""
 "The B<#DEBHELPER#> token should be placed on its own line as it is often "
 "replaced by a multi-line shell script. Please see L<debhelper(7)> for advice "
 "on the placement of this token."
 msgstr ""
 "O token B<#DEBHELPER#> deve ser colocado na sua linha própria pois é muitas "
-"vezes substituído por um script de shell de multi-linhas."
+"vezes substituído por um script de shell de multi-linhas. Por favor veja "
+"L<debhelper(7)> para conselho sobre a colocação deste token."
 
 #. type: =item
 #: dh_installdeb:49

Reply via email to