Package: dgit Version: 3.10 [ forwarding this bug to the bts ]
On 10/03/17 12:15, Ian Jackson wrote:
00:00 <plugwash> Diziet, you might want to move the check whether fixup is needed at all before the check whether fixup can be linear. I think that if no fixup is needed then there is a trivial linear fixup which ought to be found right away. If this isn't the case, please file a bug with the repro and I will fix it.
It seems I found a corner case and i'm not sure what is the *right* behavior but at the very least the current error messages are misleading as heck. It seems that patches *can* create symlinks and having such a patch in the quilt stack leaves dgit rather confused. So to start off the symlink exists in both my head commit and my quilt stack. dgit refuses to build the source package claiming that I have a "new" symlink that cannot be represented. So I remove the symlink from my head commit and try to build the source package again. This time I get a "history cannot be linear" error. So I rerun the package build with --quilt=auto. This time I get a warning from dpkg-source about "ignoring deletion" and a "nothing quilty to commit" message from dgit. The source package builds successfully. And when I extract said source package dpkg-source dutifully creates the symlink.
Thanks, Ian.