summaryrefslogtreecommitdiff
path: root/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm
diff options
context:
space:
mode:
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm')
-rw-r--r--systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm32
1 files changed, 23 insertions, 9 deletions
diff --git a/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm b/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm
index 5df36bc188..ee3c0aafc6 100644
--- a/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm
+++ b/systems/texlive/tlnet/tlpkg/TeXLive/TLUtils.pm
@@ -1,4 +1,4 @@
-# $Id: TLUtils.pm 70991 2024-04-19 15:58:50Z karl $
+# $Id: TLUtils.pm 71007 2024-04-20 14:42:05Z karl $
# TeXLive::TLUtils.pm - the inevitable utilities for TeX Live.
# Copyright 2007-2024 Norbert Preining, Reinhard Kotucha
# This file is licensed under the GNU General Public License version 2
@@ -8,7 +8,7 @@ use strict; use warnings;
package TeXLive::TLUtils;
-my $svnrev = '$Revision: 70991 $';
+my $svnrev = '$Revision: 71007 $';
my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
sub module_revision { return $_modulerevision; }
@@ -4866,6 +4866,13 @@ sub tlnet_disabled_packages {
return @ret;
}
+=item C<< report_tlpdb_differences($rret) >>
+
+Report, using info function, as given in hash reference argument RET,
+with keys removed_packages, added_packages, different_packages.
+
+=cut
+
sub report_tlpdb_differences {
my $rret = shift;
my %ret = %$rret;
@@ -4884,21 +4891,28 @@ sub report_tlpdb_differences {
}
if (defined($ret{'different_packages'})) {
info ("different packages from A to B:\n");
+ my $printed_fmttriggers_msg = 0;
for my $p (sort keys %{$ret{'different_packages'}}) {
- info (" $p\n");
+ info (" $p:\n");
for my $k (sort keys %{$ret{'different_packages'}->{$p}}) {
if ($k eq "revision") {
- info(" revision differ: $ret{'different_packages'}->{$p}->{$k}\n");
+ info(" revision differ: $ret{'different_packages'}->{$p}->{$k}\n");
} elsif ($k eq "removed" || $k eq "added") {
- info(" $k files:\n");
+ info (" $k files:\n");
for my $f (sort @{$ret{'different_packages'}->{$p}->{$k}}) {
- info(" $f\n");
+ info (" $f\n");
}
- } else {
- # e.g., fmttriggers; don't bother making a complete report.
+ } elsif ($k eq "fmttriggers") {
+ # fmttriggers; don't bother making a complete report.
# The fmttriggers will differ when the global variables in
- # 00texlive.autopatterns.tlpsrc change but we forget to
+ # 00texlive.autopatterns.tlpsrc change but we forgot to
# tlforceincr all the packages that depend on the variables.
+ # Which happens depressingly often.
+ info(" $k differ)\n");
+ info("(if 00texlive.autopatterns change, tlforceincr dependents.)\n")
+ if ! $printed_fmttriggers_msg; # just show once
+ $printed_fmttriggers_msg = 1;
+ } else {
info(" $k differ\n");
}
}