unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "João Távora" <joaotavora@gmail.com>
To: Daniel Pettersson <daniel@dpettersson.net>
Cc: Dmitry Gutov <dmitry@gutov.dev>,
	John Yates <john@yates-sheets.org>,
	 Krister Schuchardt <krister.schuchardt@gmail.com>,
	Adam Porter <adam@alphapapa.net>,
	emacs-devel@gnu.org, philipk@posteo.net
Subject: Re: [ELPA] New package: dape
Date: Tue, 7 Nov 2023 10:40:53 +0000	[thread overview]
Message-ID: <CALDnm53MizTswbWaQF1k6jqC1gRAnYBdC5rZ8EJxzygxznGuxw@mail.gmail.com> (raw)
In-Reply-To: <CAM-j=qun+6A1sxR5_Nb9ARnG1L_5upjuyvFCvmPf=HXP-GNbTA@mail.gmail.com>

On Tue, Nov 7, 2023 at 10:19 AM Daniel Pettersson
<daniel@dpettersson.net> wrote:
>
> > > On Thu, Nov 2, 2023 at 5:24 PM João Távora <joaotavora@gmail.com> wrote:
>
> > Do you know of any other significant/fundamental differences (say, such as a
> > message type which is neither a request, nor a response, nor a notification)?
>
> Notification, request and response maps to events, request and
> response. The biggest difference might be the reverse request
> but that could be implemented as an notification/event in a pinch.

If I understand correctly, reverse requests _are_ supported in JSONRPC.
Can you give a short example transcript illustrating such a conversation?

> There are two things that can be a bit of a challenge, maybe:
> - DAP servers are not that well behaved in general, with a pipe
>   connection they like to use std out as they please (none DAP
>   messages).

Meaning they put non-JSON cruft in the stdout as well?  Not great, but
not dramatic, I guess  as long as they don't do it in the middle of the
message right?

Again, helpful if you could attach a stdout dump of a conversation
where some of this takes place.

> - I don't know its a dape problem or not but it's not that hard to
>   provoke some servers to send broken messages if they user chooses to
>   continue the execution while the server is in the middle of responding

OK.  Then in your opinion what is the easiest (and or most representative)
DAP server to start playing with?  Hopefully some C/C++ one, but feel
free to suggest another.

> This means that the parsing needs to do some cleanup during.
>
> > If I were to try to do these jsonrpc.el changes to accomodate DAP protocols,
> > would you accept a PR to dape.el adding jsonrpc.el as a dependency to
> > dape.el?
>
> More then happy to offload some of the work ;) I think that would
> greatly improve the performance and stability of dape to reuse some
> well tested software. I also thin that dape might be able to reuse
> some parts of eglot, the repl completion for example, I don't know
> what the way forward would be for that.

Extract parts of eglot.el into a reusable library, I guess.

But yes, I would be very glad to see DAP dape.el become the DAP
coutnerpart to LSP eglot.el, with most analogous abstractions
having analogous interfaces.  Happy to change eglot.el
significantly to make that happen (backward-compatibility
permitting, of course).

João



  reply	other threads:[~2023-11-07 10:40 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-13 10:35 [ELPA] New package: dape Daniel Pettersson
2023-10-13 12:24 ` Philip Kaludercic
2023-10-14 12:28   ` Daniel Pettersson
2023-10-14 14:54     ` Philip Kaludercic
2023-10-15 13:50       ` James Thomas
2023-10-15 14:12         ` Philip Kaludercic
2023-10-15 17:24           ` John Yates
2023-10-18 21:54       ` Daniel Pettersson
2023-10-19  2:08         ` Adam Porter
2023-10-19 10:52           ` Krister Schuchardt
2023-10-19 11:06             ` Dmitry Gutov
2023-10-20 14:53               ` John Yates
2023-11-01 19:13                 ` Dmitry Gutov
2023-11-02 14:42                   ` João Távora
2023-11-04  9:51                     ` Daniel Pettersson
2023-11-04 10:00                       ` Philip Kaludercic
2023-11-23  6:10                         ` Philip Kaludercic
2023-12-05  8:41                           ` Philip Kaludercic
2023-12-05  9:18                             ` João Távora
2023-12-05 10:59                               ` Philip Kaludercic
2023-12-05 11:29                                 ` João Távora
2023-12-06  3:57                                   ` Richard Stallman
2023-12-06 10:09                                   ` Daniel Pettersson
2023-12-06 12:30                                     ` Eli Zaretskii
2023-12-06 12:56                                       ` João Távora
2023-12-06 13:08                                         ` Eli Zaretskii
2023-12-06 13:38                                           ` João Távora
2023-12-06 17:00                                             ` Eli Zaretskii
2023-12-06 23:03                                               ` João Távora
2023-12-06 23:55                                               ` Daniel Pettersson
2023-12-07  7:13                                                 ` Eli Zaretskii
2023-11-04 13:46                       ` Adam Porter
2023-11-04 14:01                         ` Eli Zaretskii
2023-11-04 14:24                           ` Philip Kaludercic
2023-11-04 15:06                             ` Adam Porter
2023-11-04 15:27                               ` Philip Kaludercic
2023-11-04 14:53                           ` Adam Porter
2023-11-04 15:14                             ` Eli Zaretskii
2023-11-04 19:15                               ` Adam Porter
2023-11-04 23:21                       ` João Távora
2023-11-07 10:19                         ` Daniel Pettersson
2023-11-07 10:40                           ` João Távora [this message]
2023-11-08  8:31                             ` Daniel Pettersson
2023-10-19 15:12         ` Philip Kaludercic
2023-10-19 17:50         ` Björn Bidar
2023-11-01 16:50         ` Philip Kaludercic
2023-10-15 13:55 ` Mauro Aranda
2023-10-17 20:39   ` Daniel Pettersson
2023-10-20  5:49 ` Milan Glacier

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=CALDnm53MizTswbWaQF1k6jqC1gRAnYBdC5rZ8EJxzygxznGuxw@mail.gmail.com \
    --to=joaotavora@gmail.com \
    --cc=adam@alphapapa.net \
    --cc=daniel@dpettersson.net \
    --cc=dmitry@gutov.dev \
    --cc=emacs-devel@gnu.org \
    --cc=john@yates-sheets.org \
    --cc=krister.schuchardt@gmail.com \
    --cc=philipk@posteo.net \
    /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).