On Tue, 2008-04-22 at 23:37 +0100, Adam D. Barratt wrote: > Hi, > > On Tue, 2008-04-22 at 23:01 +0100, Neil Williams wrote: > > Package: devscripts > > Version: 2.10.26 > > Severity: normal > > > > Every operation of dch or debchange results in: > > > > Can't use string ("") as a HASH ref while "strict refs" in use at > > /usr/bin/debchange line 737. > > > > This makes debchange|dch unusable on both of my current systems. > > Please could you confirm what line 737 of your copy > of /usr/bin/debchange is? In 2.10.26 it should be: > > if (exists $statuses->{$close}) {
Yes, that is the line. > which is in a block of code that's only called if dch was called with > --closes. Ah, now that makes sense. I was trying to work out why this bug had not been noticed before. I've been working with some unreleased upstream packages and --closes in each case is an ITP. > I can reproduce the above error, but only by using a changelog for a > package that doesn't exist in the Debian archive and passing --closes. However, I can reproduce it with any package whether in Debian or not as long as --closes is used. Try with 'dch -i --closes 123456'. I also get the same error with 'dch -a --closes 123456' whether the package exists in Debian or not, although these second tests were done where the bug number in question doesn't apply to that package and dch would normally produce an error (because that package has zero bugs). I don't get the expected error, I just get the HASH ref one: [EMAIL PROTECTED]:trunk$ dch -i --closes 477398 Can't use string ("") as a HASH ref while "strict refs" in use at /usr/bin/dch line 737. [EMAIL PROTECTED]:trunk$ dch -a --closes 477398 Can't use string ("") as a HASH ref while "strict refs" in use at /usr/bin/dch line 737. That was trying to record this bug in the changelog of apt-cross which has been in Debian for some time. I was expecting dch to output the "have you got the wrong package?" message. Interestingly, this works: $ dch -a -p wnpp --closes 477218 (for estron, the correct package for that ITP). tagpending needs to be told about wnpp/ITP bugs but I've never had to tell dch about that before. It seems that it is the error checking that has been disabled / replaced. > I've fixed that particular issue locally (I must admit it's not one of > my standard test cases). Well, an ITP is one of the most common use cases for new maintainers who would be quite confused by the current response from dch. New maintainers (e.g. people posting to [EMAIL PROTECTED]) would tend to come across this one a little too often - especially the "new" requirement for '-p wnpp' and the loss of the previous informative message. dch only appears to work for 'dch -a --closes number' where that number *is* the correct bug number and applies to that package. i.e. all error checking has apparently been replaced by this perl error, which isn't exactly helpful when trying to work out what has gone wrong. ;-) -- Neil Williams <[EMAIL PROTECTED]>
signature.asc
Description: This is a digitally signed message part