chiark / gitweb /
dgit.git
3 years ago.gitignore: Add debhelper-build-stamp
Ian Jackson [Sat, 8 Oct 2016 22:07:10 +0000 (23:07 +0100)]
.gitignore: Add debhelper-build-stamp

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNOTES: Remove obsolete file
Ian Jackson [Sat, 8 Oct 2016 22:02:05 +0000 (23:02 +0100)]
NOTES: Remove obsolete file

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agogbp options: done from TODO.BRANCH
Ian Jackson [Sat, 8 Oct 2016 21:31:23 +0000 (22:31 +0100)]
gbp options: done from TODO.BRANCH

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agogbp options: Document
Ian Jackson [Sat, 8 Oct 2016 21:30:39 +0000 (22:30 +0100)]
gbp options: Document

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoManpage: Embolden some command option strings
Ian Jackson [Sat, 8 Oct 2016 21:30:27 +0000 (22:30 +0100)]
Manpage: Embolden some command option strings

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agogbp options: Honour --gbp-pq instead of --gbp
Ian Jackson [Sat, 8 Oct 2016 21:29:41 +0000 (22:29 +0100)]
gbp options: Honour --gbp-pq instead of --gbp

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agogbp options: Provide --gbp-build
Ian Jackson [Sat, 8 Oct 2016 21:28:33 +0000 (22:28 +0100)]
gbp options: Provide --gbp-build

And, provide the sub opts_opt_multi_cmd to help with options of this
kind.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agogbp options: Introduce gbp_pq function (nfc)
Ian Jackson [Sat, 8 Oct 2016 21:19:30 +0000 (22:19 +0100)]
gbp options: Introduce gbp_pq function (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Tidy up output from gbp pq
Ian Jackson [Sat, 8 Oct 2016 21:01:12 +0000 (22:01 +0100)]
New import: Tidy up output from gbp pq

gbp pq import can print some warnings if it doesn't like the patches
much.  There is no point showing these warnings to the user of `dgit
clone' or `dgit fetch'.

As for the warnings in split brain mode, we will leave those, and
leave them with colour enabled.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: import-nonnative: Enhanced and finished
Ian Jackson [Sat, 8 Oct 2016 19:21:35 +0000 (20:21 +0100)]
Test suite: import-nonnative: Enhanced and finished

Use t-git-next-date.  (Our GIT_AUTHOR_DATE settings were wrong and
therefore ineffective.)

Add a 1.0 with diff test.  Add some comments about package format.

Now the test is finished.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Set GIT_COMMITTER_* and GIT_AUTHOR_*
Ian Jackson [Sat, 8 Oct 2016 20:53:35 +0000 (21:53 +0100)]
New import: Set GIT_COMMITTER_* and GIT_AUTHOR_*

gbp pq import generates commits which are affected by these (COMMITTER
always and AUTHOR sometimes).  But we need imports to be stable.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Set GIT_AUTHOR_* too
Ian Jackson [Sat, 8 Oct 2016 20:52:42 +0000 (21:52 +0100)]
Split brain: Set GIT_AUTHOR_* too

Sometimes the patches don't have authorship information, in which case
using the caller's is wrong.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: .gitignore patch: Slightly better commit message
Ian Jackson [Sat, 8 Oct 2016 20:39:29 +0000 (21:39 +0100)]
Split brain: .gitignore patch: Slightly better commit message

Don't sort-of-imply that the dgit version is the package version.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Add dependency on git-buildpackage
Ian Jackson [Sat, 8 Oct 2016 20:56:38 +0000 (21:56 +0100)]
New import: Add dependency on git-buildpackage

Now we may run gbp pq import even if user is not using gbp.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: import-native: New test
Ian Jackson [Sat, 8 Oct 2016 19:20:45 +0000 (20:20 +0100)]
Test suite: import-native: New test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Make t-archive-none idempotent
Ian Jackson [Sat, 8 Oct 2016 19:19:51 +0000 (20:19 +0100)]
Test suite: Make t-archive-none idempotent

No overall functional change just yet, but it means we can wipe our
test archives.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Fix two test cases (git-foo => git foo)
Ian Jackson [Sat, 8 Oct 2016 19:19:11 +0000 (20:19 +0100)]
Test suite: Fix two test cases (git-foo => git foo)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: New fetch algorithm: Fix a message
Ian Jackson [Sat, 8 Oct 2016 18:19:13 +0000 (19:19 +0100)]
dgit: New fetch algorithm: Fix a message

This should have been debug output all along.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Get rid of some pointless output
Ian Jackson [Sat, 8 Oct 2016 18:18:31 +0000 (19:18 +0100)]
New import: Get rid of some pointless output

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Import: Add a lot of debugging
Ian Jackson [Sat, 8 Oct 2016 18:14:29 +0000 (19:14 +0100)]
New import: Import: Add a lot of debugging

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: import-quilt: Initial version of new test case
Ian Jackson [Sat, 8 Oct 2016 17:58:04 +0000 (18:58 +0100)]
Test suite: import-quilt: Initial version of new test case

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoImport: orig files: cope with signatures
Ian Jackson [Sat, 8 Oct 2016 16:47:33 +0000 (17:47 +0100)]
Import: orig files: cope with signatures

Fix up .orig detection to handle .asc's (and other signatures) of
.orig components the same way as their tarballs.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoImport: orig files: Fix .orig-comp pattern match
Ian Jackson [Sat, 8 Oct 2016 16:43:51 +0000 (17:43 +0100)]
Import: orig files: Fix .orig-comp pattern match

Fix up .orig detection to correctly allow exactly the right .orig-comp
components accorging to dpkg-source(1).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Consequences of new import
Ian Jackson [Sat, 8 Oct 2016 16:38:18 +0000 (17:38 +0100)]
TODO.BRANCH: Consequences of new import

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Entirely new import algorithm
Ian Jackson [Sun, 2 Oct 2016 19:55:57 +0000 (20:55 +0100)]
New import: Entirely new import algorithm

See README.dsc-import (which needs some updating).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: make_commit_text: Some more debug
Ian Jackson [Sat, 8 Oct 2016 16:39:04 +0000 (17:39 +0100)]
New import: make_commit_text: Some more debug

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Introduce make_commit_text (nfc)
Ian Jackson [Sat, 8 Oct 2016 14:30:50 +0000 (15:30 +0100)]
New import: Introduce make_commit_text (nfc)

No callers yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: stunt parsechangelog: fallback
Ian Jackson [Sat, 8 Oct 2016 15:48:29 +0000 (16:48 +0100)]
Test suite: stunt parsechangelog: fallback

Fall back to system implementation if command line options are
requested that we don't understand.  This is a bit fiddly - we need to
strip the stunt entry out of PATH and also out of PERLLIB.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Print synthesised git commit message a bit earlier
Ian Jackson [Sat, 8 Oct 2016 14:32:09 +0000 (15:32 +0100)]
New import: Print synthesised git commit message a bit earlier

No significant functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoFix up .orig detection to be less trustful of (ambiguous) filenames.
Ian Jackson [Sat, 8 Oct 2016 12:19:54 +0000 (13:19 +0100)]
Fix up .orig detection to be less trustful of (ambiguous) filenames.

We cannot simply match the filenaem because `foo_1.0.orig.tar.gz'
might be the `.orig.tar.gz' of foo version 1.0, or the `.tar.gz' of
foo version 1.0.orig.

We need either to consider the whole .dsc (this works since the
formats with no `.orig' or `.debian' or whatever are precisely ones
where there is only one file anyway), or know the version number.

Replace is_orig_file with two functions, one for each situation.

While we're here, do not barf if we find uncompressed tarballs.  (We
don't expect to find any but it would be nice if they worked...)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: a todo item
Ian Jackson [Sun, 2 Oct 2016 19:53:52 +0000 (20:53 +0100)]
TODO.BRANCH: a todo item

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: Slightly better message in mktree_in_ud_from_only_subdir
Ian Jackson [Wed, 28 Sep 2016 23:33:43 +0000 (00:33 +0100)]
New import: Slightly better message in mktree_in_ud_from_only_subdir

This is going to be processing .dsc's tarballs directly, so we need
slightly better error reporting.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoNew import: mktree_in_ud_from_only_subdir: New $raw parameter (nfc)
Ian Jackson [Wed, 28 Sep 2016 23:33:03 +0000 (00:33 +0100)]
New import: mktree_in_ud_from_only_subdir: New $raw parameter (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoFix two calls to chdir without proper error checking.
Ian Jackson [Wed, 28 Sep 2016 22:48:02 +0000 (23:48 +0100)]
Fix two calls to chdir without proper error checking.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoDo not fail to do some important quilt processing in some --quilt modes.
Ian Jackson [Wed, 28 Sep 2016 17:35:00 +0000 (18:35 +0100)]
Do not fail to do some important quilt processing in some --quilt modes.

Make `madformat' mean precisely `is 3.0 (quilt)' and change the two
call sites which wanted to check the quilt mode too.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoImport: Consolidate emails into coherent plan
Ian Jackson [Wed, 28 Sep 2016 17:24:26 +0000 (18:24 +0100)]
Import: Consolidate emails into coherent plan

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoImport: Copy plan from emails
Ian Jackson [Wed, 28 Sep 2016 17:05:53 +0000 (18:05 +0100)]
Import: Copy plan from emails

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: quilt-gbp: Test that we crash if archive doesn't do "maint" tags
Ian Jackson [Mon, 26 Sep 2016 00:35:15 +0000 (01:35 +0100)]
Test suite: quilt-gbp: Test that we crash if archive doesn't do "maint" tags

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Check that archive supports "maint", earlier
Ian Jackson [Mon, 26 Sep 2016 00:34:16 +0000 (01:34 +0100)]
Split brain: Check that archive supports "maint", earlier

Otherwise the user will be disappointed shortly.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Make t-newtag specify maint too
Ian Jackson [Mon, 26 Sep 2016 00:33:17 +0000 (01:33 +0100)]
Test suite: Make t-newtag specify maint too

Since actually several tests which use t-newtag are quilty split brain
ones which technically require it, although nothing checks this right
now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Test --overwrite (without VERSION)
Ian Jackson [Mon, 26 Sep 2016 00:14:22 +0000 (01:14 +0100)]
Test suite: Test --overwrite (without VERSION)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOverwrite: Document --overwrite option (without VERSION)
Ian Jackson [Mon, 26 Sep 2016 00:13:31 +0000 (01:13 +0100)]
Overwrite: Document --overwrite option (without VERSION)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOverwrite: Support --overwrite without a version
Ian Jackson [Mon, 26 Sep 2016 00:07:05 +0000 (01:07 +0100)]
Overwrite: Support --overwrite without a version

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: getfield, parsechangelog: Fix two bugs in error reporting
Ian Jackson [Mon, 26 Sep 2016 00:05:32 +0000 (01:05 +0100)]
dgit: getfield, parsechangelog: Fix two bugs in error reporting

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOverwrite: Refer to $i_arch_v->[0] twice in plain_overwrite_pseudomerge
Ian Jackson [Sun, 25 Sep 2016 23:46:22 +0000 (00:46 +0100)]
Overwrite: Refer to $i_arch_v->[0] twice in plain_overwrite_pseudomerge

We are going to allow $overwrite_version to be "", in which case we
will have to use $i_arch_v->[0] instead.

Right now both are the same because if $overwrite_version is defined
(as it must be in plain_overwrite_pseudomerge),
pseudomerge_version_check will call infopair_cond_equal - so, no
functional change right now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoPseudomerge: pseudomerge_make_commit: Lift up some message generation
Ian Jackson [Sun, 25 Sep 2016 23:45:01 +0000 (00:45 +0100)]
Pseudomerge: pseudomerge_make_commit: Lift up some message generation

Move the calculation of whether to put "--overwrite=" in the message
into the common code.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOverwrite: Fix messages referring to --overwrite-version
Ian Jackson [Sun, 25 Sep 2016 23:33:49 +0000 (00:33 +0100)]
Overwrite: Fix messages referring to --overwrite-version

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Test --overwrite=VERSION
Ian Jackson [Sun, 25 Sep 2016 20:22:23 +0000 (21:22 +0100)]
Test suite: Test --overwrite=VERSION

3 years agoOverwrite: Document --overwrite=VERSION
Ian Jackson [Sun, 25 Sep 2016 20:21:59 +0000 (21:21 +0100)]
Overwrite: Document --overwrite=VERSION

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOverwrite: Provide --overwrite=VERSION option
Ian Jackson [Sun, 25 Sep 2016 13:48:41 +0000 (14:48 +0100)]
Overwrite: Provide --overwrite=VERSION option

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Check before doing split tag
Ian Jackson [Thu, 22 Sep 2016 12:34:53 +0000 (13:34 +0100)]
TODO.BRANCH: Check before doing split tag

3 years agoDefault config: Switch to new tag format only
Ian Jackson [Thu, 22 Sep 2016 12:29:58 +0000 (13:29 +0100)]
Default config: Switch to new tag format only

There are probably not many users relying on the default config, so
push forward with it for the benefit of new users.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoOvewrite: Honour $overwrite_version in non-split-brain mode
Ian Jackson [Thu, 22 Sep 2016 12:29:10 +0000 (13:29 +0100)]
Ovewrite: Honour $overwrite_version in non-split-brain mode

Currently there is no commnad line option to set this, so there is no
way to exercise this functionality.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoPseudomerge: Break out pseudomerge_version_check and _make_commit
Ian Jackson [Thu, 22 Sep 2016 12:26:46 +0000 (13:26 +0100)]
Pseudomerge: Break out pseudomerge_version_check and _make_commit

We are going to want to reuse these.  It's a bit tangled, but this
seems better than a single pseudomerge_make function with a bunch of
iffery.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Better tag format filtering
Ian Jackson [Thu, 22 Sep 2016 11:59:18 +0000 (12:59 +0100)]
Split brain: Better tag format filtering

The code only makes tag formats `old' and `new'.  Make it easier to
add a new tag format config item entry later.

No functional change with existing configurations.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: infopair tag fetch: Support multiple tags
Ian Jackson [Thu, 22 Sep 2016 11:52:16 +0000 (12:52 +0100)]
dgit: infopair tag fetch: Support multiple tags

No functional change with existing callers.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: Break out `infopair' functions
Ian Jackson [Thu, 22 Sep 2016 11:46:23 +0000 (12:46 +0100)]
dgit: Break out `infopair' functions

We are going to want to reuse these in a moment.

No functional change other than to debug output.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain pseudomerge: Test $overwrite_version for definedness
Ian Jackson [Thu, 22 Sep 2016 11:39:01 +0000 (12:39 +0100)]
Split brain pseudomerge: Test $overwrite_version for definedness

Technically, `0' is a valid version number, but it is falsish.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Only send rpush maint-view param if $maintviewhead
Ian Jackson [Thu, 22 Sep 2016 11:35:32 +0000 (12:35 +0100)]
Split brain: Only send rpush maint-view param if $maintviewhead

Fixes a bug where rpush would always make two tags even for a
non-`3.0 (quilt)' package.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Have quilt-splitbrains test now
Ian Jackson [Thu, 22 Sep 2016 00:28:24 +0000 (01:28 +0100)]
TODO.BRANCH: Have quilt-splitbrains test now

3 years agoTest suite: quilt-splitbrains: Comment
Ian Jackson [Thu, 22 Sep 2016 00:27:22 +0000 (01:27 +0100)]
Test suite: quilt-splitbrains: Comment

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: quilt-splitbrains: Rename
Ian Jackson [Thu, 22 Sep 2016 00:25:26 +0000 (01:25 +0100)]
Test suite: quilt-splitbrains: Rename

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Test --quilt=unapplied and --quilt=dpm
Ian Jackson [Thu, 22 Sep 2016 00:13:05 +0000 (01:13 +0100)]
Test suite: Test --quilt=unapplied and --quilt=dpm

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: t-gbp-pushed-good: Refactor (nfc)
Ian Jackson [Thu, 22 Sep 2016 00:11:36 +0000 (01:11 +0100)]
Test suite: t-gbp-pushed-good: Refactor (nfc)

Provide various t-splitbrain-*.  These will be needed for tests of
--quilt=unapplied and --quilt=dpm.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: Some extra error reports for wrong split brain mode
Ian Jackson [Thu, 22 Sep 2016 00:10:31 +0000 (01:10 +0100)]
dgit: Some extra error reports for wrong split brain mode

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: Allow --quilt=dpm
Ian Jackson [Thu, 22 Sep 2016 00:10:10 +0000 (01:10 +0100)]
dgit: Allow --quilt=dpm

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Add two "echo ok."s
Ian Jackson [Wed, 21 Sep 2016 20:20:56 +0000 (21:20 +0100)]
Test suite: Add two "echo ok."s

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: oldnewtagalt: New test
Ian Jackson [Wed, 21 Sep 2016 20:19:46 +0000 (21:19 +0100)]
Test suite: oldnewtagalt: New test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Add spelling test
Ian Jackson [Sun, 25 Sep 2016 18:39:48 +0000 (19:39 +0100)]
Test suite: Add spelling test

Fail this test if the tree contains the misspelling of "pseudo".

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoFix spelling of "pseudo"
Ian Jackson [Sun, 25 Sep 2016 18:24:33 +0000 (19:24 +0100)]
Fix spelling of "pseudo"

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: Turn gc.auto off in our hidden working tree setups
Ian Jackson [Sat, 24 Sep 2016 10:19:42 +0000 (11:19 +0100)]
dgit: Turn gc.auto off in our hidden working tree setups

This avoids potential accidents: git gc --auto might otherwise run and
do very undesirable things to the user's working tree.  (I haven't
been able to trigger such a situation deliberately and none has been
reported, luckily...)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: examplegit: Importers inherit majorv too
Ian Jackson [Wed, 21 Sep 2016 20:17:38 +0000 (21:17 +0100)]
Test suite: examplegit: Importers inherit majorv too

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Add a todo list item
Ian Jackson [Mon, 19 Sep 2016 01:19:28 +0000 (02:19 +0100)]
TODO.BRANCH: Add a todo list item

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: Add t-tstunt-parsechangelog to a couple of tests
Ian Jackson [Mon, 19 Sep 2016 01:08:44 +0000 (02:08 +0100)]
Test suite: Add t-tstunt-parsechangelog to a couple of tests

inarchivecopy and the quilt-gbp tests just use the `example' package.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Done drs-quilt-gbp (actually debpolicy-*)
Ian Jackson [Mon, 19 Sep 2016 01:02:38 +0000 (02:02 +0100)]
TODO.BRANCH: Done drs-quilt-gbp (actually debpolicy-*)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: quilt-gbp-build-modes-sbuild: Split out
Ian Jackson [Mon, 19 Sep 2016 01:01:09 +0000 (02:01 +0100)]
Test suite: quilt-gbp-build-modes-sbuild: Split out

Now the other tests can run even if the sbuild chroot is not
available.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: quilt-gbp-build-modes: Lift bulk into lib-build-modes
Ian Jackson [Mon, 19 Sep 2016 00:59:31 +0000 (01:59 +0100)]
Test suite: quilt-gbp-build-modes: Lift bulk into lib-build-modes

To split the sbuild test out, we want this to be reusable.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Gardening (reorg only)
Ian Jackson [Mon, 19 Sep 2016 00:51:31 +0000 (01:51 +0100)]
TODO.BRANCH: Gardening (reorg only)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: drs-push-rejects: Test push of same version with different dgit
Ian Jackson [Mon, 19 Sep 2016 00:48:13 +0000 (01:48 +0100)]
Test suite: drs-push-rejects: Test push of same version with different dgit

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: drs-push-rejects: Break out re-prep (nfc)
Ian Jackson [Mon, 19 Sep 2016 00:47:53 +0000 (01:47 +0100)]
Test suite: drs-push-rejects: Break out re-prep (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTODO.BRANCH: Some things done
Ian Jackson [Mon, 19 Sep 2016 00:38:39 +0000 (01:38 +0100)]
TODO.BRANCH: Some things done

3 years agoSplit brain: Test suite: quilt-gbp: Test 2nd push (ie, test pseudomerge)
Ian Jackson [Sun, 11 Sep 2016 18:01:47 +0000 (19:01 +0100)]
Split brain: Test suite: quilt-gbp: Test 2nd push (ie, test pseudomerge)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Make pseudomerge
Ian Jackson [Sun, 18 Sep 2016 22:42:16 +0000 (23:42 +0100)]
Split brain: Make pseudomerge

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Test suite: quilt-gbp: Check that DEP-14 tag was pushed
Ian Jackson [Sun, 18 Sep 2016 22:57:28 +0000 (23:57 +0100)]
Split brain: Test suite: quilt-gbp: Check that DEP-14 tag was pushed

Test that we pushed the maintainer view as well as the dgit view.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Always push the maintainer view tag
Ian Jackson [Sun, 18 Sep 2016 23:24:23 +0000 (00:24 +0100)]
Split brain: Always push the maintainer view tag

Our algorithm for calculating whether to do a pseudomerge to make the
dgit view fast forward from the archive contents depends on the
maintainer view tag (effectively, it uses it to go back from the
archive contents dgit view back to the corresponding maintainer view).

So we need to push it too.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: dgit-repos-server: Permit pushing maintainer tag too
Ian Jackson [Mon, 19 Sep 2016 00:34:55 +0000 (01:34 +0100)]
Split brain: dgit-repos-server: Permit pushing maintainer tag too

Split brain is going to need the maintainer tag on the dgit server.
Allow clients to push the _both_ the DEP-14 and new dgit archive/ tag.

In this case dgit-repos-server can largely ignore the DEP-14 tag.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoSplit brain: Add some debug relating to tagwants
Ian Jackson [Sun, 18 Sep 2016 23:23:44 +0000 (00:23 +0100)]
Split brain: Add some debug relating to tagwants

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoDgit.pm: fail: Strip any trailing newline
Ian Jackson [Sun, 18 Sep 2016 22:45:19 +0000 (23:45 +0100)]
Dgit.pm: fail: Strip any trailing newline

This makes it sensible to call fail() with a here doc.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: debpolicy-quilt-gbp: New test
Ian Jackson [Sun, 18 Sep 2016 23:56:59 +0000 (00:56 +0100)]
Test suite: debpolicy-quilt-gbp: New test

Check that drs and Debian policy permit split brain.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoChangelog handling: Replace a call to parsechangelog with commit_getclogp
Ian Jackson [Sun, 18 Sep 2016 12:26:01 +0000 (13:26 +0100)]
Changelog handling: Replace a call to parsechangelog with commit_getclogp

This is less code, and takes advantage of the memoisation.

No overall functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoChangelog handling: No not check out last push any more during raw import
Ian Jackson [Sun, 18 Sep 2016 12:23:38 +0000 (13:23 +0100)]
Changelog handling: No not check out last push any more during raw import

We now get the changelog with mergeinfo_getclogp (which just fetches
the changelog blob).  This working tree is not used for anything else,
and is deleted at the end of the function.  So there is no need to
switch branches.

There should be no overall behavioural change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoChangelog handling: Use mergeinfo_getclogp during raw import
Ian Jackson [Sun, 18 Sep 2016 12:23:07 +0000 (13:23 +0100)]
Changelog handling: Use mergeinfo_getclogp during raw import

No overall functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoChangelog handling: Provide commit_getclogp (nfc)
Ian Jackson [Sun, 18 Sep 2016 12:14:28 +0000 (13:14 +0100)]
Changelog handling: Provide commit_getclogp (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoPush reorg: Have FF check use dgit view, not HEAD
Ian Jackson [Sun, 18 Sep 2016 11:49:48 +0000 (12:49 +0100)]
Push reorg: Have FF check use dgit view, not HEAD

Quilt fixup may generate a dgit view, which is not HEAD, and it is the
dgit view which will actually be pushed to the archive, so it is that
that should be checked.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodel_lrfetchrefs: Improve debug output a bit
Ian Jackson [Sun, 18 Sep 2016 11:49:39 +0000 (12:49 +0100)]
del_lrfetchrefs: Improve debug output a bit

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoPush reorg: Postpone FF check
Ian Jackson [Sun, 18 Sep 2016 11:46:37 +0000 (12:46 +0100)]
Push reorg: Postpone FF check

We need to do this after the quilt fixup, because we are going to make
quilt fixup perhaps generate a pseudo-merge.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoTest suite: run-all: Ensure tests/tmp/ exists
Ian Jackson [Sun, 25 Sep 2016 19:09:45 +0000 (20:09 +0100)]
Test suite: run-all: Ensure tests/tmp/ exists

ca007b4d "Test suite: run-all: record output" introduced a regression:
if tests/tmp/ does not exist on entry, tests/run-all fails.

So create it first.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agoPush reorg: Introduce $archive_hash in dopush (nfc)
Ian Jackson [Sun, 18 Sep 2016 11:45:01 +0000 (12:45 +0100)]
Push reorg: Introduce $archive_hash in dopush (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agofetch_from_archive: Mention that git_fetch_us must be called first
Ian Jackson [Sun, 18 Sep 2016 11:37:49 +0000 (12:37 +0100)]
fetch_from_archive: Mention that git_fetch_us must be called first

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
3 years agodgit: changedir: use confess, to get a stack trace
Ian Jackson [Sun, 18 Sep 2016 11:34:45 +0000 (12:34 +0100)]
dgit: changedir: use confess, to get a stack trace

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