[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dgit: all users of dgit << 0.30 please upgrade

A new version of dgit, 0.30, is now in testing.

This has a number of important improvements, but it is not fully
backward compatible with older dgit; furthermore it is not compatible
with a change I intend to make to the server-side infrastructure very

All existing users of dgit must upgrade.

The new dgit will operate properly on git histories etc. from the old
dgit, and should be compatible with all existing workflows.  The .deb
which is currently in testing should be installable everywhere the
existing versions of dgit are.  So should be no difficulty upgrading.

The two imperative reasons for existing users to upgrade are:

 * I am going to move the git repositories.  The old version of dgit
   will stop working when I do.  (The new version will automatically
   use the correct location, switching across when I pull the
   appropriate server-side handle.)

 * The new dgit generates cleaner git trees for `3.0 (quilt)'.
   However these trees will break with older versions of dgit.  So
   archive pushes done with newer dgit, or git branches made with
   newer dgit and transferred using git transport to an older dgit,
   will cause failures.

People who are not yet using dgit because they are not DDs should
watch this space ...


 dgit (0.30) unstable; urgency=high


   * Client uses new infrastructure:
     - Check for new dgit git service on dgit-git.debian.net (ie
       gideon.debian.org), with transition plan based on diversion feature.
     - Old versions of dgit will stop working when the server-side handle is

   * dgit git trees no longer contain .pc for format `3.0 (quilt)' source
     packages.  Closes:#764606.
     - It is deleted whenever we find it.
     - Older versions of dgit will choke on trees without .pc.
     - (When doing quilt fixup, we recreate a suitable .pc in a temporary
       directory so that we can do dpkg-source --comit.)

   * All users are urged to upgrade ASAP.

   Other significant improvements:

   * When generating quilt patches, try to linearise the git history into a
     series of individual new patches for debian/patches.  Closes:#770710.

   * When receiving a push with dgit-repos-server, update the server's
     refs/heads/master if we are pushing to what the distro regards as a
     relevant branch, and the push would ff master.  Closes:#728209.

   * For non-Debian distros, distro version release tags contain distro
     name a la DEP-14 (rather than hardcoding `debian/').

   * Set up a merge driver for debian/changelog.  Closes:#769291.

   * --clean=git and --clean=none cause dgit to pass -nc to
     dpkg-buildpackage, suppressing calls to the package's clean target.
     Also, expand the documentation in this area slightly.  Closes:#768590.

   * Provide --clean=git-ff (aka -wgf), which is useful for dgit itself (!)

   Minor improvements:

   * Reduce some noise output and improve the clarity of some messages.
   * Be more careful about tag updates during fetch: only update tags
     referring to uploads to distro we are trying to fetch from.
   * Change realpath dependency to `coreutils (>= 8.23-1~) | realpath'


   * Fix handling of rmadison-based and gitless distros (e.g., Ubuntu).
   * Add missing `gpgv' to test dependencies in debian/tests/control.
   * Strip `-b <branch>' from contents of Vcs-Git header, when setting up
     the vcs-git remote.  Closes:#759374.
   * Do not offer wget as an alternative dependency to curl.  We always
     unconditionally invoke curl and have no code to use wget.
   * Complain about lack of cuddled values for value-taking single-letter
     options, rather than thinking the user meat an empty value.
   * Reject (rather than ignoring) further options merged witth -wn, -wg,
   * Fix inaccurate error message when archive's git hash is not an
     ancestor of git repo's git hash.
   * Detect and bomb out on vendor-specific `3.0 (quilt)' patch series.
   * Fix the rules clean target to remove test results and output.

   Documentation improvements:

   * Break out dgit(7) from dgit(1).
   * Provide example workflow for dgit rpush.  Closes:#763334.
     (Also part of the fix for #768470.)
   * Document that dgit repos are cloneable with git, in dgit(1)
     section MODEL.  [Andreas Barth.]  Closes:#768470.
   * Better documentation for quilt series handling.
   * Document under `dgit push' that it is best to build with dgit too.
   * Other minor clarifications and improvements.

   Behind-the-scenes work:

   * Use ftpmasterapi archive query method.
     (Closes:#727702.  Also partly obsoletes #768470.)
   * New dgit-infrastructure binary package containing dgit-repos-server et
     al.  Client users probably don't want this stuff.  Also, it provides a
     convenient way to publish the dependencies.
   * Many many bugfixes to the server side (dpkg-repos-server et al.).
   * Add :..; prefix to ssh remote commands, for the benefit of future
     forced command wrappers.  Implicitly, this defines a new ssh-based
     command protocol.  Closes:#720174, #720175.
   * Distro access configuration handling changes (should not be noticeable
     to most users).
   * In places, significant restructuring or tidying up.
   * Turn all perl warnings into errors using $SIG{__WARN__}.


Reply to: