Subject: bug#46472: Make lisp/mail/uce.el obsolete

From: Stefan Kangas <[email-masked]>
Date: Tue, 12 Oct 2021 09:12:02 -0700

Eli Zaretskii <[email-masked]> writes:

> No, please leave unnecessary changes out of emacs-28.

Even documentation changes?

I'd suggest installing the change as attached on emacs-28.  If that's
not possible, I'd like to install it on master, but add the same text to
the package "Commentary" section on emacs-28.

> I would leave the original text intact, as dividing it into two splits
> the description of the package, and the additional text is too long to
> keep the beginning in mind.

OK.

> So I think the same message could be usefully conveyed with much fewer
> words.

I've tried shortening it in the attached.

>> +(defcustom uce-i-want-to-use-this nil
>> +  "Non-nil means that you don't want the warning message about this package.
>> +See `uce-reply-to-uce' for background."
>> +  :type 'boolean
>> +  :version "28.1")
>
> This is redundant, since users that don't want this should not load
> the package.

OK, I'm fine with a non-optional warning.

> Why the same text again?
[...]
> And again?

So these were the three entry points I see: `describe-package', `C-h f',
and running the command.  It is true that it should be enough to just
show the warning when running the command.
From 8dfe3d1e8f1d9571e1f11da75ff5956f3b1ef4a0 Mon Sep 17 00:00:00 2001
From: Stefan Kangas <[email-masked]>
Date: Tue, 12 Oct 2021 06:30:20 +0200
Subject: [PATCH] Recommend against using uce.el

* lisp/mail/uce.el: Recommend against its use.  (Bug#46472)
---
 lisp/mail/uce.el | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/lisp/mail/uce.el b/lisp/mail/uce.el
index b07004de38..7d59986ae2 100644
--- a/lisp/mail/uce.el
+++ b/lisp/mail/uce.el
@@ -358,7 +358,36 @@ uce-reply-to-uce
       ;; Run hooks before we leave buffer for editing.  Reasonable usage
       ;; might be to set up special key bindings, replace standard
       ;; functions in mail-mode, etc.
-      (run-hooks 'mail-setup-hook 'uce-setup-hook))))
+      (run-hooks 'mail-setup-hook 'uce-setup-hook)))
+  (pop-to-buffer (get-buffer-create "uce-reply-to-uce warning"))
+  (insert "-- !!! NOTE !!! --------------------------------------------
+
+Replying to spam is at best pointless, but most likely actively
+harmful.
+
+- You will confirm that your email address is valid, thus ensuring
+  you get more spam.
+
+- You will leak information (e.g. on your email server and
+  setup), thus opening yourself up for further attack.  They are
+  likely to find your IP and \"geolocation\"), which often makes
+  it trivial to find e.g. your home address and phone number.
+
+- The sender address is likely fake.  The abuse@domain is
+  unlikely to be able to do anything.
+
+- You open yourself up to various kinds of social engineering.
+
+- You confirm that the email did not land in your spam folder.
+  (This helps them refine their methods of spamming.)
+
+- Scammers have been known to threaten, intimidate, and use other
+  forms of criminal manipulation.  Replying to spam can lead down
+  a path that you may not want to be on.
+
+Therefore, we strongly recommend that you do not use this package.
+Use a spam filter instead, or just delete the spam.
+"))
 
 (defun uce-insert-ranting (&optional _ignored)
   "Insert text of the usual reply to UCE into current buffer."
-- 
2.30.2