unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Dan Nicolaescu <dann@ics.uci.edu>
Cc: emacs-devel@gnu.org
Subject: Re: VC command for showing outgoing changes
Date: Tue, 13 Oct 2009 22:10:15 -0400	[thread overview]
Message-ID: <jwvljje7mvf.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <200910132115.n9DLFVRX015392@godzilla.ics.uci.edu> (Dan Nicolaescu's message of "Tue, 13 Oct 2009 14:15:31 -0700 (PDT)")

> You mean as a precondition of doing vc-outgoing?
> I'd like to avoid tangling the two.  vc-outgoing should be easy, and
> similar to what we already do for `print-log', I am not so sure about
> `push'.  I think vc-outgoing can be useful even without a push
> operation, just for showing the log and examining diffs.

I agree that outgoing is not useless even without push, but push is
more important: some of the `push' users use `outgoing', but all the
`outgoing' users use `push'.  Or close enough.

> These are tree level operations, annotate and show-version work on
> files.  (Especially annotate, it's code really really wants a file)
> And yes, show-version and annotate do not really make much sense for
> anything that is not a single file log (directory logs, or multiple file
> logs).

Actually, they do make sense, except you have to specify the file on
which you want to operate (presumably one of the files affected by the
current revision at point).  In any case the point is that there's no
reason to treat those commands differently in log-view-mode and in
outgoing-mode.
I'm intetrested in figuring out what should be the differences between
those two modes, the fewer the merrier.

> I am not so sure there's a need for multiple inheritance, backends could
> create vc-<foo>-log-view-mode and vc-<foo>-outgoing-mode derived from
> log-view-mode and log-view-outgoing-mode, respectively.  

Most vc-<foo>-log-view-mode basically setup regexps to recognize the
format used by the backend.  Presumably vc-<foo>-outgoing-mode would
have to setup exactly the same regexps, which is rather unsatisfactory.
You could avoid this duplication if we had multiple inheritance.


        Stefan




  parent reply	other threads:[~2009-10-14  2:10 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-13 20:24 VC command for showing outgoing changes Dan Nicolaescu
2009-10-13 20:52 ` Stefan Monnier
2009-10-13 21:15   ` Dan Nicolaescu
2009-10-13 21:24     ` Giorgos Keramidas
2009-10-14  2:10     ` Stefan Monnier [this message]
2009-12-05 19:45   ` Dan Nicolaescu
2009-12-05 19:52     ` Dan Nicolaescu
2009-12-05 20:53       ` Stefan Monnier
2009-12-05 21:35         ` Stefan Monnier
2009-12-06  3:28         ` Dan Nicolaescu
2009-12-06  8:33         ` Dan Nicolaescu
2009-12-07  1:40           ` Stefan Monnier
2009-12-07  9:06             ` Dan Nicolaescu
2010-01-01 18:56             ` Dan Nicolaescu

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=jwvljje7mvf.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=dann@ics.uci.edu \
    --cc=emacs-devel@gnu.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.
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).