From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Newsgroups: gmane.emacs.devel Subject: Re: What to do about unmaintained ELPA packages Date: Mon, 30 May 2022 15:46:11 +0100 Message-ID: References: <87k0a42fc9.fsf@posteo.net> <8a6d74f7-b78f-3dad-1bd5-f41354f4391f@yandex.ru> <871qwb5wxv.fsf@posteo.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000047cc3705e03bb3d9" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="9727"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Dmitry Gutov , emacs-devel , Noam Postavsky To: Philip Kaludercic , Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon May 30 16:46:49 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nvgfQ-0002Ir-9J for ged-emacs-devel@m.gmane-mx.org; Mon, 30 May 2022 16:46:48 +0200 Original-Received: from localhost ([::1]:58160 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nvgfP-0001nE-5R for ged-emacs-devel@m.gmane-mx.org; Mon, 30 May 2022 10:46:47 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49912) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nvgdi-0000x1-HX for emacs-devel@gnu.org; Mon, 30 May 2022 10:45:02 -0400 Original-Received: from mail-oi1-x22d.google.com ([2607:f8b0:4864:20::22d]:40571) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nvgdg-0002bG-Gl for emacs-devel@gnu.org; Mon, 30 May 2022 10:45:02 -0400 Original-Received: by mail-oi1-x22d.google.com with SMTP id t144so14199135oie.7 for ; Mon, 30 May 2022 07:44:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=9mpUPqP/kUizSHH7+iSV3EdGF2cuFJFrHJLn1jIUTNM=; b=b10NWu6HBNZ6C+f5Cwsa7PHskTTBJOavKjtnwDe1KofRWUs9Q/nJWB90DaiM9L375s a5Krx0zdGjc4oMTS0jjgmjS/kLaIutcXKabEjHBJJtiDmE+VDPqBpnvOyYYNxpIKmlFP fYejlkMfPdq9A+DVDVRhz9+4X+dGc8eFLhLGIT5jC+NHb9cibPZ6l7xtbhYiafDdHSji PUyUhPUoBEvn6GENbMwKkSsooVFjtflieUwRN7jRDmFnw8N0Xe8hwQL4ng9yymSNXK+H sDCl0IrFYqw2rHbJklNykWhWPui5FGVVeSraibnfLa3Df2JteqNazAsod12UgV5RHHSF Wiug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=9mpUPqP/kUizSHH7+iSV3EdGF2cuFJFrHJLn1jIUTNM=; b=53fpQlLr32tGKnuAhRhcXtAfhtCTLmDMu0q/1Rrr1oHvB6hQN8vw5WUhcbKcJ6TY1J 764CEqo8Tf+AF0ndIT6wjOJH3d9B/VbS6w1s/64yhhvKLFZyl/26QjMPA6Z4nwMGheAV quVdHuEf2+4eCZawknuVmNgXlx0TSqUjYhnwHaJ1OTFs7gP11UCn6hD/YrNMkMv42uRh 1ZMdRcSbaheHQMYLNhnFyWrOOOiVTvnRK+IVHnxKq1CGXiQ/YoLrKqDQqgIeZseiQQBf TGCQOsHseQTGdGT2SQbDx3v9VTOoJcA3x/Am6aYPt6BLwLiWmyicKn6Pu2g5eqBrGQA3 X1jw== X-Gm-Message-State: AOAM531cJOSYY0CJ7LDFv3Cvo1dX5o6XlTJE99OZU5H2ccOzTR2proTz dzf3ZSgPhI8DFrV9mwFy+asy2a4HVQ4pchLzz0s= X-Google-Smtp-Source: ABdhPJymoD1J3NLjjzqhUoFplpKv/mcW+gufYPjXPdg5DsdSFQgNr/NpWOcD39C3h3dpDAbVeGX1SpUo8V2mfmHDEeY= X-Received: by 2002:a05:6808:1583:b0:32b:709e:c6b9 with SMTP id t3-20020a056808158300b0032b709ec6b9mr9796205oiw.209.1653921899071; Mon, 30 May 2022 07:44:59 -0700 (PDT) In-Reply-To: <871qwb5wxv.fsf@posteo.net> Received-SPF: pass client-ip=2607:f8b0:4864:20::22d; envelope-from=joaotavora@gmail.com; helo=mail-oi1-x22d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:290384 Archived-At: --00000000000047cc3705e03bb3d9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, May 30, 2022 at 7:58 AM Philip Kaludercic wrote: > Dmitry Gutov writes: > > Considering the number of issues that have been gathering in the above > mentioned issue tracker, I find it increasingly difficult to say it is > "stable". It is far from being "bitrotten", but there is plenty of > space between the two. Yes, I agree with this characterization. Yasnippet's "display engine", though highly tested (automatically and manually) is complex. I recall some bugs when interacting with other packages that make heavy use of indenting trick= s and overlays. While these are the minority (as far as I know), Org is one such package and it's pretty prominent. On the other hand, last time browsed the issue tracker, there were very many specialized feature requests that wouldn't (IMO) make sense in the Yasnippe= t engine. Integrating them would be hard and awkward and it would turn it into something else entirely. So, in that sense, Yasnippet is stable. One interesting area of Yasnippet development is in its 'snippet-engine' branch, in a file called simply snippet.e'. It is the product of an exchange of ideas between me and Stefan Monnier some years ago. It's a bare-bones version of Yasnippet's snippet expansion and navigation engine, more efficient and Lisp-friendly. The goal was to replace Yasnippet's engine in the master branch with it. Alas, motivation fizzled and work stalled. But it was pretty spiffy and almost done. As I recall, snippet definitions were simply Elisp forms, written in a nice DSL which was not particularly obtrusive. snippet.el is more or less yasnippet.el done right. snippet.el could be useful in light of a relatively recent development: LSP. If I've ever actually used Yasnippet recently, it's been through LSP/eglot, completely transparently. When used though LSP, a lot of Yasnippet's legacy, bug-prone, wish-I-was-Textmate, dont-really-know-elisp code isn't being exercised at all. I've personally abandoned the idea of maintaining personal or shared language-specific snippet collections via many little text files. I would guess others have, too. LSP servers simply maintain that collection for you, as they do so many other things, and that's agreeable to me. It's true that LSP still uses the Textmate snippet description language, an= d snippet.el accepts Lisp forms (as it should). But translating from the former to the latter isn't very hard (in fact someone over at the repo did it some years ago). To summarize, I don't have any particularly strong opinion on what should be done with Yasnippet. In fact, I don't even know what problem Philip is trying to solve! Is it just the general idea of abandonment of the fact that people's issue reports go unanswered? If the latter, then I think archiving the repo would make sense. No more issue reports would come in and one could advertise the Emacs bug tracker. Would that improve things? I do think that it's important to preserve the documentation though, as many people seem to refer to it still. Or maybe transfer it to a more GNU ELPAish location/format. Who knows if the description above motivates someone to pick up 'snippet.el', finalize it, and make a new GNU ELPA package? Or maybe it motivates someon= e to pick up the maintenance of the existing Yasnippet. So let me and Noam know if you wish me to do something admin with the repository. While Noam is the official maintainer, I think I still retain those rights. Jo=C3=A3o --00000000000047cc3705e03bb3d9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


<= div>On the other hand, last time browsed the issue tracker, there were very= many

One inte= resting area of Yasnippet development is in its 'snippet-engine'
branch, in a file called simply snippet.e'.=C2=A0 It is the prod= uct of an exchange of
ideas between me and Stefan Monnier some ye= ars ago.=C2=A0 It's a bare-bones version
of Yasnippet's s= nippet expansion and navigation engine, more efficient and
Lisp-f= riendly.=C2=A0 The goal was to replace Yasnippet's engine in the master= branch
with it.=C2=A0

Alas, m= otivation fizzled and work stalled.=C2=A0 But it was pretty spiffy and almo= st
done.=C2=A0 As I recall, snippet definitions were simply = Elisp forms, written in a
nice DSL which was not particularl= y obtrusive.=C2=A0 snippet.el is more or less
yasnippet.el done r= ight.

snippet.el could be useful in light of a= relatively recent development: LSP.

If I'= ;ve ever actually used Yasnippet recently, it's been through LSP/eglot,=
completely transparently.=C2=A0 When used though LSP, a lot of Y= asnippet's legacy,
bug-prone, wish-I-was-Textmate, dont-= really-know-elisp code isn't being
exercised at all.=C2= =A0

I've personally abandoned the idea of= maintaining personal or shared
language-specific snipp= et collections via many little text files.=C2=A0 I would guess
ot= hers have, too.=C2=A0 LSP servers simply maintain that collection for you, = as
they do so many other things, and that's agreeable to me.<= br>

It's true that LSP still uses the Te= xtmate snippet description language, and
snippet.el accepts Lisp = forms (as it should).=C2=A0 But translating from the former
= to the latter isn't very hard (in fact someone over at the repo did it = some years
ago).

To summarize, I don= 't have any particularly strong opinion on what should be done
with Yasnippet. In fact, I don't even know what problem Philip i= s trying to solve!
Is it just the general idea of abandonment of = the fact that people's issue reports
go unanswered?=C2=A0 If = the latter, then I think archiving the repo would make sense.=C2=A0 No
more issue reports would come in and one could advertise the Emacs bu= g tracker.
Would that improve things?

I do think that it's important to preserve the documentation though, = as many people
seem to refer to it still. Or maybe transfer = it to a more GNU ELPAish location/format.

Who = knows if the description above motivates someone to pick up 'snippet.el= ',
finalize it, and make a new GNU ELPA package?=C2=A0 Or may= be it motivates someone
to pick up the maintenance of the existin= g Yasnippet.=C2=A0

So let me and Noam know if= you wish me to do something admin with the repository.=C2=A0
While Noam is the official maintainer, I think I still retain those right= s.

Jo=C3=A3o



=
--00000000000047cc3705e03bb3d9--