Subject: bug#29586: Please revert change to package deletion

From: Adam Porter <[email-masked]>
Date: Tue, 5 Dec 2017 18:20:52 -0600

I'm disappointed to see the change made in response to the filing of
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=14967> being released in
Emacs 26.

The preexisting behavior, to delete packages to the trash, was the safer
behavior.  In the event that an updated package caused a problem, a user
could restore the previous version from the trash.

Since ELPA/MELPA repositories only provide the latest version of a
package, the only other way to recover a previous version of a package
would be for a user to manually recover it from the package's version
control repo.  This is a laborious process, one which most users will
not even have the necessary knowledge to do; generally one would only
expect package developers to be able to do so in a reasonable amount of
time.  For other users, when their config becomes broken due to a new
package version, it's likely that they need to get some work done with
Emacs, and do not therefore have the time to debug such issues and
manually recover the previous version of a package.

This is not an everyday occurrence, but note that, given the relatively
haphazard way in which ELPA/MELPA (the latter, especially) packages are
released, this *does* happen, and inevitably it does so when one doesn't
have time to fix it.  Users who keep their ~/.emacs.d/{,elpa} under
version control have an easy fix for this, but in my estimation, having
been participating in such discussions and encouraging it, this remains
a small minority of users.  Therefore, having old package versions in
the trash is a desirable behavior, in the general best-interests of
users.

The original bug report complained of, "cluttering the user's trash
can."  This is a very poor justification for the change that was made,
to claim that the *trash can* is being cluttered.  The trash can is the
designated receptacle for such clutter, and is designed to be emptied
with a single action.  I cannot fathom real users lamenting that their
*trash can* is cluttered with *trash*.

As well, please note that the original complainant, despite having
significantly contributed to the Emacs community in several ways, has
since aggressively removed himself from the community in general
protest, and is no longer even an Emacs user.

It's especially disappointing, given that a patch
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=14967#36> was posted to
make the behavior configurable, but instead the new, less-safe behavior
was hard-coded.

Finally, the original bug report languished for 3 years without any
other users requesting that the behavior be changed, and then another
year passed before the change was actually made.  Given this, it seems
like this change was essentially made to satisfy the whim of a single
user, who now, very publicly, no longer uses Emacs.

Therefore, please consider reverting this change before Emacs 26 is
released, to avoid this user-unfriendly change being officially released
into the wild.

Thanks for your work on Emacs.