Package: release.debian.org
Severity: normal
X-Debbugs-Cc: gr...@packages.debian.org
Control: affects -1 + src:groff
User: release.debian....@packages.debian.org
Usertags: unblock

[ Reason ]
As reported in https://bugs.debian.org/1107068, groff's PDF device 
corrupts some man pages by dropping URLs from the output.  Since this 
can be fixed by a one-line patch cherry-picked from upstream, I'd like 
to get the fix into trixie.

[ Impact ]
Man pages that use the .UR macro for URLs omit the URL when formatted 
for PDF.  (This can be worked around using the -rU0 option, but I'm not 
sure how you'd work that out without already being something of an 
expert.)

[ Tests ]
Not tested automatically, but I tested it manually using the "xtrs.man" 
test file in https://savannah.gnu.org/bugs/index.php?67169.

[ Risks ]
The fix consists of removing one line from an.tmac: the argument is that 
the an*end-hyperlink macro in 1.23.0 only handles HTML and terminal 
output devices, so it doesn't make sense to declare PDF as supported in 
an*can-hyperlink.  At most I think this can only affect PDF output.  But 
it's a key package, so feel free to use your own judgement!

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing

unblock groff/1.23.0-9

Thanks,

-- 
Colin Watson (he/him)                              [cjwat...@debian.org]
diff -Nru groff-1.23.0/debian/.git-dpm groff-1.23.0/debian/.git-dpm
--- groff-1.23.0/debian/.git-dpm        2025-05-04 12:15:22.000000000 +0100
+++ groff-1.23.0/debian/.git-dpm        2025-06-03 20:07:13.000000000 +0100
@@ -1,6 +1,6 @@
 # see git-dpm(1) from git-dpm package
-cb39b179f14d868f679bbb0ac7a7d42b780cf0a4
-cb39b179f14d868f679bbb0ac7a7d42b780cf0a4
+a1f6f9bfac4def0fb7656dbd68475fc27c880f05
+a1f6f9bfac4def0fb7656dbd68475fc27c880f05
 4e2e28947560f0b5e3a7e89d43846b9183fb4c09
 4e2e28947560f0b5e3a7e89d43846b9183fb4c09
 groff_1.23.0.orig.tar.gz
diff -Nru groff-1.23.0/debian/changelog groff-1.23.0/debian/changelog
--- groff-1.23.0/debian/changelog       2025-05-04 12:15:22.000000000 +0100
+++ groff-1.23.0/debian/changelog       2025-06-03 20:07:13.000000000 +0100
@@ -1,3 +1,10 @@
+groff (1.23.0-9) unstable; urgency=medium
+
+  * man: Stop enabling hyperlink support for PDF when it isn't yet
+    implemented (closes: #1107068).
+
+ -- Colin Watson <cjwat...@debian.org>  Tue, 03 Jun 2025 20:07:13 +0100
+
 groff (1.23.0-8) unstable; urgency=medium
 
   * mdoc: Reset `Nm` value between pages when formatting PDF/PS (closes:
diff -Nru groff-1.23.0/debian/patches/man-pdf-disable-hyperlink.patch 
groff-1.23.0/debian/patches/man-pdf-disable-hyperlink.patch
--- groff-1.23.0/debian/patches/man-pdf-disable-hyperlink.patch 1970-01-01 
01:00:00.000000000 +0100
+++ groff-1.23.0/debian/patches/man-pdf-disable-hyperlink.patch 2025-06-03 
20:07:13.000000000 +0100
@@ -0,0 +1,35 @@
+From a1f6f9bfac4def0fb7656dbd68475fc27c880f05 Mon Sep 17 00:00:00 2001
+From: "G. Branden Robinson" <g.branden.robin...@gmail.com>
+Date: Sun, 1 Jun 2025 01:56:06 +0100
+Subject: [man]: Fix Savannah #64572 (missing text on PDF).
+
+* tmac/an.tmac: Stop setting `an*can-hyperlink` if formatting for PDF;
+  we don't yet have support for this implemented, leading to vanishing
+  text when the `U` register is true and, for instance, `UR`/`UE` are
+  called with no link text.
+
+Fixes <https://savannah.gnu.org/bugs/?64572>.
+
+Origin: upstream, 
https://cgit.git.savannah.gnu.org/cgit/groff.git/commit/?id=d9e90209725a716dff23807ffffda403c58020c9
+Bug: https://savannah.gnu.org/bugs/?64572
+Bug: https://savannah.gnu.org/bugs/?67169
+Bug-Debian: https://bugs.debian.org/1107068
+Last-Update: 2025-06-01
+
+Patch-Name: man-pdf-disable-hyperlink.patch
+---
+ tmac/an.tmac | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/tmac/an.tmac b/tmac/an.tmac
+index 9e38ba569..2915078d3 100644
+--- a/tmac/an.tmac
++++ b/tmac/an.tmac
+@@ -1290,7 +1290,6 @@ contains unsupported escape sequence
+ .
+ .nr an*can-hyperlink 0
+ .if (  \n[an*is-output-html] \
+-     : \n[an*is-output-pdf] \
+      : \n[an*is-output-terminal]) \
+ .  nr an*can-hyperlink 1
+ .
diff -Nru groff-1.23.0/debian/patches/series groff-1.23.0/debian/patches/series
--- groff-1.23.0/debian/patches/series  2025-05-04 12:15:22.000000000 +0100
+++ groff-1.23.0/debian/patches/series  2025-06-03 20:07:13.000000000 +0100
@@ -15,3 +15,4 @@
 hdtbl-grn-dependency.patch
 mdoc-nm-reset-test.patch
 mdoc-nm-reset.patch
+man-pdf-disable-hyperlink.patch

Reply via email to