chiark / gitweb /
d8827a47f3e480e0479de3543baaaec5419a36b1
[dgit.git] / debian / changelog
1 dgit (2.2) unstable; urgency=low
2
3   * Fix config relating to Debian to actually make split brain mode
4     work.  Closes:#841085.
5   * 
6
7  --
8
9 dgit (2.1) unstable; urgency=low
10
11   * Do not crash due in clone to failure to handle dpkg-parsechangelog
12     SIGPIPE.  Closes:#840989.  Avoids:
13        dgit: failed command: dpkg-parsechangelog --format rfc822 --all
14        dgit: subprocess died due to fatal signal PIPE
15   * git- prefixes: Fix some occurrences of `git-foo' in infrastructure,
16     messages, and test suite.  Filter out .../git-core from PATH in
17     test suite so that we catch future occurrences.
18
19  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Oct 2016 19:05:14 +0100
20
21 dgit (2.0) unstable; urgency=low
22
23   Incompatible change:
24   * dgit sbuild: does not pass -A to sbuild.  Consequently the default
25     build is now simply sbuild's default.  With older sbuilds it was
26     possible to override dgit's -A by passing another option.  But this
27     has been changed recently and now this default setting is very awkward
28     to change for the dgit user.
29   * dgit gbp-build: Make --quilt=gbp the default.  (See below.)
30   * New tag format (for dgit view) archive/debian/VERSION.
31
32   Major new feature:
33   * --quilt=gbp, --quilt=dpm, --quilt=unpacked: Introduce facility for
34     split view (dgit/mainiainer view), to improve compatibility with some
35     workflow tools.
36
37   New checks and improved behaviours in dgit:
38   * When running dpkg-buildpackage, cope if user specified -g or -G.
39   * dgit sbuild: check that the set of .changes files found is as we
40     expect, before calling mergechanges.  Re:#800060.
41   * dgit sbuild: Rename the used-up .changes files to `.inmulti' to
42     avoid accidental use of the wrong one (by software, or by users).
43   * dgit sbuild: Check that the binary .changes file doesn't contain a
44     .dsc.
45   * Introduce --rm-old-changes to delete previous builds' changes files.
46   * Remove any pre-existing _source.changes file before building source,
47     as a safety check.
48   * No longer tolerate a multitude of .changes files when doing push.
49     Instead, insist on a single one.  Closes:#800110.
50   * dgit sbuild no longer deletes extranious .changes files; instead
51     we rely on --rm-old-changes, or failing that, fail early.
52   * When doing quilt linearisation, treat upstream .gitignores not
53     in the toplevel the same way we treat ones in the toplevel.
54   * When automatically generating quilt patch, honour GIT_COMMITTER_DATE
55     for filename creation (makes filename deterministic in test suite).
56   * New --overwrite option, replaces need to for user to use
57     git merge -s ours.  Closes:#838718.
58   * When generating quilt patches from git commits, make patches that
59     look quite like git-format-patch output (rather than strange things
60     based on an obselete interpretation of DEP-3).
61   * When generating quilt patches from git commits, honour (and strip)
62     any Gbp-Pq headers (that we understand).
63   * Several dgit-generated commits now have slightly better annotations
64     from dgit about what it was doing.
65   * Before committing to push, check that .dsc and .changes correspond.
66     Closes:#800060.
67   * Better error message if non-split-brain patch stack no longer
68     applies (due to new upstream version, or user messing with it).
69     Closes:#833025.
70   * Better error message if HEAD contains changes unrepresentable
71     by `3.0 (quilt)'.  Closes:#834618.
72   * Much better error message when HEAD and .dsc do not match.
73     Closes:#809516.
74
75   Infrastructure:
76   * dgit-repos-policy-debian: Better error handling.
77   * dgit-repos-policy-debian.: fix git-cat-file-handling with multiple
78     taints in db (!).
79   * dgit-infrastructure has, and uses, its own copies of the perl modules.
80     This avoids introducing a versioned dependency between dgit and
81     dgit-infrastructure (and also makes it easier to test cross-version
82     compatibility).
83
84   Documentation:
85   * Document the dgit-distro.DISTRO.quilt-mode config setting.
86   * Clarify the --clean= options' documentation.  Closes:#800054.
87   * Discourage use of the --PROGRAM:OPTION escape hatch.  (Apropos
88     of various bug reports including #800060 and #833025.)
89   * Document the expected form of HEAD for each --quilt= mode.
90
91   Bugfixes:
92   * When cleaning up after failed clone, stat the to-be-cleaned-up
93     directory before running rmtree on it.  Closes:#796773.
94   * Do not call "warn" on failure of cleanup handler in END block
95     (since warn has been made fatal and aborts the cleanup chain).
96   * Print better error message (with `fail' rather than `die') if
97     `dgit clone' cannot create the destination directory.
98   * Properly substitute $changesfile in one of the `You can retry'
99     messages.  Closes:#800078.
100   * Pass --ch:* and -v options to dpkg-buildpackage when building
101     source.  Fixes bad Perl poetry syntax.  Closes:#829121.
102   * When synthesing a commit from a .dsc from the archive, stop
103     internal git reset from printing a confusing message about HEAD.
104   * Turn off git gc in the private working areas.
105   * Do not fail to do some important quilt processing in some
106     --quilt modes.
107   * Fix two calls to chdir without proper error checking.
108   * Fix a couple of bugs in error reporting.
109   * Fix several bugs in .orig detection/recognition.
110   * Tidy up refs/dgit-fetch/ after dgit fetch (if successful).
111   * Fix handling of in-archive copies.
112   * Don't break if user has push.followTags=true.  Closes:#827878.
113   * Arrange for the special dgit remote to be skipped by git fetch --all
114     etc.  And no longer configure a fetch spec, since it won't work
115     anyway.  Closes:#827892.
116   * Allow local git config options to override user-global ones,
117     as is proper.  Closes:#835858.
118   * When generating patch filenames from titles, first transliterate
119     them (lossily) to ascii.  Closes:#834807.
120
121   Test suite:
122   * When sbuild fails, do not crash due to sed not finding the log
123     file.  Instead, simply tolerate the absence of the log file.
124   * Put --no-arch-all in build-modes-sbuild act, not only its real_act.
125     Cosmetic change only.
126   * Set GIT_COMMITTER_DATE and GIT_AUTHOR_DATE and increment them
127     explicitly in drs-push-rejects test.  This avoids date dependencies
128     which can cause that test to fail on fast computers.
129   * Remove some spurios .debs from the example_1.0.tar.
130   * Increase sqlite_busy_timeout in debpolicy-dbretry, because old
131     zealot is very slow and we need to give the other processes time
132     to rollback and release the lock.
133   * Test quilt single-debian-patch.
134   * Provide `tartree-edit gitfetchinfo' etc. to help with comparing
135     different test case git working tree tarballs.
136   * Test dgit-repos-policy-debian with multiple (identical, as it happens)
137     existing taints.
138   * Provide better log output for certain failures.
139   * Many new tests (especially for new functionality).
140   * Add missing debhelper (>=8) to test suite's global Depends.
141   * tstunt arrangements: Fix mishandling of PERLLIB, etc.
142   * tstunt-parsechangelog: Produce Timestamp field (like official one
143     does, now).
144   * Do not fail when git requires --allow-unrelated-histories.
145
146  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Oct 2016 12:12:50 +0100
147
148 dgit (1.4) unstable; urgency=high
149
150   Bugfixes:
151   * Unbreak --dry-run (`exiting subroutine via next', broken in
152     ac221d67, bug released in 0.22).
153   * When running git-add in commit-quilty-patch, properly escape
154     filenames (which git-add treats as glob patterns).
155   * When running git-add in commit-quilty-patch, use -f and sometimes -A,
156     so as to avoid being broken by any .gitignore, etc.
157   * When quilt linearisation fails, print the right information in
158     the error message.  (This has been broken forever.)
159   * Cope properly with `3.0 (quilt)' with single-debian-patch.
160     Closes:#796016.  (Still does not work with wheezy's dpkg-source, so
161     no test case yet.)
162   * With dgit sbuild, pass our -d before the user's arguments, so that
163     the user can override it.  Closes:#796019.
164
165   New checks and improved behaviours:
166   * Detect and reject git trees containing debian/source/local-options
167     or debian/source/local-patch-header.
168   * In --dry-run mode, _do_ actually run dpkg-source --commit so that we
169     actually do construct the quilt fixup commit; instead, honour
170     --dry-run by avoiding pulling it back to your HEAD.
171   * quilt-fixup checks that the git tree is clean, as for build-prep.
172
173   Documentation:
174   * In dgit(7), discuss binaries and documentation present in upstream but
175     removed by rules clean.
176
177   Test suite:
178   * Run quilt-fixup with -wgf in distropatches-reject,
179     so that we don't need build-depends.
180
181  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 22 Aug 2015 15:31:02 +0100
182
183 dgit (1.3) unstable; urgency=high
184
185   Important bugfixes:
186   * In option parser test `@ARGV' not `length @ARGV'.  Closes:#795710.
187   * Properly quote package name when constructing regexp in
188     complete_file_from_dsc.  Closes:#795736.  Also, grep the code for
189     likely similar problems elsewhere and improve a (harmless) instance in
190     dgit-repos-server.
191
192   Other improvements:
193   * If a .orig in .. is a symlink, hardlink the link target into our
194     private unpack directory, rather than the link itself (since latter
195     won't work if the symlink is relative).  Closes:#795665.
196   * Test suite: Fix t-restriction-x-dgit-schroot-build in non-adt mode.
197   * Infrastructure: Improve an error message in dgit-repos-policy-debian.
198
199  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Aug 2015 17:51:02 +0100
200
201 dgit (1.2) unstable; urgency=high
202
203   Improvements:
204   * Honour *.clean-mode configuration setting for --clean= mode.
205   * No longer require option values to be cuddled: support `--opt val' and
206     `-o val'.  Closes:#763332.
207
208   Manpages:
209   * Fix typos.
210   * Document that tags are in DEP-14 format, and that they
211     are used for authenticating pushes.
212   * Correct cross-reference to point to browse.d.d.o.
213   * Move dgit.default.* to main CONFIGURATION section.
214
215   Administrivia:
216   * Add missing close of #793060 to changelog for version 1.1.
217
218  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 14 Aug 2015 18:27:20 +0100
219
220 dgit (1.1) unstable; urgency=medium
221
222   Bugfixes:
223   * When source package contains things called .git (even files, and even
224     in subdirectories), remove them.  Closes:#793671.
225   * Work around curl -sS -I printing `HTTP/1.0 200 Connection established'
226     before the actual header, so dgit works with https_proxy set (!)
227   * --new is needed for read access to packages in NEW, too.  Document
228     this, and make it work properly.
229   * Work around #793471 (madness with $SIG{__WARN__} and Perl's system
230     builtin): move $SIG{} setting into setup_sigwarn in Dgit.pm, and
231     check getppid.
232   * When invoking git-buildpackage via dgit gbp-build, consider our
233     command line arguments when massaging the dpkg-buildpackage arguments,
234     so that we don't end up giving dpkg-buildpackage contradictory
235     instructions.
236   * Cope with new git-buildpackage which provides gbp, rather than the
237     eponymous command, on PATH.
238
239   Configurability:
240   * Honour dgit-distros.DISTRO.cmd-CMD and .opts-CMD.  Closes:#793427.
241   * Make configuration able to prevent dpkg-mergechangelogs setup.
242   * Provide dgit setup-new-tree (like dpkg-setup-mergechangelogs
243     but only does it if not disabled in config).
244   * Set up git user.email and user.name from distro access config
245     or DEBEMAIL/DEBFULLNAME.  Closes:#793410.
246   * When key to use not specified any other way, use the debian/changelog
247     trailer line.  Closes:#793423.
248   * Honour --git= (mostly).
249
250   Documentation:
251   * Fix some manpage typos.  [ Richard Hartmann ]
252   * Manpage said that --clean=check was -wn but that is --clean=none;
253     correctly document that --clean=check is actually -wc.
254   * Document that up to -DDDD (not just -DD) is meaningfully different.
255   * Document that -cname=value applies only for this run.
256   * Improve manpage comment about defining a new distro.
257   * Document that --quilt=linear is the default for Debian.
258   * Fix a formatting problem in --build-products-dir= doc.
259   * In manpage, do not seem to imply that NMU should be of only one
260     new commit.
261   * Qualify to Debian the manpage comment about how to do NMU.
262   * In discussion on how to start using dgit when already using git, do
263     not imply/assume that existing git history will have identical trees
264     to dgit history.
265   * Remove stray sentence in config section of manpage.
266   * Manpage: Clarify wording of readonly config.
267   * Manpage: Better cross-references for -k and keyid.
268   * dgit(7): No longer say that dgit-repos lives on Alioth.
269
270   Improvements:
271   * Introduce more sophisticated protocol negotiation for rpush.
272   * Do not quote `:' in shellquote.
273   * Print a supplementary message when push fails, giving advice to
274     the user about how to retry.  Closes:#793144.
275   * Slurp in entire git config, for better performance.
276   * Rename `git-build' operation to `gbp-build' to make it clearer what
277     it's for.  Keep the old name as an alias.
278   * Show `dgit sbuild' in usage message.
279   * When we are using dpkg-buildpackage to clean before using it to also
280     do the build, let it do its cleaning thing as part of its run, rather
281     than running it twice.  When we are _not_ supposed to be using
282     dpkg-buildpackage to clean, but we are running it to do the build,
283     pass -nc.  Closes:#793060.
284   * Also suppress spurious runs of the clean target when building using
285     git-buildpackage.
286   * When exec fails, always print the program name in the error message.
287
288   Infrastructure:
289   * Infrastructure: Get mirroring right for fresh repos of existing
290     packages (!)
291
292   Packaging, cleanups, debugging and test suite:
293   * Fix Vcs-Git and Vcs-Browse to refer to chiark.  (The dgit-repos on
294     alioth aren't suitable right now because the master there can
295     currently only be updated with an actual upload, ie dgit push.)
296   * Make warnings fatal in dpkg-repos-admin-debian, dgit-ssh-dispatch
297     (using setup_sigwarn).
298   * tstunt/dpkg-parsechangelog: Make warnings fatal (directly).
299   * tstunt/dpkg-parsechangelog: Do not complain if PERLLIB is empty.
300   * Test suite: Honour DGIT_TEST_DEBUG=''.
301   * With -DDDD, print out all gitcfg references (copious!)
302   * Fix a debug message in the obsolete sshpsql archive access driver.
303   * Test suite: More automatic enumeration of tests.
304   * Test suite: Provide tests which check that all our various build
305     operations run the right targets as expected (ie, that we are massaging
306     the arguments to dpkg-buildpackage, and suppressing our clean target,
307     etc., correctly).
308
309  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 27 Jul 2015 16:34:31 +0100
310
311 dgit (1.0) unstable; urgency=medium
312
313   Improvements:
314   * Switch to new production git repositories for reading.
315     (this can no longer divert to alioth).  Public readonly access
316     now works.  Closes:#791447.
317   * Memoise git config lookups (big speedup!)
318   * Provide -wdd aka --clean=dpkg-source-d.  Closes:#792433.
319   * Provide -wc aka --clean=check.
320
321   Manpage updates:
322   * Remove some obsolete caveats from BUGS.
323   * Reorganise and complete the configuration section.
324   * Remove obselete comment about DMs not being able to push.
325     We have, for now, a way to add keys manually.  Closes:#720173.
326
327   Access machinery:
328   * Remove configuration relating to alioth.
329   * Provide for different access mechanisms when pushing.
330   * Provide for configurable git url suffix.
331   * Allow git-url to be '' to force fallback to git-proto etc.
332   * Provide for checking git presence via http[s].
333   * Do some quoting on debug output (needed if the server might not
334     be trustworthy and might send us bad stuff).
335   * Talk to push.dgit.debian.org, rather than the .debian.net alias.
336
337   Infrastructure:
338   * Provide for mirroring git updates to a different server.
339   * Provide cgit-regen-config command for cgi-grnet-01.
340   * Make dgit-ssh-dispatch not spew (harmless) warnings if caller
341     tries for a shell session (ie SSH_ORIGINAL_COMMAND not set).
342
343   Cleanups:
344   * Remove an obsolete comment from the code.
345   * Improve an error message from dgit-repos-policy-debian.
346   * Test suite: Break out t-make-hook-link.
347   * Fix a manpage typo.
348
349  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 19 Jul 2015 22:15:53 +0100
350
351 dgit (0.30) unstable; urgency=high
352
353   INCOMPATIBLE CHANGES:
354
355   * Client uses new infrastructure:
356     - Check for new dgit git service on dgit-git.debian.net (ie
357       gideon.debian.org), with transition plan based on diversion feature.
358       Closes:#720172.
359     - Old versions of dgit will stop working when the server-side handle is
360       pulled.
361
362   * dgit git trees no longer contain .pc for format `3.0 (quilt)' source
363     packages.  Closes:#764606.
364     - It is deleted whenever we find it.
365     - Older versions of dgit will choke on trees without .pc.
366     - (When doing quilt fixup, we recreate a suitable .pc in a temporary
367       directory so that we can do dpkg-source --comit.)
368
369   * All users are urged to upgrade ASAP.
370
371   Other significant improvements:
372
373   * When generating quilt patches, try to linearise the git history into a
374     series of individual new patches for debian/patches.  Closes:#770710.
375
376   * When receiving a push with dgit-repos-server, update the server's
377     refs/heads/master if we are pushing to what the distro regards as a
378     relevant branch, and the push would ff master.  Closes:#728209.
379
380   * For non-Debian distros, distro version release tags contain distro
381     name a la DEP-14 (rather than hardcoding `debian/').
382
383   * Set up a merge driver for debian/changelog.  Closes:#769291.
384
385   * --clean=git and --clean=none cause dgit to pass -nc to
386     dpkg-buildpackage, suppressing calls to the package's clean target.
387     Also, expand the documentation in this area slightly.  Closes:#768590.
388
389   * Provide --clean=git-ff (aka -wgf), which is useful for dgit itself (!)
390
391   Minor improvements:
392
393   * Reduce some noise output and improve the clarity of some messages.
394   * Be more careful about tag updates during fetch: only update tags
395     referring to uploads to distro we are trying to fetch from.
396   * Change realpath dependency to `coreutils (>= 8.23-1~) | realpath'
397     (Closes:#786955.)
398
399   Bugfixes:
400
401   * Fix handling of rmadison-based and gitless distros (e.g., Ubuntu).
402   * Add missing `gpgv' to test dependencies in debian/tests/control.
403   * Strip `-b <branch>' from contents of Vcs-Git header, when setting up
404     the vcs-git remote.  Closes:#759374.
405   * Do not offer wget as an alternative dependency to curl.  We always
406     unconditionally invoke curl and have no code to use wget.
407     Closes:#760805.
408   * Complain about lack of cuddled values for value-taking single-letter
409     options, rather than thinking the user meat an empty value.
410     Closes:#763332.
411   * Reject (rather than ignoring) further options merged witth -wn, -wg,
412     -wd.
413   * Fix inaccurate error message when archive's git hash is not an
414     ancestor of git repo's git hash.
415   * Detect and bomb out on vendor-specific `3.0 (quilt)' patch series.
416   * Fix the rules clean target to remove test results and output.
417
418   Documentation improvements:
419
420   * Break out dgit(7) from dgit(1).
421   * Provide example workflow for dgit rpush.  Closes:#763334.
422     (Also part of the fix for #768470.)
423   * Document that dgit repos are cloneable with git, in dgit(1)
424     section MODEL.  [Andreas Barth.]  Closes:#768470.
425   * Better documentation for quilt series handling.
426   * Document under `dgit push' that it is best to build with dgit too.
427     Closes:#763333.
428   * Other minor clarifications and improvements.
429
430   Behind-the-scenes work:
431
432   * Use ftpmasterapi archive query method.
433     (Closes:#727702.  Also partly obsoletes #768470.)
434   * New dgit-infrastructure binary package containing dgit-repos-server et
435     al.  Client users probably don't want this stuff.  Also, it provides a
436     convenient way to publish the dependencies.
437   * Many many bugfixes to the server side (dpkg-repos-server et al.).
438   * Add :..; prefix to ssh remote commands, for the benefit of future
439     forced command wrappers.  Implicitly, this defines a new ssh-based
440     command protocol.  Closes:#720174, #720175.
441   * Distro access configuration handling changes (should not be noticeable
442     to most users).
443   * In places, significant restructuring or tidying up.
444   * Turn all perl warnings into errors using $SIG{__WARN__}.
445
446  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 05 Jul 2015 01:34:55 +0100
447
448 dgit (0.22.1) unstable; urgency=high
449
450   * Use Dpkg::Version::version_compare everywhere, not
451     Dpkg::Version::version_compare_string.  The latter is entirely wrong,
452     meaning that dgit would get many version comparisons wrong.
453     Closes:#768038.
454
455  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 04 Nov 2014 12:46:40 +0000
456
457 dgit (0.22) unstable; urgency=medium
458
459   Bugfixes:
460   * Clone removes destination directory on error.  Closes:#736153.
461   * Work with wheezy-backports (and keep squeeze-backports working too).
462     Closes:#736524.
463   * Work in read-only no-git-history mode with Ubuntu.  You still have
464     to pass -dubuntu.  Closes:#751781.
465   * Use mirror.ftp-master.debian.org DNS alias rather than coccia.
466     Closes:#752602.
467   * Check hashes of files ourselves rather than running dget to
468     re-retreive the .dsc.
469   * Check SHA-256 of .dsc against hash from archive_query (ie projectb)
470     rather than letting dpkg-source do a signature verification.
471     Closes:#737619.  Closes:#737625.
472   * Treat .dsc as bytes, just like everything else, rather than letting
473     HTTP::Message convert it to a Perl unicode string which the rest of
474     the program mishandles.  Closes:#738536.
475
476   Minor improvements:
477   * Include canonicalised suite name in signed tag message.
478   * Mention cross-version dgit rpush incompatibility in manpage.
479   * Check for rpush protocol version incompatibility and crash early
480     if incompatible.
481   * New script tests/using-intree for running tests on the source tree.
482   * Do not spew diff output to terminal (by default).  Print sensible
483     message instead.  Closes:#736526.
484   * Print better message for lack of configuration settings.
485   * Document that dgit rpush needs gnupg and your public key on the build
486     host.  Closes:#736529.
487   * Fix a manpage reference to `--dget=' where `--dgit=' was intended.
488   * Provide t-archive-process-incoming and t-archive-query subroutines for
489     regression test scripts to use.
490   * Print better message for unknown operations.
491   * Provide `dgit clean'.  Closes:#736527.
492   * When cloning, set up a remote `vcs-git' from the package's Vcs-Git
493     (and put an appropriate caveat in the manpage).  Closes:#740687.
494     Closes:#740721.
495   * Improve error message for .dsc having already been signed (iff
496     using libdpkg-perl 1.17.x).  Closes:#731635.
497   * Improve error message for .dsc parsing failures more generally.
498   * Better reporting of child exit statuses (esp. deaths due to signals).
499   * In rpush, on protocol error talking to build host, check if the
500     subprocess died and report differently if so.  Closes:#736528.
501   * Fixed a manpage typo.
502   * When tests invoke dgit, use --dgit= so that subprocesses use our
503     dgit rather than system one.
504   * Add a test for dgit rpush.
505
506   Major new feature, currently stalled awaiting server infrastructure:
507   * dgit-repos-server: New program for receiving signed-tag-based
508     pushes.  Corresponding support in dgit itself, but not currently
509     used by default for any distro.
510   * Bring forward push of the version tag ref so it happens alongside
511     the push of the suite branch ref.
512   * New git-check and git-create methods "true" which are no-ops.
513   * test-dummy-drs `distro': for testing dgit and dgit-repos-server.
514
515  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 19 Aug 2014 11:24:02 +0100
516
517 dgit (0.21) unstable; urgency=medium
518
519   Bugfixes relating to unclean trees:
520   * Run a clean (of the specified type) before any build operation; do
521     this with `dpkg-buildpackage -T' clean if necessary, so -wd now works
522     with all the building methods.
523   * Refuse to do quilt fixup (explicitly requested, or as a result of
524     build) if the tree contains ignored files.  Closes:#731632.
525
526   Error message improvements:
527   * Use failedcmd to report errors when ssh psql fails.  Closes:#734281.
528   * failedcmd prints $us, not $_[0] - ie, dgit doesn't pretend,
529     in the error message, to be its child.
530   * Do not report the (irrelevant) $? when madison parsing fails.
531
532   Better workflow flexibility:
533   * Provide --build-products-dir option (and corresponding semantics
534     for -C) to specify where to find the files to upload.  Closes:#731633.
535
536   Support for Debian backports suites:
537   * New quirks infrastructure in configuration and internals,
538     for suites (or perhaps distros) which are a bit like others.
539   * Use correct default archive location.
540   * Compute "-v" option default value correctly.
541   * Closes:#733954.
542
543   Packaging improvement:
544   * Add `Testsuite: autopkgtest' to debian/control.  (This will only have
545     the right effect with recent enought dpkg; it will generate a harmless
546     warning with earlier versions of dpkg.)
547
548  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 19 Jan 2014 02:14:25 +0000
549
550 dgit (0.20) unstable; urgency=high
551
552   * Use newest (not oldest) version currently in suite when calculating
553     what value to use for -v<version> by default.  Closes:#732781.
554
555  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 21 Dec 2013 19:13:56 +0000
556
557 dgit (0.19) unstable; urgency=low
558
559   Testing facilities:
560   * Provide "test-dummy" distro with "dummycat" access method.
561   * Provide a selection of autopkgtest (DEP-8) tests.
562
563  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 27 Nov 2013 18:27:17 +0000
564
565 dgit (0.18.2) unstable; urgency=high
566
567   Bump archive upload urgency to high.
568
569  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 24 Nov 2013 17:42:57 +0000
570 dgit (0.18.1) unstable; urgency=low
571
572   Bugfixes:
573   * sshpsql archive query method passes LANG=C.  Closes:#729788.
574   * Subcommand program or argument options containing hyphens work.
575     (Eg, --dpkg-buildpackage:blah was previously incorrectly rejected.)
576
577   Packaging fixes:
578   * Depend on dput.
579   * Depend on curl | wget, as dget needs one of those.  (The dput package,
580     which contains dget, doesn't require them because dput itself works
581     without.)
582
583  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 24 Nov 2013 17:36:03 +0000
584
585 dgit (0.18) unstable; urgency=low
586
587   Major new feature:
588   * Remote push (dgit rpush), a la debsign -r.  Closes:#721185.
589
590   Improved behaviours:
591   * dgit build, by default, uses the archive to find out what the correct
592     -v<version> option is to pass to dpkg-genchanges.  Closes:#727200.
593   * Abolish the sshdakls method and replace it with sshpsql: that is, ssh
594     (to coccia, by default) and run sql commands on the ftpmaster
595     database.  This is faster and has fewer bugs but is vulnerable to db
596     schema changes.  Closes:#726955.  Closes:#720170.  Closes:#720176.
597   * When generating git tags, quote the (uncanonicalised) changelog's
598     Distribution field as the suite.
599   * Command execution reports from --dry-run go to stderr.
600
601   Other new features:
602   * Support --gpg=... to provide a replacement command for gpg.
603   * Support --ssh=... and --ssh:... to affect how we run ssh.
604
605   Bugfixes:
606   * When using sbuild, pass the arguments to mergechanges in the right
607     order so that we use the correct Description (the _source one,
608     not the one from sbuild which didn't get e.g. -v<version>).
609   * push actually takes an optional suite, like it says in the synopsis.
610     Closes:#727125.
611   * Fix dgit --damp-run sbuild to actually work.
612   * Fix the "shellquote" internal subroutine.  The bugs in it ought not to
613     have caused any real trouble in previous versions of dgit.
614
615   Documentation and message fixes:
616   * manpage: Clarify comments about orig tarballs.  Closes: #723605.
617   * manpage: Remove comment in BUGS about lack of policy docs
618     for Dgit field, which is specified now.  Closes:#720201.
619   * manpage: Make discussion of --existing-package less scary.  The
620     default archive access method no longer needs it.  Closes:#720171.
621   * Mention "git merge", not "git-merge", in helpful message.
622     Closes:#725632.
623
624   Internal and debugging improvements:
625   * Report chdir actions in debugging output.
626   * Improvements to implementation of --dry-run and --damp-run.
627   * Some code motion and cleanups.
628
629   Note: changelog entries for the following versions, which were uploaded
630   to Debian experimental, have been collapsed into this single entry:
631     0.18~experimental2 0.18~experimental1
632     0.17~experimental7 0.17~experimental6 0.17~experimental5
633     0.17~experimental4 0.17~experimental3 0.17~experimental2
634     0.17~experimental1
635     0.16~experimental3 0.16~experimental2 0.16~experimental1
636   We do describe here all the changes since 0.17.
637
638  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 09 Nov 2013 10:12:13 +0000
639
640 dgit (0.17) unstable; urgency=high
641
642   * Do not grobble around in .git/refs/; instead, use git-show-ref.
643     This avoids breaking when git makes packed refs.  Closes:728893.
644   * Clarify error message for missing refs/remotes/dgit/dgit/<suite>.
645
646  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 07 Nov 2013 00:02:47 +0000
647
648 dgit (0.16) unstable; urgency=high
649
650   * Format `(3.0) quilt' fixup does not mind extraneous other files
651     in the build tree (e.g., build products and logs).  Closes: #727053.
652   * Set autoflush on stdout, to get better ordering of debugging
653     etc. output when stdout is redirected.
654   * New --damp-run mode, for more convenient and fuller testing etc.
655
656  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 22 Oct 2013 13:06:54 +0100
657
658 dgit (0.15) unstable; urgency=low
659
660   * Better handling of packages pushed using dgit and stuck in NEW.
661     (And, use of `--new' is not needed with fetch.)  Closes: #722199.
662   * More comprehensive warnings in many cases of archive skew.
663   * Implement `dgit help' as well as `--help'.  Closes: #721661.
664   * Provide `dgit version' and `--version'.  Closes: #721654.
665
666  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 12 Sep 2013 00:14:05 +0100
667
668 dgit (0.14) unstable; urgency=low
669
670   * Include package name in tag message.
671   * Create directory .git/dgit when needed during build.  Closes: #721428.
672   * Add Vcs-Git and Vcs-Browser [Richard Hartmann].  Closes: #721404.
673     These fields refer to the development branch, "master", on alioth,
674     not to the dgit suite refs (which are not accessible to git clone).
675
676  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 01 Sep 2013 18:30:44 +0100
677
678 dgit (0.13) unstable; urgency=low
679
680   * Reuse already-downloaded .orig files after checking their hashes.
681     Closes: #720526.  (This introduces a dependency on Digest::SHA.)
682   * Do not always pointlessly fetch the .dsc twice.  (That code was
683     erroneously duplicated during editing, apparently.)
684   * Remove DGET_UNPACK from the environment in case the user has set it.
685   * Remove scary warning from Description.
686   * When uploading to Debian, tell dput to upload to "ftp-master".  This
687     avoids problems with derivatives whose dput has a different default.
688     Closes: #720958.
689   * Fix some bugs in dgit fetch --dry-run which made dgit push
690     --dry-run often not work at all.
691   * Update the local tracking branch for the dgit remote, when pushing.
692     Closes: #720956.
693   * Fix references in manpage to old Vcs-Dgit-Master field name.
694   * Reorganise manpage sections to be in a more conventional order.
695   * New manpage section on FILES IN THE SOURCE PACKAGE BUT NOT IN GIT.
696     Closes: #721186.
697
698  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 29 Aug 2013 00:27:23 +0100
699
700 dgit (0.12) unstable; urgency=low
701
702   * Cope with packages with epoch.  Closes: #720897.
703   * Improve error message for non-fast-forward push.  Closes: #720896.
704   * New --ignore-dirty option to skip noncritical check.  Closes: #720895.
705   * New --no-quilt-fixup option to suppress quilt fixup.  RTFM.
706   * Add Closes line for #720595 to changelog entry for 0.11.
707
708  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 26 Aug 2013 16:50:39 +0100
709
710 dgit (0.11) unstable; urgency=low
711
712   * Location of dgit-repos is now git.debian.org:/git/dgit-repos/repos.
713     Closes: #720525.  The rename on the server side will break older
714     versions of dgit.
715   * Fix bug which would make quilt patch fixup fail if git status
716     produced "M" lines.
717   * Autogenerated quilt patch fixup patch Description contains several
718     recent git commits, rather than implying that the patch corresponds
719     exactly to the top git commit.
720   * Use "ftp.debian.org" not "http.debian.net" as the default Debian
721     archive.  (http.debian.net tends to defeat certain kinds of cacheing,
722     and can also have more skew.)
723   * dgit build uses dpkg-buildpackage; there is a dgit git-build
724     for using git-buildpackage.  Closes: #720595.
725   * Better error message for use of UNRELEASED suite.  Closes: #720523.
726   * Do not canonicalise suite more than once.  Related to: #720526.
727   * Fix a badly open-coded copy of check_not_dirty.  Closes: #720524.
728   * Fix some bugs in building (eg build-source would fail to do the quilt
729     fixup; the --clean check in build was wrong).
730   * Add missing dependency on realpath.
731   * git-build (git-buildpackage wrapper) does not bother canonicalising
732     the suite if --git-ignore-branch is used.
733
734  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 25 Aug 2013 17:00:43 +0100
735
736 dgit (0.10) unstable; urgency=low
737
738   * Create .pc/applied-patches - do not empty it (!)
739
740  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 25 Aug 2013 00:51:50 +0100
741
742 dgit (0.9) unstable; urgency=low
743
744   * New cleaning arrangements.
745   * More comprehensive workaround for `3.0 (quilt)'.
746   * In push, double-check the .changes against the changelog.
747   * Better error when source package contains .git.  Closes: #720555.
748   * Change our .dsc field name to `Dgit'.  Relevant to #720201.
749   * Fix bug handling our synthetic merges when we see them in
750     the remote suite branch.
751   * `3.0 (quilt)' fixup creates .pc/applied-patches since modern
752     dpkg-source creates it even though old ones didn't always.
753
754  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 24 Aug 2013 18:49:02 +0100
755
756 dgit (0.8) unstable; urgency=low
757
758   * Fix comparison of archive's .dsc's hash and git branch head
759     to DTRT.
760   * When creating repos in dgit-repos (using the ssh-cmd method),
761     copy _template rather than using mkdir and git init.
762     Closes: #720522.
763   * In push, do git fetch as well as archive fetch, or archive
764     fetch can fail.
765
766  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 23 Aug 2013 12:24:09 +0100
767
768 dgit (0.7) unstable; urgency=low
769
770   * If dak ls, or rmadison, reports multiple versions, look for them
771     all, and pick the newest .dsc that doesn't give 404.
772   * Manpage formatting fix.
773   * Name the local remote tracking branch remotes/dgit/dgit/<suite>
774     so that we avoid a warning from git about ambiguous branch names.
775
776  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 18:29:10 +0100
777
778 dgit (0.6) unstable; urgency=low
779
780   * Allow fetching when archive has out-of-date git hash in .dsc.
781     Closes: #720490.
782
783  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 16:02:10 +0100
784
785 dgit (0.5) unstable; urgency=low
786
787   * Upload to unstable, as this version mostly works.  (All the RC
788     bugs of which I'm aware are now properly represented in the BTS.)
789
790  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 15:38:00 +0100
791
792 dgit (0.4~pre2) experimental; urgency=low
793
794   * Mangle debian/<version> tags the way git-buildpackage does
795     (as of git-buildpackage 0.5.5, 3c6bbd0f4992f8da).
796   * Support dgit-distro.<distro>.keyid config option.
797   * Revert change to ssh to alioth CNAME, as the recommended CNAME
798     is to something with no write access to the fs and the new CNAME
799     has not yet been set up.  This reintroduces #720172 :-/.
800
801  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 15:31:17 +0100
802
803 dgit (0.4~pre1) experimental; urgency=low
804
805   * Use dgit.debian.net vhost on alioth.  Closes:#720172.
806   * Usage message.  Closes:#720085.
807   * Provide "dgit sbuild".
808   * Assorted manpage fixes and improvements.
809   * Fail if a required config item is missing.
810   * Much better error messages.
811   * Better error checking when parsing RFC822-style control data.
812   * Better checking that the supplied .dsc and debian/changes correspond.
813   * Ordering improvement in push: don't add dsc field until git push done.
814   * New --distro option (helps with unknown suites).
815   * Bugfixes.
816
817  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 13:36:44 +0100
818
819 dgit (0.3) experimental; urgency=low
820
821   * New version which appears to be able to sort of work at least
822     some of the time.
823
824  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 17 Aug 2013 09:18:04 +0100
825
826 dgit (0.2) experimental; urgency=low
827
828   * New version which might actually work but probably won't.
829
830  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 16 Aug 2013 16:52:17 +0100
831
832 dgit (0.1) experimental; urgency=low
833
834   * Initial experimental (partial) version.
835
836  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 15 Aug 2013 12:09:01 +0100
837