-dgit (1.1~~) unstable; urgency=low
+dgit (2.10~) unstable; urgency=medium
- * 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.)
+ * Test suite: Add fakeroot and make to Test-Depends. These aren't
+ necessarily pulled in by anything else. (dpkg-dev Recommends
+ build-essential. But we don't actually need build-essential.)
+
+ --
+
+dgit (2.9) unstable; urgency=medium
+
+ New features:
+ * During push, automatically calculate which .origs are required,
+ so user never needs [--ch:]-sa or [--ch:]-sd. Closes:#829116.
+ * New import-dsc feature.
+ * New option --dgit-view-save= for split view quilt modes.
+ In particular, means that the output of a split view quilt-fixup
+ is left somewhere useful.
+ * dgit clone: Set timestamps in cloned tree to a single unified time.
+ This makes it less likely that the user will trip over any
+ timestamp-dependent FTBFS bugs (eg #842452).
+ * Support dgit --delayed= push (with a warning in the manpage
+ about possible skew).
+ * dgit gbp-build will arrange to let gbp buildpackage generate
+ .orig tarballs if it seems applicable. Closes:#841094.
+
+ Documentation improvements:
+ * dgit-*(7). Many new tutorial manpages, several written and many
+ improved by Sean Whitton.
+ * dgit(7): Substantial updates, including documenting split view.
+ * dgit(1): Better cross-references.
+ * dgit(1): Remove obsolete workflow information.
+ * dgit(1): Improved BUGS section.
+ * Fix changelog entry for SIGPIPE to correctly mention
+ Closes:#841090.
+
+ Bugfixes:
+ * Split brain mode: Fix --new. Closes:#842577.
+ * Properly look for .origs etc. in .., fetching them less often.
+ Closes:#842386.
+ * Reject `dgit pull' in split view quilt modes, to avoid
+ creating unfortunate wreckage on non-dgit-view branches.
+ Closes:#842608.
+ * Cope when cloning suite which doesn't receive uploads,
+ like testing. Closes:#842621.
+ * Properly fetch all archive dgit view tags, as we intended.
+ * Actually provide a -p (--package=) option (!)
+
+ Test suite fixes:
+ * Test suite: Explicitly configure user.name and user.email, so
+ that tests work when environment doesn't have defaults.
+ Closes:#842279 (I hope).
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Mon, 31 Oct 2016 12:47:18 +0000
+
+dgit (2.8) unstable; urgency=medium
+
+ * When in split build mode for `gbp-build' or `build', run
+ mergechanges as is required. Closes:#841990.
+ * Test suite: build-mode-*: Check that right .changes comes out
+ (detects #841990).
+ * Defend against debian/patches/series being an unusual object, in case
+ dpkg-source doesn't, in absurd git-apply fallback.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Tue, 25 Oct 2016 17:29:23 +0100
+
+dgit (2.7) unstable; urgency=medium
+
+ Absurd bugfix for serious bug:
+ * Work around `git-apply' problems (eg #841865, #829067) exposed by
+ `gbp pq import' (#841866) by sometimes falling back to an emulation of
+ git-apply in terms of dpkg-source --before-build. Closes:#841867.
+
+ Minor changes:
+ * dgit(1): Reorder the options, moving more important ones earlier.
+ * dgit(1): Some more info about --deliberately.
+ * Provide various --force-something options. Please don't use them.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Mon, 24 Oct 2016 02:37:28 +0100
+
+dgit (2.6) unstable; urgency=medium
+
+ Fixes to HTTP handling:
+ * Check for non-2xx HTTP status codes from ftpmaster api server.
+ * Always honour --curl= and --curl:.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 23 Oct 2016 14:57:22 +0100
+
+dgit (2.5) unstable; urgency=low
+
+ Substantive changes:
+ * Do not crash in split brain quilt modes when the two brains are
+ actually identical. (Eg --quilt=gbp with no patches.) Closes:#841770.
+ * Switch to new archive/ tag format by default, even in
+ non-split-brain mode.
+ * Provide --gbp and --dpm as aliases for --quilt=gbp and --quilt=dpm.
+
+ Documentation:
+ * dgit-maint-merge(7): New tutorial manpage from Sean Whitton.
+
+ Test suite:
+ * Introduce setup/gnupg, to help work around gnupg2 bug #841143
+ and improve performance by amortising gnupg migration cost.
+ * Various bugfixes.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 23 Oct 2016 13:20:23 +0100
+
+dgit (2.4) unstable; urgency=low
+
+ Bugfixes:
+ * split brain cache: Fix a wrong implicit reference to $_.
+ Closes:#841383.
+ * split brain cache: Make sure to write reflog entries for cache updates
+ even if the eventual tree (and therefore commit) is the same.
+ Otherwise, after updating dgit, the cache might have the right answer
+ but not be refreshed even by a build.
+ * dgit gbp-build: No longer invent a --git-debian-branch option.
+ Usually the user is a maintainer using split brain, and we should rely
+ on their own gbp configuration to specify the right check.
+ Closes:#841100.
+
+ Minor docs fix:
+ * dgit(1): Document which --ch: options are a good idea.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Thu, 20 Oct 2016 16:31:54 +0100
+
+dgit (2.3) unstable; urgency=low
+
+ * With --overwrite, do not check all sorts of tags (which may
+ not exist, or might contain wrong things). Closes:#841101.
+ * When generating pseudomerge in quilt split brain mode due to
+ --overwrite, actually include the version number in the commit
+ message.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Tue, 18 Oct 2016 01:58:05 +0100
+
+dgit (2.2) unstable; urgency=low
+
+ * Fix config relating to Debian to actually make split brain mode
+ work. Closes:#841085.
+ * Detect SIGPIPE (and SIGCHLD) being blocked or ignored.
+ Closes:#841090.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Mon, 17 Oct 2016 17:31:18 +0100
+
+dgit (2.1) unstable; urgency=low
+
+ * Do not crash due in clone to failure to handle dpkg-parsechangelog
+ SIGPIPE. Closes:#840989. Avoids:
+ dgit: failed command: dpkg-parsechangelog --format rfc822 --all
+ dgit: subprocess died due to fatal signal PIPE
+ * git- prefixes: Fix some occurrences of `git-foo' in infrastructure,
+ messages, and test suite. Filter out .../git-core from PATH in
+ test suite so that we catch future occurrences.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 16 Oct 2016 19:05:14 +0100
+
+dgit (2.0) unstable; urgency=low
+
+ 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.
+ * dgit gbp-build: Make --quilt=gbp the default. (See below.)
+ * New tag format (for dgit view) archive/debian/VERSION.
+
+ Major new feature:
+ * --quilt=gbp, --quilt=dpm, --quilt=unpacked: Introduce facility for
+ split view (dgit/mainiainer view), to improve compatibility with some
+ workflow tools.
+
+ New checks and improved behaviours in dgit:
+ * 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. Re:#800060.
+ * 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. Closes:#800110.
+ * 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).
+ * New --overwrite option, replaces need to for user to use
+ git merge -s ours. Closes:#838718.
+ * When generating quilt patches from git commits, make patches that
+ look quite like git-format-patch output (rather than strange things
+ based on an obselete interpretation of DEP-3).
+ * When generating quilt patches from git commits, honour (and strip)
+ any Gbp-Pq headers (that we understand).
+ * Several dgit-generated commits now have slightly better annotations
+ from dgit about what it was doing.
+ * Before committing to push, check that .dsc and .changes correspond.
+ Closes:#800060.
+ * Better error message if non-split-brain patch stack no longer
+ applies (due to new upstream version, or user messing with it).
+ Closes:#833025.
+ * Better error message if HEAD contains changes unrepresentable
+ by `3.0 (quilt)'. Closes:#834618.
+ * Much better error message when HEAD and .dsc do not match.
+ Closes:#809516.
+
+ Infrastructure:
+ * dgit-repos-policy-debian: Better error handling.
+ * dgit-repos-policy-debian.: fix git-cat-file-handling with multiple
+ taints in db (!).
+ * dgit-infrastructure has, and uses, its own copies of the perl modules.
+ This avoids introducing a versioned dependency between dgit and
+ dgit-infrastructure (and also makes it easier to test cross-version
+ compatibility).
+
+ Documentation:
+ * Document the dgit-distro.DISTRO.quilt-mode config setting.
+ * Clarify the --clean= options' documentation. Closes:#800054.
+ * Discourage use of the --PROGRAM:OPTION escape hatch. (Apropos
+ of various bug reports including #800060 and #833025.)
+ * Document the expected form of HEAD for each --quilt= mode.
+
+ 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.
+ * Turn off git gc in the private working areas.
+ * Do not fail to do some important quilt processing in some
+ --quilt modes.
+ * Fix two calls to chdir without proper error checking.
+ * Fix a couple of bugs in error reporting.
+ * Fix several bugs in .orig detection/recognition.
+ * Tidy up refs/dgit-fetch/ after dgit fetch (if successful).
+ * Fix handling of in-archive copies.
+ * Don't break if user has push.followTags=true. Closes:#827878.
+ * Arrange for the special dgit remote to be skipped by git fetch --all
+ etc. And no longer configure a fetch spec, since it won't work
+ anyway. Closes:#827892.
+ * Allow local git config options to override user-global ones,
+ as is proper. Closes:#835858.
+ * When generating patch filenames from titles, first transliterate
+ them (lossily) to ascii. Closes:#834807.
+
+ 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 old
+ 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.
+ * Many new tests (especially for new functionality).
+ * Add missing debhelper (>=8) to test suite's global Depends.
+ * tstunt arrangements: Fix mishandling of PERLLIB, etc.
+ * tstunt-parsechangelog: Produce Timestamp field (like official one
+ does, now).
+ * Do not fail when git requires --allow-unrelated-histories.
+
+ -- Ian Jackson <ijackson@chiark.greenend.org.uk> Sun, 16 Oct 2016 12:12:50 +0100
+
+dgit (1.4) unstable; urgency=high
+
+ 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
+
+ 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 -DDD (not just -DD) is meaningfully different.
+ * 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.
* 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.
- * Infrastructure: Get mirroring right for fresh repos of existing
- packages (!)
- * --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.
- * Make warnings fatal in dpkg-repos-admin-debian, dgit-ssh-dispatch
- (using setup_sigwarn).
- * Make warnings fatal in tstunt/dpkg-parsechangelog (directly).
- * When source package contains things called .git (even files, and even
- in subdirectories), remove them. Closes:#793671.
+
+ Improvements:
* Introduce more sophisticated protocol negotiation for rpush.
* Do not quote `:' in shellquote.
- * Test suite: Honour DGIT_TEST_DEBUG=''.
* Print a supplementary message when push fails, giving advice to
the user about how to retry. Closes:#793144.
- * Honour dgit-distros.DISTRO.cmd-CMD and .opts-CMD. Closes:#793427.
* Slurp in entire git config, for better performance.
- * With -DDDD, print out all gitcfg references (copious!)
+ * 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).
+ * tstunt/dpkg-parsechangelog: Make warnings fatal (directly).
+ * tstunt/dpkg-parsechangelog: Do not complain if PERLLIB is empty.
+ * 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