[Bug 1976257] Re: sbuild breaks lp-buildd with symlinks to .dsc files
Launchpad Bug Tracker
1976257 at bugs.launchpad.net
Thu Jun 30 18:03:04 UTC 2022
This bug was fixed in the package sbuild - 0.83.1ubuntu1
---------------
sbuild (0.83.1ubuntu1) kinetic; urgency=medium
* Merge from Debian unstable (LP: #1974177). Remaining changes:
- d/t/control: add isolation-machine to the test flags
- no-pkg-mangle-deps.patch: Set NO_PKG_MANGLE=1 when building dummy
packages, as pkgbinarymangler's dpkg-deb expects to be run from a source
package.
- abs-path-revert.patch: Revert upstream commit that breaks lp-buildd by
causing symlinks to files not ending in .dsc to no longer be buildable.
(LP: #1976257)
- debian/tests/control: Skip unshare-qemuwrapper test where linux-image-
amd64 is missing. It is missing in Ubuntu making the test fail.
- debian/tests/unshare: Run the test, but skip it if user namespaces are
not supported
- debian/tests/unshare*: Test with current release
* Removed obsolete patches/changes:
- debian/tests/control: Don't depend on linux-image-amd64 package
It does not exist on Ubuntu.
- debian/tests/unshare-qemuwrapper: Don't use linux-image-amd64 package in
bootrstrapping test on Ubuntu
- debian/tests/unshare-qemuwrapper: Drop delta
* Fix the unshare tests
- Make dscverify available by adding devscripts to EXTRA_DEPS
- Ensure dscverify tests actually run by re-writing verify()
- Remove the release=unstable check (there's no reason we shouldn't
check the orig-tarball and deb output)
- unshare test requires isolation-machine to execute
* Fix build-procenv to work under Ubuntu by removing unstable deb-src
reference
* Fix the diffoscope tests
- Change the expected .deb output to match xz or zstd compression
- Use "unstable" as d/changelog release name so the test can remain
static across releases
- Patch umask differences otherwise diffoscope barfs on differing group
modes in the generated orig-tar
sbuild (0.83.1) unstable; urgency=medium
[ Johannes Schauer Marin Rodrigues ]
* bin/sbuild-cross-resolver: we don't need the English module (closes:
#1005957)
* debian/tests/unshare: run with -x
* lib/Sbuild/Utility.pm: add warning about missing libwww-perl (closes:
#1009859)
[ Jochen Sprickerhof ]
* lib/Sbuild/ChrootUnshare.pm: mkdir for bind mounts
[ Daniel Kahn Gillmor ]
* Use --batch with gpg when importing secret key (Closes: #1010171)
sbuild (0.83.0) unstable; urgency=medium
* sbuild-qemu (package):
- Support for new architectures: armhf, arm64, ppc64el
- Move vmdb2 to Depends
- Depend on autopkgtest (>= 5.17~)
* sbuild-qemu:
- Fix looking for images when --arch was specified
- sbuild-qemu: rename --ram to --ram-size. This matches the
autopkgtest-virt-qemu option
- Reduce default CPU count to 2, rather than equal to host cores. This is
more likely to work on all platforms
* sbuild-qemu-create:
- Update shared dir setup (deprecated QEMU syntax). Existing images will no
longer work and will need to be recreated
* sbuild-qemu-update:
- Fix QEMU launch issues (network, serial)
- Reduce memory requirement. 1GiB is sufficient for apt-get operations
* sbuild-qemu-boot: New utility to boot to a VM console
sbuild (0.82.1) unstable; urgency=medium
* fix sbuild-cross-resolver
* copy solvers from /usr/lib/apt/solvers into chroot if cross-building
* add dependency on apt-utils for /usr/lib/apt/solvers/apt
* chown /var/lib/sbuild 755 so that the _apt user can read apt.conf inside it
* remove maintainer script support for ancient package versions
* debian/control: bump Standards-Version (no changes)
* debian/source/include-binaries is not needed anymore
sbuild (0.82.0) unstable; urgency=medium
[ Johannes Schauer Marin Rodrigues ]
* remove etc/99builddsourceslist as it is unused
* bin/sbuild-createchroot: avoid allowing execution of arbitrary Perl code
via a custom mirror URL (closes: #1001807)
* debian/tests/build-procenv: add deb-src repository
* debian/tests/unshare-qemuwrapper: use copy:// instead of file://
* man/sbuild.1.in: document the --arch-all and --no-arch-all defaults while
cross-building
* lib/Sbuild/ChrootUnshare.pm: also create /dev/console and /dev/ptmx and
mount /dev/pts and /dev/shm
* lib/Sbuild/Build.pm: fix error reporting of 'changes.new could not be
renamed'
* add sbuild-cross-resolver filtering out m-a:foreign and essential:yes
packages that are not arch:all and not arch:native during cross-building
* bump debhelper-compat to 13
* use dh-sequence-python3 instead of --with=python3
* run wrap-and-sort
* add myself to d/copyright -- better late than never ;)
* debian/control: add uidmap to Recommends (closes: #986962)
* use debian/*.manpages instead of debian/*.install to install manpages
* add UNSHARE_BIND_MOUNTS allowing to bind-mount directories into the chroot
in unshare mode (closes: #986694)
[ Samuel Thibault ]
* control: Fix git URLs.
[ Christian Kastner ]
* sbuild.1: Refresh unshare info
[ Jochen Sprickerhof ]
* Don't overwrite BUILD_DIR when compiling in src dir (Closes: #990734)
[ Vagrant Cascadian ]
* lib/Sbuild/Utility.pm: Add support for zstd compression. (Closes: #987655)
-- Dave Jones <dave.jones at canonical.com> Thu, 30 Jun 2022 12:21:07
+0200
** Changed in: sbuild (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to sbuild in Ubuntu.
https://bugs.launchpad.net/bugs/1976257
Title:
sbuild breaks lp-buildd with symlinks to .dsc files
Status in sbuild package in Ubuntu:
Fix Released
Status in sbuild package in Debian:
New
Bug description:
We're currently carrying a delta in our sbuild which reverts a commit
in the upstream [1] which purports to fix a bug [2]. There's no bug
associated with this delta, which allegedly fixes a build failure in
lp-buildd. The delta in question is documented under d/p/abs-path-
revert.patch (I say "documented" as sbuild is a native package, so the
patch itself does nothing more than document the delta that exists in
the base tar-ball), and contains:
--- a/bin/sbuild
+++ b/bin/sbuild
@@ -84,10 +84,6 @@ sub main () {
my $jobname = $ARGV[0];
my $source_dir = 0;
- if (-e $jobname) {
- $jobname = abs_path($jobname);
- }
-
if (-d $jobname) {
$jobname = create_source_package($jobname);
if ($jobname eq '.') {
@@ -171,6 +167,7 @@ sub main () {
sub create_source_package ($) {
my $dsc = shift;
+ $dsc = abs_path($dsc);
open(my $pipe, '-|', 'dpkg-parsechangelog',
'-l' . $dsc . '/debian/changelog')
Despite digging around the bug and code history of lp-buildd around
the time the sbuild patch was introduced, I've come up empty for
additional information on why this change was introduced. As requested
in the merge LP: #1974177, I'm filing this bug largely to try and
track whether this delta is still required.
We could simply remove the patch and "see what happens" but I'm
reluctant to do that given the potentially wide-ranging breakage that
could result. Ideally, this needs some more in-depth investigation by
someone either more familiar with lp-buildd, or the time to set up a
local test environment to determine whether we should still be
carrying this patch.
[1]: https://salsa.debian.org/debian/sbuild/-/commit/d15d5ea67b81cde811207ff6853b381c3ebe4b41
[2]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=801436
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sbuild/+bug/1976257/+subscriptions
More information about the foundations-bugs
mailing list