Re: Stg AssertionError in sink command

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: Stg AssertionError in sink command

From: Catalin Marinas <hidden>
Date: 2016-06-15 22:43:34

On 13/09/2007, Jon Smirl [off-list ref] wrote:
Patch 008 was hidden and I used unhide to bring it back. But the
hide/unhide process moved it to the top of the stack. I need to sink
it back down to where it came from. Shouldn't hide/unhide preserve the
patch position in the stack?
I now got the time to read this thread in more detail.

The initial implementation of hide/unhide was to preserve the patch
position in the stack. This behaviour was really confusing for people
since pushing a patch after the hidden one actually forced the pushing
of the hidden patch, which isn't normally shown by 'series'. I decided
afterwards to create a third category of patches - 'hidden' (the other
two being applied and unapplied). This cleared the unpredictable
behaviour when pushing since hidden patches cannot be pushed.

Karl's patch does the correct thing of raising an error if sinking
below an unapplied patch.

I implemented the hidden patches feature just to hide some patches I
no longer need (various tests or early prototypes of some patches) but
I still want to keep them around in case I have to look again.

Regarding the reordering of the unapplied patches, at the moment you
can (but I *don't* recommend) edit .git/patches/<branch>/unapplied.
Maybe the 'float' and 'sink' functionality could be modified to also
act on unapplied patches (with a --unapplied option). I don't think a
separate command would be needed as it duplicates a lot of
functionality from the above.

-- 
Catalin

Re: Stg AssertionError in sink command

From: Karl Hasselström <hidden>
Date: 2016-06-15 22:43:34

On 2007-09-15 23:37:21 +0100, Catalin Marinas wrote:
The initial implementation of hide/unhide was to preserve the patch
position in the stack. This behaviour was really confusing for
people since pushing a patch after the hidden one actually forced
the pushing of the hidden patch, which isn't normally shown by
'series'. I decided afterwards to create a third category of patches
- 'hidden' (the other two being applied and unapplied). This cleared
the unpredictable behaviour when pushing since hidden patches cannot
be pushed.
I agree that the new semantics is way saner (though I'm still not
entirely convinced that hiding patches is a good idea in the first
place). But the man pages should probably point out clearly that
hidden patches must be unapplied.
Karl's patch does the correct thing of raising an error if sinking
below an unapplied patch.

Regarding the reordering of the unapplied patches, at the moment you
can (but I *don't* recommend) edit .git/patches/<branch>/unapplied.
Maybe the 'float' and 'sink' functionality could be modified to also
act on unapplied patches (with a --unapplied option). I don't think
a separate command would be needed as it duplicates a lot of
functionality from the above.
Why the extra option? Just do the right thing, since it's unambiguous
what the right thing is.

-- 
Karl Hasselström, kha@treskal.com
      www.treskal.com/kalle
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help