On March 17, 2010 12:55:25 Joachim Breitner wrote: > Because if we’d put the whole ghc6 package name there, upon a ghc6 > transition, even a minor one like 6.12.1 → 6.12.2 > * we could not binNMU the library package but would have to manually do > sourceful uploads of each package, adjusting the package name. > * each upload would pass through NEW > > So the cost involved would be just too much. > > (AFAIK, the names of the packages must not be changed during a regular > build.) I did some more reading of various Debian documents, and I can see how passing through NEW would be a problem. I'm not sure I'm understanding your binNMU comment though. Are you just saying then that you can't binNMU derived packaged after a GHC version change, if the version is in the package name (i.e., the same problem -- change in package name pushes it through NEW). In any event, I was thinking some more about it and might have solution: - stick with the libghc6-*-dyn package as is (no version in the name) - add a libghc6-*-dyn-old package automatically generated by combining the contents of the previous libghc6-*-dyn and libghc6-*-dyn-old packages This way all the previous versions (you could limit how many versions if you wanted) are available in the libghc6-*-dyn-old package, so upgrading to the latest libghc6-*-dyn package does not have to force a reinstalling of all dynamic binaries on the system, thus breaking the synchronization problem. If the hash was included in the directory names, this scheme would even make it possible to have multiple versions for the same compiler version. In effect you would be doing the same thing as is done with C libraries (i.e., one package contains the routines for several ABI versions, except the differentiating is done at the directory level instead of inside the library). According to the FTP masters' FAQ, http://ftp-master.debian.org/REJECT-FAQ.html it is okay to make a target to update the control file (i.e., to update the build dependency) as long as it is not fired automatically. You would just manually run it before uploading the source package. Cheers! -Tyson
Attachment:
signature.asc
Description: This is a digitally signed message part.