Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jim Ingham <jingham@apple.com>
To: Andrew Cagney <ac131313@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [patch rfa:doco rfc:NEWS] mi1 -> mi2; rm mi0
Date: Tue, 01 Oct 2002 14:01:00 -0000	[thread overview]
Message-ID: <C7B391CC-D580-11D6-BB61-00039379E320@apple.com> (raw)
In-Reply-To: <3D9A04BE.5080108@redhat.com>

Andrew,

On Tuesday, October 1, 2002, at 01:25  PM, Andrew Cagney wrote:

>> This is only partly true.  We are actually pretty conservative about 
>> changing command output.  We haven't broken annotate for a while, 
>> IIRC.  The mi is more like the command output, and I think we should 
>> have the same level of conservatism about this.
>
> One of the motivations behind the MI output was that a parser could be 
> written in a way that allowed it to discard anything it didn't 
> recognize.
>
> For instance: additional events, or additional output fields should 
> both simply be discarded.  They shouldn't be viewed as MI changes.
>
> The thing that is triggering mi2 is the changes to actual responses 
> (breakpoints as you pointed out but also others.).
>
> Anyway, at the time of each GDB release, a decision should be made 
> about freezing the current MI interface and starting a new one.  Here, 
> we've frozen mi1 and moved onto mi2's development.  At some point in 
> the future mi2 will be frozen and development will move to mi3 (I 
> strongly suspect it will be pretty quick - 5.4/6.0).  After a freeze, 
> the old syntax should hang around for a limited period of time.

I am a little confused here.  One of the design points for the MI is 
the ability to add information to the commands without requiring a 
change in the clients (unless, of course, they wanted to use the new 
information).  That should mean that we have set up a situation where 
we can change the mi in substantial ways without having to demand that 
clients rewrite their code to use MI.  Shouldn't that mean that we can 
go a long way without having to make incompatible changes?  And so, 
imposing the burden on ourselves of not jerking clients around all the 
time would not be such a big deal, and perhaps worth the inconvenience 
it would cause the MI developers?

>
> The pratical translation of this is  ``how long before the mi1-*.exp 
> files can be deleted''?  My guess is two releases - here 5.3 and 
> 5.4/6.0. That means that 5.5/6.0 (in roughly a year) there will be 
> released a GDB  that doesn't support "mi1" -- for GDB I think that is 
> a long time!

As a client of the MI, this means that in a year or so I have to expect 
to rewrite code that works just fine, because you have deleted the 
support for it from gdb; or carry the burden of maintaining mi1 as 
patches to the gdb sources.  And longer term, I can expect to do this 
again next year, unless things "stabilize" before then, which they may 
or may not do.  This doesn't sound appetizing to me.

The MI is a public interface to gdb - and the only really useful one we 
offer to external clients who are not Human beings right now.  It has 
been around in gdb, and we have been using it contentedly, for a couple 
of years now.  A retroactively stated policy of instability in this 
interface (including the vanishing of useful variants at odd intervals) 
seems very unfair to those who have been using it right along, as well 
as being one which can only slow its uptake in general.


Jim
--
Jim Ingham                                   jingham@apple.com
Developer Tools
Apple Computer


  reply	other threads:[~2002-10-01 21:01 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1033404264.17743.ezmlm@sources.redhat.com>
2002-09-30 17:48 ` Jim Ingham
2002-10-01  9:29   ` Andrew Cagney
2002-10-01 10:34     ` Jim Ingham
2002-10-01 13:25       ` Andrew Cagney
2002-10-01 14:01         ` Jim Ingham [this message]
2002-10-01 15:10           ` Andrew Cagney
2002-10-01 15:46             ` Jim Ingham
2002-10-01 16:39               ` Keith Seitz
2002-10-01 17:45                 ` Jim Ingham
2002-10-02  7:58                   ` Keith Seitz
2002-10-02 10:49                     ` Jim Ingham
2002-10-25 14:48                       ` Andrew Cagney
2002-10-01 23:25                 ` Jason Molenda
2002-10-02 10:22                 ` Stan Shebs
     [not found] <1035593825.16489.ezmlm@sources.redhat.com>
2002-10-25 18:22 ` Jim Ingham
2002-09-29 11:14 Andrew Cagney
2002-09-29 12:55 ` Daniel Jacobowitz
2002-09-29 13:19   ` Andrew Cagney
2002-09-29 14:37     ` Daniel Jacobowitz
2002-09-29 14:46       ` Andrew Cagney
2002-09-29 21:55         ` Daniel Jacobowitz
2002-09-30  8:03           ` Andrew Cagney
2002-09-30  8:16             ` Daniel Jacobowitz
2002-09-30 15:06               ` Andrew Cagney
2002-09-30 15:36                 ` Daniel Jacobowitz
2002-09-29 22:01 ` Eli Zaretskii
2002-09-30 15:14   ` Andrew Cagney
2002-09-30 22:13     ` Eli Zaretskii
2002-10-01 14:26 ` Andrew Cagney

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=C7B391CC-D580-11D6-BB61-00039379E320@apple.com \
    --to=jingham@apple.com \
    --cc=ac131313@redhat.com \
    --cc=gdb-patches@sources.redhat.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox