Created on 2005-12-23.18:03:05 by clive, last changed 2009-08-27.14:03:52 by admin.
msg266 (view) |
Author: clive |
Date: 2005-12-23.18:03:04 |
|
doing a:
darcs pull --verbose
has had me waiting up to 20 minutes without a single line of text telling me
what it's doing.
I probose some-other-option or possibly verbosity level, or perhaps even fixing
the current verbose level to tell me why I should bother waiting and let me know
that it's not in fact hung.
|
msg271 (view) |
Author: tommy |
Date: 2005-12-25.11:18:51 |
|
When darcs takes a long time without feedback it is
usually busy commuting. It would be nice to have some
commuting-progress messages, but as far as I understand it
is not possible to calculate any sensible value estimating
the amount of work ahead. But perhaps a running count of
patches to 'check and maybe commute' and a dot every third
second while commuting a patch is enough.
|
msg272 (view) |
Author: clive |
Date: 2005-12-25.23:20:52 |
|
As far as i'm concerned, even a "darcs is busy commuting patches. This
may take some time ..." message would be a vast improvement on nothing at
all.
|
msg279 (view) |
Author: droundy |
Date: 2005-12-28.18:24:31 |
|
I'm cc'ing darcs-devel on this, since it's a bit beyond my haskell skill
level. I'm sure I could figure it out, but I'm also sure that someone else
could figure it out more easily (plut I have other darcs work to do)...
It's not terribly important, but I think that a framework for providing
feedback during long pure calculations would be valuable for darcs (and
probably also for other projects--I can imagine writing this as a library
for general use).
On Sun, Dec 25, 2005 at 11:18:52AM +0000, Tommy Pettersson wrote:
> When darcs takes a long time without feedback it is usually busy
> commuting. It would be nice to have some commuting-progress messages,
> but as far as I understand it is not possible to calculate any sensible
> value estimating the amount of work ahead. But perhaps a running count
> of patches to 'check and maybe commute' and a dot every third second
> while commuting a patch is enough.
This sort of output would presumably require using concurrent Haskell and
perhaps some unsafe operations to update the amount of work left?
It would definitely be interesting if we could compute in advance the
number of commutations required. But alas, when conflicts are involved
that probably isn't possible. And of course, we don't want to insert
unnecesary overhead into the commute code just to give nicer feedback.
I wonder if we could write a function like
long_verbose_computation :: String -> a -> a
which would use seq to ensure that an unsafePerformIO spawns a new
notification thread that will notify every three seconds or so, followed by
a kill of that thread at the end. Something like
long_verbose_computation message data =
case unsafeSpawnMessageThread message of
thid -> case data `seq` unsafeKillMessageThread thid of
data' -> data'
I think something like this might be able (with appropreate unsafe...Thread
functions using unsafePerformIO) to print messages out only for long
computations. Then we could do something like
commute (ComP x, ComP y) =
long_verbose_computation "I'm commuting..." commute_composite (x,y)
We might also want a global lock to avoid nesting of these messages. Note
that this will only work for functions that are slow to reach HNF, but
lazily outputting functions shouldn't usually be a problem anyways.
--
David Roundy
http://www.darcs.net
|
msg441 (view) |
Author: clive |
Date: 2006-01-30.10:26:19 |
|
this is getting quite ridiculous. I've been waiting for close on 3 hours now
for a 'pull --verbose' and the only text that has been displayed is the MOTD.
|
|
Date |
User |
Action |
Args |
2005-12-23 18:03:05 | clive | create | |
2005-12-25 11:18:51 | tommy | set | status: unread -> unknown nosy:
droundy, tommy, clive messages:
+ msg271 |
2005-12-25 23:20:53 | clive | set | nosy:
droundy, tommy, clive messages:
+ msg272 |
2005-12-28 18:24:32 | droundy | set | nosy:
droundy, tommy, clive messages:
+ msg279 |
2006-01-30 10:26:20 | clive | set | priority: feature -> bug nosy:
droundy, tommy, clive messages:
+ msg441 |
2006-03-03 16:09:47 | jch | set | priority: bug -> wishlist nosy:
droundy, tommy, clive |
2007-07-19 04:38:25 | kowey | set | nosy:
+ kowey, beschmi title: darcs pull --verbose-no-really-I-do-mean-verbose -> option to show commute progress (e.g. pull --very-verbose) |
2007-07-20 21:00:34 | kowey | link | issue498 superseder |
2008-01-25 20:33:19 | droundy | set | status: unknown -> resolved-in-unstable nosy:
droundy, tommy, beschmi, kowey, clive |
2008-09-04 21:27:54 | admin | set | status: resolved-in-unstable -> resolved nosy:
+ dagit |
2009-08-06 17:46:59 | admin | set | nosy:
+ markstos, jast, Serware, dmitry.kurochkin, darcs-devel, zooko, mornfall, simon, thorkilnaur, - droundy, clive |
2009-08-06 20:42:46 | admin | set | nosy:
- beschmi |
2009-08-10 22:17:12 | admin | set | nosy:
+ clive, - markstos, darcs-devel, zooko, jast, Serware, mornfall |
2009-08-11 00:08:18 | admin | set | nosy:
- dagit |
2009-08-25 17:58:46 | admin | set | nosy:
+ darcs-devel, - simon |
2009-08-27 14:03:52 | admin | set | nosy:
tommy, kowey, darcs-devel, clive, thorkilnaur, dmitry.kurochkin |
|