-
dgit (3.10) unstable; urgency=medium
Bugfixes:
* dgit: Copy several user.* settings from main tree git local config
to dgit private workarea. Closes:#853085.
* dgit: Strip initial newline from Changes line from dpkg-parsechangelog
so as to avoid blank line in commit messages. Closes:#853093.
* dgit: Do not fail when run with detached HEAD. Closes:#853022.
* dgit: Be much better about commas in maintainer changelog names.
Closes:#852661.
Test suite:
* quilt-useremail: New test for user config copying (#853085).
* lib-import-chk: Test that commits have smae authorship as appears in
the changelog. (Or, at least, the same authorship set.)
* import-maintmangle: New test for changelog Maintainer mangling.
Documentation:
* Fix typos. Closes:#853125. [Nicholas D Steeves]
-- Ian Jackson <email address hidden> Mon, 06 Feb 2017 17:49:39 +0000
-
dgit (3.9) unstable; urgency=medium
Improvements:
* dgit --overwrite: Check that the overwritten version's changelog entry
is not UNRELEASED. This could easily happen if this release was being
made from a git branch which predates the previous package upload.
Documentation:
* dgit-maint-merge(7): Get git clone url right. Closes:#852609.
* dgit-maint-merge(7): Quote sample clone commands. Closes:#852615.
Test suite:
* overwrite-chkclog: test UNRELEASED handling.
-- Ian Jackson <email address hidden> Wed, 25 Jan 2017 16:21:53 +0000
-
dgit (3.8) unstable; urgency=medium
Bugfixes:
* Make dgit-setup-* work in default distro.
Test suite:
* defdistro-setup: Test that setup-* functions distro selection works.
-- Ian Jackson <email address hidden> Mon, 23 Jan 2017 16:21:30 +0000
-
dgit (3.7) unstable; urgency=medium
Bugfixes:
* Fix clone-dgit-repos-server and print-dgit-repos-server-print-url.
Closes:#851906.
Documentation:
* dgit-maint-merge(7): Explain when workflow is unsuitable
(Closes:#852090) and improve the patch-header (Closes:#851897.)
Internal changes:
* New %.view target: `make dgit-maint-merge.7.view' runs `man -l ...'
Test suite:
* defdistro-dsd-clone-drs: New test which would have detected
#851906 (and hopefully #850521).
-- Ian Jackson <email address hidden> Sun, 22 Jan 2017 17:30:24 +0000
-
dgit (3.6) unstable; urgency=medium
Bugfixes:
* Actually use the url from a Dgit .dsc field naming an unknown distro.
Closes:#851728.
* Add dummy implementation of file_in_archive_aptget copied from
file_in_archive_dummycat. Re:#851697. [ Peter Green ]
Minor improvements:
* Use `confess' to print a stack trace in a couple of internal error
rcases.
Infrastructure:
* Properly honour NOCOMMITCHECK policy hook exit status.
Closes:#851800.
* Do not reject commits with no author/committer name (but still insist
on email address and date). Peter Green reports that eg
71e128629ec786f3 in upstream xen.git is such a commit (and is accepted
by github). Closes:#851716.
Test suite:
* downstream-gitless: Test import of .dsc from unknown distro.
* downstream-gitless: Test import of .dsc with unsafe url.
-- Ian Jackson <email address hidden> Thu, 19 Jan 2017 01:15:03 +0000
-
dgit (3.5) unstable; urgency=medium
Bugfixes:
* gitattributes: Defuse gitattributes in private working area even if we
don't do it in the user's tree (because of user configuration).
* gitattributes: When cloning, do not print spurious warning about
actually-defused gitattributes. Closes:#851624.
* gitattributes: Improve comment left in .git/info/attributes.
Test suite:
* gitattributes: Many improvements to test case.
-- Ian Jackson <email address hidden> Tue, 17 Jan 2017 22:36:01 +0000
-
dgit (3.4) unstable; urgency=low
Test suite:
* drs-push-rejects: Set origin's url to an ad-hoc expression
which produces the right ext:: rune, as dgit would.
Closes:#851580.
* Replace references to /home/ian in various worktrees with
references to /nonexistent, to catch inadvertant accesses.
-- Ian Jackson <email address hidden> Mon, 16 Jan 2017 17:27:35 +0000
-
dgit (3.3) unstable; urgency=medium
Behavioural changes to work around gitattributes file transformations:
* Suppress file-transforming gitattributes in private work areas.
* Configure suppression in user's trees in dgit clone and setup-new-tree.
* Provide dgit setup-gitattributes to do this explicitly.
* Documentation.
Bugfixes:
* dgit: Remove a leftover debugging print.
* dgit: Set default dsc import distro when there is no Dgit field.
* dgit: Set default dsc import distro when suppressing Dgit field.
* dgit: Option parsing: Fix undefined $suite in some import-dsc.
Closes:#851213.
Packaging:
* Remove redundant use of List::Util qw(any). Closes:#851280.
* Remove redundant Recommends on libtext-iconv-perl.
Test suite:
* Move default dsc distro config setting to lib. We need this
for the .dscs we have in tests/pkg-srcs/.
* defdistro-import-dsc: Drop this test.
* protocol-compat: check that we use the right distro
information when importing.
* Internal change: fix handling of nonempty distro=
* gitattributes: New test for .gitattributes handling.
-- Ian Jackson <email address hidden> Mon, 16 Jan 2017 10:03:08 +0000
-
dgit (3.2) unstable; urgency=medium
Bugfixes:
* dgit: Do not execute END blocks in children. So far symptoms of this
bug seem to be limited to duplicated error messages but I have not
done a thorough analysis. Closes:#850052.
* dgit-infrastructure: dgit-repos-policy-debian: Remirror a package when
it becomes public (ie, make the repo available much more promptly when
the package passes NEW). Closes:#849789.
* dgit: Fix a warning message about ref (mainly, tag) updates.
Documentation:
* dgit-maint-merge(7): Use git-deborig(1).
[Sean Whitton] Closes:#850953.
* dgit-user(7): Fix some typos.
Internals:
* Fix a typo in a comment.
Test suite:
* infra: mirroring and policy hooks: Improve some debugging output.
* infra: mirror-private: test that package becomes public. (#849789)
-- Ian Jackson <email address hidden> Thu, 12 Jan 2017 02:11:34 +0000
-
dgit (3.1) unstable; urgency=medium
Bugfixes:
* dgit import-dsc: Do not crash with undefined $isuite. Closes:#850781.
* dgit build: Do not sometimes crash with undefined $isuite.
* dgit: Do not nedlessly re-fetch the rewrite map.
* dgit: After downloading .debian.* files, save them in `..', too
(ie do this not just for .origs).
* dgit: When fetching, refetch files with hash mismatches (and save them
as `...,fetch'), so we can distinguish them from any built locally.
Closes:#850824.
Test suite:
* Add test for import-dsc with default distro. (Detects #850781.)
Administrivia:
* Fix a dgit 3.0 changelog bullet referring to refs/dgit-fetch/DISTRO.
-- Ian Jackson <email address hidden> Tue, 10 Jan 2017 17:50:27 +0000
-
dgit (3.0) unstable; urgency=medium
Protocol change:
* Dgit: field now records the nominal distro name, and a hint
for a tag and url where the git objects (including any rewrite
map) can be fetched.
* Use this information, where provided. Closes:#850431.
Bugfixes:
* dgit config handling: Honour command-line and context-provided
suite and distro more reliably and consistently.
* Parsing of extended Dgit fields by import-dsc was broken;
and is now fixed even for more-extended ones.
* dgit clone-dgit-repos-server uses readonly access.
Closes:#850521.
* fetch and pull ignore the changelog suite when it is UNRELEASED.
Closes:#848646.
* dgit-badcommit-fixup: Do not investigate symrefs. Closes:#850547.
Minor new feature:
* distro alias facility in config space. (Primarily for testing.)
* Undocumented --config-lookup-explode= feature. (For testing.)
* Provide `dgit print-dgit-repos-server-source-url'. Re:#850521.
* Honour dgit-distro.*.default-suite and dgit.default.default-suite.
Other improvements:
* Improve debugging output a bit.
* Use refs/dgit-fetch/DISTRO rather than refs/dgit-fetch/DISTRO,
which leads to less duplication and so less clutter.
* Enforce a reasonable syntax for nominal distro names.
* When generating orig+debian/patches view, copy debian/ from
HEAD. This makes less noise in diffs. Closes:#850095.
Docuentation [Sean Whitton and Ian Jackson]:
* dgit-sponsorship(7): Use --no-dep14tag. Closes:#849105.
* dgit-maint-merge(7): Use debian/source/patch-header. Closes:849120.
* dgit(7): Updated `trouble' section to suggest having dpkg-source
delete the autotools output (with a patch if necessary).
* dgit(1): Several minor updates and fixes. Closes:#850519.
Test suite:
* Internal improvements.
* badcommit-rewrite: Fix operation using installed version of fixup.
* Arrange to pass --debug-quick-random to gpg-agent.
* Strip block count out of find -ls output - it is unstable!
* gbp-orig: Add a missing -m, without which git would run an
editor if stdout was a tty (!)
* Add t-stunt-parsechangelog to a few tests which were missing it.
* Tests for the new protocol feature.
* Fail tests if we look up any configuration relating to Debian.
-- Ian Jackson <email address hidden> Mon, 09 Jan 2017 16:43:10 +0000
-
dgit (2.16.2) unstable; urgency=low
dgit-badcommit-fixup:
* Fix crash when running for 2nd time in bare repo.
* In --check mode, exit with status 2 if things are not fine.
-- Ian Jackson <email address hidden> Sat, 07 Jan 2017 13:31:50 +0000
-
dgit (2.16) unstable; urgency=low
Dealing with fallout from #849041:
* Provide dgit-badcommit-fixup history-rewriting script.
* New rewrite map feature, which allows dgit git server to adjust
clients' interpretation of Dgit fields, so that history-rewriting is
effective. (Feature is only partially implemented right now -
enough to dig current Debian users out of the hole.) Re:#850431.
Test suite:
* New test case for history-rewriting.
* Change `local foo=$(bar)' idiom to `local foo; foo=$(bar)' since
the former does not trip set -e even if bar fails :-(.
-- Ian Jackson <email address hidden> Fri, 06 Jan 2017 20:46:30 +0000
-
dgit (2.14) unstable; urgency=critical
CRITICAL BUGFIX:
* Do not generate bogus commits with --overwrite or import-dsc.
Closes:#849041.
Test suite:
* Run a lot of git-fsck.
-- Ian Jackson <email address hidden> Wed, 04 Jan 2017 22:52:55 +0000
-
dgit (2.13) unstable; urgency=high
Changed behaviour:
* quilt fixup: Permit creation of patches which delete files, by psssing
--include-removal to dpkg-source, and tolerating it when we do our
quilt fixup analysis. dpkg-source has supported this since at least
stretch. Closes:#848901.
Error messages:
* Improve "cannot represent change" message: print the git old and new
modes too.
Bugfix:
* Import: Switch back to unpa branch on patch import iterations.
In particular, do not fail utterly if dpkg-source and gbp disagree.
Closes:#848843.
Documentation [Sean Whitton]:
* dgit-maint-gbp(7): Remove reference to closed bug. Closes:#848725.
* dgit-sponsorship(7): Update in light of fixed #844129. Closes:#848789.
-- Ian Jackson <email address hidden> Wed, 21 Dec 2016 01:32:41 +0000
-
dgit (2.12) unstable; urgency=high
Changed behaviours:
* By default, generate a DEP-14 tag as well as a dgit archive/*
tag, even in non-split-view quilt modes. Closes:#844129.
* Version tags mangling: Protect dots, as per proposed update to DEP-14.
Documentation:
* dgit-maint-merge(7): Explain how to change to this workflow
from an existing git workflow. [Sean Whitton] Closes:#847807.
* dgit-maint-native(7): Clarify that we mean native source format.
[Phil Hands] Closes:#847987.
Error messages:
* Slightly better message when .dsc not found. Apropos of #844128.
* Give better advice if .dsc/.changes signing fails: if no changes
are needed to the package, user may indeed just debsign and dput.
Closes:#844131.
* Produce better error reporting when absurd git wrapper fails
on a patch during .dsc import. Apropos of #848391.
Bugfixes:
* If we cannot hardlink origs into our extraction area, use symlinks
instead. Closes:#844570.
* Suppress some leftover debugging output from import-dsc.
Closes:#847658.
* Do not fail when cloning a package containing dangling symlinks.
Closes:#848512.
* Do not fail to import a .dsc containing patches which patch files
multiple times, due to #848611. Closes:#848391.
* Do not fail to import a .dsc containing patches to .git/ (!)
* infra: dgit-repos-policy-debian which broke due to recent git setting
GIT_ALTERNATE_OBJECT_DIRECTORIES in the pre-receive-hook.
(fixes test suite regression in stretch).
Test suite:
* Provide and use stunt lintian and debuild, to avoid lintian
complaining about our stupid test packages.
(fixes test suite regression in stretch).
-- Ian Jackson <email address hidden> Mon, 19 Dec 2016 17:35:18 +0000
-
dgit (2.11) unstable; urgency=medium
Documentation:
* dgit-user(7): Better explanation of combined suites (comma syntax).
Thanks to Sean Whitton for review and suggestions.
* dgit(1), dgit(7): Better reference docs for combined suites.
* dgit(1): Improve formatting of rpush section.
Test suite:
* Replace make in Test-Depends with build-essential. Most of the tests
do in fact run dpkg-buildpackage which bombs out if build-essential is
missing.
-- Ian Jackson <email address hidden> Tue, 08 Nov 2016 22:41:29 +0000
-
dgit (2.10) unstable; urgency=medium
New features:
* Support the Debian *-security suites.
* New comma-separated multiple-suite merging facility (readonly),
so that users can easily track "jessie, or jessie-security".
* dgit-user(7): Suggest `dgit clone P jessie,-security'.
Bugfixes:
* Cope when an orig tarball is a tarbomb. Ie, if it contains
other than one single directory toplevel. Closes:#843422.
* Actually honour the branch name, if we are on dgit branch, to specify
the suite, as documented in the manpage.
* When cloning a distro which has no git server, correctly leave
the user on the local dgit branch, not on `master'.
* Fix an unconditional print that was supposed to be a printdebug:
origs <blah>.orig.tar.gz f.same=1 #f._differ=-1
* Print a slightly better message if .git found in orig tarball(s).
Test suite:
* Test suite: Add fakeroot and make to Test-Depends. These aren't
necessarily pulled in by anything else. (dpkg-dev Recommends
build-essential. But we don't actually need build-essential.)
-- Ian Jackson <email address hidden> Tue, 08 Nov 2016 01:08:51 +0000
-
dgit (2.9) unstable; urgency=medium
New features:
* During push, automatically calculate which .origs are required,
so user never needs [--ch:]-sa or [--ch:]-sd. Closes:#829116.
* New import-dsc feature.
* New option --dgit-view-save= for split view quilt modes.
In particular, means that the output of a split view quilt-fixup
is left somewhere useful.
* dgit clone: Set timestamps in cloned tree to a single unified time.
This makes it less likely that the user will trip over any
timestamp-dependent FTBFS bugs (eg #842452).
* Support dgit --delayed= push (with a warning in the manpage
about possible skew).
* dgit gbp-build will arrange to let gbp buildpackage generate
.orig tarballs if it seems applicable. Closes:#841094.
Documentation improvements:
* dgit-*(7). Many new tutorial manpages, several written and many
improved by Sean Whitton.
* dgit(7): Substantial updates, including documenting split view.
* dgit(1): Better cross-references.
* dgit(1): Remove obsolete workflow information.
* dgit(1): Improved BUGS section.
* Fix changelog entry for SIGPIPE to correctly mention
Closes:#841090.
Bugfixes:
* Split brain mode: Fix --new. Closes:#842577.
* Properly look for .origs etc. in .., fetching them less often.
Closes:#842386.
* Reject `dgit pull' in split view quilt modes, to avoid
creating unfortunate wreckage on non-dgit-view branches.
Closes:#842608.
* Cope when cloning suite which doesn't receive uploads,
like testing. Closes:#842621.
* Properly fetch all archive dgit view tags, as we intended.
* Actually provide a -p (--package=) option (!)
Test suite fixes:
* Test suite: Explicitly configure user.name and user.email, so
that tests work when environment doesn't have defaults.
Closes:#842279 (I hope).
-- Ian Jackson <email address hidden> Mon, 31 Oct 2016 12:47:18 +0000
-
dgit (1.4) unstable; urgency=high
Bugfixes:
* Unbreak --dry-run (`exiting subroutine via next', broken in
ac221d67, bug released in 0.22).
* When running git-add in commit-quilty-patch, properly escape
filenames (which git-add treats as glob patterns).
* When running git-add in commit-quilty-patch, use -f and sometimes -A,
so as to avoid being broken by any .gitignore, etc.
* When quilt linearisation fails, print the right information in
the error message. (This has been broken forever.)
* Cope properly with `3.0 (quilt)' with single-debian-patch.
Closes:#796016. (Still does not work with wheezy's dpkg-source, so
no test case yet.)
* With dgit sbuild, pass our -d before the user's arguments, so that
the user can override it. Closes:#796019.
New checks and improved behaviours:
* Detect and reject git trees containing debian/source/local-options
or debian/source/local-patch-header.
* In --dry-run mode, _do_ actually run dpkg-source --commit so that we
actually do construct the quilt fixup commit; instead, honour
--dry-run by avoiding pulling it back to your HEAD.
* quilt-fixup checks that the git tree is clean, as for build-prep.
Documentation:
* In dgit(7), discuss binaries and documentation present in upstream but
removed by rules clean.
Test suite:
* Run quilt-fixup with -wgf in distropatches-reject,
so that we don't need build-depends.
-- Ian Jackson <email address hidden> Sat, 22 Aug 2015 15:31:02 +0100