xdeb (0.6.7) unstable; urgency=low [ Colin Watson ] * Use next(iterator) rather than iterator.next(). * Use "key in dict" rather than "dict.has_key(key)". * Make code style more or less conform to PEP-8. * Simplify utils.file_on_path. * Use dict.items rather than dict.iteritems to simplify porting to Python 3; the performance impact should be negligible here. * Simplify sorting in various places by relying on the default iteration protocol for mappings. * Use io.StringIO if cStringIO.StringIO is not available. * Rephrase MyPkgRelation.parse_relations using list comprehensions: arguably clearer, and works in both Python 2 and 3. * Adjust GraphCycleError.__str__ to work in Python 3. * Drop support for debian_bundle from python-debian (<< 0.1.15). * Use configparser rather than ConfigParser if available. * Remove __pycache__ directories on clean. * Pass universal_newlines=True to subprocess.Popen to get Unicode output in Python 3. * Suppress pychecker warnings from the standard library. * Set source format to 3.0 (native). * Canonicalise the path to the GPL text in debian/copyright. * Set [trusted=yes] for our local repository, and enable APT authentication otherwise (closes: #781595). * Use context managers where appropriate. [ Loïc Minier ] * More PEP8 fixes. * pyflakes fix. * Run pyflakes as part of testsuite if it's available. * Run pep8 as part of testsuite if it's available. * Fix pychecker warning in tests. * Run pychecker as part of testsuite if it's available. * Test that we're running pychecker on all *.py files. * Also run pychecker on tests. * Clean __pycache__ in Makefile rather than debian/rules. * Bump Standards-Version to 4.0.0. * Remove myself from uploaders. * Bump Debhelper compat level and build-dep to 10. * Build-depend on dh-python. * Remove Colin Watson and Steve Langasek from Uploaders with their agreement. * Add .pm suffix to checks/xdeb. * Use Lintian::Util instead of Util in Lintian check. * Updated to latest Lintian checks API, except for tag suppression which would need to be ported to Lintian profiles. * Fix ARM file magic detection (allow for "EABI5"). -- Loïc Minier Tue, 11 Jul 2017 13:04:29 +0200 xdeb (0.6.6) unstable; urgency=low [ Loïc Minier ] * Add an initial testsuite. [ Colin Watson ] * Fix typography of --generate-graph help text. * Don't fail if /etc/apt/sources.list (or whatever Dir::Etc::sourcelist points to) doesn't exist. * Use Python 3-style print functions. * Require Python >= 2.6. * Use "except Exception as e" syntax rather than the old-style "except Exception, e". * Use "raise Exception(value)" syntax rather than the old-style "raise Exception, value". * Make GraphCycleError a subclass of Exception rather than of StandardError; StandardError was removed in Python 3. * Run the test suite on build. * Build-depend on python-debian and python-apt for the test suite. * Bump python build-dependency to (>= 2.7) for unittest discovery. [ Gustavo Alkmim ] * Add support for --stage1 option, which considers the Build-Depends-Stage1 field of control file instead of Build-Depends; using this option requires patched dpkg-dev with support for 'dpkg-checkbuilddeps --stage=1' (closes: #669250). -- Colin Watson Wed, 23 May 2012 11:03:18 +0100 xdeb (0.6.5) unstable; urgency=low [ Steve Langasek ] * If a package is Multi-Arch: foreign, we don't need to build it unless we also want to install it in its own right. * When calling apt-cache show, qualify the package name with an explicit architecture; this guards against attempts to import not-for-us binaries that are in the apt cache in a multiarch environment. LP: #752287. [ Wookey ] * Add some packages to black/whitelists * Improve graphing to only include binary deps that are actually depended on in the dependency tree * Update Standards-version * Depend on multiarch-capable dpkg-cross and invoke it with --convert-multiarch * Fix lintian test whinge * Don't fail if null dpkg-cross packages are found LP: #731079 * Include lib64c in toolchain packages list - avoids multipleprovides exception on 64-bit arches. LP: #75574 * Let xdeb grok binary package names as well as source ones. LP: #778506 * Use 'apt-get download' rather than wget for native imports, provided that multiarch is configured. LP: #851427 [ Steve McIntyre ] * Add initial support for armhf. LP: #772526 [ Colin Watson ] * Convert to dh_python2. * Consistently use 'import utils' rather than 'from utils import ...'. * Suppress unusednames=_NATIVE_IMPORT_SOURCE_NAME in config.py, apparently due to a pychecker bug. * Split option parsing into a separate function to placate a pychecker warning about the length of main. * Extend need_loop_break hack to cover python2.7's build-dependency on libbluetooth-dev. * Add python2.7-dev to whitelist. * Fix installation of binutils-multiarch when cross-compiling. * Tolerate the removal of the fields collection in Lintian 2.5.2. * Don't install build-dependencies in --sequence mode. * Fix caching in Provides resolver. * Only skip Multi-Arch: foreign packages if the system is configured to be able to install packages of the appropriate foreign architecture. * Revamp build-dependency installation. We now point 'apt-get install' at a combination of the system sources.list and the destination directory rather than using 'dpkg -i', and we install build-dependencies immediately before building each package as well as in a block at the start of the run; this also allows us to be more selective about which crossed packages we install. The 'builddep_whitelist' configuration option is now unnecessary and has been removed. * Fix dependency resolver. We now only expand dependencies for binaries that are explicitly required to satisfy (build-)dependencies, rather than trying to expand all binaries in every source package we encounter. * If rebuilding a source package that had already been built, force a full regeneration of the apt repository and purge any previous incarnations of those binary packages. * Fix native_import to work again even if multiarch isn't configured. * Remove explicit code to install native imports; the new build-dependency installer can deal with that by itself. * Remove libreadline-dev from cross_blacklist now that we cross-convert empty packages; progresses sqlite3 build. * Policy version 3.9.2: no changes required. -- Colin Watson Fri, 30 Sep 2011 12:49:52 +0100 xdeb (0.6.4) unstable; urgency=low * Update packages in black/whitelists. * Improve documentation * Comment-out list of packages never to build (empty by default) * Add graphing functionality and utils * Ensure that built packages are actually installed if needed -- Wookey Wed, 23 Feb 2011 01:45:48 +0000 xdeb (0.6.3) unstable; urgency=low [ Colin Watson ] * Actually use apt_opts variable in native_import (pychecker). [ Loïc Minier ] * Add missing dependency on sudo. [ Wookey ] * Upload to Debian -- Wookey Mon, 22 Nov 2010 17:13:46 +0000 xdeb (0.6.2) maverick; urgency=low [ Wookey ] * Use correct architecture apt cache when determining dependencies Fixes LP:#616617 * Fix --only-explicit code to build corresponding source packages when binary names suppplied [ Loïc Minier ] * Clean up indentation in xdeb.py and changelog. -- Steve Langasek Fri, 08 Oct 2010 12:20:24 -0700 xdeb (0.6.1) maverick; urgency=low * Set PKG_CONFIG_LIBDIR if $triplet-pkg-config is not found on path; LP: #623478. -- Wookey Wed, 01 Sep 2010 17:14:21 +0100 xdeb (0.6) maverick; urgency=low [ Loïc Minier ] * Improve Description, as suggested by James Westby. * Use debian module when available instead of debian_bundle; thanks Marcin Juszkiewicz. * Recommend gcc as to avoid a dpkg-architecture warning: "Couldn't determine gcc system type, falling back to default (native compilation)". * Recommend fakeroot as it's the default rootcmd of debuild and will break the build with "fatal error at line 945: problem running fakeroot". * Depend on build-essential, dpkg-checkbuilddeps wants it unconditionally. [ Colin Watson ] * PEP-8 indentation throughout. * Fix TargetConfig.native_import_source not to crash if that configuration element isn't present. * Check blacklist separately for virtual package names in dependencies. * Blacklist phpapi-20090626 and phpapi-20090626+lfs. * Add --only-explicit option to native-import everything that isn't explicitly listed on the command line. This avoids a number of dependency cycles. -- Wookey Wed, 11 Aug 2010 18:00:56 +0100 xdeb (0.5) maverick; urgency=low [ Colin Watson ] * Rename to xdeb. * Remove chromiumos-make-source. * Modify Lintian check to account for API changes in Lintian 2.3.0. * Port to new python-apt API, requiring at least version 0.7.91. * Massively speed up the "Building source package cache" step by using apt_pkg.TagFile rather than deb822.Sources.iter_paragraphs. * Consider *libgcj* as toolchain packages. [ Loïc Minier ] * Depend on wget, used in native_import(). * Add amd64 and target-amd64-generic sections in xdeb.cfg. -- Loïc Minier Tue, 15 Jun 2010 14:08:42 +0200 chromiumos-build (0.4) UNRELEASED; urgency=low [ Colin Watson ] * Fix --apt-source mode, broken in 0.3. * Indent build sequencing debug output according to tree depth. * Promote python-apt to a dependency, since debian_support needs it. * Fix operation when the build directory is empty. * Document --apt-source in chromiumos-build(1)'s SYNOPSIS. * Change --apt-source not to fetch source using apt-get when there is already a version in the build directory. Add a --prefer-apt option to restore the old behaviour of fetching if the build directory has an older version. --apt-source is now more suitable for use in a configuration where some source packages have preferred local versions but others are to be fetched using apt. * Rescan the unpacked source directory after fetching a source package using apt. * Add support for multiple build directories. * Add an --all option to build all packages in the working tree, and an -x/--exclude option to exclude individual packages from this. * Set DEB_BUILD_OPTIONS=nocheck when cross-compiling, as on the whole test suites will not work in this situation (except for architecture-independent packages, which don't need to be cross-compiled anyway). * Build-Depends-Indep is only needed when building architecture-independent portions of a package, so it's unlikely to involve libraries. Skip it when cross-compiling. * Blacklist libjpeg-progs (not a library). * Whitelist freeglut/freeglut3-dev; cross-blacklist libglu1-xorg, libglu1-xorg-dev, xlibmesa-gl, xlibmesa-gl-dev, and xlibmesa-glu. * Blacklist libtiff-opengl and libtiff-tools (not libraries). * Blacklist libjasper-runtime (not a library). * Improve build sequencing debug output to show dependency target binary names as well as source names. * Scan 'files' and 'src' subdirectories of each build directory, as a hack for the current Chromium OS tree layout. * Run dpkg-checkbuilddeps after printing "Building" message, to make it easier to see what failed. * Install all available build-dependencies at the very start of the build run, to minimise later interruptions. (We still need to install built packages as we go along.) * Cross-blacklist chromiumos-libcros (not needed to satisfy dependencies, and installed to /opt). * Install binutils-multiarch when cross-compiling. * Install packages during native compilation if needed to satisfy a later build-dependency. * Blacklist libprotobuf-java (language binding). * Blacklist libproc-dev and procps (problems with upstart-job dependency; nothing actually uses libproc-dev, and the version of procps in the build environment will do). * Whitelist libpango1.0-common for installation of build-dependencies. * Consider *lib32gcc* and *lib64gcc* as toolchain packages. * Build-dep-whitelist gconf2 and gconf2-common. * Build-dep-whitelist openssh-client. * Memoise slow apt provider search. * Move blacklist and whitelist configuration to a configuration file. * Add a -C option allowing an extra configuration file to be read. * Allow default options to be set in the configuration file. * Adjust aptutils.get_src_name to cope with binary packages mentioned in apt's source cache but not its binary cache. * Use the newest source available in any apt source. * Pass a file list to apt-ftparchive, considerably speeding it up when the destination directory is also a build directory. * Add support for per-package configuration files, allowing a debian symlink to be put in place at run-time. * Move build logs to destination directory. * Preserve the USER environment variable; at least chromeos-chrome relies on it. * Strip internal comments from debian/control, ensuring that there's always exactly one blank line between stanzas. * Cross-blacklist *-i18n (e.g. libparted1.8-i18n). * Add --convert option to cross-convert existing .debs without building. * Clean the source tree by default after building, and add a --no-clean-after option to suppress this. * Build-dep-whitelist dh-chromeos. * Add support for automatically importing packages from native builds. * Native-import libpcap and ppp; cross-blacklist libpcap-dev; whitelist ppp-dev. * Blacklist libpam-mount (not a library). * Account for python now being cross-buildable. [ Loïc Minier ] * Blacklist libnss3-tools (not a library). * Blacklist libnss3-0d (transitional package). * Add --parallel to use as many jobs as there are CPUs on the system and a parallel_blacklist config for packages which fail to build with "dpkg-buildpackage -jjobs". * Add slang2, libselinux, libthai to parallel blacklist. * Extend the post-build dpkg -i hack to not install blacklisted packages after native builds. * Also blacklist libgl1-mesa-swx11-i686 as it requires libgl1-mesa-swx11. * Add libxtst, libgpg-error to parallel blacklist. * Add sg3-utils, db, pam, libedit to parallel blacklist. * Whitelist libgail-common for installation of build-dependencies; this might actually be better stripped off or moved to the crossable whitelist. * Add openssl to parallel blacklist. * Sort parallel blacklist and add libxml2. * Whitelist dbus and dbus-x11 for installation of build-dependencies; this is needed to install gconf. [ Bill Richardson ] * Export GTEST_INCLUDEDIR and GTEST_LIBDIR when cross-compiling to fool gtest-config into returning the correct answers. [ Loïc Minier ] * Skip dpkg-ing converted .debs when there aren't any. -- Colin Watson Tue, 03 Nov 2009 13:37:34 -0800 chromiumos-build (0.3) karmic; urgency=low * Add a first cut at chromiumos-make-source, which takes a source package that may contain a patch system and transforms it so that all the patches are applied directly to the source tree. * Default destination directory to build directory, and improve --help output to document this. * Strip leading comments/newlines from debian/control before passing it to deb822.Deb822.iter_paragraphs. * Cope with building packages in directories that don't match the source package name in debian/control. * Allow specifying packages to build by their directory name as an alternative to naming the source package. -- Colin Watson Tue, 03 Nov 2009 12:34:24 -0800 chromiumos-build (0.2) karmic; urgency=low * Rebuild packages when any of their (build-)dependencies change. * Add 'make check' which runs pychecker, and make it pass. -- Colin Watson Fri, 30 Oct 2009 10:31:59 +0000 chromiumos-build (0.1) karmic; urgency=low * Initial release. -- Colin Watson Sat, 17 Oct 2009 01:44:06 +0100