chiark / gitweb /
dgit.git
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 years agoTest suite: Test --overwrite=VERSION
Ian Jackson [Sun, 25 Sep 2016 20:22:23 +0000 (21:22 +0100)]
Test suite: Test --overwrite=VERSION

4 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>
4 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>
4 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

4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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

4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 years agoTODO.BRANCH: Some things done
Ian Jackson [Mon, 19 Sep 2016 00:38:39 +0000 (01:38 +0100)]
TODO.BRANCH: Some things done

4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 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>
4 years agofetch_from_archive: Return the hash (and update the comment)
Ian Jackson [Sun, 18 Sep 2016 11:32:49 +0000 (12:32 +0100)]
fetch_from_archive: Return the hash (and update the comment)

All the call sites currently treat the return value as a boolean, and
the truthiness and falsishness of return values is unchanged, so there
is no overall functional change.

Also, clarify the head comment somewhat.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: Add a couple of comments
Ian Jackson [Sun, 18 Sep 2016 11:14:51 +0000 (12:14 +0100)]
dgit: Add a couple of comments

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoPush reorg: Move ff check out of cmd_push into dpush (nfc)
Ian Jackson [Sun, 18 Sep 2016 11:13:52 +0000 (12:13 +0100)]
Push reorg: Move ff check out of cmd_push into dpush (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTODO.BRANCH: add some desires
Ian Jackson [Thu, 15 Sep 2016 18:40:37 +0000 (19:40 +0100)]
TODO.BRANCH: add some desires

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: quilt-gb-build-modes: Test --clean=dpkg-source too
Ian Jackson [Mon, 5 Sep 2016 21:42:35 +0000 (22:42 +0100)]
Test suite: quilt-gb-build-modes: Test --clean=dpkg-source too

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: quilt-gb-build-modes: Fixes, passes now
Ian Jackson [Mon, 5 Sep 2016 21:42:21 +0000 (22:42 +0100)]
Test suite: quilt-gb-build-modes: Fixes, passes now

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: lib-build-modes: Remove a couple of hardcoded versions
Ian Jackson [Mon, 5 Sep 2016 21:41:52 +0000 (22:41 +0100)]
Test suite: lib-build-modes: Remove a couple of hardcoded versions

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: quilt-gbp-build-modes: New test, which does not pass yet
Ian Jackson [Sun, 3 Jul 2016 23:02:33 +0000 (00:02 +0100)]
Test suite: quilt-gbp-build-modes: New test, which does not pass yet

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: With sbuild, unapply patches in right dir
Ian Jackson [Mon, 5 Sep 2016 21:41:16 +0000 (22:41 +0100)]
dgit: With sbuild, unapply patches in right dir

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: With gbp-build, provide gbp with patches-unapplied tree
Ian Jackson [Mon, 5 Sep 2016 21:40:26 +0000 (22:40 +0100)]
dgit: With gbp-build, provide gbp with patches-unapplied tree

We may still need to apply, and then unapply, the patches, so as to
clean the tree.  But gbp itself expects a patches-unapplied tree.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: Make maybe_unapply_patches_again reset $patches_applied_dirtily
Ian Jackson [Mon, 5 Sep 2016 21:39:43 +0000 (22:39 +0100)]
dgit: Make maybe_unapply_patches_again reset $patches_applied_dirtily

That makes it idempotent.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTODO.BRANCH: Some more todo items
Ian Jackson [Mon, 5 Sep 2016 21:39:16 +0000 (22:39 +0100)]
TODO.BRANCH: Some more todo items

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTODO.BRANCH: TODO re fetch patterns
Ian Jackson [Sun, 4 Sep 2016 19:58:17 +0000 (20:58 +0100)]
TODO.BRANCH: TODO re fetch patterns

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTODO.BRANCH: Add a new desire
Ian Jackson [Sun, 4 Sep 2016 19:50:21 +0000 (20:50 +0100)]
TODO.BRANCH: Add a new desire

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: quilt-gbp: Provide and use t-gbp-pushed-good
Ian Jackson [Sun, 4 Sep 2016 19:47:00 +0000 (20:47 +0100)]
Test suite: quilt-gbp: Provide and use t-gbp-pushed-good

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: Break out t-incoming-dsc (nfc)
Ian Jackson [Sun, 4 Sep 2016 19:46:25 +0000 (20:46 +0100)]
Test suite: Break out t-incoming-dsc (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: Break out t-pushed-good-core (nfc)
Ian Jackson [Sun, 4 Sep 2016 19:46:03 +0000 (20:46 +0100)]
Test suite: Break out t-pushed-good-core (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: t-output: support expecting empty files
Ian Jackson [Sun, 4 Sep 2016 19:45:27 +0000 (20:45 +0100)]
Test suite: t-output: support expecting empty files

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoSplit brain: Push correct view to dgit repos server
Ian Jackson [Sun, 4 Sep 2016 19:44:57 +0000 (20:44 +0100)]
Split brain: Push correct view to dgit repos server

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: Test suite: quilt-gbp test: More
Ian Jackson [Sun, 4 Sep 2016 17:23:09 +0000 (18:23 +0100)]
dgit: Test suite: quilt-gbp test: More

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: lrfetchrefs: Delete unneeded fetched refs, etc.
Ian Jackson [Sun, 11 Sep 2016 17:43:37 +0000 (18:43 +0100)]
dgit: lrfetchrefs: Delete unneeded fetched refs, etc.

Fetch only the refs we (think we) are going to use, and delete the
lrfetchrefs (`refs/dgit-fetch/...') versions of those we give another
name to.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agodgit: Implement `git-fetch --no-insane'
Ian Jackson [Wed, 7 Sep 2016 20:41:03 +0000 (21:41 +0100)]
dgit: Implement `git-fetch --no-insane'

git-fetch has some very poor behaviours.  Implement a non-insane
version.

We are going to want to not fetch things we aren't going to use, and
this is necessary for that.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
4 years agoTest suite: tag-updates: Do not assert a that dgit-fetch/ ref exists
Ian Jackson [Sun, 11 Sep 2016 16:49:26 +0000 (17:49 +0100)]
Test suite: tag-updates: Do not assert a that dgit-fetch/ ref exists

We don't actually want dgit to leave these lying around unless it has
to.  So don't insist on that.

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