public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Jan Vrany <jan.vrany@fit.cvut.cz>
To: "gdb@sourceware.org" <gdb@sourceware.org>
Subject: MI3 and async notifications
Date: Mon, 10 Jun 2019 21:19:00 -0000	[thread overview]
Message-ID: <70fdd9107d9bb3cee0a1a342aedc05bf3c8e9bae.camel@fit.cvut.cz> (raw)

Hello,

as an user og GDB/MI (and frontent developer), I'd like to 
open a discussion about one aspect of MI that I'd like to change
in MI3 before it is released into the wild. 

Currently, quite a few commands suppress async notifications when
a command is issued through MI. For example, when a breakpoint is 
added using -break-insert then =breakpoint-created is not emitted.

At least in my case, this behavior complicates client design because
now the client has to care for new breakpoints on multiple places:
(i)  listen to breakpoint created events to handle cases where breakpoint
     is added via CLI. 
(ii) do similar processing whenever MI returns ^done for previously 
     issued -break-insert command.
 
This leads to a complex logic, especially in cases where frontend has
some scripting support (so execution of MI commands is not completely
under frontend developer's control). 

Emitting notifications unconditionally would simplify things a lot 
- again at least in my case. 

Therefore I'd like to propose a change for MI3 to always send notifications. 
If such a change would make things complicated for other frontends 
(Eclipse CDT / Emacs come to mind), I propose new

-gdb-set mi-always-notify 1
-gdb-set mi-always-notify 0

setting to control the behavior so frontends may choose. 

I'm happy to submit a patch. Are there any other frontend developers?
If so, would it be OK to always notify in MI3 or do you prefer to have
an option? Any other comments? 

Thanks! Jan

             reply	other threads:[~2019-06-10 21:19 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-10 21:19 Jan Vrany [this message]
2019-06-10 23:23 ` Jonah Graham
2019-06-11  8:50   ` Jan Vrany
2019-06-11 13:37     ` Jonah Graham
2019-07-05 20:00       ` Pedro Alves
2019-07-05 21:58         ` Jonah Graham
2019-06-15 14:34 ` Tom Tromey
2019-06-17 10:53   ` Jan Vrany
2019-06-17 12:11     ` Jonah Graham
2019-06-17 12:14     ` Joel Brobecker
2019-06-17 12:26       ` Jonah Graham
2019-06-17 12:56         ` Joel Brobecker
2019-06-17 13:12           ` Jan Vrany
2019-06-17 13:23             ` Jonah Graham
2019-06-17 20:45               ` Joel Brobecker
2019-06-17 20:58                 ` Jan Vrany
2019-06-17 21:50                   ` Jonah Graham
2019-06-17 13:12           ` Jonah Graham
2019-06-17 19:52     ` André Pönitz
2019-06-18  3:14 ` Simon Marchi
2019-06-18 20:38   ` Jan Vrany
2019-06-19 15:29     ` Simon Marchi
2019-06-19 20:58       ` Jan Vrany
2019-06-20 15:31         ` Simon Marchi
2019-06-20 20:46           ` Jan Vrany
2019-07-05 19:35           ` Pedro Alves

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

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

  git send-email \
    --in-reply-to=70fdd9107d9bb3cee0a1a342aedc05bf3c8e9bae.camel@fit.cvut.cz \
    --to=jan.vrany@fit.cvut.cz \
    --cc=gdb@sourceware.org \
    /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.
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).