[buildd-tools-devel] sbuild version 0.61.0 released

Roger Leigh rleigh at codelibre.net
Wed Feb 23 14:23:32 UTC 2011


Hi folks,

I have released sbuild version 0.61.0.  This is only a minor (but
important) release, because this is the first release where we have
made the apt and aptitude resolvers behave in exactly the same way
as the internal resolver, and they can be used as a drop-in
replacement for internal for the very first time.

In order to make this determination, I have done a complete rebuild
of squeeze with each resolver.  The minor discrepancies found have
resulted in a few small changes to correct the differences.  The
results and raw data are available here:
http://people.debian.org/~rleigh/squeeze-rebuild/
with a summary of the findings here:
http://people.debian.org/~rleigh/squeeze-rebuild/report.pdf
Note that the majority of the discrepancies are due to apt and aptitude
resolving the dependencies slightly differently if the build-deps are
provided on the command-line vs via a dependency package.  The same
build dependencies are installed of course, but some leaf packages
may be installed/not installed.  This will be mostly eliminated by
eliminating alternatives (see below).

One nasty thing I did find is an aptitude bug (#139615) which means
if it fails it doesn't set failure exit status, so sbuild never knowns
it failed to install the build deps.  The build still fails, of course,
but it's reported as a build failure rather than during install-deps.
This would preclude its use as the default resolver.


The important changes in this release are
1) Only using the first alternative of alternative dependencies when
   using the apt and aptitude resolvers (see below)
2) aptitude runs dpkg with --force-confold like internal and apt


Goals for the next release (and wheezy)

I would like to now
· make "apt" the default resolver in place of internal
· formally deprecate internal
· (later, once we're happy with the reliability and stability of the
  apt resolver) remove internal entirely; apt is a far superior
  replacement

For buildd-sbuild integration:
· implement parallel sbuild invocation in buildd main loop
· remove batch mode in sbuild
  - fix logging once batch mode is gone; currently it's a complex mess
· move stats reporting from sbuild to buildd
· invoke sbuild from buildd subprocess using library interface;
  will allow buildd direct access to sbuild build metadata and
  direct control over build options
These tasks are all inter-related.  Doing this will cleanly separate
the buildd and sbuild responsibilities, leaving sbuild dedicated to
just package building, and buildd just to wanna-build interaction and
running sbuild jobs.


Regards,
Roger


* Major changes in 0.61.0:

  1) The apt and aptitude build dependency resolvers now use only the
     first alternative in alternative dependencies.  The other
     alternatives are stripped out entirely.  This makes the apt and
     aptitude resolvers behave exactly like the internal resolver.
     Note that this is configurable with the $resolve_alternatives
     option, so alternative resolving may be re-enabled with this
     option if desired.  This is useful for e.g. backports, but not
     for unstable where the strict consistency and reproducibility
     offered by only using the first alternative is required.

Roger Leigh (10):
      Sbuild::Build: Add missing fail stages
      Sbuild::ResolverBase: Implement alternative stripping
      NEWS: Bump version to 0.61.0
      debian: Bump version to 0.61.0-1
      Sbuild::AptitudeResolver: Run dpkg with --force-confold
      sbuild.conf: Correct $resolve_alternatives to use proper name
      Buildd::DistConf: Don't use init_allowed_keys
      debian: Document aptitude use of dpkg --force-confold
      debian: Tidy changelog
      sbuild.conf: Fix typo in $resolve_alternatives

 NEWS                           |   14 +++++++++++++-
 debian/changelog               |   18 ++++++++++++++++++
 etc/sbuild.conf                |    9 +++++++++
 lib/Buildd/DistConf.pm         |    2 --
 lib/Sbuild/AptitudeResolver.pm |    1 +
 lib/Sbuild/Build.pm            |    3 +++
 lib/Sbuild/Conf.pm             |    5 +++++
 lib/Sbuild/ResolverBase.pm     |   17 +++++++++++++++--
 8 files changed, 64 insertions(+), 5 deletions(-)

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux             http://people.debian.org/~rleigh/
 `. `'   Printing on GNU/Linux?       http://gutenprint.sourceforge.net/
   `-    GPG Public Key: 0x25BFB848   Please GPG sign your mail.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/buildd-tools-devel/attachments/20110223/21ac5d85/attachment.pgp>


More information about the Buildd-tools-devel mailing list