chiark / gitweb /
test suite: downstream-gitless: Test import of .dsc with unsafe url.
[dgit.git] / debian / changelog
1 dgit (3.6~) unstable; urgency=medium
2
3   Bugfixes:
4   * Actually use the url from a Dgit .dsc field naming an unknown distro.
5     Closes:#851728.
6
7   Minor improvements:
8   * Use `confess' to print a stack trace in a couple of internal error
9     rcases.
10
11   Test suite:
12   * downstream-gitless: Test import of .dsc from unknown distro.
13   * downstream-gitless: Test import of .dsc with unsafe url.
14
15  --
16
17 dgit (3.5) unstable; urgency=medium
18
19   Bugfixes:
20   * gitattributes: Defuse gitattributes in private working area even if we
21     don't do it in the user's tree (because of user configuration).
22   * gitattributes: When cloning, do not print spurious warning about
23     actually-defused gitattributes.  Closes:#851624.
24   * gitattributes: Improve comment left in .git/info/attributes.
25
26   Test suite:
27   * gitattributes: Many improvements to test case.
28
29  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 17 Jan 2017 22:36:01 +0000
30
31 dgit (3.4) unstable; urgency=low
32
33   Test suite:
34   * drs-push-rejects: Set origin's url to an ad-hoc expression
35     which produces the right ext:: rune, as dgit would.
36     Closes:#851580.
37   * Replace references to /home/ian in various worktrees with
38     references to /nonexistent, to catch inadvertant accesses.
39
40  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 16 Jan 2017 17:27:35 +0000
41
42 dgit (3.3) unstable; urgency=medium
43
44   Behavioural changes to work around gitattributes file transformations:
45   * Suppress file-transforming gitattributes in private work areas.
46   * Configure suppression in user's trees in dgit clone and setup-new-tree.
47   * Provide dgit setup-gitattributes to do this explicitly.
48   * Documentation.
49
50   Bugfixes:
51   * dgit: Remove a leftover debugging print.
52   * dgit: Set default dsc import distro when there is no Dgit field.
53   * dgit: Set default dsc import distro when suppressing Dgit field.
54   * dgit: Option parsing: Fix undefined $suite in some import-dsc.
55     Closes:#851213.
56
57   Packaging:
58   * Remove redundant use of List::Util qw(any).  Closes:#851280.
59   * Remove redundant Recommends on libtext-iconv-perl.
60
61   Test suite:
62   * Move default dsc distro config setting to lib.  We need this
63     for the .dscs we have in tests/pkg-srcs/.
64   * defdistro-import-dsc: Drop this test.
65   * protocol-compat: check that we use the right distro
66     information when importing.
67   * Internal change: fix handling of nonempty distro=
68   * gitattributes: New test for .gitattributes handling.
69
70  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 16 Jan 2017 10:03:08 +0000
71
72 dgit (3.2) unstable; urgency=medium
73
74   Bugfixes:
75   * dgit: Do not execute END blocks in children.  So far symptoms of this
76     bug seem to be limited to duplicated error messages but I have not
77     done a thorough analysis.  Closes:#850052.
78   * dgit-infrastructure: dgit-repos-policy-debian: Remirror a package when
79     it becomes public (ie, make the repo available much more promptly when
80     the package passes NEW).  Closes:#849789.
81   * dgit: Fix a warning message about ref (mainly, tag) updates.
82
83   Documentation:
84   * dgit-maint-merge(7): Use git-deborig(1).
85     [Sean Whitton]  Closes:#850953.
86   * dgit-user(7): Fix some typos.
87
88   Internals:
89   * Fix a typo in a comment.
90
91   Test suite:
92   * infra: mirroring and policy hooks: Improve some debugging output.
93   * infra: mirror-private: test that package becomes public.  (#849789)
94
95  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 12 Jan 2017 02:11:34 +0000
96
97 dgit (3.1) unstable; urgency=medium
98
99   Bugfixes:
100   * dgit import-dsc: Do not crash with undefined $isuite.  Closes:#850781.
101   * dgit build: Do not sometimes crash with undefined $isuite.
102   * dgit: Do not nedlessly re-fetch the rewrite map.
103   * dgit: After downloading .debian.* files, save them in `..', too
104     (ie do this not just for .origs).
105   * dgit: When fetching, refetch files with hash mismatches (and save them
106     as `...,fetch'), so we can distinguish them from any built locally.
107     Closes:#850824.
108
109   Test suite:
110   * Add test for import-dsc with default distro.  (Detects #850781.)
111
112   Administrivia:
113   * Fix a dgit 3.0 changelog bullet referring to refs/dgit-fetch/DISTRO.
114
115  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 10 Jan 2017 17:50:27 +0000
116
117 dgit (3.0) unstable; urgency=medium
118
119   Protocol change:
120   * Dgit: field now records the nominal distro name, and a hint
121     for a tag and url where the git objects (including any rewrite
122     map) can be fetched.
123   * Use this information, where provided.  Closes:#850431.
124
125   Bugfixes:
126   * dgit config handling: Honour command-line and context-provided
127     suite and distro more reliably and consistently.
128   * Parsing of extended Dgit fields by import-dsc was broken;
129     and is now fixed even for more-extended ones.
130   * dgit clone-dgit-repos-server uses readonly access.
131     Closes:#850521.
132   * fetch and pull ignore the changelog suite when it is UNRELEASED.
133     Closes:#848646.
134   * dgit-badcommit-fixup: Do not investigate symrefs.  Closes:#850547.
135
136   Minor new feature:
137   * distro alias facility in config space.  (Primarily for testing.)
138   * Undocumented --config-lookup-explode= feature.  (For testing.)
139   * Provide `dgit print-dgit-repos-server-source-url'.  Re:#850521.
140   * Honour dgit-distro.*.default-suite and dgit.default.default-suite.
141
142   Other improvements:
143   * Improve debugging output a bit.
144   * Use refs/dgit-fetch/DISTRO rather than refs/dgit-fetch/SUITE,
145     which leads to less duplication and so less clutter.
146   * Enforce a reasonable syntax for nominal distro names.
147   * When generating orig+debian/patches view, copy debian/ from
148     HEAD.  This makes less noise in diffs.  Closes:#850095.
149
150   Docuentation [Sean Whitton and Ian Jackson]:
151   * dgit-sponsorship(7): Use --no-dep14tag.  Closes:#849105.
152   * dgit-maint-merge(7): Use debian/source/patch-header.  Closes:849120.
153   * dgit(7): Updated `trouble' section to suggest having dpkg-source
154     delete the autotools output (with a patch if necessary).
155   * dgit(1): Several minor updates and fixes.  Closes:#850519.
156
157   Test suite:
158   * Internal improvements.
159   * badcommit-rewrite: Fix operation using installed version of fixup.
160   * Arrange to pass --debug-quick-random to gpg-agent.
161   * Strip block count out of find -ls output - it is unstable!
162   * gbp-orig: Add a missing -m, without which git would run an
163     editor if stdout was a tty (!)
164   * Add t-stunt-parsechangelog to a few tests which were missing it.
165   * Tests for the new protocol feature.
166   * Fail tests if we look up any configuration relating to Debian.
167
168  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 09 Jan 2017 16:43:10 +0000
169
170 dgit (2.16.2) unstable; urgency=low
171
172   dgit-badcommit-fixup: 
173   * Fix crash when running for 2nd time in bare repo.
174   * In --check mode, exit with status 2 if things are not fine.
175
176  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 07 Jan 2017 13:31:50 +0000
177
178 dgit (2.16.1) UNRELEASED; urgency=low
179
180   * dgit-badcommit-fixup: New mode --check which is readonly.
181
182  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 07 Jan 2017 13:04:49 +0000
183
184 dgit (2.16) unstable; urgency=low
185
186   Dealing with fallout from #849041:
187   * Provide dgit-badcommit-fixup history-rewriting script.
188   * New rewrite map feature, which allows dgit git server to adjust
189     clients' interpretation of Dgit fields, so that history-rewriting is
190     effective.  (Feature is only partially implemented right now -
191     enough to dig current Debian users out of the hole.)  Re:#850431.
192
193   Test suite:
194   * New test case for history-rewriting.
195   * Change `local foo=$(bar)' idiom to `local foo; foo=$(bar)' since
196     the former does not trip set -e even if bar fails :-(. 
197
198  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 06 Jan 2017 20:46:30 +0000
199
200 dgit (2.15) UNRELEASED; urgency=high
201
202   Infastructure:
203   * Prevent introduction of new commits which lack `committer'
204     information.  Ie, prevent the reception of new commits afflicted by
205     #849041.  Existing commits are tolerated.
206
207   Test suite:
208   * Be much stricter about messages from git-fsck.
209
210  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 05 Jan 2017 18:20:23 +0000
211
212 dgit (2.14) unstable; urgency=critical
213
214   CRITICAL BUGFIX:
215   * Do not generate bogus commits with --overwrite or import-dsc.
216     Closes:#849041.
217
218   Test suite:
219   * Run a lot of git-fsck.
220
221  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 04 Jan 2017 22:52:55 +0000
222
223 dgit (2.13) unstable; urgency=high
224
225   Changed behaviour:
226   * quilt fixup: Permit creation of patches which delete files, by psssing
227     --include-removal to dpkg-source, and tolerating it when we do our
228     quilt fixup analysis.  dpkg-source has supported this since at least
229     stretch.  Closes:#848901.
230
231   Error messages:
232   * Improve "cannot represent change" message: print the git old and new
233     modes too.
234
235   Bugfix:
236   * Import: Switch back to unpa branch on patch import iterations.
237     In particular, do not fail utterly if dpkg-source and gbp disagree.
238     Closes:#848843.
239
240   Documentation [Sean Whitton]:
241   * dgit-maint-gbp(7): Remove reference to closed bug.  Closes:#848725.
242   * dgit-sponsorship(7): Update in light of fixed #844129.  Closes:#848789.
243
244  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 21 Dec 2016 01:32:41 +0000
245
246 dgit (2.12) unstable; urgency=high
247
248   Changed behaviours:
249   * By default, generate a DEP-14 tag as well as a dgit archive/*
250     tag, even in non-split-view quilt modes.  Closes:#844129.
251   * Version tags mangling: Protect dots, as per proposed update to DEP-14.
252
253   Documentation:
254   * dgit-maint-merge(7): Explain how to change to this workflow
255     from an existing git workflow.  [Sean Whitton]  Closes:#847807.
256   * dgit-maint-native(7): Clarify that we mean native source format.
257     [Phil Hands]  Closes:#847987.
258
259   Error messages:
260   * Slightly better message when .dsc not found.  Apropos of #844128.
261   * Give better advice if .dsc/.changes signing fails: if no changes
262     are needed to the package, user may indeed just debsign and dput.
263     Closes:#844131.
264   * Produce better error reporting when absurd git wrapper fails
265     on a patch during .dsc import.  Apropos of #848391.
266
267   Bugfixes:
268   * If we cannot hardlink origs into our extraction area, use symlinks
269     instead.  Closes:#844570.
270   * Suppress some leftover debugging output from import-dsc.
271     Closes:#847658.
272   * Do not fail when cloning a package containing dangling symlinks.
273     Closes:#848512.
274   * Do not fail to import a .dsc containing patches which patch files
275     multiple times, due to #848611.  Closes:#848391.
276   * Do not fail to import a .dsc containing patches to .git/ (!)
277   * infra: dgit-repos-policy-debian which broke due to recent git setting
278     GIT_ALTERNATE_OBJECT_DIRECTORIES in the pre-receive-hook.
279     (fixes test suite regression in stretch).
280
281   Test suite:
282   * Provide and use stunt lintian and debuild, to avoid lintian
283     complaining about our stupid test packages.
284     (fixes test suite regression in stretch).
285
286  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 19 Dec 2016 17:35:18 +0000
287
288 dgit (2.11) unstable; urgency=medium
289
290   Documentation:
291   * dgit-user(7): Better explanation of combined suites (comma syntax).
292     Thanks to Sean Whitton for review and suggestions.
293   * dgit(1), dgit(7): Better reference docs for combined suites.
294   * dgit(1): Improve formatting of rpush section.
295
296   Test suite:
297   * Replace make in Test-Depends with build-essential.  Most of the tests
298     do in fact run dpkg-buildpackage which bombs out if build-essential is
299     missing.
300
301  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 08 Nov 2016 22:41:29 +0000
302
303 dgit (2.10) unstable; urgency=medium
304
305   New features:
306   * Support the Debian *-security suites.
307   * New comma-separated multiple-suite merging facility (readonly),
308     so that users can easily track "jessie, or jessie-security".
309   * dgit-user(7): Suggest `dgit clone P jessie,-security'.
310
311   Bugfixes:
312   * Cope when an orig tarball is a tarbomb.  Ie, if it contains
313     other than one single directory toplevel.  Closes:#843422.
314   * Actually honour the branch name, if we are on dgit branch, to specify
315     the suite, as documented in the manpage.
316   * When cloning a distro which has no git server, correctly leave
317     the user on the local dgit branch, not on `master'.
318   * Fix an unconditional print that was supposed to be a printdebug:
319       origs <blah>.orig.tar.gz f.same=1 #f._differ=-1
320   * Print a slightly better message if .git found in orig tarball(s).
321
322   Test suite:
323   * Test suite: Add fakeroot and make to Test-Depends.  These aren't
324     necessarily pulled in by anything else.  (dpkg-dev Recommends
325     build-essential.  But we don't actually need build-essential.)
326
327  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 08 Nov 2016 01:08:51 +0000
328
329 dgit (2.9) unstable; urgency=medium
330
331   New features:
332   * During push, automatically calculate which .origs are required,
333     so user never needs [--ch:]-sa or [--ch:]-sd.  Closes:#829116.
334   * New import-dsc feature.
335   * New option --dgit-view-save= for split view quilt modes.
336     In particular, means that the output of a split view quilt-fixup
337     is left somewhere useful.
338   * dgit clone: Set timestamps in cloned tree to a single unified time.
339     This makes it less likely that the user will trip over any
340     timestamp-dependent FTBFS bugs (eg #842452).
341   * Support dgit --delayed= push (with a warning in the manpage
342     about possible skew).
343   * dgit gbp-build will arrange to let gbp buildpackage generate
344     .orig tarballs if it seems applicable.  Closes:#841094.
345
346   Documentation improvements:
347   * dgit-*(7).  Many new tutorial manpages, several written and many
348     improved by Sean Whitton.
349   * dgit(7): Substantial updates, including documenting split view.
350   * dgit(1): Better cross-references.
351   * dgit(1): Remove obsolete workflow information.
352   * dgit(1): Improved BUGS section.
353   * Fix changelog entry for SIGPIPE to correctly mention
354     Closes:#841090.
355
356   Bugfixes:
357   * Split brain mode: Fix --new.  Closes:#842577.
358   * Properly look for .origs etc. in .., fetching them less often.
359     Closes:#842386.
360   * Reject `dgit pull' in split view quilt modes, to avoid
361     creating unfortunate wreckage on non-dgit-view branches.
362     Closes:#842608.
363   * Cope when cloning suite which doesn't receive uploads,
364     like testing.  Closes:#842621.
365   * Properly fetch all archive dgit view tags, as we intended.
366   * Actually provide a -p (--package=) option (!)
367
368   Test suite fixes:
369   * Test suite: Explicitly configure user.name and user.email, so
370     that tests work when environment doesn't have defaults.
371     Closes:#842279 (I hope).
372
373  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 31 Oct 2016 12:47:18 +0000
374
375 dgit (2.8) unstable; urgency=medium
376
377   * When in split build mode for `gbp-build' or `build', run
378     mergechanges as is required.  Closes:#841990.
379   * Test suite: build-mode-*: Check that right .changes comes out
380     (detects #841990).
381   * Defend against debian/patches/series being an unusual object, in case
382     dpkg-source doesn't, in absurd git-apply fallback.
383
384  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 25 Oct 2016 17:29:23 +0100
385
386 dgit (2.7) unstable; urgency=medium
387
388   Absurd bugfix for serious bug:
389   * Work around `git-apply' problems (eg #841865, #829067) exposed by
390     `gbp pq import' (#841866) by sometimes falling back to an emulation of
391     git-apply in terms of dpkg-source --before-build.  Closes:#841867.
392
393   Minor changes:
394   * dgit(1): Reorder the options, moving more important ones earlier.
395   * dgit(1): Some more info about --deliberately.
396   * Provide various --force-something options.  Please don't use them.
397
398  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 24 Oct 2016 02:37:28 +0100
399
400 dgit (2.6) unstable; urgency=medium
401
402   Fixes to HTTP handling:
403   * Check for non-2xx HTTP status codes from ftpmaster api server.
404   * Always honour --curl= and --curl:.
405
406  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 23 Oct 2016 14:57:22 +0100
407
408 dgit (2.5) unstable; urgency=low
409
410   Substantive changes:
411   * Do not crash in split brain quilt modes when the two brains are
412     actually identical.  (Eg --quilt=gbp with no patches.)  Closes:#841770.
413   * Switch to new archive/ tag format by default, even in
414     non-split-brain mode.
415   * Provide --gbp and --dpm as aliases for --quilt=gbp and --quilt=dpm.
416
417   Documentation:
418   * dgit-maint-merge(7): New tutorial manpage from Sean Whitton.
419
420   Test suite:
421   * Introduce setup/gnupg, to help work around gnupg2 bug #841143
422     and improve performance by amortising gnupg migration cost.
423   * Various bugfixes.
424
425  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 23 Oct 2016 13:20:23 +0100
426
427 dgit (2.4) unstable; urgency=low
428
429   Bugfixes:
430   * split brain cache: Fix a wrong implicit reference to $_.
431     Closes:#841383.
432   * split brain cache: Make sure to write reflog entries for cache updates
433     even if the eventual tree (and therefore commit) is the same.
434     Otherwise, after updating dgit, the cache might have the right answer
435     but not be refreshed even by a build.
436   * dgit gbp-build: No longer invent a --git-debian-branch option.
437     Usually the user is a maintainer using split brain, and we should rely
438     on their own gbp configuration to specify the right check.
439     Closes:#841100.
440
441   Minor docs fix:
442   * dgit(1): Document which --ch: options are a good idea.
443
444  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 20 Oct 2016 16:31:54 +0100
445
446 dgit (2.3) unstable; urgency=low
447
448   * With --overwrite, do not check all sorts of tags (which may
449     not exist, or might contain wrong things).  Closes:#841101.
450   * When generating pseudomerge in quilt split brain mode due to
451     --overwrite, actually include the version number in the commit
452     message.
453
454  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 18 Oct 2016 01:58:05 +0100
455
456 dgit (2.2) unstable; urgency=low
457
458   * Fix config relating to Debian to actually make split brain mode
459     work.  Closes:#841085.
460   * Detect SIGPIPE (and SIGCHLD) being blocked or ignored.
461     Closes:#841090.
462
463  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 17 Oct 2016 17:31:18 +0100
464
465 dgit (2.1) unstable; urgency=low
466
467   * Do not crash due in clone to failure to handle dpkg-parsechangelog
468     SIGPIPE.  Closes:#840989.  Avoids:
469        dgit: failed command: dpkg-parsechangelog --format rfc822 --all
470        dgit: subprocess died due to fatal signal PIPE
471   * git- prefixes: Fix some occurrences of `git-foo' in infrastructure,
472     messages, and test suite.  Filter out .../git-core from PATH in
473     test suite so that we catch future occurrences.
474
475  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Oct 2016 19:05:14 +0100
476
477 dgit (2.0) unstable; urgency=low
478
479   Incompatible change:
480   * dgit sbuild: does not pass -A to sbuild.  Consequently the default
481     build is now simply sbuild's default.  With older sbuilds it was
482     possible to override dgit's -A by passing another option.  But this
483     has been changed recently and now this default setting is very awkward
484     to change for the dgit user.
485   * dgit gbp-build: Make --quilt=gbp the default.  (See below.)
486   * New tag format (for dgit view) archive/debian/VERSION.
487
488   Major new feature:
489   * --quilt=gbp, --quilt=dpm, --quilt=unpacked: Introduce facility for
490     split view (dgit/mainiainer view), to improve compatibility with some
491     workflow tools.
492
493   New checks and improved behaviours in dgit:
494   * When running dpkg-buildpackage, cope if user specified -g or -G.
495   * dgit sbuild: check that the set of .changes files found is as we
496     expect, before calling mergechanges.  Re:#800060.
497   * dgit sbuild: Rename the used-up .changes files to `.inmulti' to
498     avoid accidental use of the wrong one (by software, or by users).
499   * dgit sbuild: Check that the binary .changes file doesn't contain a
500     .dsc.
501   * Introduce --rm-old-changes to delete previous builds' changes files.
502   * Remove any pre-existing _source.changes file before building source,
503     as a safety check.
504   * No longer tolerate a multitude of .changes files when doing push.
505     Instead, insist on a single one.  Closes:#800110.
506   * dgit sbuild no longer deletes extranious .changes files; instead
507     we rely on --rm-old-changes, or failing that, fail early.
508   * When doing quilt linearisation, treat upstream .gitignores not
509     in the toplevel the same way we treat ones in the toplevel.
510   * When automatically generating quilt patch, honour GIT_COMMITTER_DATE
511     for filename creation (makes filename deterministic in test suite).
512   * New --overwrite option, replaces need to for user to use
513     git merge -s ours.  Closes:#838718.
514   * When generating quilt patches from git commits, make patches that
515     look quite like git-format-patch output (rather than strange things
516     based on an obselete interpretation of DEP-3).
517   * When generating quilt patches from git commits, honour (and strip)
518     any Gbp-Pq headers (that we understand).
519   * Several dgit-generated commits now have slightly better annotations
520     from dgit about what it was doing.
521   * Before committing to push, check that .dsc and .changes correspond.
522     Closes:#800060.
523   * Better error message if non-split-brain patch stack no longer
524     applies (due to new upstream version, or user messing with it).
525     Closes:#833025.
526   * Better error message if HEAD contains changes unrepresentable
527     by `3.0 (quilt)'.  Closes:#834618.
528   * Much better error message when HEAD and .dsc do not match.
529     Closes:#809516.
530
531   Infrastructure:
532   * dgit-repos-policy-debian: Better error handling.
533   * dgit-repos-policy-debian.: fix git-cat-file-handling with multiple
534     taints in db (!).
535   * dgit-infrastructure has, and uses, its own copies of the perl modules.
536     This avoids introducing a versioned dependency between dgit and
537     dgit-infrastructure (and also makes it easier to test cross-version
538     compatibility).
539
540   Documentation:
541   * Document the dgit-distro.DISTRO.quilt-mode config setting.
542   * Clarify the --clean= options' documentation.  Closes:#800054.
543   * Discourage use of the --PROGRAM:OPTION escape hatch.  (Apropos
544     of various bug reports including #800060 and #833025.)
545   * Document the expected form of HEAD for each --quilt= mode.
546
547   Bugfixes:
548   * When cleaning up after failed clone, stat the to-be-cleaned-up
549     directory before running rmtree on it.  Closes:#796773.
550   * Do not call "warn" on failure of cleanup handler in END block
551     (since warn has been made fatal and aborts the cleanup chain).
552   * Print better error message (with `fail' rather than `die') if
553     `dgit clone' cannot create the destination directory.
554   * Properly substitute $changesfile in one of the `You can retry'
555     messages.  Closes:#800078.
556   * Pass --ch:* and -v options to dpkg-buildpackage when building
557     source.  Fixes bad Perl poetry syntax.  Closes:#829121.
558   * When synthesing a commit from a .dsc from the archive, stop
559     internal git reset from printing a confusing message about HEAD.
560   * Turn off git gc in the private working areas.
561   * Do not fail to do some important quilt processing in some
562     --quilt modes.
563   * Fix two calls to chdir without proper error checking.
564   * Fix a couple of bugs in error reporting.
565   * Fix several bugs in .orig detection/recognition.
566   * Tidy up refs/dgit-fetch/ after dgit fetch (if successful).
567   * Fix handling of in-archive copies.
568   * Don't break if user has push.followTags=true.  Closes:#827878.
569   * Arrange for the special dgit remote to be skipped by git fetch --all
570     etc.  And no longer configure a fetch spec, since it won't work
571     anyway.  Closes:#827892.
572   * Allow local git config options to override user-global ones,
573     as is proper.  Closes:#835858.
574   * When generating patch filenames from titles, first transliterate
575     them (lossily) to ascii.  Closes:#834807.
576
577   Test suite:
578   * When sbuild fails, do not crash due to sed not finding the log
579     file.  Instead, simply tolerate the absence of the log file.
580   * Put --no-arch-all in build-modes-sbuild act, not only its real_act.
581     Cosmetic change only.
582   * Set GIT_COMMITTER_DATE and GIT_AUTHOR_DATE and increment them
583     explicitly in drs-push-rejects test.  This avoids date dependencies
584     which can cause that test to fail on fast computers.
585   * Remove some spurios .debs from the example_1.0.tar.
586   * Increase sqlite_busy_timeout in debpolicy-dbretry, because old
587     zealot is very slow and we need to give the other processes time
588     to rollback and release the lock.
589   * Test quilt single-debian-patch.
590   * Provide `tartree-edit gitfetchinfo' etc. to help with comparing
591     different test case git working tree tarballs.
592   * Test dgit-repos-policy-debian with multiple (identical, as it happens)
593     existing taints.
594   * Provide better log output for certain failures.
595   * Many new tests (especially for new functionality).
596   * Add missing debhelper (>=8) to test suite's global Depends.
597   * tstunt arrangements: Fix mishandling of PERLLIB, etc.
598   * tstunt-parsechangelog: Produce Timestamp field (like official one
599     does, now).
600   * Do not fail when git requires --allow-unrelated-histories.
601
602  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Oct 2016 12:12:50 +0100
603
604 dgit (1.4) unstable; urgency=high
605
606   Bugfixes:
607   * Unbreak --dry-run (`exiting subroutine via next', broken in
608     ac221d67, bug released in 0.22).
609   * When running git-add in commit-quilty-patch, properly escape
610     filenames (which git-add treats as glob patterns).
611   * When running git-add in commit-quilty-patch, use -f and sometimes -A,
612     so as to avoid being broken by any .gitignore, etc.
613   * When quilt linearisation fails, print the right information in
614     the error message.  (This has been broken forever.)
615   * Cope properly with `3.0 (quilt)' with single-debian-patch.
616     Closes:#796016.  (Still does not work with wheezy's dpkg-source, so
617     no test case yet.)
618   * With dgit sbuild, pass our -d before the user's arguments, so that
619     the user can override it.  Closes:#796019.
620
621   New checks and improved behaviours:
622   * Detect and reject git trees containing debian/source/local-options
623     or debian/source/local-patch-header.
624   * In --dry-run mode, _do_ actually run dpkg-source --commit so that we
625     actually do construct the quilt fixup commit; instead, honour
626     --dry-run by avoiding pulling it back to your HEAD.
627   * quilt-fixup checks that the git tree is clean, as for build-prep.
628
629   Documentation:
630   * In dgit(7), discuss binaries and documentation present in upstream but
631     removed by rules clean.
632
633   Test suite:
634   * Run quilt-fixup with -wgf in distropatches-reject,
635     so that we don't need build-depends.
636
637  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 22 Aug 2015 15:31:02 +0100
638
639 dgit (1.3) unstable; urgency=high
640
641   Important bugfixes:
642   * In option parser test `@ARGV' not `length @ARGV'.  Closes:#795710.
643   * Properly quote package name when constructing regexp in
644     complete_file_from_dsc.  Closes:#795736.  Also, grep the code for
645     likely similar problems elsewhere and improve a (harmless) instance in
646     dgit-repos-server.
647
648   Other improvements:
649   * If a .orig in .. is a symlink, hardlink the link target into our
650     private unpack directory, rather than the link itself (since latter
651     won't work if the symlink is relative).  Closes:#795665.
652   * Test suite: Fix t-restriction-x-dgit-schroot-build in non-adt mode.
653   * Infrastructure: Improve an error message in dgit-repos-policy-debian.
654
655  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 16 Aug 2015 17:51:02 +0100
656
657 dgit (1.2) unstable; urgency=high
658
659   Improvements:
660   * Honour *.clean-mode configuration setting for --clean= mode.
661   * No longer require option values to be cuddled: support `--opt val' and
662     `-o val'.  Closes:#763332.
663
664   Manpages:
665   * Fix typos.
666   * Document that tags are in DEP-14 format, and that they
667     are used for authenticating pushes.
668   * Correct cross-reference to point to browse.d.d.o.
669   * Move dgit.default.* to main CONFIGURATION section.
670
671   Administrivia:
672   * Add missing close of #793060 to changelog for version 1.1.
673
674  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 14 Aug 2015 18:27:20 +0100
675
676 dgit (1.1) unstable; urgency=medium
677
678   Bugfixes:
679   * When source package contains things called .git (even files, and even
680     in subdirectories), remove them.  Closes:#793671.
681   * Work around curl -sS -I printing `HTTP/1.0 200 Connection established'
682     before the actual header, so dgit works with https_proxy set (!)
683   * --new is needed for read access to packages in NEW, too.  Document
684     this, and make it work properly.
685   * Work around #793471 (madness with $SIG{__WARN__} and Perl's system
686     builtin): move $SIG{} setting into setup_sigwarn in Dgit.pm, and
687     check getppid.
688   * When invoking git-buildpackage via dgit gbp-build, consider our
689     command line arguments when massaging the dpkg-buildpackage arguments,
690     so that we don't end up giving dpkg-buildpackage contradictory
691     instructions.
692   * Cope with new git-buildpackage which provides gbp, rather than the
693     eponymous command, on PATH.
694
695   Configurability:
696   * Honour dgit-distros.DISTRO.cmd-CMD and .opts-CMD.  Closes:#793427.
697   * Make configuration able to prevent dpkg-mergechangelogs setup.
698   * Provide dgit setup-new-tree (like dpkg-setup-mergechangelogs
699     but only does it if not disabled in config).
700   * Set up git user.email and user.name from distro access config
701     or DEBEMAIL/DEBFULLNAME.  Closes:#793410.
702   * When key to use not specified any other way, use the debian/changelog
703     trailer line.  Closes:#793423.
704   * Honour --git= (mostly).
705
706   Documentation:
707   * Fix some manpage typos.  [ Richard Hartmann ]
708   * Manpage said that --clean=check was -wn but that is --clean=none;
709     correctly document that --clean=check is actually -wc.
710   * Document that up to -DDDD (not just -DD) is meaningfully different.
711   * Document that -cname=value applies only for this run.
712   * Improve manpage comment about defining a new distro.
713   * Document that --quilt=linear is the default for Debian.
714   * Fix a formatting problem in --build-products-dir= doc.
715   * In manpage, do not seem to imply that NMU should be of only one
716     new commit.
717   * Qualify to Debian the manpage comment about how to do NMU.
718   * In discussion on how to start using dgit when already using git, do
719     not imply/assume that existing git history will have identical trees
720     to dgit history.
721   * Remove stray sentence in config section of manpage.
722   * Manpage: Clarify wording of readonly config.
723   * Manpage: Better cross-references for -k and keyid.
724   * dgit(7): No longer say that dgit-repos lives on Alioth.
725
726   Improvements:
727   * Introduce more sophisticated protocol negotiation for rpush.
728   * Do not quote `:' in shellquote.
729   * Print a supplementary message when push fails, giving advice to
730     the user about how to retry.  Closes:#793144.
731   * Slurp in entire git config, for better performance.
732   * Rename `git-build' operation to `gbp-build' to make it clearer what
733     it's for.  Keep the old name as an alias.
734   * Show `dgit sbuild' in usage message.
735   * When we are using dpkg-buildpackage to clean before using it to also
736     do the build, let it do its cleaning thing as part of its run, rather
737     than running it twice.  When we are _not_ supposed to be using
738     dpkg-buildpackage to clean, but we are running it to do the build,
739     pass -nc.  Closes:#793060.
740   * Also suppress spurious runs of the clean target when building using
741     git-buildpackage.
742   * When exec fails, always print the program name in the error message.
743
744   Infrastructure:
745   * Infrastructure: Get mirroring right for fresh repos of existing
746     packages (!)
747
748   Packaging, cleanups, debugging and test suite:
749   * Fix Vcs-Git and Vcs-Browse to refer to chiark.  (The dgit-repos on
750     alioth aren't suitable right now because the master there can
751     currently only be updated with an actual upload, ie dgit push.)
752   * Make warnings fatal in dpkg-repos-admin-debian, dgit-ssh-dispatch
753     (using setup_sigwarn).
754   * tstunt/dpkg-parsechangelog: Make warnings fatal (directly).
755   * tstunt/dpkg-parsechangelog: Do not complain if PERLLIB is empty.
756   * Test suite: Honour DGIT_TEST_DEBUG=''.
757   * With -DDDD, print out all gitcfg references (copious!)
758   * Fix a debug message in the obsolete sshpsql archive access driver.
759   * Test suite: More automatic enumeration of tests.
760   * Test suite: Provide tests which check that all our various build
761     operations run the right targets as expected (ie, that we are massaging
762     the arguments to dpkg-buildpackage, and suppressing our clean target,
763     etc., correctly).
764
765  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 27 Jul 2015 16:34:31 +0100
766
767 dgit (1.0) unstable; urgency=medium
768
769   Improvements:
770   * Switch to new production git repositories for reading.
771     (this can no longer divert to alioth).  Public readonly access
772     now works.  Closes:#791447.
773   * Memoise git config lookups (big speedup!)
774   * Provide -wdd aka --clean=dpkg-source-d.  Closes:#792433.
775   * Provide -wc aka --clean=check.
776
777   Manpage updates:
778   * Remove some obsolete caveats from BUGS.
779   * Reorganise and complete the configuration section.
780   * Remove obselete comment about DMs not being able to push.
781     We have, for now, a way to add keys manually.  Closes:#720173.
782
783   Access machinery:
784   * Remove configuration relating to alioth.
785   * Provide for different access mechanisms when pushing.
786   * Provide for configurable git url suffix.
787   * Allow git-url to be '' to force fallback to git-proto etc.
788   * Provide for checking git presence via http[s].
789   * Do some quoting on debug output (needed if the server might not
790     be trustworthy and might send us bad stuff).
791   * Talk to push.dgit.debian.org, rather than the .debian.net alias.
792
793   Infrastructure:
794   * Provide for mirroring git updates to a different server.
795   * Provide cgit-regen-config command for cgi-grnet-01.
796   * Make dgit-ssh-dispatch not spew (harmless) warnings if caller
797     tries for a shell session (ie SSH_ORIGINAL_COMMAND not set).
798
799   Cleanups:
800   * Remove an obsolete comment from the code.
801   * Improve an error message from dgit-repos-policy-debian.
802   * Test suite: Break out t-make-hook-link.
803   * Fix a manpage typo.
804
805  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 19 Jul 2015 22:15:53 +0100
806
807 dgit (0.30) unstable; urgency=high
808
809   INCOMPATIBLE CHANGES:
810
811   * Client uses new infrastructure:
812     - Check for new dgit git service on dgit-git.debian.net (ie
813       gideon.debian.org), with transition plan based on diversion feature.
814       Closes:#720172.
815     - Old versions of dgit will stop working when the server-side handle is
816       pulled.
817
818   * dgit git trees no longer contain .pc for format `3.0 (quilt)' source
819     packages.  Closes:#764606.
820     - It is deleted whenever we find it.
821     - Older versions of dgit will choke on trees without .pc.
822     - (When doing quilt fixup, we recreate a suitable .pc in a temporary
823       directory so that we can do dpkg-source --comit.)
824
825   * All users are urged to upgrade ASAP.
826
827   Other significant improvements:
828
829   * When generating quilt patches, try to linearise the git history into a
830     series of individual new patches for debian/patches.  Closes:#770710.
831
832   * When receiving a push with dgit-repos-server, update the server's
833     refs/heads/master if we are pushing to what the distro regards as a
834     relevant branch, and the push would ff master.  Closes:#728209.
835
836   * For non-Debian distros, distro version release tags contain distro
837     name a la DEP-14 (rather than hardcoding `debian/').
838
839   * Set up a merge driver for debian/changelog.  Closes:#769291.
840
841   * --clean=git and --clean=none cause dgit to pass -nc to
842     dpkg-buildpackage, suppressing calls to the package's clean target.
843     Also, expand the documentation in this area slightly.  Closes:#768590.
844
845   * Provide --clean=git-ff (aka -wgf), which is useful for dgit itself (!)
846
847   Minor improvements:
848
849   * Reduce some noise output and improve the clarity of some messages.
850   * Be more careful about tag updates during fetch: only update tags
851     referring to uploads to distro we are trying to fetch from.
852   * Change realpath dependency to `coreutils (>= 8.23-1~) | realpath'
853     (Closes:#786955.)
854
855   Bugfixes:
856
857   * Fix handling of rmadison-based and gitless distros (e.g., Ubuntu).
858   * Add missing `gpgv' to test dependencies in debian/tests/control.
859   * Strip `-b <branch>' from contents of Vcs-Git header, when setting up
860     the vcs-git remote.  Closes:#759374.
861   * Do not offer wget as an alternative dependency to curl.  We always
862     unconditionally invoke curl and have no code to use wget.
863     Closes:#760805.
864   * Complain about lack of cuddled values for value-taking single-letter
865     options, rather than thinking the user meat an empty value.
866     Closes:#763332.
867   * Reject (rather than ignoring) further options merged witth -wn, -wg,
868     -wd.
869   * Fix inaccurate error message when archive's git hash is not an
870     ancestor of git repo's git hash.
871   * Detect and bomb out on vendor-specific `3.0 (quilt)' patch series.
872   * Fix the rules clean target to remove test results and output.
873
874   Documentation improvements:
875
876   * Break out dgit(7) from dgit(1).
877   * Provide example workflow for dgit rpush.  Closes:#763334.
878     (Also part of the fix for #768470.)
879   * Document that dgit repos are cloneable with git, in dgit(1)
880     section MODEL.  [Andreas Barth.]  Closes:#768470.
881   * Better documentation for quilt series handling.
882   * Document under `dgit push' that it is best to build with dgit too.
883     Closes:#763333.
884   * Other minor clarifications and improvements.
885
886   Behind-the-scenes work:
887
888   * Use ftpmasterapi archive query method.
889     (Closes:#727702.  Also partly obsoletes #768470.)
890   * New dgit-infrastructure binary package containing dgit-repos-server et
891     al.  Client users probably don't want this stuff.  Also, it provides a
892     convenient way to publish the dependencies.
893   * Many many bugfixes to the server side (dpkg-repos-server et al.).
894   * Add :..; prefix to ssh remote commands, for the benefit of future
895     forced command wrappers.  Implicitly, this defines a new ssh-based
896     command protocol.  Closes:#720174, #720175.
897   * Distro access configuration handling changes (should not be noticeable
898     to most users).
899   * In places, significant restructuring or tidying up.
900   * Turn all perl warnings into errors using $SIG{__WARN__}.
901
902  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 05 Jul 2015 01:34:55 +0100
903
904 dgit (0.22.1) unstable; urgency=high
905
906   * Use Dpkg::Version::version_compare everywhere, not
907     Dpkg::Version::version_compare_string.  The latter is entirely wrong,
908     meaning that dgit would get many version comparisons wrong.
909     Closes:#768038.
910
911  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 04 Nov 2014 12:46:40 +0000
912
913 dgit (0.22) unstable; urgency=medium
914
915   Bugfixes:
916   * Clone removes destination directory on error.  Closes:#736153.
917   * Work with wheezy-backports (and keep squeeze-backports working too).
918     Closes:#736524.
919   * Work in read-only no-git-history mode with Ubuntu.  You still have
920     to pass -dubuntu.  Closes:#751781.
921   * Use mirror.ftp-master.debian.org DNS alias rather than coccia.
922     Closes:#752602.
923   * Check hashes of files ourselves rather than running dget to
924     re-retreive the .dsc.
925   * Check SHA-256 of .dsc against hash from archive_query (ie projectb)
926     rather than letting dpkg-source do a signature verification.
927     Closes:#737619.  Closes:#737625.
928   * Treat .dsc as bytes, just like everything else, rather than letting
929     HTTP::Message convert it to a Perl unicode string which the rest of
930     the program mishandles.  Closes:#738536.
931
932   Minor improvements:
933   * Include canonicalised suite name in signed tag message.
934   * Mention cross-version dgit rpush incompatibility in manpage.
935   * Check for rpush protocol version incompatibility and crash early
936     if incompatible.
937   * New script tests/using-intree for running tests on the source tree.
938   * Do not spew diff output to terminal (by default).  Print sensible
939     message instead.  Closes:#736526.
940   * Print better message for lack of configuration settings.
941   * Document that dgit rpush needs gnupg and your public key on the build
942     host.  Closes:#736529.
943   * Fix a manpage reference to `--dget=' where `--dgit=' was intended.
944   * Provide t-archive-process-incoming and t-archive-query subroutines for
945     regression test scripts to use.
946   * Print better message for unknown operations.
947   * Provide `dgit clean'.  Closes:#736527.
948   * When cloning, set up a remote `vcs-git' from the package's Vcs-Git
949     (and put an appropriate caveat in the manpage).  Closes:#740687.
950     Closes:#740721.
951   * Improve error message for .dsc having already been signed (iff
952     using libdpkg-perl 1.17.x).  Closes:#731635.
953   * Improve error message for .dsc parsing failures more generally.
954   * Better reporting of child exit statuses (esp. deaths due to signals).
955   * In rpush, on protocol error talking to build host, check if the
956     subprocess died and report differently if so.  Closes:#736528.
957   * Fixed a manpage typo.
958   * When tests invoke dgit, use --dgit= so that subprocesses use our
959     dgit rather than system one.
960   * Add a test for dgit rpush.
961
962   Major new feature, currently stalled awaiting server infrastructure:
963   * dgit-repos-server: New program for receiving signed-tag-based
964     pushes.  Corresponding support in dgit itself, but not currently
965     used by default for any distro.
966   * Bring forward push of the version tag ref so it happens alongside
967     the push of the suite branch ref.
968   * New git-check and git-create methods "true" which are no-ops.
969   * test-dummy-drs `distro': for testing dgit and dgit-repos-server.
970
971  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 19 Aug 2014 11:24:02 +0100
972
973 dgit (0.21) unstable; urgency=medium
974
975   Bugfixes relating to unclean trees:
976   * Run a clean (of the specified type) before any build operation; do
977     this with `dpkg-buildpackage -T' clean if necessary, so -wd now works
978     with all the building methods.
979   * Refuse to do quilt fixup (explicitly requested, or as a result of
980     build) if the tree contains ignored files.  Closes:#731632.
981
982   Error message improvements:
983   * Use failedcmd to report errors when ssh psql fails.  Closes:#734281.
984   * failedcmd prints $us, not $_[0] - ie, dgit doesn't pretend,
985     in the error message, to be its child.
986   * Do not report the (irrelevant) $? when madison parsing fails.
987
988   Better workflow flexibility:
989   * Provide --build-products-dir option (and corresponding semantics
990     for -C) to specify where to find the files to upload.  Closes:#731633.
991
992   Support for Debian backports suites:
993   * New quirks infrastructure in configuration and internals,
994     for suites (or perhaps distros) which are a bit like others.
995   * Use correct default archive location.
996   * Compute "-v" option default value correctly.
997   * Closes:#733954.
998
999   Packaging improvement:
1000   * Add `Testsuite: autopkgtest' to debian/control.  (This will only have
1001     the right effect with recent enought dpkg; it will generate a harmless
1002     warning with earlier versions of dpkg.)
1003
1004  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 19 Jan 2014 02:14:25 +0000
1005
1006 dgit (0.20) unstable; urgency=high
1007
1008   * Use newest (not oldest) version currently in suite when calculating
1009     what value to use for -v<version> by default.  Closes:#732781.
1010
1011  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 21 Dec 2013 19:13:56 +0000
1012
1013 dgit (0.19) unstable; urgency=low
1014
1015   Testing facilities:
1016   * Provide "test-dummy" distro with "dummycat" access method.
1017   * Provide a selection of autopkgtest (DEP-8) tests.
1018
1019  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 27 Nov 2013 18:27:17 +0000
1020
1021 dgit (0.18.2) unstable; urgency=high
1022
1023   Bump archive upload urgency to high.
1024
1025  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 24 Nov 2013 17:42:57 +0000
1026 dgit (0.18.1) unstable; urgency=low
1027
1028   Bugfixes:
1029   * sshpsql archive query method passes LANG=C.  Closes:#729788.
1030   * Subcommand program or argument options containing hyphens work.
1031     (Eg, --dpkg-buildpackage:blah was previously incorrectly rejected.)
1032
1033   Packaging fixes:
1034   * Depend on dput.
1035   * Depend on curl | wget, as dget needs one of those.  (The dput package,
1036     which contains dget, doesn't require them because dput itself works
1037     without.)
1038
1039  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 24 Nov 2013 17:36:03 +0000
1040
1041 dgit (0.18) unstable; urgency=low
1042
1043   Major new feature:
1044   * Remote push (dgit rpush), a la debsign -r.  Closes:#721185.
1045
1046   Improved behaviours:
1047   * dgit build, by default, uses the archive to find out what the correct
1048     -v<version> option is to pass to dpkg-genchanges.  Closes:#727200.
1049   * Abolish the sshdakls method and replace it with sshpsql: that is, ssh
1050     (to coccia, by default) and run sql commands on the ftpmaster
1051     database.  This is faster and has fewer bugs but is vulnerable to db
1052     schema changes.  Closes:#726955.  Closes:#720170.  Closes:#720176.
1053   * When generating git tags, quote the (uncanonicalised) changelog's
1054     Distribution field as the suite.
1055   * Command execution reports from --dry-run go to stderr.
1056
1057   Other new features:
1058   * Support --gpg=... to provide a replacement command for gpg.
1059   * Support --ssh=... and --ssh:... to affect how we run ssh.
1060
1061   Bugfixes:
1062   * When using sbuild, pass the arguments to mergechanges in the right
1063     order so that we use the correct Description (the _source one,
1064     not the one from sbuild which didn't get e.g. -v<version>).
1065   * push actually takes an optional suite, like it says in the synopsis.
1066     Closes:#727125.
1067   * Fix dgit --damp-run sbuild to actually work.
1068   * Fix the "shellquote" internal subroutine.  The bugs in it ought not to
1069     have caused any real trouble in previous versions of dgit.
1070
1071   Documentation and message fixes:
1072   * manpage: Clarify comments about orig tarballs.  Closes: #723605.
1073   * manpage: Remove comment in BUGS about lack of policy docs
1074     for Dgit field, which is specified now.  Closes:#720201.
1075   * manpage: Make discussion of --existing-package less scary.  The
1076     default archive access method no longer needs it.  Closes:#720171.
1077   * Mention "git merge", not "git-merge", in helpful message.
1078     Closes:#725632.
1079
1080   Internal and debugging improvements:
1081   * Report chdir actions in debugging output.
1082   * Improvements to implementation of --dry-run and --damp-run.
1083   * Some code motion and cleanups.
1084
1085   Note: changelog entries for the following versions, which were uploaded
1086   to Debian experimental, have been collapsed into this single entry:
1087     0.18~experimental2 0.18~experimental1
1088     0.17~experimental7 0.17~experimental6 0.17~experimental5
1089     0.17~experimental4 0.17~experimental3 0.17~experimental2
1090     0.17~experimental1
1091     0.16~experimental3 0.16~experimental2 0.16~experimental1
1092   We do describe here all the changes since 0.17.
1093
1094  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 09 Nov 2013 10:12:13 +0000
1095
1096 dgit (0.17) unstable; urgency=high
1097
1098   * Do not grobble around in .git/refs/; instead, use git-show-ref.
1099     This avoids breaking when git makes packed refs.  Closes:728893.
1100   * Clarify error message for missing refs/remotes/dgit/dgit/<suite>.
1101
1102  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 07 Nov 2013 00:02:47 +0000
1103
1104 dgit (0.16) unstable; urgency=high
1105
1106   * Format `(3.0) quilt' fixup does not mind extraneous other files
1107     in the build tree (e.g., build products and logs).  Closes: #727053.
1108   * Set autoflush on stdout, to get better ordering of debugging
1109     etc. output when stdout is redirected.
1110   * New --damp-run mode, for more convenient and fuller testing etc.
1111
1112  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Tue, 22 Oct 2013 13:06:54 +0100
1113
1114 dgit (0.15) unstable; urgency=low
1115
1116   * Better handling of packages pushed using dgit and stuck in NEW.
1117     (And, use of `--new' is not needed with fetch.)  Closes: #722199.
1118   * More comprehensive warnings in many cases of archive skew.
1119   * Implement `dgit help' as well as `--help'.  Closes: #721661.
1120   * Provide `dgit version' and `--version'.  Closes: #721654.
1121
1122  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 12 Sep 2013 00:14:05 +0100
1123
1124 dgit (0.14) unstable; urgency=low
1125
1126   * Include package name in tag message.
1127   * Create directory .git/dgit when needed during build.  Closes: #721428.
1128   * Add Vcs-Git and Vcs-Browser [Richard Hartmann].  Closes: #721404.
1129     These fields refer to the development branch, "master", on alioth,
1130     not to the dgit suite refs (which are not accessible to git clone).
1131
1132  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 01 Sep 2013 18:30:44 +0100
1133
1134 dgit (0.13) unstable; urgency=low
1135
1136   * Reuse already-downloaded .orig files after checking their hashes.
1137     Closes: #720526.  (This introduces a dependency on Digest::SHA.)
1138   * Do not always pointlessly fetch the .dsc twice.  (That code was
1139     erroneously duplicated during editing, apparently.)
1140   * Remove DGET_UNPACK from the environment in case the user has set it.
1141   * Remove scary warning from Description.
1142   * When uploading to Debian, tell dput to upload to "ftp-master".  This
1143     avoids problems with derivatives whose dput has a different default.
1144     Closes: #720958.
1145   * Fix some bugs in dgit fetch --dry-run which made dgit push
1146     --dry-run often not work at all.
1147   * Update the local tracking branch for the dgit remote, when pushing.
1148     Closes: #720956.
1149   * Fix references in manpage to old Vcs-Dgit-Master field name.
1150   * Reorganise manpage sections to be in a more conventional order.
1151   * New manpage section on FILES IN THE SOURCE PACKAGE BUT NOT IN GIT.
1152     Closes: #721186.
1153
1154  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 29 Aug 2013 00:27:23 +0100
1155
1156 dgit (0.12) unstable; urgency=low
1157
1158   * Cope with packages with epoch.  Closes: #720897.
1159   * Improve error message for non-fast-forward push.  Closes: #720896.
1160   * New --ignore-dirty option to skip noncritical check.  Closes: #720895.
1161   * New --no-quilt-fixup option to suppress quilt fixup.  RTFM.
1162   * Add Closes line for #720595 to changelog entry for 0.11.
1163
1164  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Mon, 26 Aug 2013 16:50:39 +0100
1165
1166 dgit (0.11) unstable; urgency=low
1167
1168   * Location of dgit-repos is now git.debian.org:/git/dgit-repos/repos.
1169     Closes: #720525.  The rename on the server side will break older
1170     versions of dgit.
1171   * Fix bug which would make quilt patch fixup fail if git status
1172     produced "M" lines.
1173   * Autogenerated quilt patch fixup patch Description contains several
1174     recent git commits, rather than implying that the patch corresponds
1175     exactly to the top git commit.
1176   * Use "ftp.debian.org" not "http.debian.net" as the default Debian
1177     archive.  (http.debian.net tends to defeat certain kinds of cacheing,
1178     and can also have more skew.)
1179   * dgit build uses dpkg-buildpackage; there is a dgit git-build
1180     for using git-buildpackage.  Closes: #720595.
1181   * Better error message for use of UNRELEASED suite.  Closes: #720523.
1182   * Do not canonicalise suite more than once.  Related to: #720526.
1183   * Fix a badly open-coded copy of check_not_dirty.  Closes: #720524.
1184   * Fix some bugs in building (eg build-source would fail to do the quilt
1185     fixup; the --clean check in build was wrong).
1186   * Add missing dependency on realpath.
1187   * git-build (git-buildpackage wrapper) does not bother canonicalising
1188     the suite if --git-ignore-branch is used.
1189
1190  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 25 Aug 2013 17:00:43 +0100
1191
1192 dgit (0.10) unstable; urgency=low
1193
1194   * Create .pc/applied-patches - do not empty it (!)
1195
1196  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sun, 25 Aug 2013 00:51:50 +0100
1197
1198 dgit (0.9) unstable; urgency=low
1199
1200   * New cleaning arrangements.
1201   * More comprehensive workaround for `3.0 (quilt)'.
1202   * In push, double-check the .changes against the changelog.
1203   * Better error when source package contains .git.  Closes: #720555.
1204   * Change our .dsc field name to `Dgit'.  Relevant to #720201.
1205   * Fix bug handling our synthetic merges when we see them in
1206     the remote suite branch.
1207   * `3.0 (quilt)' fixup creates .pc/applied-patches since modern
1208     dpkg-source creates it even though old ones didn't always.
1209
1210  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 24 Aug 2013 18:49:02 +0100
1211
1212 dgit (0.8) unstable; urgency=low
1213
1214   * Fix comparison of archive's .dsc's hash and git branch head
1215     to DTRT.
1216   * When creating repos in dgit-repos (using the ssh-cmd method),
1217     copy _template rather than using mkdir and git init.
1218     Closes: #720522.
1219   * In push, do git fetch as well as archive fetch, or archive
1220     fetch can fail.
1221
1222  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 23 Aug 2013 12:24:09 +0100
1223
1224 dgit (0.7) unstable; urgency=low
1225
1226   * If dak ls, or rmadison, reports multiple versions, look for them
1227     all, and pick the newest .dsc that doesn't give 404.
1228   * Manpage formatting fix.
1229   * Name the local remote tracking branch remotes/dgit/dgit/<suite>
1230     so that we avoid a warning from git about ambiguous branch names.
1231
1232  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 18:29:10 +0100
1233
1234 dgit (0.6) unstable; urgency=low
1235
1236   * Allow fetching when archive has out-of-date git hash in .dsc.
1237     Closes: #720490.
1238
1239  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 16:02:10 +0100
1240
1241 dgit (0.5) unstable; urgency=low
1242
1243   * Upload to unstable, as this version mostly works.  (All the RC
1244     bugs of which I'm aware are now properly represented in the BTS.)
1245
1246  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 15:38:00 +0100
1247
1248 dgit (0.4~pre2) experimental; urgency=low
1249
1250   * Mangle debian/<version> tags the way git-buildpackage does
1251     (as of git-buildpackage 0.5.5, 3c6bbd0f4992f8da).
1252   * Support dgit-distro.<distro>.keyid config option.
1253   * Revert change to ssh to alioth CNAME, as the recommended CNAME
1254     is to something with no write access to the fs and the new CNAME
1255     has not yet been set up.  This reintroduces #720172 :-/.
1256
1257  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 15:31:17 +0100
1258
1259 dgit (0.4~pre1) experimental; urgency=low
1260
1261   * Use dgit.debian.net vhost on alioth.  Closes:#720172.
1262   * Usage message.  Closes:#720085.
1263   * Provide "dgit sbuild".
1264   * Assorted manpage fixes and improvements.
1265   * Fail if a required config item is missing.
1266   * Much better error messages.
1267   * Better error checking when parsing RFC822-style control data.
1268   * Better checking that the supplied .dsc and debian/changes correspond.
1269   * Ordering improvement in push: don't add dsc field until git push done.
1270   * New --distro option (helps with unknown suites).
1271   * Bugfixes.
1272
1273  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 22 Aug 2013 13:36:44 +0100
1274
1275 dgit (0.3) experimental; urgency=low
1276
1277   * New version which appears to be able to sort of work at least
1278     some of the time.
1279
1280  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Sat, 17 Aug 2013 09:18:04 +0100
1281
1282 dgit (0.2) experimental; urgency=low
1283
1284   * New version which might actually work but probably won't.
1285
1286  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Fri, 16 Aug 2013 16:52:17 +0100
1287
1288 dgit (0.1) experimental; urgency=low
1289
1290   * Initial experimental (partial) version.
1291
1292  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Thu, 15 Aug 2013 12:09:01 +0100
1293