unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Philip Kaludercic <philipk@posteo.net>
To: Dmitry Gutov <dmitry@gutov.dev>
Cc: Eli Zaretskii <eliz@gnu.org>,
	 emacs-devel@gnu.org,  joaotavora@gmail.com
Subject: Re: emacs-29 44ebd9cbd56 2/2: Eglot: explain how to update Eglot in manual (bug#62720)
Date: Sat, 29 Apr 2023 09:08:22 +0000	[thread overview]
Message-ID: <87v8hfm4xl.fsf@posteo.net> (raw)
In-Reply-To: <4624e69a-6b29-e807-328d-e0b36259de9e@gutov.dev> (Dmitry Gutov's message of "Sat, 29 Apr 2023 03:52:48 +0300")

Dmitry Gutov <dmitry@gutov.dev> writes:

> On 28/04/2023 21:12, Philip Kaludercic wrote:
>> Dmitry Gutov <dmitry@gutov.dev> writes:
>> 
>>> On 28/04/2023 17:25, Philip Kaludercic wrote:
>>>> Eli Zaretskii<eliz@gnu.org>  writes:
>>>>
>>>>>> Date: Fri, 28 Apr 2023 02:52:56 +0300
>>>>>> From: Dmitry Gutov<dmitry@gutov.dev>
>>>>>>
>>>>>> Hi!
>>>>>>
>>>>>> On 28/04/2023 02:39, João Távora wrote:
>>>>>>>        * lisp/progmodes/eglot.el (eglot-update): New command.
>>>>>> Should it be called eglot-upgrade now as well?
>>>>> No, it should be removed.
>>>> 1+
>>>
>>> This doesn't sound very constructive at this point.
>> It is difficult to be constructive here.  I believe that the
>> long-term
>> complications/confusion of introducing this kind of a command instead of
>> instructing users on Emacs 29 to update a package like Eglot manually is
>> not worth it, while others do.  These matters are difficult to quantify,
>> so we cannot reach a consensus by pointing to some objective reality,
>> and instead of have to fall back on personal impressions and
>> experiences.  I have a hunch that João as the maintainer of Eglot is
>> over-exposed to people who are interested in having the absolutely
>> newest version so they can make use of the absolutely newest features,
>> while most people I know, personally or online, that make use of Eglot
>> barley bother to configure it at all (I consider that to be one of the
>> major setting points for the package, btw).  Comparing other
>> configurations I have seen online, I actually think that what I have in
>> my init.el is a lot:
>> --8<---------------cut here---------------start------------->8---
>> (setup eglot
>>    (setopt eglot-autoshutdown t
>>            eglot-extend-to-xref t
>>            eldoc-echo-area-use-multiline-p nil
>>            eldoc-idle-delay 0.1)
>>    (:bind "C-c a" #'eglot-code-actions
>>           "C-c z" #'eglot-format
>>           "C-c r" #'eglot-rename)
>>    (:unbind [remap display-local-help]))
>> --8<---------------cut here---------------end--------------->8---
>
> But that's the thing: upgrading to a recent version of Eglot is not
> only for the more advanced user. Those can easily go the 'M-x
> list-packages C-s eglot i x' route.
>
> It is those who do the minimum customization and/or are just
> introduced to Emacs, can miss out with more likelihood the longer the
> steps to upgrade Eglot are going to be.

Perhaps, but I don't think that eglot-update/upgrade is a necessary
improvement from that perspective.

> The newest version of Eglot is not just the latest shiny, it's also
> the most recent mapping of modes to language servers, for example. Or
> mapping of Emacs features to LSP capabilities. 

I am afraid I don't get what you mean here?  Could you give an example?

>                                                And Emacs 29 will
> continue to be installed and used 3-5-7 years after its release, where
> some of this stuff will definitely get outdated. If we fixed
> package-upgrade, that could be easy enough, but 'M-x eglot-upgrade'
> can be a comparable alternative.

What do you think about the approach of adding package.el to ELPA, and
then being able to fix the issue of package-upgrade/install that way?

On a related-topic: Shouldn't major modes modify `eglot-server-programs'
instead of centralising all the information in eglot.el?  If that were
the common practice, then it would be a lot easier to propagate
new information about the best language servers to use.

>> Just thinking about introducing a command that we right-now plan to
>> deprecate by the next release is not something I look forward to.
>
> It would probably be deprecated only several major versions later.

Not to my knowledge?

>> Even
>> just promoting the concept of having a package-specific upgrade command
>> is something I am a afraid of (it took for ages for third-party packages
>> to stop adding pointless `foo-version' commands).  And I might have
>> missed something here, but none of this would tackle the "central" issue
>> of use-package not installing the newest version of a package if the
>> package is already built-in, but hasn't yet been installed before.
>
> I don't know if it's "central": according to the docs, (use-package
> eglot :ensure t) is only meant to ensure that Eglot is
> installed. Whether that means the very latest version at the time the
> configuration is first run, or not, seems a matter of opinion.

In that case we agree.  I believe João held a different opinion, but as
I was not able to follow the discussion over the last week in detail I
might have missed something.



  parent reply	other threads:[~2023-04-29  9:08 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <168263878553.23108.4718240877999827191@vcs2.savannah.gnu.org>
     [not found] ` <20230427233949.44D31C22A13@vcs2.savannah.gnu.org>
2023-04-27 23:52   ` emacs-29 44ebd9cbd56 2/2: Eglot: explain how to update Eglot in manual (bug#62720) Dmitry Gutov
2023-04-28  0:35     ` João Távora
2023-04-28  0:40       ` Dmitry Gutov
2023-05-03 22:48       ` Dmitry Gutov
2023-05-03 23:31         ` João Távora
2023-05-03 23:39           ` Dmitry Gutov
2023-05-04  0:50             ` João Távora
2023-05-04  0:56               ` Dmitry
2023-05-04  1:09                 ` João Távora
2023-05-04  9:05                   ` Dmitry Gutov
2023-05-05 14:01                     ` João Távora
2023-05-05 15:06                       ` Dmitry Gutov
2023-04-28  4:37     ` Eli Zaretskii
2023-04-28 14:25       ` Philip Kaludercic
2023-04-28 15:30         ` Dmitry Gutov
2023-04-28 18:12           ` Philip Kaludercic
2023-04-29  0:52             ` Dmitry Gutov
2023-04-29  6:45               ` Eli Zaretskii
2023-04-29 10:01                 ` Dmitry
2023-04-29 10:13                   ` Philip Kaludercic
2023-04-29 11:51                     ` Dmitry
2023-04-29 10:34                   ` Eli Zaretskii
2023-04-29  9:08               ` Philip Kaludercic [this message]
2023-04-29  9:40                 ` Eli Zaretskii
2023-04-29  9:54                   ` Dmitry
2023-04-29 10:15                     ` Philip Kaludercic
2023-04-29 12:52               ` João Távora
2023-04-29 13:10                 ` Po Lu
2023-04-30 12:12                 ` Philip Kaludercic
2023-04-30 17:43                   ` Michael Albinus
2023-05-01  2:09                   ` João Távora
2023-05-01  7:34                     ` Philip Kaludercic
2023-05-02  7:56                       ` Robert Pluim
2023-05-05  5:13                         ` Philip Kaludercic
2023-05-05  6:23                           ` Robert Pluim
2023-05-02 20:35                       ` João Távora
2023-04-29  6:42             ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87v8hfm4xl.fsf@posteo.net \
    --to=philipk@posteo.net \
    --cc=dmitry@gutov.dev \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=joaotavora@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).