-dgit (0.23~) unstable; urgency=low
+dgit (1.5~~) unstable; urgency=medium
+
+ Incompatible change:
+ * dgit sbuild does not pass -A to sbuild. Consequently the default
+ build is now simply sbuild's default. With older sbuilds it was
+ possible to override dgit's -A by passing another option. But this
+ has been changed recently and now this default setting is very awkward
+ to change for the dgit user.
+
+ New checks and improved behaviours:
+ * When running dpkg-buildpackage, cope if user specified -g or -G.
+ * dgit sbuild: check that the set of .changes files found is as we
+ expect, before calling mergechanges.
+ * dgit sbuild: Rename the used-up .changes files to `.inmulti' to
+ avoid accidental use of the wrong one (by software, or by users).
+ * dgit sbuild: Check that the binary .changes file doesn't contain a
+ .dsc.
+ * Introduce --rm-old-changes to delete previous builds' changes files.
+ * Remove any pre-existing _source.changes file before building source,
+ as a safety check.
+ * No longer tolerate a multitude of .changes files when doing push.
+ Instead, insist on a single one.
+ * dgit sbuild no longer deletes extranious .changes files; instead
+ we rely on --rm-old-changes, or failing that, fail early.
+ * When doing quilt linearisation, treat upstream .gitignores not
+ in the toplevel the same way we treat ones in the toplevel.
+ * When automatically generating quilt patch, honour GIT_COMMITTER_DATE
+ for filename creation (makes filename deterministic in test suite).
+
+ Infrastructure:
+ * Better error handling in dgit-repos-policy-debian.
+ * dgit-repos-policy-debian.: fix git-cat-file-handling with multiple
+ taints in db (!).
+
+ Documentation:
+ * Document the dgit-distro.DISTRO.quilt-mode config setting.
- * Check for new dgit git service on dgit-git.debian.net (ie
- gideon.debian.org), with transition plan based on diversion feature.
+ Bugfixes:
+ * When cleaning up after failed clone, stat the to-be-cleaned-up
+ directory before running rmtree on it. Closes:#796773.
+ * Do not call "warn" on failure of cleanup handler in END block
+ (since warn has been made fatal and aborts the cleanup chain).
+ * Print better error message (with `fail' rather than `die') if
+ `dgit clone' cannot create the destination directory.
+ * Properly substitute $changesfile in one of the `You can retry'
+ messages. Closes:#800078.
+ * Pass --ch:* and -v options to dpkg-buildpackage when building
+ source. Fixes bad Perl poetry syntax. Closes:#829121.
+ * When synthesing a commit from a .dsc from the archive, stop
+ internal git reset from printing a confusing message about HEAD.
+
+ Test suite:
+ * When sbuild fails, do not crash due to sed not finding the log
+ file. Instead, simply tolerate the absence of the log file.
+ * Put --no-arch-all in build-modes-sbuild act, not only its real_act.
+ Cosmetic change only.
+ * Set GIT_COMMITTER_DATE and GIT_AUTHOR_DATE and increment them
+ explicitly in drs-push-rejects test. This avoids date dependencies
+ which can cause that test to fail on fast computers.
+ * Remove some spurios .debs from the example_1.0.tar.
+ * Increase sqlite_busy_timeout in debpolicy-dbretry, because
+ zealot is very slow and we need to give the other processes time
+ to rollback and release the lock.
+ * Test quilt single-debian-patch.
+ * Provide `tartree-edit gitfetchinfo' etc. to help with comparing
+ different test case git working tree tarballs.
+ * Test dgit-repos-policy-debian with multiple (identical, as it happens)
+ existing taints.
+ * Provide better log output for certain failures.
- * New handling for .pc directory: dgit history now no longer contains
- .pc at all. It is deleted whenever we find it. (When doing quilt
- fixup, we recreate a suitable .pc in a temporary directory so that we
- can do dpkg-source --comit.) Closes:#764606. INCOMPATIBLE CHANGE -
- older versions of dgit will have trouble with these git histories.
+ --
- * Replace many calls to stat with new wrapper stat_exists; improves
- error handling and simplifies the code.
+dgit (1.4) unstable; urgency=high
- * Fix handling of rmadison-based and gitless distros (e.g., Ubuntu).
+ Bugfixes:
+ * Unbreak --dry-run (`exiting subroutine via next', broken in
+ ac221d67, bug released in 0.22).
+ * When running git-add in commit-quilty-patch, properly escape
+ filenames (which git-add treats as glob patterns).
+ * When running git-add in commit-quilty-patch, use -f and sometimes -A,
+ so as to avoid being broken by any .gitignore, etc.
+ * When quilt linearisation fails, print the right information in
+ the error message. (This has been broken forever.)
+ * Cope properly with `3.0 (quilt)' with single-debian-patch.
+ Closes:#796016. (Still does not work with wheezy's dpkg-source, so
+ no test case yet.)
+ * With dgit sbuild, pass our -d before the user's arguments, so that
+ the user can override it. Closes:#796019.
+
+ New checks and improved behaviours:
+ * Detect and reject git trees containing debian/source/local-options
+ or debian/source/local-patch-header.
+ * In --dry-run mode, _do_ actually run dpkg-source --commit so that we
+ actually do construct the quilt fixup commit; instead, honour
+ --dry-run by avoiding pulling it back to your HEAD.
+ * quilt-fixup checks that the git tree is clean, as for build-prep.
+
+ Documentation:
+ * In dgit(7), discuss binaries and documentation present in upstream but
+ removed by rules clean.
+
+ Test suite:
+ * Run quilt-fixup with -wgf in distropatches-reject,
+ so that we don't need build-depends.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sat, 22 Aug 2015 15:31:02 +0100
+
+dgit (1.3) unstable; urgency=high
+
+ Important bugfixes:
+ * In option parser test `@ARGV' not `length @ARGV'. Closes:#795710.
+ * Properly quote package name when constructing regexp in
+ complete_file_from_dsc. Closes:#795736. Also, grep the code for
+ likely similar problems elsewhere and improve a (harmless) instance in
+ dgit-repos-server.
+
+ Other improvements:
+ * If a .orig in .. is a symlink, hardlink the link target into our
+ private unpack directory, rather than the link itself (since latter
+ won't work if the symlink is relative). Closes:#795665.
+ * Test suite: Fix t-restriction-x-dgit-schroot-build in non-adt mode.
+ * Infrastructure: Improve an error message in dgit-repos-policy-debian.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 16 Aug 2015 17:51:02 +0100
+
+dgit (1.2) unstable; urgency=high
+
+ Improvements:
+ * Honour *.clean-mode configuration setting for --clean= mode.
+ * No longer require option values to be cuddled: support `--opt val' and
+ `-o val'. Closes:#763332.
+
+ Manpages:
+ * Fix typos.
+ * Document that tags are in DEP-14 format, and that they
+ are used for authenticating pushes.
+ * Correct cross-reference to point to browse.d.d.o.
+ * Move dgit.default.* to main CONFIGURATION section.
+
+ Administrivia:
+ * Add missing close of #793060 to changelog for version 1.1.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Fri, 14 Aug 2015 18:27:20 +0100
+
+dgit (1.1) unstable; urgency=medium
- * Distro access configuration handling changes (should not be noticeable
- to most users).
+ Bugfixes:
+ * When source package contains things called .git (even files, and even
+ in subdirectories), remove them. Closes:#793671.
+ * Work around curl -sS -I printing `HTTP/1.0 200 Connection established'
+ before the actual header, so dgit works with https_proxy set (!)
+ * --new is needed for read access to packages in NEW, too. Document
+ this, and make it work properly.
+ * Work around #793471 (madness with $SIG{__WARN__} and Perl's system
+ builtin): move $SIG{} setting into setup_sigwarn in Dgit.pm, and
+ check getppid.
+ * When invoking git-buildpackage via dgit gbp-build, consider our
+ command line arguments when massaging the dpkg-buildpackage arguments,
+ so that we don't end up giving dpkg-buildpackage contradictory
+ instructions.
+ * Cope with new git-buildpackage which provides gbp, rather than the
+ eponymous command, on PATH.
+
+ Configurability:
+ * Honour dgit-distros.DISTRO.cmd-CMD and .opts-CMD. Closes:#793427.
+ * Make configuration able to prevent dpkg-mergechangelogs setup.
+ * Provide dgit setup-new-tree (like dpkg-setup-mergechangelogs
+ but only does it if not disabled in config).
+ * Set up git user.email and user.name from distro access config
+ or DEBEMAIL/DEBFULLNAME. Closes:#793410.
+ * When key to use not specified any other way, use the debian/changelog
+ trailer line. Closes:#793423.
+ * Honour --git= (mostly).
+
+ Documentation:
+ * Fix some manpage typos. [ Richard Hartmann ]
+ * Manpage said that --clean=check was -wn but that is --clean=none;
+ correctly document that --clean=check is actually -wc.
+ * Document that up to -DDDD (not just -DD) is meaningfully different.
+ * Document that -cname=value applies only for this run.
+ * Improve manpage comment about defining a new distro.
+ * Document that --quilt=linear is the default for Debian.
+ * Fix a formatting problem in --build-products-dir= doc.
+ * In manpage, do not seem to imply that NMU should be of only one
+ new commit.
+ * Qualify to Debian the manpage comment about how to do NMU.
+ * In discussion on how to start using dgit when already using git, do
+ not imply/assume that existing git history will have identical trees
+ to dgit history.
+ * Remove stray sentence in config section of manpage.
+ * Manpage: Clarify wording of readonly config.
+ * Manpage: Better cross-references for -k and keyid.
+ * dgit(7): No longer say that dgit-repos lives on Alioth.
+
+ Improvements:
+ * Introduce more sophisticated protocol negotiation for rpush.
+ * Do not quote `:' in shellquote.
+ * Print a supplementary message when push fails, giving advice to
+ the user about how to retry. Closes:#793144.
+ * Slurp in entire git config, for better performance.
+ * Rename `git-build' operation to `gbp-build' to make it clearer what
+ it's for. Keep the old name as an alias.
+ * Show `dgit sbuild' in usage message.
+ * When we are using dpkg-buildpackage to clean before using it to also
+ do the build, let it do its cleaning thing as part of its run, rather
+ than running it twice. When we are _not_ supposed to be using
+ dpkg-buildpackage to clean, but we are running it to do the build,
+ pass -nc. Closes:#793060.
+ * Also suppress spurious runs of the clean target when building using
+ git-buildpackage.
+ * When exec fails, always print the program name in the error message.
+
+ Infrastructure:
+ * Infrastructure: Get mirroring right for fresh repos of existing
+ packages (!)
+
+ Packaging, cleanups, debugging and test suite:
+ * Fix Vcs-Git and Vcs-Browse to refer to chiark. (The dgit-repos on
+ alioth aren't suitable right now because the master there can
+ currently only be updated with an actual upload, ie dgit push.)
+ * Make warnings fatal in dpkg-repos-admin-debian, dgit-ssh-dispatch
+ (using setup_sigwarn).
+ * Make warnings fatal in tstunt/dpkg-parsechangelog (directly).
+ * Test suite: Honour DGIT_TEST_DEBUG=''.
+ * With -DDDD, print out all gitcfg references (copious!)
+ * Fix a debug message in the obsolete sshpsql archive access driver.
+ * Test suite: More automatic enumeration of tests.
+ * Test suite: Provide tests which check that all our various build
+ operations run the right targets as expected (ie, that we are massaging
+ the arguments to dpkg-buildpackage, and suppressing our clean target,
+ etc., correctly).
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Mon, 27 Jul 2015 16:34:31 +0100
+
+dgit (1.0) unstable; urgency=medium
+
+ Improvements:
+ * Switch to new production git repositories for reading.
+ (this can no longer divert to alioth). Public readonly access
+ now works. Closes:#791447.
+ * Memoise git config lookups (big speedup!)
+ * Provide -wdd aka --clean=dpkg-source-d. Closes:#792433.
+ * Provide -wc aka --clean=check.
+
+ Manpage updates:
+ * Remove some obsolete caveats from BUGS.
+ * Reorganise and complete the configuration section.
+ * Remove obselete comment about DMs not being able to push.
+ We have, for now, a way to add keys manually. Closes:#720173.
+
+ Access machinery:
+ * Remove configuration relating to alioth.
+ * Provide for different access mechanisms when pushing.
+ * Provide for configurable git url suffix.
+ * Allow git-url to be '' to force fallback to git-proto etc.
+ * Provide for checking git presence via http[s].
+ * Do some quoting on debug output (needed if the server might not
+ be trustworthy and might send us bad stuff).
+ * Talk to push.dgit.debian.org, rather than the .debian.net alias.
+
+ Infrastructure:
+ * Provide for mirroring git updates to a different server.
+ * Provide cgit-regen-config command for cgi-grnet-01.
+ * Make dgit-ssh-dispatch not spew (harmless) warnings if caller
+ tries for a shell session (ie SSH_ORIGINAL_COMMAND not set).
+
+ Cleanups:
+ * Remove an obsolete comment from the code.
+ * Improve an error message from dgit-repos-policy-debian.
+ * Test suite: Break out t-make-hook-link.
+ * Fix a manpage typo.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 19 Jul 2015 22:15:53 +0100
+
+dgit (0.30) unstable; urgency=high
+
+ INCOMPATIBLE CHANGES:
+
+ * 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.
+ Closes:#720172.
+ - Old versions of dgit will stop working when the server-side handle is
+ pulled.
+
+ * 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 (!)
- * Add :..; prefix to ssh remote commands, for the benefit of future
- forced command wrappers. Implicitly, this defines a new ssh-based
- command protocol.
+ Minor improvements:
- * dgit-repos-server: Handle ' ' in SSH_ORIGINAL_COMMAND (which some
- git versions send, sigh).
+ * 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'
+ (Closes:#786955.)
- * Test suite restructuring to support new tests.
+ Bugfixes:
- --
+ * 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.
+ Closes:#760805.
+ * Complain about lack of cuddled values for value-taking single-letter
+ options, rather than thinking the user meat an empty value.
+ Closes:#763332.
+ * Reject (rather than ignoring) further options merged witth -wn, -wg,
+ -wd.
+ * 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.
+ Closes:#763333.
+ * 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__}.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 05 Jul 2015 01:34:55 +0100
dgit (0.22.1) unstable; urgency=high