Remove final uses of 'cl' in lisp/net
[emacs.git] / doc / emacs / anti.texi
blob9c63e04dcbedad6a32d6318bd938f7ecd5d302d6
1 @c -*- coding: utf-8 -*-
2 @c This is part of the Emacs manual.
3 @c Copyright (C) 2005-2018 Free Software Foundation, Inc.
4 @c See file emacs.texi for copying conditions.
6 @node Antinews
7 @appendix Emacs 25 Antinews
8 @c Update the emacs.texi Antinews menu entry with the above version number.
10   For those users who live backwards in time, here is information
11 about downgrading to Emacs version 25.2.  We hope you will enjoy the
12 greater simplicity that results from the absence of many @w{Emacs
13 @value{EMACSVER}} features.
15 @itemize @bullet
16 @item
17 Emacs no longer defaults to requiring the GnuTLS library when you
18 build it.  Those who want the TLS functionality built-in will have to
19 explicitly request it at build time---or forever hold their peace.  We
20 decided that having the TLS functionality doesn't justify annoying
21 users or package builders with error messages about libgnutls absence.
22 We also decided that if you do build with GnuTLS, we will allow
23 versions of the library older than 2.12.2, as that version will become
24 less and less available/popular as you move farther back in time.
26 @item
27 For similar reasons, we've reverted back to building our own version
28 of @command{movemail} that retrieves POP3 mail as clear text via
29 insecure channels.  As you move back in time, the availability of
30 secure alternatives to POP3 will diminish, and we are only keen to
31 support that.  We've also removed the @option{--with-mailutils}
32 configure-time option, as it no longer makes sense for the observable
33 past.
35 @item
36 We have removed support for @command{systemd} and similar services: we
37 no longer provide a user init file for enabling Emacs support via
38 those services, and we removed from the Emacs server the
39 socket-launching support important for Emacs client operation under
40 these services.  Again, these services will lose popularity as you
41 move back in time, so the code supporting them will be just dead code,
42 bloating Emacs unnecessarily.
44 @item
45 Reproducible builds of Emacs are no longer supported, as past
46 development will make that unnecessary.
48 @item
49 The @option{--fg-daemon} is gone, leaving only @option{--daemon}.  No
50 need to procrastinate on the dilemma whether you do or don't want the
51 new shiny ``headless Emacs'' thingy.  Hail, simplicity!
53 @item
54 As text terminals supporting true color will lose ground as you move
55 back in time, we've removed support for 24-bit colors on text
56 terminals.  If you want colors on a text terminal, you should be fine
57 with just 8 of them.  (Truth being told, we think text terminals
58 should be monochrome, but you will have to keep downgrading to older
59 Emacs versions to have that feature back.)
61 @item
62 Emacs 25.2 no longer supports magic signatures of the form
63 @samp{#!/usr/bin/env @var{interpreter}} in scripts.  Moving back in
64 time means you are getting closer to the ideal of the original Unix
65 design where all the interpreters lived in a single directory
66 @file{/bin}, so this fancy feature is simply becoming unnecessary
67 ballast.
69 @item
70 The double-buffering feature of Emacs display on X has been removed.
71 We decided that its complexity and a few random surprising
72 side-effects aren't justified by the gains, even though those gains
73 were hailed in some quarters.  Yes, Emacs 25.2 will flicker in some
74 use cases, but we are sure Emacs users will be able to suck it, a they
75 have been doing for years.  Since this feature is gone, we've also
76 removed the @code{inhibit-double-buffering} frame parameter, which is
77 now unnecessary.
79 @item
80 Non-breaking hyphens and ASCII characters displayed instead of
81 unsupported quote characters are now again displayed using the
82 @code{escape-glyph} face.  We think having a single face instead of 3
83 different ones will make Emacs customization a much simpler job for
84 users.  For the same reason, we've removed the
85 @code{header-line-highlight} face, leaving just @code{highlight} for
86 any element of the Emacs display besides the mode line.
88 @item
89 You can no longer disable attempts of recovery from fatal exceptions
90 such as C stack overflows and fatal signals.  Since the recovery
91 included in Emacs is reliable enough, we decided there was no reason
92 to put your edits in danger of becoming lost when these situations
93 happen.  The variables @code{'attempt-stack-overflow-recovery} and
94 @code{attempt-orderly-shutdown-on-fatal-signal} are therefore removed.
96 @item
97 The @code{list-timers} command was removed, as we decided timers are
98 not user-level feature, and therefore users should not be allowed to
99 mess with them.  Ask an Emacs Lisp guru near you for help if you have
100 a runaway timer in your session.  (Of course, as you move back in
101 time, such runaway timers will become less and less frequent, and
102 actually timers might start shutting down automatically, as they
103 cannot cope with time reversal.)
105 @item
106 Horizontal scrolling using the mouse or touchpad has been removed.  In
107 the past, wide monitors will become less popular, so horizontal
108 scrolling will no longer be needed.  Removal of the mouse support for
109 horizontal scrolling is the first step towards its complete removal in
110 prior Emacs versions.
112 @item
113 We have found the @option{--tramp} option of @command{emacsclient} too
114 risky and too complicated, so we removed it to simplify the client
115 code and its usage.
117 @item
118 The @code{display-raw-bytes-as-hex} variable is gone, so raw bytes can
119 only be displayed as octal escapes.  Emacs users should be able to
120 convert from octal to any other base in their sleep!
122 @item
123 Displaying line numbers for a buffer is only possibly using add-on
124 features, such as @code{linum-mode}, which can only display the
125 numbers in the display margins.  Line-number display using these
126 features is also slow, as we firmly believe such a feature is
127 un-Emacsy and should not have been included in Emacs to begin with.
128 Consequently, @code{display-line-numbers-mode} was removed.
130 @item
131 On our permanent quest for simplifying Emacs, we've removed the
132 support for passing command-line arguments and options to Emacs via
133 the @option{--alternate-editor} option of @command{emacsclient} and
134 @env{ALTERNATE_EDITOR} environment variable.  There's only one True
135 Emacs---the one that comes up when invoked as @kbd{emacs}, no need for
136 all those fancy options!
138 @item
139 The complication known as ``single-line horizontal scrolling'' is no
140 longer with you in Emacs 25.2.  This feature was a bow to ``other
141 editors''; instead, let those other editors bow to Emacs by hscrolling
142 the entire window at all times.  Repeat after me: ``The Emacs way is
143 the Only Way!''
145 @item
146 The fancy case conversions of non-ASCII characters used in several
147 locales, like Turkish and Greek, are removed, leaving the relations
148 between upper and lower letter-case simple again, as they were in
149 7-bit ASCII.  Likewise with ligatures that turn into multiple
150 characters when their letter-case changes---gone.
152 @item
153 Enchant is no longer supported by @code{ispell-buffer} and similar
154 spell-checking commands.  As Enchant will gradually disappear while
155 you move back in time, its support will become unnecessary anyway.
157 @item
158 Tramp lost its support for Google Drive repositories.  Cloud storage
159 is on its way to extinction as you move back in time, thus making this
160 feature redundant.
162 @item
163 Several commands, deemed to be unnecessary complications, have been
164 removed.  Examples include @code{replace-buffer-contents} and
165 @code{apropos-local-variable}.
167 @item
168 To keep up with decreasing computer memory capacity and disk space, many
169 other functions and files have been eliminated in Emacs 25.2.
170 @end itemize