[Bug 2020530] Re: The debootstrap SRU to end all debootstrap SRUs

Launchpad Bug Tracker 2020530 at bugs.launchpad.net
Thu Jun 15 17:24:09 UTC 2023


This bug was fixed in the package ubuntu-dev-tools -
0.193ubuntu4~20.04.2

---------------
ubuntu-dev-tools (0.193ubuntu4~20.04.2) focal; urgency=medium

  * ubuntutools/misc.py: back out a change that's incompatible with python
    3.8 to fix a build failure.

ubuntu-dev-tools (0.193ubuntu4~20.04.1) focal; urgency=medium

  * Backport current ubuntu-dev-tools to focal.  LP: #2021910.
    - downgrade debhelper-compat dependency to 12 from 13 for focal
      compatibility.
    - this fixes compatibility with newer debootstrap which drops using
      per-Ubuntu-series symlinks for the bootstrap script.  LP: #2020530.

ubuntu-dev-tools (0.193ubuntu4) mantic; urgency=medium

  * Remove references to ftpmaster.internal.  When this name is resolvable
    but firewalled, syncpackage hangs; and these are tools for developers,
    not for running in an automated context in the DCs where
    ftpmaster.internal is reachable.

ubuntu-dev-tools (0.193ubuntu3) mantic; urgency=medium

  * Excise all references to cdbs (including in test cases)

ubuntu-dev-tools (0.193ubuntu2) lunar; urgency=medium

  [ Vladimir Petko ]
  * Fix a typo introduced in the last upload that made mk-sbuild fail
    unconditionally.  LP: #2017177.

ubuntu-dev-tools (0.193ubuntu1) lunar; urgency=medium

  * Set apt preferences for the -proposed pocket in mk-sbuild so that
    it works as expected for lunar and forward.

ubuntu-dev-tools (0.193) unstable; urgency=medium

  * Don't run linters at build time, or in autopkgtests. (Closes:
#1031436).

ubuntu-dev-tools (0.192) unstable; urgency=medium

  [ Benjamin Drung ]
  * sponsor-patch:
    + Ignore exit code 1 of debdiff call.
    + Use --skip-patches instead of --no-preparation with dpkg-source -x.
  * Demote bzr/brz from Recommends to Suggests, as nowadays git is the way.
    Closes: #940531
  * Use PEP440 compliant version in setup.py (LP: #1991606)
  * Fix issues found by flake8 on the Python scripts
  * Check Python scripts with flake8 again
  * Format Python code with black and run black during package build
  * Sort Python imports with isort and run isort during package build
  * Replace deprecated optparse with argparse
  * requestbackport: Remove useless loop from locate_package
  * reverse-depends: Restore field titles format
  * test: Fix deprecated return value for test case
  * Fix all errors and warnings found by pylint and implement most refactorings
    and conventions. Run pylint during package build again.
  * Bump Standards-Version to 4.6.2
  * Drop unneeded X-Python3-Version from d/control

  [ Masahiro Yamada ]
  * mk-sbuild:
    + Handle the new location of the Debian bullseye security archive.
      Closes: #1001832; LP: #1955116

  [ Mattia Rizzolo ]
  * requestbackport:
    + Apply patch from Krytarik Raido and Unit 193 to update the template and
      workflow after the new Ubuntu Backport process has been established.
      LP: #1959115

ubuntu-dev-tools (0.191) unstable; urgency=medium

  [ Dan Streetman ]
  * lpapicache:
    + Make sure that login() actually logins and doesn't use cached credentials.
  * ubuntu-build:
    + Fix crash caused by a change in lpapicache that changed the default
      operation mode from authenticated to anonymous.  LP: #1984113

  [ Stefano Rivera ]
  * backportpackage:
    + Add support for lsb-release-minimal, which doesn't have a Python module.
      Thanks to Gioele Barabucci for the patch.  Closes: #1020901; LP: #1991828

  [ Mattia Rizzolo ]
  * ubuntutools/archive.py:
    + Fix operation of SourcePackage._source_urls() (as used, for example, in
      SourcePackage.pull() called by backportpackage) to also work when the
      class is instantiated with a URL as .dsc.  Fixes regression from v0.184.
      Thanks to Unit 193 for the initial patch.

ubuntu-dev-tools (0.190) unstable; urgency=medium

  [ Dimitri John Ledkov ]
  * mk-sbuild:
    + For ubuntu, fix the debootstrap script to "gutsy", so to allow using
      mk-sbuild for newer releases without requiring a newer debootstrap.

  [ Gianfranco Costamagna ]
  * pbuilder-dist: fix typo kernal/kernel

  [ Benjamin Drung ]
  * Add missing files to debian/copyright
  * Bump Standards-Version to 4.6.1

ubuntu-dev-tools (0.189) unstable; urgency=medium

  [ Heinrich Schuchardt ]
  * mk-sbuild: don't require pkg-config-<target>. LP: #1966881.

  [ Tobias Heider ]
  * mk-sbuild: document SCHROOT_TYPE zfs in the manpage.

ubuntu-dev-tools (0.188) unstable; urgency=medium

  [ Mattia Rizzolo ]
  * archive.py:
    + Support Python 3.6 by calling functools.lru_cache() as a function, and
      avoid using @functools.cached_property (both new in Python 3.8).

  [ Graham Inggs ]
  * lpapicache.py:
    + Use collections.abc.Callable instead of the long deprecated
      collections.Callable.  LP: #1959541

ubuntu-dev-tools (0.187) unstable; urgency=medium

  [ Paride Legovini ]
  * mk-sbuild:
    + Add support for zfs-snapshot schroots.  LP: #1945349

  [ Mattia Rizzolo ]
  * mk-sbuild:
    + Apply patch from Peter Pentchev to avoid a broken log message.
      Closes: #968316
  * backportpackage:
    + Support backporting to Debian releases.  Closes: #776442; LP: #974132
    + Fix the guessing algorithm for the target release:
      - for Debian: pick the current stable release.
      - for Ubuntu: pick the current LTS release.

  [ Unit 193 ]
  * backportpackage:
    + Change the generated Ubuntu version following the new policy from the
      Backporters team.

  [ Dan Streetman ]
  * misc:
    + Refactor download progress bar code.
    + Save files that have Content-Encoding correctly,
      such as the changes file from upload queue packages.
  * pullpkg:
    + Extract source packages pulled from upload queue.
  * hugdaylist:
    + Remove long unused and non-working script.

ubuntu-dev-tools (0.186) unstable; urgency=medium

  * Replace nose with pytest (see: #997758).

ubuntu-dev-tools (0.185) unstable; urgency=medium

  [ Alex Murray ]
  * ubuntutools/archive.py:
    + Fix crash due to PersonalPackageArchiveSourcePackage() returning the
      wrong object when requesting a download url.  LP: #1938659

  [ Krytarik Raido ]
  * merge-changelog: Fix setting of newlines.

  [ Dan Streetman ]
  * misc: download to tmp file, to avoid leftover 0-size file on error
  * misc: handle ConnectionError as NotFoundError
  * archive: use proper component source packages sometimes have different
    component than their bpphs, so use the correct component when downloading
    binaries (LP: #1943819)
  * misc: fix flake8 complaints

  [ Stefano Rivera ]
  * Bump Standards-Version to 4.6.0, no changes needed.

ubuntu-dev-tools (0.184) experimental; urgency=medium

  [ Dan Streetman ]
  * Drop never packaged ubuntu-archive-assistant.
  * Add support for downloading from private PPAs:
    + ubuntutools/misc:
      - Refactor to use Pathlib and f-strings.
      - Refactor to use requests instead of urllib (for the earier auth)
    + ubuntutools/archive:
      - Refactor to use Pathlib.
      - Add support for the special URLs of private PPAs.
  * Don't use existing file without verifying their checksum.
  * tests: recreate the test package files on demand.
  * Remove no longer used dependencies on python3-termcolor and python3-yaml

  [ Mattia Rizzolo ]
  * pbuilder-dist: use shutil.which instead of
    distutils.spawn.find_executable() to save a dependency.  LP: #1936697
  * d/control:
    + Drop redundant Recommends that are already in Depends.
    + Bump debhelper compat level to 13.

  [ Marco Trevisan (Treviño) ]
  * mk-sbuild:
    + Enable debugging in the finish.sh script if --debug is used.
    + Add support to configure ccache for each schroot.

ubuntu-dev-tools (0.183) unstable; urgency=medium

  [ Dan Streetman ]
  * pbuilder-dist: include missing import

ubuntu-dev-tools (0.182) unstable; urgency=medium

  [ Dan Streetman ]
  * syncpackage, ubuntutools/archive.py:
    Don't save dsc file to disk until requested with pull()
    (LP: #1928946)
  * syncpackage:
    Don't login to LP if using --simulate
  * d/t/control: Add minimum flake8 version
    The --extend-exclude parameter is first available in flake8 3.8.0
  * ubuntutools/archive.py: Fix flake8 test failure
  * d/rules, d/control: Override build tests to use flake8 and nosetests3

  [ Stefano Rivera ]
  * Respect nocheck in DEB_BUILD_OPTIONS, again.

ubuntu-dev-tools (0.181) unstable; urgency=medium

  [ Logan Rosen ]
  * Fix a couple of remaining issues from the py2→py3 move.

  [ Krytarik Raido ]
  * Fix typo in the logging configuration.

  [ Dan Streetman ]
  * pbuilder: Handle debian change from /updates to -security.  LP: #1916633
    Starting in bullseye, the security suite is -security instead of /updates.
  * backportpackage: Don't use SourcePackage() directly.  Closes: #983854
    As the warning from 2010 says, don't use this class directly.

  [ Balint Reczey ]
  * mk-sbuild:
    + Use eatmydata only with the dpkg command.
      Eatmydata wrapping the build as well could break tests.
      Thanks to Julian Andres Klode for suggesting this solution
    + Use eatmydata by default.
      Since only the dpkg is wrapped in eatmydata it should be the safe and
      fast default. Eatmydata is widely used around apt thus it should be a
      serious bug if a package can't be installed with eatmydata in use.

  [ Marco Trevisan (Treviño) ]
  * doc/mk-sbuild.1: Add documentation for --debootstrap-proxy and
    DEBOOTSTRAP_PROXY.  LP: #1926166

ubuntu-dev-tools (0.180) unstable; urgency=medium

  * Drop coverage in the autopkgtest, as python3-nose-cov is not in
Debian.

ubuntu-dev-tools (0.179) unstable; urgency=medium

  [ Stefano Rivera ]
  * archive.py: Evaluate the filter() fixing Debian source history queries
    LP: #1913330

  [ Dan Streetman ]
  * allow running tests using tox
  * add autopkgtests to run tests
  * simplify/combine archive download functions
  * add support for private ppa by logging into lp
  * improve support for pull-uca-*
  * fix logging/printing output to stdout/stderr

ubuntu-dev-tools (0.178) unstable; urgency=medium

  [ Dan Streetman ]
  * pullpkg: also catch and deal with InvalidPullValueError.  LP: #1908770

  [ Mattia Rizzolo ]
  * d/control: Bump Standards-Version to 4.5.1, no changes needed.
  * ubuntu-archive-assistant/mir: Fix a SyntaxWarning.
  * backportpackage:
    + Add a -e/--message option to change the default "No-change"
      in "No-change backport to DIST".
      Thanks to Unit 193 for the initial patch.

  [ You-Sheng Yang ]
  * Add a dependency on tzdata, used by mk-sbuild.

  [ Logan Rosen ]
  * import-bug-from-debian:
    + Limit bug description length to 50k chars to support Launchpad's limits.
      LP: #1193941

  [ Dimitri John Ledkov ]
  * pullpkg.py: fix --mirror option parsing.
  * config.py: add UBUNTU_INTERNAL_MIRROR option, for launchpad internal
    mirror.
  * archive.py: use Regular, Ports, and Internal mirrors by default. Thus
    enabling pull-lp-debs to work with ports architectures, and inside
    launchpad builds too.

  [ Michael R. Crusoe ]
  * pbuilder-dist:
    + Use `arch-test` to determine whether the current system can run binaries
      of the requested architecture, instead of hardcoding an ever-growing
      list of whether something requires qemu or not.  Add the "arch-test"
      package to Recommends to that effect.

ubuntu-dev-tools (0.177) unstable; urgency=medium

  [ Dan Streetman ]
  * Verify checksums for downloaded binary files
  * pullpkg: support pulling from Ubuntu upload queues

  [ Mattia Rizzolo ]
  * ubuntu-build:
    + Add support for riscv64.
  * syncpackge:
    + Fix the new flake8 E741.  Closes: #963310

  [ Bryce Harrington ]
  * update-maintainer:
    + Try to recurse upwards to find a valid debian directory.  LP: #1885233

 -- Steve Langasek <steve.langasek at ubuntu.com>  Wed, 07 Jun 2023
05:00:09 +0000

** Changed in: debootstrap (Ubuntu Focal)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to debootstrap in Ubuntu.
https://bugs.launchpad.net/bugs/2020530

Title:
  The debootstrap SRU to end all debootstrap SRUs

Status in debootstrap package in Ubuntu:
  Fix Released
Status in ubuntu-dev-tools package in Ubuntu:
  Fix Released
Status in debootstrap source package in Bionic:
  Won't Fix
Status in ubuntu-dev-tools source package in Bionic:
  Won't Fix
Status in debootstrap source package in Focal:
  Fix Released
Status in ubuntu-dev-tools source package in Focal:
  Fix Released
Status in debootstrap source package in Jammy:
  Fix Released
Status in ubuntu-dev-tools source package in Jammy:
  Fix Released
Status in debootstrap source package in Kinetic:
  Fix Released
Status in ubuntu-dev-tools source package in Kinetic:
  Fix Released
Status in debootstrap source package in Lunar:
  Fix Released
Status in ubuntu-dev-tools source package in Lunar:
  Fix Released

Bug description:
  [Impact]
  Today, debootstrap requires a sourceful change to know about every target name.  This means that every 6 months, we have to do an upload of debootstrap as part of the archive opening so that it can build chroots for the new release.

  We have done this 30 times.

  It causes development drag, because the upload of debootstrap to the
  devel series is not instantaneous, usually gets hung up on failing
  autopkgtests of reverse-dependencies related to other aspects of the
  archive opening, and is slow to get SRUed back to stable series.

  And the only code change required in debootstrap is a symlink to the
  'gutsy' script which has not changed in 15 years.

  In mantic, I have changed the code to detect when the target series is
  one known to distro-info, and if it is, to default to the common
  Ubuntu bootstrap script.  This removes the need for any further
  uploads of debootstrap to inform it of new Ubuntu release names (and
  lets us remove 30 symlinks from the source package).

  [Test case]
  sudo apt install distro-info debootstrap
  series=$((distro-info --supported; distro-info --supported-esm)| sort -u)
  for s in $series; do
      if [ "$s" = mantic ]; then continue; fi
      sudo debootstrap $s ${s}-old
  done
  install debootstrap from -proposed
  for s in $series; do
      sudo debootstrap $s ${s}-new
  done
  for s in $series; do
      if [ "$s" = mantic ]; then continue; fi
      sudo diff -uNr ${s}-old ${s}-new
  done 2>&1 \
  | grep -vE 'No such file or directory|is a (character|block) special file|Binary files .*(\.pyc|/var/cache/.*) differ' \
  |filterdiff -x '*/etc/machine-id' -x '*/var/lib/dbus/machine-id' -x '*/var/log/**' -x '*/var/lib/dpkg/status*' -x '*/var/cache/**'
  (exclude from the diff: dangling (wide) symlinks; device files; compiled pyc files that will differ on each generation; and other text files that are randomly generated or contain timestamp or ordering differences)

  sudo apt install ubuntu-dev-tools
  sg sbuild -c 'mk-sbuild --skip-proposed mantic'

  [Where problems could occur]
  Because this adds a new dependency, there could be problems as a result of pulling it in.  However, distro-info is part of ubuntu-minimal, so is present on any supported Ubuntu system.

  [Original description]
  (on Jammy)
  # sg sbuild -c mk-sbuild --skip-proposed mantic
  Specified release (mantic) not known to debootstrap

  Without this update users cannot generate mantic chroots for
  development.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/debootstrap/+bug/2020530/+subscriptions




More information about the foundations-bugs mailing list