darcs

Issue 125 tell users when we skip patches in interactive mode

Title tell users when we skip patches in interactive mode
Priority feature Status resolved
Milestone Resolved in
Superseder Nosy List ahey, bucket, cmm, darcs-devel, dmitry.kurochkin, kowey, thorkilnaur, tommy, zooko
Assigned To
Topics ProbablyEasy

Created on 2006-02-03.17:51:57 by zooko, last changed 2009-08-27.13:59:18 by admin.

Messages
msg457 (view) Author: zooko Date: 2006-02-03.17:51:56
The messages, such as "No patches selected" or "You don't want to pull any
patches and that is fine with me." are confusing, as users *intended* to select
patches.  Also the behavior of "k" is confusing.  In fact, I still don't
understand it myself and I wonder if it is a bug.

example:

<zooko> You were trying to unpull a patch.
<zooko> But it said "No patches selected".
<vincenz> I got it fixe
<vincenz> but it was very odd
<zooko> This was because it was first presenting you with the list of patches
        which depen on the target patch.
<zooko> Oh you figured it out?
<vincenz> if I used "n" instead of "j" to skip
<zooko> kbrooks: "tailor"
<vincenz> it'd skip several at once


This is also 

http://otherbugs.darcs.net//Ticket/Display.html?id=78
msg458 (view) Author: zooko Date: 2006-02-03.17:53:41
<zooko> vincenz: issue125 is a bug report about how darcs doesn't make this
        clear enough to the new user.
<vincenz> thx
<zooko> The secret is that "n" means "I will not allow this patch under any
        circumstances, which means I also hereby disallow any patches which
        depend upon this patch".
<zooko> What you probably wanted was "w", meaning "I don't care.  If some
        other patch which I do want requires this patch then I'll take this
        one, else I won't.".
<vincenz> ah
msg465 (view) Author: droundy Date: 2006-02-05.13:20:55
On Fri, Feb 03, 2006 at 05:53:41PM +0000, Zooko wrote:
> <zooko> vincenz: issue125 is a bug report about how darcs doesn't make this
>         clear enough to the new user.
> <vincenz> thx
> <zooko> The secret is that "n" means "I will not allow this patch under any
>         circumstances, which means I also hereby disallow any patches which
>         depend upon this patch".
> <zooko> What you probably wanted was "w", meaning "I don't care.  If some
>         other patch which I do want requires this patch then I'll take this
>         one, else I won't.".
> <vincenz> ah

Your explanation is good.  I'm not sure how to make this clearer to users,
though, so a more concrete suggestion (not necesarily from zooko) would be
great.  I'm not sure to what extent this is a documentation issue, or a
feedback issue.  It is something that's pretty easily resolvable with an
gui (or text-mode tui) interface, where you can *see* the effects of your
selection on other patches... so that would be my dream solution (which I
don't have time for).  But it's also important to keep the existing
interface, and to keep it as useable as possible.
-- 
David Roundy
http://www.darcs.net
msg469 (view) Author: zooko Date: 2006-02-06.01:53:29
> Your explanation is good.  I'm not sure how to make this clearer to users,
> though, so a more concrete suggestion (not necesarily from zooko) would be
> great.

Well, you didn't say Zooko was *excluded* from making concrete suggestions, so
here goes:

Instead of "n" for "no" we would use "r" for "reject".  When users are first
trying the interactive UI they would see "y" and look for "n" and find that
there isn't an "n".  Then they'd hit "?" to see this list and it will say:

-------
How to use pull...
y: pull this patch
r: don't pull it, and reject any subsequent patches which depend on it
w: wait -- pull this patch only if a subsequent patch depends on it

v: view this patch in full
p: view this patch in full with pager
x: view a summary of this patch

d: pull selected patches, skipping all the remaining patches
a: pull all the remaining patches
q: cancel pull

j: skip to next patch
k: back up to previous patch
h or ?: show this help

<Space>: accept the current default (which is capitalized)
-------

Then whenever interactive mode skips patches it prints a line explaining, for
example, it would go like this:

-------
HACK yumyum:~/playground/zfone-and-shtoom/zfone/foo$ darcs pull ../zfone

Mon Oct  4 11:33:07 ADT 2004  tailor@localhost
  * Tailorization of Shtoom
  Import of the upstream sources from the repository

   http://zooko@divmod.org/svn/Shtoom/trunk

  as of revision 827

Shall I pull this patch? (1/854) [yrWvpxqadjk], or ? for help: y

Fri Nov  5 11:16:07 AST 2004  etrepum
  * Shtoom: changeset 861
  this doesn't work yet
Shall I pull this patch? (2/854) [yrWvpxqadjk], or ? for help: r

Sun Nov  7 01:21:41 AST 2004  dp
  * Shtoom: changeset 863
  Update the OS X audio code to work with the gui (but not work
  completely yet)
Shall I pull this patch? (3/854) [yrWvpxqadjk], or ? for help: r

Skipping patches 4 through 5 -- they depend on patches that have already 
been rejected.

Sun Nov  7 18:49:38 AST 2004  dp
  * Shtoom: changeset 869
  Add web preference rendering code using Nevow.
Shall I pull this patch? (6/854) [yrWvpxqadjk], or ? for help: 
-------

If the user rejects enough patches that no patches are pulled, then instead of
saying "You don't want to pull any patches, and that's fine with me!", it would
say "Finished -- all remaining patches depend on patches which have already
been rejected.".

Regards,

Zooko
msg470 (view) Author: droundy Date: 2006-02-06.12:35:30
On Mon, Feb 06, 2006 at 01:53:30AM +0000, Zooko wrote:
> > Your explanation is good.  I'm not sure how to make this clearer to
> > users, though, so a more concrete suggestion (not necesarily from
> > zooko) would be great.
> 
> Well, you didn't say Zooko was *excluded* from making concrete
> suggestions, so here goes:

Right, I was just making sure that others would feel invited to add
suggestions... although I guess the nosy list on this bug is probably
pretty small.

> Instead of "n" for "no" we would use "r" for "reject".  When users are first
> trying the interactive UI they would see "y" and look for "n" and find that
> there isn't an "n".  Then they'd hit "?" to see this list and it will say:

I like your outline of behavior, but am not sure I care for the idea of
switching from "n" to "r".  It's a change that will mess up existing user's
muscle memory, and seems a bit unintuitive to me.  I think we could keep
the rest of the suggestions (wording for the help message, mentioning of
skipped patches, etc), and leave the r/n open for debate, since that's a
major change.
-- 
David Roundy
http://www.darcs.net
msg472 (view) Author: zooko Date: 2006-02-06.14:13:02
> I like your outline of behavior, but am not sure I care for the idea of
> switching from "n" to "r".

I thought you might say that.  The important part is to make sure that when the
user reads something like "Finished -- all remaining patches depend on patches
which have already been rejected." that they realize that hitting "n" was
"rejecting".  I guess that'll work fine, especially given the pithy "?" help
text.  So I withdraw the part of my proposal that involves changing "n" to "r".

Regards,

Zooko
msg2100 (view) Author: kowey Date: 2007-08-27.16:45:11
Resolved in unstable with

Sat Aug 11 00:02:30 CEST 2007  Eric Kow <eric.kow@gmail.com>
  * [issue125] Tell user that when we skip patches in interactive mode.
History
Date User Action Args
2006-02-03 17:51:57zookocreate
2006-02-03 17:53:41zookosetstatus: unread -> unknown
nosy: droundy, tommy, zooko
messages: + msg458
2006-02-05 13:20:55droundysetnosy: droundy, tommy, zooko
messages: + msg465
2006-02-06 01:53:30zookosetnosy: droundy, tommy, zooko
messages: + msg469
2006-02-06 12:35:32droundysetnosy: droundy, tommy, zooko
messages: + msg470
2006-02-06 14:13:04zookosetnosy: droundy, tommy, zooko
messages: + msg472
2006-04-07 22:55:04jchsetpriority: bug -> feature
nosy: droundy, tommy, zooko
2007-08-08 07:54:41koweylinkissue116 superseder
2007-08-08 07:58:08koweylinkissue310 superseder
2007-08-08 07:58:40koweysettopic: + ProbablyEasy
nosy: + kowey, beschmi
title: users don't understand how patch dependency prevents some interactive choices -> tell users when we skip patches in interactive mode
2007-08-08 07:59:58koweysetnosy: + cmm, bucket
2007-08-08 08:00:03koweylinkissue337 superseder
2007-08-08 08:01:28koweylinkissue122 superseder
2007-08-08 08:09:46koweylinkissue428 superseder
2007-08-08 08:10:13koweysetnosy: + ahey
2007-08-27 16:45:19koweysetstatus: unknown -> resolved-in-unstable
messages: + msg2100
2008-05-15 16:01:33koweysetstatus: resolved-in-unstable -> resolved
nosy: + dagit
2009-08-06 17:51:08adminsetnosy: + markstos, jast, Serware, dmitry.kurochkin, darcs-devel, mornfall, simon, thorkilnaur, - droundy, cmm, bucket, ahey
2009-08-06 20:48:50adminsetnosy: - beschmi
2009-08-10 21:43:42adminsetnosy: + bucket, ahey, cmm, - markstos, darcs-devel, jast, Serware, mornfall
2009-08-10 23:53:02adminsetnosy: - dagit
2009-08-25 18:02:30adminsetnosy: + darcs-devel, - simon
2009-08-27 13:59:18adminsetnosy: tommy, kowey, darcs-devel, zooko, cmm, bucket, ahey, thorkilnaur, dmitry.kurochkin
2009-09-04 09:45:39koweyunlinkissue337 superseder