James Clarke <[email protected]> writes: > Currently, straight after git-pbuilder invokes pdebuild, it deletes > ../*_source.changes, provided there is at least one such file, and the > build was not done with -S. This causes two problems:
I did that originally for two reasons. One, historically, the *_source.changes file was completely worthless, since it was generated to move the source package into the pbuilder chroot, where the source package is then regenerated (and source-only builds weren't a thing). So that *_source.changes file has the wrong checksum for the *.dsc file, and is entirely useless. Two, I run gbp build-package and then want to view, sign, and upload the corresponding changes file, and want to use *.changes to refer to the one that's actually useful and uploadable. Having another changes file around requires typing quite a bit more of the file and dealing with tab completion, and it's surprisingly irritating. > 1. It ignores version numbers and package names, causing potential data > loss, which I feel is justification enough for the Severity: important. Yeah, it does that because I didn't know how to do better (and this started life as my personal script for my workflow, and at the time all *_source.changes files were garbage). > In looking into this, I discovered that pdebuild itself actually > ends up producing a _source.changes, since it calls > dpkg-buildpackage -S to generate the dsc to copy into the chroot. I > presume that the original intention of the deletion performed by > git-pbuilder was to delete *this* changes file, since the dsc > subsequently produced by the build inside the chroot will not be > identical, but is copied back as part of the build, making the > original _source.changes invalid. Correct. > Now, I'm of the view that dpkg-source -b should be used instead, > which is what sbuild uses to create the dsc. This also has the > advantage of not generating .buildinfo files (no annoying > debian/files lingering after the build, either). Then the only > _source.changes generated by pbuilder would be if the user requested > it, and therefore having it deleted by git-pbuilder would be wrong. > I should think changes like this are too late for Stretch, but > perhaps for Buster (or experimental?) we could coordinate our > efforts to get this to work? Yeah, this seems reasonable to me. Definitely happy to change git-pbuilder once pdebuild is fixed to not produce the spurious and useless *_changes.file. -- Russ Allbery ([email protected]) <http://www.eyrie.org/~eagle/>

