chiark / gitweb /
dgit.git
5 years agogit-debrebase: wip
Ian Jackson [Wed, 14 Jun 2017 20:50:55 +0000 (21:50 +0100)]
git-debrebase: wip

5 years agogit-debrebase: wip rebase fixes
Ian Jackson [Mon, 5 Jun 2017 18:00:25 +0000 (19:00 +0100)]
git-debrebase: wip rebase fixes

5 years agogit-debrebase: wip found
Ian Jackson [Mon, 5 Jun 2017 17:28:56 +0000 (18:28 +0100)]
git-debrebase: wip found

5 years agogit-debrebase: pseudocode typo
Ian Jackson [Wed, 24 May 2017 17:26:09 +0000 (18:26 +0100)]
git-debrebase: pseudocode typo

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agogit-debrebase: wip, redoing origin handling
Ian Jackson [Sun, 14 May 2017 21:37:45 +0000 (22:37 +0100)]
git-debrebase: wip, redoing origin handling

5 years agogit-debrebase: wip import handling etc.
Ian Jackson [Sun, 14 May 2017 20:49:45 +0000 (21:49 +0100)]
git-debrebase: wip import handling etc.

5 years agogit-debrebase: fix README typo
Ian Jackson [Fri, 28 Apr 2017 19:56:34 +0000 (20:56 +0100)]
git-debrebase: fix README typo

5 years agogit-debrebase: git-debrebase fixes
Ian Jackson [Fri, 28 Apr 2017 19:52:43 +0000 (20:52 +0100)]
git-debrebase: git-debrebase fixes

5 years agogit-debrebase: git-debrebase fixes
Ian Jackson [Fri, 28 Apr 2017 19:34:50 +0000 (20:34 +0100)]
git-debrebase: git-debrebase fixes

5 years agogit-debrebase: git-debrebase fixes
Ian Jackson [Fri, 28 Apr 2017 19:30:55 +0000 (20:30 +0100)]
git-debrebase: git-debrebase fixes

5 years agogit-debrebase: sort out report, and walk, allegedly
Ian Jackson [Fri, 28 Apr 2017 17:47:41 +0000 (18:47 +0100)]
git-debrebase: sort out report, and walk, allegedly

5 years agogit-debrebase: abolish $pseudos_must_overwrite_this
Ian Jackson [Fri, 28 Apr 2017 16:43:17 +0000 (17:43 +0100)]
git-debrebase: abolish $pseudos_must_overwrite_this

5 years agogit-debrebase: wip pseudomerge handling
Ian Jackson [Fri, 28 Apr 2017 16:41:38 +0000 (17:41 +0100)]
git-debrebase: wip pseudomerge handling

5 years agogit-debrebase: wip found
Ian Jackson [Fri, 28 Apr 2017 13:13:37 +0000 (14:13 +0100)]
git-debrebase: wip found

5 years agogit-debrebase: wip
Ian Jackson [Wed, 5 Apr 2017 20:46:27 +0000 (21:46 +0100)]
git-debrebase: wip

5 years agogit-debrebase: abolish abbrev thing
Ian Jackson [Wed, 5 Apr 2017 17:20:03 +0000 (18:20 +0100)]
git-debrebase: abolish abbrev thing

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agogit-debrebase: found
Ian Jackson [Wed, 5 Apr 2017 17:14:24 +0000 (18:14 +0100)]
git-debrebase: found

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agogit-debrebase: README.git-debrebase: diagrams of how to handle imports
Ian Jackson [Fri, 31 Mar 2017 18:04:13 +0000 (19:04 +0100)]
git-debrebase: README.git-debrebase: diagrams of how to handle imports

5 years agogit-debrebase: README tidy up
Ian Jackson [Fri, 31 Mar 2017 17:33:06 +0000 (18:33 +0100)]
git-debrebase: README tidy up

5 years agogit-debrebase: README.git-debrebase: both emails
Ian Jackson [Fri, 31 Mar 2017 17:24:56 +0000 (18:24 +0100)]
git-debrebase: README.git-debrebase: both emails

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agogit-debrebase: wip: README
Ian Jackson [Fri, 31 Mar 2017 17:23:18 +0000 (18:23 +0100)]
git-debrebase: wip: README

5 years agogit-debrebase: wip
Ian Jackson [Fri, 31 Mar 2017 17:23:10 +0000 (18:23 +0100)]
git-debrebase: wip

5 years agogit-debrebase: wip, found
Ian Jackson [Fri, 31 Mar 2017 15:07:17 +0000 (16:07 +0100)]
git-debrebase: wip, found

5 years agogit-debrebase: wip, launder rm patches
Ian Jackson [Fri, 10 Mar 2017 18:03:47 +0000 (18:03 +0000)]
git-debrebase: wip, launder rm patches

5 years agogit-debrebase: wip gitattrs dealt with
Ian Jackson [Fri, 10 Mar 2017 17:51:08 +0000 (17:51 +0000)]
git-debrebase: wip gitattrs dealt with

5 years agogit-debrebase: remove an xxx
Ian Jackson [Fri, 10 Mar 2017 17:34:22 +0000 (17:34 +0000)]
git-debrebase: remove an xxx

5 years agogit-debrebase: wip
Ian Jackson [Fri, 10 Mar 2017 15:35:04 +0000 (15:35 +0000)]
git-debrebase: wip

5 years agogit-debrebase: wip comments
Ian Jackson [Fri, 10 Mar 2017 15:35:01 +0000 (15:35 +0000)]
git-debrebase: wip comments

5 years agogit-debrebase: wip notes
Ian Jackson [Fri, 10 Mar 2017 15:34:48 +0000 (15:34 +0000)]
git-debrebase: wip notes

5 years agogit-debrebase: wip notes
Ian Jackson [Wed, 22 Feb 2017 18:35:02 +0000 (18:35 +0000)]
git-debrebase: wip notes

5 years agogit-debrebase: capture breakwater tip
Ian Jackson [Thu, 9 Feb 2017 00:16:47 +0000 (00:16 +0000)]
git-debrebase: capture breakwater tip

5 years agogit-debrebase: avoid rewrite better
Ian Jackson [Thu, 9 Feb 2017 00:11:51 +0000 (00:11 +0000)]
git-debrebase: avoid rewrite better

5 years agogit-debrebase: avoid rewrite
Ian Jackson [Wed, 8 Feb 2017 23:59:44 +0000 (23:59 +0000)]
git-debrebase: avoid rewrite

5 years agogit-debrebase: WIP command line comments
Ian Jackson [Wed, 8 Feb 2017 23:33:06 +0000 (23:33 +0000)]
git-debrebase: WIP command line comments

5 years agogit-debrebase: WIP, new new-upstream
Ian Jackson [Mon, 6 Feb 2017 17:49:27 +0000 (17:49 +0000)]
git-debrebase: WIP, new new-upstream

5 years agogit-debrebase: git-debrebase WIP minimal executable ?
Ian Jackson [Sun, 5 Feb 2017 23:04:45 +0000 (23:04 +0000)]
git-debrebase: git-debrebase WIP minimal executable ?

5 years agogit-debrebase: WIP
Ian Jackson [Sun, 5 Feb 2017 21:39:29 +0000 (21:39 +0000)]
git-debrebase: WIP

5 years agogit-debrebase: WIP
Ian Jackson [Sat, 4 Feb 2017 14:27:00 +0000 (14:27 +0000)]
git-debrebase: WIP

5 years agogit-debrebase: WIP
Ian Jackson [Fri, 3 Feb 2017 21:48:13 +0000 (21:48 +0000)]
git-debrebase: WIP

5 years agogit-debrebase: WIP
Ian Jackson [Sun, 29 Jan 2017 21:59:35 +0000 (21:59 +0000)]
git-debrebase: WIP

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agogit-debrebase: WIP classification core done?
Ian Jackson [Sun, 29 Jan 2017 18:46:13 +0000 (18:46 +0000)]
git-debrebase: WIP classification core done?

5 years agogit-debrebase: WIP before reorgs?
Ian Jackson [Sat, 28 Jan 2017 08:57:08 +0000 (08:57 +0000)]
git-debrebase: WIP before reorgs?

5 years agogit-debrebase: Stub script to prove config handling works
Ian Jackson [Wed, 25 Jan 2017 21:25:11 +0000 (21:25 +0000)]
git-debrebase: Stub script to prove config handling works

Tested with
  PATH=$PWD:$PATH git -c wombat.foo.bar=23 -c wombat.foo.bar=37 debrebase

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit: provide $ffq_refprefix, for git-debrebase
Ian Jackson [Thu, 15 Feb 2018 13:54:03 +0000 (13:54 +0000)]
Dgit: provide $ffq_refprefix, for git-debrebase

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit: provide $git_null_obj
Ian Jackson [Thu, 15 Feb 2018 13:53:53 +0000 (13:53 +0000)]
Dgit: provide $git_null_obj

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agodgit: In quilt_fixup_multipatch, work around git checkout paths
Ian Jackson [Sat, 10 Feb 2018 14:14:03 +0000 (14:14 +0000)]
dgit: In quilt_fixup_multipatch, work around git checkout paths

git checkout paths does not delete files.
This is a hypothetical bug AFAIAA.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: When checking that the tree is clean, check the git index too.
Ian Jackson [Thu, 15 Feb 2018 18:49:17 +0000 (18:49 +0000)]
Dgit.pm: When checking that the tree is clean, check the git index too.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: break out git_check_unmodified from dgit
Ian Jackson [Thu, 15 Feb 2018 18:45:17 +0000 (18:45 +0000)]
Dgit.pm: break out git_check_unmodified from dgit

We (have to) use just "git" rather than @git, but this is OK I think.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm, dgit: Break $extra_orig_namepart_re out into Dgit.pm.
Ian Jackson [Mon, 22 Jan 2018 17:09:50 +0000 (17:09 +0000)]
Dgit.pm, dgit: Break $extra_orig_namepart_re out into Dgit.pm.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: "confess" when we die due to a warning, rather than symply dieing.
Ian Jackson [Sun, 22 Oct 2017 19:26:55 +0000 (20:26 +0100)]
Dgit.pm: "confess" when we die due to a warning, rather than symply dieing.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: Break out git_get_symref
Ian Jackson [Fri, 25 Aug 2017 19:57:41 +0000 (20:57 +0100)]
Dgit.pm: Break out git_get_symref

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: git_cat_file: Introduce $etype parameter
Ian Jackson [Sun, 9 Jul 2017 13:12:47 +0000 (14:12 +0100)]
Dgit.pm: git_cat_file: Introduce $etype parameter

No functional change for existing callers.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agoDgit.pm: Move $playground global to dgit.
Ian Jackson [Thu, 24 Aug 2017 14:41:49 +0000 (15:41 +0100)]
Dgit.pm: Move $playground global to dgit.

It makes the interface to the playground functions confusing.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agochangelog: start 4.5~
Ian Jackson [Mon, 23 Apr 2018 12:28:39 +0000 (13:28 +0100)]
changelog: start 4.5~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agofinalise 4.4 archive/debian/4.4 debian/4.4
Ian Jackson [Mon, 23 Apr 2018 12:19:11 +0000 (13:19 +0100)]
finalise 4.4

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
5 years agotest suite: bugfix: Use full key hash rather than short keyid.
Ian Jackson [Mon, 23 Apr 2018 12:06:37 +0000 (13:06 +0100)]
test suite: bugfix: Use full key hash rather than short keyid.

Closes:#896653.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: start 4.4
Ian Jackson [Thu, 25 Jan 2018 00:41:11 +0000 (00:41 +0000)]
changelog: start 4.4

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: finalise 4.3 archive/debian/4.3 debian/4.3
Ian Jackson [Thu, 25 Jan 2018 00:34:08 +0000 (00:34 +0000)]
changelog: finalise 4.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: mention #887850 fix
Ian Jackson [Wed, 24 Jan 2018 23:49:44 +0000 (23:49 +0000)]
changelog: mention #887850 fix

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit-maint-merge(7): debian/source/patch-header not in format 1.0
Sean Whitton [Sat, 20 Jan 2018 16:32:56 +0000 (09:32 -0700)]
dgit-maint-merge(7): debian/source/patch-header not in format 1.0

Suggested-by: Matthew Vernon <matthew@debian.org>
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
6 years agochangelog: mention #884646
Ian Jackson [Wed, 24 Jan 2018 23:47:12 +0000 (23:47 +0000)]
changelog: mention #884646

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit(7): Discuss git-unrepresentable properties of source trees.
Ian Jackson [Wed, 24 Jan 2018 23:46:33 +0000 (23:46 +0000)]
dgit(7): Discuss git-unrepresentable properties of source trees.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit(7): Discuss file executability.
Ian Jackson [Wed, 24 Jan 2018 23:45:57 +0000 (23:45 +0000)]
dgit(7): Discuss file executability.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: archive-api-query: Avoid crashing due to lack of $isuite
Ian Jackson [Sun, 7 Jan 2018 23:10:04 +0000 (23:10 +0000)]
dgit: archive-api-query: Avoid crashing due to lack of $isuite

Otherwise:

  Use of uninitialized value $isuite in concatenation (.) or string at dgit line 705.

This breaks the infrastructure.  Closes:#886592.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: start 4.3
Ian Jackson [Sun, 7 Jan 2018 21:53:31 +0000 (21:53 +0000)]
changelog: start 4.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: finalise 4.2 archive/debian/4.2 debian/4.2
Ian Jackson [Sun, 7 Jan 2018 21:49:55 +0000 (21:49 +0000)]
changelog: finalise 4.2

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: Set distribution to unstable
Sean Whitton [Sun, 31 Dec 2017 21:07:48 +0000 (21:07 +0000)]
changelog: Set distribution to unstable

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
6 years agochangelog: Document using dpkg-source to build source packages
Sean Whitton [Thu, 7 Dec 2017 18:04:04 +0000 (11:04 -0700)]
changelog: Document using dpkg-source to build source packages

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: Entry for push-source subcommand
Sean Whitton [Mon, 13 Feb 2017 14:14:26 +0000 (07:14 -0700)]
changelog: Entry for push-source subcommand

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: push-source: new tests
Sean Whitton [Sat, 4 Feb 2017 22:36:15 +0000 (15:36 -0700)]
test suite: push-source: new tests

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: Add library function t-push-was-source-only
Sean Whitton [Sun, 12 Feb 2017 23:55:21 +0000 (16:55 -0700)]
test suite: Add library function t-push-was-source-only

No functional change.

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agoUpdate some copyright info
Sean Whitton [Fri, 4 Aug 2017 13:47:16 +0000 (09:47 -0400)]
Update some copyright info

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit(1): Entry for build-source recommends using push-source
Sean Whitton [Sat, 30 Dec 2017 11:07:42 +0000 (11:07 +0000)]
dgit(1): Entry for build-source recommends using push-source

If the user invokes build-source because they are going to upload,
they should use push-source rather than push to benefit from the
additional safety check that the upload is actually source-only.

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit(1): Note that push-source doesn't need --rm-old-changes
Sean Whitton [Fri, 4 Aug 2017 14:52:50 +0000 (10:52 -0400)]
dgit(1): Note that push-source doesn't need --rm-old-changes

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: New command: push-source
Sean Whitton [Sat, 4 Feb 2017 23:30:13 +0000 (16:30 -0700)]
dgit: New command: push-source

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: Implement test_source_only_changes
Sean Whitton [Sat, 4 Feb 2017 22:52:48 +0000 (15:52 -0700)]
dgit: Implement test_source_only_changes

No functional change.

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: build_source bypasses dpkg-buildpackage
Sean Whitton [Fri, 4 Aug 2017 14:03:44 +0000 (10:03 -0400)]
dgit: build_source bypasses dpkg-buildpackage

This is to avoid the inclusion of .buildinfo in the .changes.  Quoting
<https://lists.debian.org/debian-dpkg/2017/06/msg00005.html>:

    A .buildinfo file is not useful for a source-only upload which is
    veried to be identical to the intended source as present in the
    uploader's version control (eg, by the use of dgit).

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agoquilt-gbp test: Set DGIT_TEST_TOLERATE_UNPATCHED_CLEAN
Sean Whitton [Sat, 30 Dec 2017 11:02:01 +0000 (11:02 +0000)]
quilt-gbp test: Set DGIT_TEST_TOLERATE_UNPATCHED_CLEAN

In quilt-gbp we want to test whether dgit detects that quilt fixups
cannot be linear because the user has failed to pass an appropriate
quilt option in a patches-unapplied tree.

build_source() cleans before applying patches, and the package's clean
target might error out because patches are not applied.  This prevents
dgit from attempting quilt linearisation and thus determining that the
tree might be patches-unapplied.  So set an environment variable
telling the package's clean target not to do that.

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agoexample_1.0 worktree: Accept DGIT_TEST_TOLERATE_UNPATCHED_CLEAN
Sean Whitton [Sat, 30 Dec 2017 10:52:36 +0000 (10:52 +0000)]
example_1.0 worktree: Accept DGIT_TEST_TOLERATE_UNPATCHED_CLEAN

The clean target in the quilt-tip-2 branch in the example_1.0 worktree
errors out if patches are not applied.  With this change, if
DGIT_TEST_TOLERATE_UNPATCHED_CLEAN is set to "true", it will not error
out in this case.

No users, so no functional change.

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Acked-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit-maint-merge(7): Fix pod syntax
Ian Jackson [Sun, 7 Jan 2018 12:20:02 +0000 (12:20 +0000)]
dgit-maint-merge(7): Fix pod syntax

This was broken in
  b405f072572fd2e4e2acaa94562b697bc639b86d
  dgit-maint-merge(7): Include instructions to clone existing repo

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: lib: t-git-fsck: put dgit-test-fsck.errs in git dir
Ian Jackson [Fri, 5 Jan 2018 23:15:51 +0000 (23:15 +0000)]
test suite: lib: t-git-fsck: put dgit-test-fsck.errs in git dir

This needs to not be in the working tree; it causes trouble there.

This was broken in 090071ae8e31c8f81283af477c1114835ed8fd02
"test suite: Tolerate worktrees when trying to git-fsck"

Reported-by: Sean Whitton <spwhitton@spwhitton.name>
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: t-git-fsck: Introduce fsckerrs variable
Ian Jackson [Fri, 5 Jan 2018 23:11:38 +0000 (23:11 +0000)]
test suite: t-git-fsck: Introduce fsckerrs variable

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Do not fail if we have no tty when we fail
Ian Jackson [Sun, 7 Jan 2018 16:38:24 +0000 (16:38 +0000)]
test suite: gnupg: Do not fail if we have no tty when we fail

Tolerate failure of the error log reporting arrangement.  That way the
retry loop is effective even if we don't have a tty.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Fix sleep length in apt-get gpg --import case
Ian Jackson [Sun, 7 Jan 2018 16:37:40 +0000 (16:37 +0000)]
test suite: gnupg: Fix sleep length in apt-get gpg --import case

This was supposed to sleep for 5 seconds _instead_.  This is a
kind-of-expected error and it's best to carry on a bit quicker.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: Document gnupg workarounds
Ian Jackson [Sun, 7 Jan 2018 16:06:07 +0000 (16:06 +0000)]
changelog: Document gnupg workarounds

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: In ad-hoc runs, honour DGIT_TEST_RETRY_COUNT
Ian Jackson [Sun, 7 Jan 2018 15:50:36 +0000 (15:50 +0000)]
test suite: In ad-hoc runs, honour DGIT_TEST_RETRY_COUNT

This lets us retry each failed test.

This is beneficial because the gnupg race is sort-of independent.
When we want to test every commit, the success probability before
is
  ( 1 - P(gnupg causes test fail))        ) ^ (number of tests)
for each commit.  With this change it's
  ( 1 - P(gnupg causes test fail)^retries ) ^ (number of tests)
which is much much better.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Do not count as "trouble" a 0-byte input file failure
Ian Jackson [Sun, 7 Jan 2018 14:34:20 +0000 (14:34 +0000)]
test suite: gnupg: Do not count as "trouble" a 0-byte input file failure

apt-key seems to feed gpg --import an empty pipe.  This makes gpg exit
with status 2.  We think this is trouble, but it isn't.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Save stdin on apt-key's import invocations
Ian Jackson [Sun, 7 Jan 2018 14:34:08 +0000 (14:34 +0000)]
test suite: gnupg: Save stdin on apt-key's import invocations

Recognise these with an ad-hoc pattern on the command line arguments.
When they occur, save stdin to a temporary file.

We can't do this generally, because stdin might be some thing that
gpg's caller doesn't expect gpg to eat.

When we do this saving, print the size in bytes of the input file.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Run with a lock held
Ian Jackson [Sun, 7 Jan 2018 11:35:34 +0000 (11:35 +0000)]
test suite: gnupg: Run with a lock held

This is also an attempt to reduce the impact of the gnupg races.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: Export troot as an environment variable
Ian Jackson [Sun, 7 Jan 2018 11:35:45 +0000 (11:35 +0000)]
test suite: Export troot as an environment variable

This will be useful in a moment.  No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg: Have three goes, rather than two
Ian Jackson [Sun, 7 Jan 2018 13:44:38 +0000 (13:44 +0000)]
test suite: gnupg: Have three goes, rather than two

The retry strategy is, empirically, fairly successful.  But the
failure probability is still high enough to be a real nuisance.  Let's
try running it a 3rd time if the second fails.  Maybe this will reduce
the overall impact.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agotest suite: gnupg setup: give each individual test its own AGENT.log
Ian Jackson [Sat, 6 Jan 2018 13:56:42 +0000 (13:56 +0000)]
test suite: gnupg setup: give each individual test its own AGENT.log

This was always the intent.  However, the structure here arranged to
put the actual value of GNUPGHOME into the import script.

Instead, move the GNUGPHOME setting into the setup fragment, which is
evaluated by the importer.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agoMerge branch stable into master
Ian Jackson [Sun, 7 Jan 2018 12:39:49 +0000 (12:39 +0000)]
Merge branch stable into master

Also regenerate debian/tests/control

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: When source discrepancy involves mode changes, report them specially.
Ian Jackson [Sat, 6 Jan 2018 02:22:05 +0000 (02:22 +0000)]
dgit: When source discrepancy involves mode changes, report them specially.

Closes:#886442.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: Fix suggested diff rune in split brain mode
Ian Jackson [Sat, 6 Jan 2018 01:50:00 +0000 (01:50 +0000)]
dgit: Fix suggested diff rune in split brain mode

In split brain mode, with unexpected diffs, print dgit view commitid
in suggested diff rune.

HEAD is wrong in this case.

Closes:#886443.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit: Fix message about missing quilt cache entry
Ian Jackson [Sat, 6 Jan 2018 01:42:36 +0000 (01:42 +0000)]
dgit: Fix message about missing quilt cache entry

Should refer to HEAD rather than tree, since dgit needs a commit.

Closes:#884646.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodebian/control: Remove dependency alternative on realpath
Ian Jackson [Sat, 6 Jan 2018 01:38:57 +0000 (01:38 +0000)]
debian/control: Remove dependency alternative on realpath

That package last existed in Debian wheezy.  Closes:#877552.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit(1): Add a bit more rationale (polemic, even). Closes:#874221.
Ian Jackson [Sat, 6 Jan 2018 01:37:07 +0000 (01:37 +0000)]
dgit(1): Add a bit more rationale (polemic, even).  Closes:#874221.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agodgit-user(7): Recommend mk-build-deps rather than apt-get build-dep.
Ian Jackson [Sat, 6 Jan 2018 01:33:00 +0000 (01:33 +0000)]
dgit-user(7): Recommend mk-build-deps rather than apt-get build-dep.

Closes:#863361.

Suggested-by: Nikolaus Rath <Nikolaus@rath.org>
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
6 years agochangelog: mention dgit-*(7) change
Ian Jackson [Sat, 6 Jan 2018 01:29:18 +0000 (01:29 +0000)]
changelog: mention dgit-*(7) change

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>