2006-02-14 03:25:33

by Peter Williams

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

Jean Delvare wrote:
> Hi all,
>
> Quilt 0.43 is now available for download from Savannah:
> http://download.savannah.gnu.org/releases/quilt/
>
> Enjoy!
>

I've experienced a serious problem with this version of quilt that is
rather hard to explain but definitely arrived with this version as
reverting to 0.42 makes the problem go away.

Now to try to explain the problem :-(

The problem arises when pushing a patch that has errors in it (due to
changes in the previous patches in the series) and needs the -f flag to
force the push. What's happening is that the reverse of the errors is
being applied to the "pre patch" file in the .pc directory. Then when
you pop this patch it returns the file to a state with the reverse of
the errors applied to it.

I'm having trouble understanding how quilt could be dumb enough to do
this as surely the "pre patch" file in the .pc directory should be just
a copy of the file before the patch is applied.

This bug can completely hose a set of patches if the user doesn't notice
it very early and do something about it. The work around is to revert
to version 0.42 of quilt.

Peter
--
Peter Williams [email protected]

"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce


2006-02-14 04:10:06

by Andreas Gruenbacher

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

On Tuesday 14 February 2006 04:25, Peter Williams wrote:
> The problem arises when pushing a patch that has errors in it (due to
> changes in the previous patches in the series) and needs the -f flag to
> force the push. What's happening is that the reverse of the errors is
> being applied to the "pre patch" file in the .pc directory. Then when
> you pop this patch it returns the file to a state with the reverse of
> the errors applied to it.

Found and fixed. It's a missed rollback_patch on one of the two branches of
the code that checks if a patch can be reverse applied. This case apparently
doesn't trigger as easily as it seems, or else we would have found it sooner.
Still quite bad.

Shall we wait until the translations are up-to-date again, or release 0.44
immediately?

> I'm having trouble understanding how quilt could be dumb enough to do
> this as surely the "pre patch" file in the .pc directory should be just
> a copy of the file before the patch is applied.

Hey, it's just a bug.

> This bug can completely hose a set of patches if the user doesn't notice
> it very early and do something about it. The work around is to revert
> to version 0.42 of quilt.

You should have sent your gquilt announcement to the quilt-dev list as well.
Thank you for summarizing the changes.

Andreas

2006-02-14 04:36:55

by Peter Williams

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

Andreas Gruenbacher wrote:
> On Tuesday 14 February 2006 04:25, Peter Williams wrote:
>
>>The problem arises when pushing a patch that has errors in it (due to
>>changes in the previous patches in the series) and needs the -f flag to
>>force the push. What's happening is that the reverse of the errors is
>>being applied to the "pre patch" file in the .pc directory. Then when
>>you pop this patch it returns the file to a state with the reverse of
>>the errors applied to it.
>
>
> Found and fixed. It's a missed rollback_patch on one of the two branches of
> the code that checks if a patch can be reverse applied.

That was quick.

> This case apparently
> doesn't trigger as easily as it seems, or else we would have found it sooner.
> Still quite bad.
>
> Shall we wait until the translations are up-to-date again, or release 0.44
> immediately?
>
>
>>I'm having trouble understanding how quilt could be dumb enough to do
>>this as surely the "pre patch" file in the .pc directory should be just
>>a copy of the file before the patch is applied.
>
>
> Hey, it's just a bug.

:-)

>
>
>>This bug can completely hose a set of patches if the user doesn't notice
>>it very early and do something about it. The work around is to revert
>>to version 0.42 of quilt.
>
>
> You should have sent your gquilt announcement to the quilt-dev list as well.
> Thank you for summarizing the changes.

Sorry. They were mainly due to your change from "-p <patch>" to "-P
<patch>" for some commands. The other issue was a change to the return
value and error message when "quilt top" was used in a directory without
any quilt data. So no real changes to gquilt as seen by the user just
implementation changes.

BTW the --version function made it possible to make gquilt still work
with versions earlier than 0.43.

Thanks
Peter
--
Peter Williams [email protected]

"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce

2006-02-14 08:24:48

by Jean Delvare

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]


Hi all,

On 2006-02-14, Andreas Gruenbacher wrote:
> On Tuesday 14 February 2006 04:25, Peter Williams wrote:
> > The problem arises when pushing a patch that has errors in it (due to
> > changes in the previous patches in the series) and needs the -f flag to
> > force the push. What's happening is that the reverse of the errors is
> > being applied to the "pre patch" file in the .pc directory. Then when
> > you pop this patch it returns the file to a state with the reverse of
> > the errors applied to it.
>
> Found and fixed. It's a missed rollback_patch on one of the two branches of
> the code that checks if a patch can be reverse applied. This case
> apparently doesn't trigger as easily as it seems, or else we would have
> found it sooner. Still quite bad.

I probably encountered it the other day, but as I couldn't explain what
was happening, I mistakenly concluded to a user error and started again
from a fresh tree. Or maybe it was really a user error after all.

I was about to suggest that we add a test in the quilt test suite, but I
see you did already - good!

> Shall we wait until the translations are up-to-date again, or release
> 0.44 immediately?

I'd say:
* Fix the temporary file leak in the mail command I have been reporting a
few days ago - unless it's there on purpose.
* Update the translations. I'll take care of French this evening
(GMT+01).
* Let people (including me) do a little testing. If nothing else, running
the test suite on a few different systems can't hurt.
* Release.

We can be done by tomorrow if Yashi can handle the Japanese translation
fast. If Yashi is too busy I guess we'll have to release anyway...

Thanks,
--
Jean Delvare

2006-02-14 15:15:51

by Yasushi SHOJI

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

Hi Jean,

At Tue, 14 Feb 2006 09:18:39 +0100 (CET),
Jean Delvare wrote:
>
> > Shall we wait until the translations are up-to-date again, or release
> > 0.44 immediately?
>
> I'd say:
> * Fix the temporary file leak in the mail command I have been reporting a
> few days ago - unless it's there on purpose.
> * Update the translations. I'll take care of French this evening
> (GMT+01).
> * Let people (including me) do a little testing. If nothing else, running
> the test suite on a few different systems can't hurt.
> * Release.
>
> We can be done by tomorrow if Yashi can handle the Japanese translation
> fast. If Yashi is too busy I guess we'll have to release anyway...

:-) here is my part.
--
yashi


Attachments:
ja.po.gz (1.54 kB)

2006-02-14 15:55:58

by Andreas Gruenbacher

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

On Tuesday 14 February 2006 16:15, Yasushi SHOJI wrote:
> :-) here is my part.

Checked in, thanks!

Andreas

2006-02-14 22:50:10

by Peter Williams

[permalink] [raw]
Subject: Re: [Quilt-dev] Quilt 0.43 has been released! [SERIOUS BUG]

Jean Delvare wrote:
> Hi all,
>
> On 2006-02-14, Andreas Gruenbacher wrote:
>
>>On Tuesday 14 February 2006 04:25, Peter Williams wrote:
>>
>>>The problem arises when pushing a patch that has errors in it (due to
>>>changes in the previous patches in the series) and needs the -f flag to
>>>force the push. What's happening is that the reverse of the errors is
>>>being applied to the "pre patch" file in the .pc directory. Then when
>>>you pop this patch it returns the file to a state with the reverse of
>>>the errors applied to it.
>>
>>Found and fixed. It's a missed rollback_patch on one of the two branches of
>>the code that checks if a patch can be reverse applied. This case
>>apparently doesn't trigger as easily as it seems, or else we would have
>>found it sooner. Still quite bad.
>
>
> I probably encountered it the other day, but as I couldn't explain what
> was happening, I mistakenly concluded to a user error and started again
> from a fresh tree. Or maybe it was really a user error after all.

I went through much the same process (several times) before it finally
dawned on me that it might be a problem with the newly updated quilt and
replaced it with 0.42 :-(. I was worried that the symptoms were so
bizarre and hard to describe properly that the problem would be hard to
fix so I was impressed by the speed with which the problem was solved.

>
> I was about to suggest that we add a test in the quilt test suite, but I
> see you did already - good!
>
>
>>Shall we wait until the translations are up-to-date again, or release
>>0.44 immediately?
>
>
> I'd say:
> * Fix the temporary file leak in the mail command I have been reporting a
> few days ago - unless it's there on purpose.
> * Update the translations. I'll take care of French this evening
> (GMT+01).
> * Let people (including me) do a little testing. If nothing else, running
> the test suite on a few different systems can't hurt.
> * Release.
>
> We can be done by tomorrow if Yashi can handle the Japanese translation
> fast. If Yashi is too busy I guess we'll have to release anyway...

Peter
--
Peter Williams [email protected]

"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce