chiark / gitweb /
dgit.git
7 years agodgit: Introduce upstreamversion
Ian Jackson [Sun, 30 Oct 2016 19:44:36 +0000 (19:44 +0000)]
dgit: Introduce upstreamversion

And many call sites.  No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoSupport dgit --delayed= push
Ian Jackson [Sun, 30 Oct 2016 17:55:55 +0000 (17:55 +0000)]
Support dgit --delayed= push

(with a warning in the manpage about possible skew).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit clone: Set timestamps in cloned tree to a single unified time.
Ian Jackson [Sun, 30 Oct 2016 16:34:11 +0000 (16:34 +0000)]
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).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Test --dgit-view-save everywhere
Ian Jackson [Sun, 30 Oct 2016 16:26:00 +0000 (16:26 +0000)]
Test suite: Test --dgit-view-save everywhere

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoNew option --dgit-view-save= for split view quilt modes.
Ian Jackson [Sun, 30 Oct 2016 16:25:31 +0000 (16:25 +0000)]
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.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Make t-ref-same* errors better by tracking and printing names
Ian Jackson [Sun, 30 Oct 2016 15:03:39 +0000 (15:03 +0000)]
Test suite: Make t-ref-same* errors better by tracking and printing names

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Make t-refs-same* not wrongly ignore some nonexistent refs
Ian Jackson [Sun, 30 Oct 2016 14:39:14 +0000 (14:39 +0000)]
Test suite: Make t-refs-same* not wrongly ignore some nonexistent refs

Previously, t_ref_val="" was meant to mean "no refs specified yet" but
could also arise from "ref was specified but did not exist".

Distinguish these two cases, by using t_ref_val="" to mean only the
latter.  "No refs specified yet" is represented as t_ref_val unset.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: inarchivecopy: Fix tag-vs-remote checking
Ian Jackson [Sun, 30 Oct 2016 15:04:07 +0000 (15:04 +0000)]
Test suite: inarchivecopy: Fix tag-vs-remote checking

This was entirely broken, and only works because (a) $vtag^1 does not
exist, and (b) this is erroneously not spotted by t-ref-same-*.

Instead check that the suite branch has the tag (of the package which
has been moved into that suite) as a direct ancestor.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Provide t-has-parent
Ian Jackson [Sun, 30 Oct 2016 15:03:23 +0000 (15:03 +0000)]
Test suite: Provide t-has-parent

No callers yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Document args to t-has-ancestor
Ian Jackson [Sun, 30 Oct 2016 15:03:07 +0000 (15:03 +0000)]
Test suite: Document args to t-has-ancestor

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Explicitly configure user.name and user.email
Ian Jackson [Thu, 27 Oct 2016 19:22:10 +0000 (20:22 +0100)]
Test suite: Explicitly configure user.name and user.email

So that tests work when environment doesn't have
defaults.

Closes:#842279 (I hope).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Actually print signature warning without --require-valid
Ian Jackson [Tue, 25 Oct 2016 15:42:07 +0000 (16:42 +0100)]
import-dsc: Actually print signature warning without --require-valid

If --require-valid-signature was not set, we would not print the
warning if there was one.  That is quite wrong.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Document --require-valid-signature
Ian Jackson [Sun, 23 Oct 2016 20:16:11 +0000 (21:16 +0100)]
import-dsc: Document --require-valid-signature

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: import-dsc: Test --require-valid-signature
Ian Jackson [Sun, 23 Oct 2016 20:12:12 +0000 (21:12 +0100)]
Test suite: import-dsc: Test --require-valid-signature

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Support --require-valid-signature
Ian Jackson [Sun, 23 Oct 2016 20:12:02 +0000 (21:12 +0100)]
import-dsc: Support --require-valid-signature

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Check the signature
Ian Jackson [Sun, 23 Oct 2016 20:11:37 +0000 (21:11 +0100)]
import-dsc: Check the signature

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Document new ff checks
Ian Jackson [Sun, 23 Oct 2016 19:26:40 +0000 (20:26 +0100)]
import-dsc: Document new ff checks

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: import-dsc: New test
Ian Jackson [Sun, 23 Oct 2016 19:20:24 +0000 (20:20 +0100)]
Test suite: import-dsc: New test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Introduce ff checking
Ian Jackson [Sun, 23 Oct 2016 19:19:50 +0000 (20:19 +0100)]
import-dsc: Introduce ff checking

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Introduce $newhash (nfc)
Ian Jackson [Sun, 23 Oct 2016 19:19:22 +0000 (20:19 +0100)]
import-dsc: Introduce $newhash (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Introduce $info (nfc)
Ian Jackson [Sun, 23 Oct 2016 19:18:54 +0000 (20:18 +0100)]
import-dsc: Introduce $info (nfc)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: Refuse to update a checked-out branch
Ian Jackson [Sun, 23 Oct 2016 19:16:17 +0000 (20:16 +0100)]
import-dsc: Refuse to update a checked-out branch

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport dsc: Documentation
Ian Jackson [Sun, 23 Oct 2016 18:29:46 +0000 (19:29 +0100)]
import dsc: Documentation

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport dsc: Actually permit --force-import-dsc-with-dgit-field
Ian Jackson [Sun, 23 Oct 2016 18:29:22 +0000 (19:29 +0100)]
import dsc: Actually permit --force-import-dsc-with-dgit-field

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoimport-dsc: New feature
Ian Jackson [Sun, 23 Oct 2016 18:18:03 +0000 (19:18 +0100)]
import-dsc: New feature

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoProperly look for .origs etc. in .., fetching them less often.
Ian Jackson [Sun, 23 Oct 2016 18:17:45 +0000 (19:17 +0100)]
Properly look for .origs etc. in .., fetching them less often.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years ago.dsc and file handling: Add some debugging output
Ian Jackson [Sun, 23 Oct 2016 18:15:30 +0000 (19:15 +0100)]
.dsc and file handling: Add some debugging output

No other change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit: Break out parse_dscdata.
Ian Jackson [Sun, 23 Oct 2016 18:14:04 +0000 (19:14 +0100)]
dgit: Break out parse_dscdata.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoProvide --force-changes-origs-exactly
Ian Jackson [Sun, 23 Oct 2016 15:57:23 +0000 (16:57 +0100)]
Provide --force-changes-origs-exactly

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: orig-include-exclude: Test orig tarball hash mismatch
Ian Jackson [Sun, 23 Oct 2016 15:33:08 +0000 (16:33 +0100)]
Test suite: orig-include-exclude: Test orig tarball hash mismatch

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: orig-include-exclude-chkquery: New test
Ian Jackson [Sun, 23 Oct 2016 00:40:35 +0000 (01:40 +0100)]
Test suite: orig-include-exclude-chkquery: New test

Check that we make the right file_in_archive ftpmaster API queries.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: lib-orig-include-exclude: Prepare for more reuse
Ian Jackson [Sun, 23 Oct 2016 15:32:12 +0000 (16:32 +0100)]
Test suite: lib-orig-include-exclude: Prepare for more reuse

Support a suite argument to test-push-1 and dgit argument arguments to
test-push-2.  cd back to $tmp at the end.

No overall functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-maint-gbp(7): Don't try to use `dgit pull`
Sean Whitton [Sun, 30 Oct 2016 18:55:52 +0000 (11:55 -0700)]
dgit-maint-gbp(7): Don't try to use `dgit pull`

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Suggest --dgit-view-save
Sean Whitton [Sun, 30 Oct 2016 18:50:08 +0000 (11:50 -0700)]
dgit-sponsorship(7): Suggest --dgit-view-save

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-nmu-simple(7): Mention --delayed
Sean Whitton [Sun, 30 Oct 2016 18:46:22 +0000 (11:46 -0700)]
dgit-nmu-simple(7): Mention --delayed

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-*(7): Sort out Makefile, .gitignore and changelog
Ian Jackson [Sun, 30 Oct 2016 17:42:20 +0000 (17:42 +0000)]
dgit-*(7): Sort out Makefile, .gitignore and changelog

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-sponsorship(7): About deleting tag
Sean Whitton [Sat, 29 Oct 2016 22:37:28 +0000 (15:37 -0700)]
dgit-sponsorship(7): About deleting tag

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-maint-gbp(7): Note that patches-unapplied
Sean Whitton [Sat, 29 Oct 2016 19:08:26 +0000 (12:08 -0700)]
dgit-maint-gbp(7): Note that patches-unapplied

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Add import-dsc for NEW package
Sean Whitton [Sat, 29 Oct 2016 17:58:11 +0000 (10:58 -0700)]
dgit-sponsorship(7): Add import-dsc for NEW package

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-maint-gbp(7): Mention --overwrite
Sean Whitton [Sat, 29 Oct 2016 16:13:04 +0000 (09:13 -0700)]
dgit-maint-gbp(7): Mention --overwrite

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Mention gbp-clone
Sean Whitton [Sat, 29 Oct 2016 15:53:35 +0000 (08:53 -0700)]
dgit-sponsorship(7): Mention gbp-clone

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-maint-gbp(7): New manpage
Sean Whitton [Sat, 29 Oct 2016 15:32:37 +0000 (08:32 -0700)]
dgit-maint-gbp(7): New manpage

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-user(7): Use `apt install ./foo.deb`
Sean Whitton [Sat, 29 Oct 2016 14:57:35 +0000 (07:57 -0700)]
dgit-user(7): Use `apt install ./foo.deb`

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-user(7): Add "... without a .pc directory"
Sean Whitton [Sat, 29 Oct 2016 14:36:06 +0000 (07:36 -0700)]
dgit-user(7): Add "... without a .pc directory"

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-user(7): Explain "binary package"
Sean Whitton [Sat, 29 Oct 2016 14:35:32 +0000 (07:35 -0700)]
dgit-user(7): Explain "binary package"

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-nmu-simple(7): Cannot yet use DELAYED
Sean Whitton [Sat, 29 Oct 2016 14:34:09 +0000 (07:34 -0700)]
dgit-nmu-simple(7): Cannot yet use DELAYED

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agolocal-pod-man: Wrapper script to make previewing pod manpages easy
Ian Jackson [Sun, 30 Oct 2016 17:22:06 +0000 (17:22 +0000)]
local-pod-man: Wrapper script to make previewing pod manpages easy

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-nmu-simple(7): Fix missing quotes
Ian Jackson [Sun, 30 Oct 2016 17:17:43 +0000 (17:17 +0000)]
dgit-nmu-simple(7): Fix missing quotes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-nmu-simple(7): Sample `dch` commands
Sean Whitton [Sat, 29 Oct 2016 14:33:51 +0000 (07:33 -0700)]
dgit-nmu-simple(7): Sample `dch` commands

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-nmu-simple(7): Maintainer's *git* workflow
Sean Whitton [Sat, 29 Oct 2016 14:30:18 +0000 (07:30 -0700)]
dgit-nmu-simple(7): Maintainer's *git* workflow

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Demote to subsection
Sean Whitton [Sat, 29 Oct 2016 14:29:44 +0000 (07:29 -0700)]
dgit-sponsorship(7): Demote to subsection

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Correct sponsee/sponsor
Sean Whitton [Sat, 29 Oct 2016 14:29:30 +0000 (07:29 -0700)]
dgit-sponsorship(7): Correct sponsee/sponsor

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Mention RFS procedure
Sean Whitton [Sat, 29 Oct 2016 14:29:08 +0000 (07:29 -0700)]
dgit-sponsorship(7): Mention RFS procedure

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): "sample dgit push"
Sean Whitton [Sat, 29 Oct 2016 14:28:43 +0000 (07:28 -0700)]
dgit-sponsorship(7): "sample dgit push"

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship(7): Suggest pristine-tar(1)
Sean Whitton [Sat, 29 Oct 2016 14:26:24 +0000 (07:26 -0700)]
dgit-sponsorship(7): Suggest pristine-tar(1)

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
7 years agodgit-sponsorship.7 (wip)
Ian Jackson [Thu, 27 Oct 2016 13:00:45 +0000 (14:00 +0100)]
dgit-sponsorship.7 (wip)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-user(7), dgit-nmu-simple(7): Much work
Ian Jackson [Wed, 26 Oct 2016 23:38:46 +0000 (00:38 +0100)]
dgit-user(7), dgit-nmu-simple(7): Much work

These are in reasonable shape now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-user(7): More work in progress
Ian Jackson [Wed, 26 Oct 2016 17:19:26 +0000 (18:19 +0100)]
dgit-user(7): More work in progress

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit-user(7): work in progress
Ian Jackson [Sun, 23 Oct 2016 21:27:00 +0000 (22:27 +0100)]
dgit-user(7): work in progress

Used one of the existing tutorials as a template, so currently
contains many lies (including the AUTHOR).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: orig-include-exclude: Move bulk into a lib-*
Ian Jackson [Sun, 23 Oct 2016 00:39:34 +0000 (01:39 +0100)]
Test suite: orig-include-exclude: Move bulk into a lib-*

We're going to want to re-use it as-is.  Well, modulo the introduction
of $test_push_2_hook.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: orig-include-exclude: Refactor: introduce test-push-[12]
Ian Jackson [Sun, 23 Oct 2016 00:00:42 +0000 (01:00 +0100)]
Test suite: orig-include-exclude: Refactor: introduce test-push-[12]

No functional change (diffed two test logs to check).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: orig-include-exclude: Tests orig auto-inclusion/exclusion
Ian Jackson [Sat, 22 Oct 2016 23:17:16 +0000 (00:17 +0100)]
Test suite: orig-include-exclude: Tests orig auto-inclusion/exclusion

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: t-archive-process-incoming: Process everything
Ian Jackson [Sat, 22 Oct 2016 23:16:01 +0000 (00:16 +0100)]
Test suite: t-archive-process-incoming: Process everything

The previous rune wouldn't process any new .origs.  And in fact there
is no good reason to restrict this.

certainly not right now, because right now we are going to want to
process whatever is in incoming so that the orig-include-exclude test
can easily see what dgit push uploaded.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoAutomatically calculate which .origs are required
Ian Jackson [Sat, 22 Oct 2016 23:09:22 +0000 (00:09 +0100)]
Automatically calculate which .origs are required

* Spot if any of our .origs have different hashes to the archive's
* Update the .changes to have the set of .origs that the archive doesn't

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Switch by default archive access method to dummycatapi
Ian Jackson [Sat, 22 Oct 2016 23:08:16 +0000 (00:08 +0100)]
Test suite: Switch by default archive access method to dummycatapi

Now dgit can, during the test suite, make file_in_archive queries,
without exploding.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodummyapicat: New archive query method
Ian Jackson [Sat, 22 Oct 2016 23:05:07 +0000 (00:05 +0100)]
dummyapicat: New archive query method

Like ftpmasterapi but knows that actually behind the scenes it's just
mostly cat.  Ths is relevant because file_in_archive_dummycatapi has
to be different.

(This is because the test suite can't sensibly predict what queries
dgit might make, because the relevant bits of the test suite don't
actually really know what .origs might be supposed to exist.)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoSome archive queries: Remove prototypes
Ian Jackson [Sat, 22 Oct 2016 23:03:46 +0000 (00:03 +0100)]
Some archive queries: Remove prototypes

That makes these easier to reuse for another method.  No functional
change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodopush: Break out $changes variable
Ian Jackson [Wed, 19 Oct 2016 23:24:16 +0000 (00:24 +0100)]
dopush: Break out $changes variable

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodopush: Move $upstreamversion setting out to give it wider scope
Ian Jackson [Wed, 19 Oct 2016 23:23:17 +0000 (00:23 +0100)]
dopush: Move $upstreamversion setting out to give it wider scope

No functional change yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years ago@files_csum_info_fields: Provide ftpmaster api database field name
Ian Jackson [Wed, 19 Oct 2016 23:22:09 +0000 (00:22 +0100)]
@files_csum_info_fields: Provide ftpmaster api database field name

No functional change as nothing looks here yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoarchive_query: Provide file_in_archive methods
Ian Jackson [Wed, 19 Oct 2016 23:21:35 +0000 (00:21 +0100)]
archive_query: Provide file_in_archive methods

No functional change as no callers yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoarchive_query: Support further arguments to methods
Ian Jackson [Wed, 19 Oct 2016 23:21:14 +0000 (00:21 +0100)]
archive_query: Support further arguments to methods

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoapi query: Provide ability to tolerate 404
Ian Jackson [Wed, 19 Oct 2016 21:57:09 +0000 (22:57 +0100)]
api query: Provide ability to tolerate 404

This is useful for backward-compatibility with earlier ftpmaster api
versions.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Test --new in split brain mode
Ian Jackson [Sun, 30 Oct 2016 14:34:57 +0000 (14:34 +0000)]
Test suite: Test --new in split brain mode

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoSplit brain mode: Fix --new. Closes:#842354.
Ian Jackson [Sun, 30 Oct 2016 14:36:04 +0000 (14:36 +0000)]
Split brain mode: Fix --new.  Closes:#842354.

Test $archive_hash for undef early enough.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agochangelog: start 2.9~
Ian Jackson [Tue, 25 Oct 2016 16:37:22 +0000 (17:37 +0100)]
changelog: start 2.9~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agochangelog: Finalise 2.8 archive/debian/2.8
Ian Jackson [Tue, 25 Oct 2016 16:29:35 +0000 (17:29 +0100)]
changelog: Finalise 2.8

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agobuild modes handling: Check for stray .changes on all split brain build entries
Ian Jackson [Tue, 25 Oct 2016 15:58:37 +0000 (16:58 +0100)]
build modes handling: Check for stray .changes on all split brain build entries

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agobuild changes handling: Break out midbuild_checkchanges
Ian Jackson [Tue, 25 Oct 2016 15:58:12 +0000 (16:58 +0100)]
build changes handling: Break out midbuild_checkchanges

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: build-mode-*: Check that right .changes comes out.
Ian Jackson [Tue, 25 Oct 2016 15:04:19 +0000 (16:04 +0100)]
Test suite: build-mode-*: Check that right .changes comes out.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agobuild changes handling: Run mergechanges when needed in non-sbuild build modes
Ian Jackson [Tue, 25 Oct 2016 15:00:50 +0000 (16:00 +0100)]
build changes handling: Run mergechanges when needed in non-sbuild build modes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agobuild changes handling: Introduce postbuild_mergechanges
Ian Jackson [Tue, 25 Oct 2016 14:05:44 +0000 (15:05 +0100)]
build changes handling: Introduce postbuild_mergechanges

Affects only the `sbuild' subcommand.

Mostly code motion.

Other changes include:
 * Provide in_parent, and use it.
 * "sbuild" changed to "build" in the msg_if_onlyone failure message
 * Unapply patches before merging changelogs
 * Reorganise so that it is possible to use this code when there
   is only one output changes file.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: bm-*: turn bm-report-source into bm-report-test
Ian Jackson [Tue, 25 Oct 2016 12:44:10 +0000 (13:44 +0100)]
Test suite: bm-*: turn bm-report-source into bm-report-test

No overall functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoabsurd git-apply fallback: defend against debian/patches/series being an unusual...
Ian Jackson [Tue, 25 Oct 2016 12:05:57 +0000 (13:05 +0100)]
absurd git-apply fallback: defend against debian/patches/series being an unusual object, in case dpkg-source doesn't.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agochangelog: Start 2.8~
Ian Jackson [Mon, 24 Oct 2016 01:41:47 +0000 (02:41 +0100)]
changelog: Start 2.8~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agochangelog: Finalise 2.7 archive/debian/2.7
Ian Jackson [Mon, 24 Oct 2016 01:37:48 +0000 (02:37 +0100)]
changelog: Finalise 2.7

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoTest suite: Provide absurd-gitapply test
Ian Jackson [Mon, 24 Oct 2016 01:04:52 +0000 (02:04 +0100)]
Test suite: Provide absurd-gitapply test

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoImport: Allow --force to enable/disable
Ian Jackson [Mon, 24 Oct 2016 01:02:07 +0000 (02:02 +0100)]
Import: Allow --force to enable/disable

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoIgnore unknown force options (with a warning)
Ian Jackson [Sun, 23 Oct 2016 15:56:20 +0000 (16:56 +0100)]
Ignore unknown force options (with a warning)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoProvide --force-dsc-changes-mismatch
Ian Jackson [Sun, 23 Oct 2016 15:55:41 +0000 (16:55 +0100)]
Provide --force-dsc-changes-mismatch

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoProvide --force-unsupported-source-format
Ian Jackson [Sun, 23 Oct 2016 15:47:29 +0000 (16:47 +0100)]
Provide --force-unsupported-source-format

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoImport: Docuemnt absurdity in changelog
Ian Jackson [Mon, 24 Oct 2016 00:25:51 +0000 (01:25 +0100)]
Import: Docuemnt absurdity in changelog

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoImport: Use absurd `git apply' emulation if gbp pq import fails
Ian Jackson [Mon, 24 Oct 2016 00:06:29 +0000 (01:06 +0100)]
Import: Use absurd `git apply' emulation if gbp pq import fails

gbp import can fail due to git apply not understanding patches.
This is #841867 (against dgit).

The underlying problem is #841866 (in gbp pq) which exposes things
like #841865 and #829067 (in git).  I imagine there are other lurking
incompatibilities between git-apply and dpkg-source.

We could in principle reimplement the gbp patch metadata extraction.
But that would be quite tiresome and have its own compatibility
problems.

The real problem is just `git apply'.  (Indeed gbp already tries git
apply without, and then with, a whitespace fix option.)  We work
around the trouble by providing our own implementation of `git apply'.

Specifically:

We try to do things the sane way (just running gbp pq import) first.
If that works, great.  If it doesn't, we put /usr/share/dgit/absurd on
the PATH.  That contains only a sh script called `git'.  This sh
script figures out whether the caller is trying to invoke `git apply'.
If not, it runs the real git.

If the caller wanted git-apply, the absurd git script emulates it
using dpkg-source --before-build.  Conveniently, we know that the
series file will not be touched by patches.  So we can write just the
patch we care about into the series file, and run --before-build,
which applies just that one patch.

The results are committed (minus the .pc), and for the next patch,
dpkg-source sees again a tree with simply a single patch to apply.

We try ordinary gbp pq first because our absurd approach is very slow
on a big tree.  Also we would like to maximise our chances of the
import working.  If git and/or gbp ever work better by themselves, all
of this craziness will simply not happen.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoBuild system substitutions, for absurdities
Ian Jackson [Mon, 24 Oct 2016 00:04:22 +0000 (01:04 +0100)]
Build system substitutions, for absurdities

* Introduce absurddir, which is where the absurdities will go
* Substitute the absurddir into the dgit script during make all
* Install the substituted scripts rather than the originals in make install
* Provide a default in dgit, based on $0
* Clean the substitutions up in make clean

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoDgit.pm: Break out failedcmd_waitstatus
Ian Jackson [Mon, 24 Oct 2016 00:01:58 +0000 (01:01 +0100)]
Dgit.pm: Break out failedcmd_waitstatus

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agoProvide --force-unrepresentable.
Ian Jackson [Sun, 16 Oct 2016 20:02:38 +0000 (21:02 +0100)]
Provide --force-unrepresentable.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit: --force-*: Provide framework
Ian Jackson [Sun, 16 Oct 2016 20:02:03 +0000 (21:02 +0100)]
dgit: --force-*: Provide framework

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit(1): Some more info about --deliberately.
Ian Jackson [Sun, 23 Oct 2016 14:41:00 +0000 (15:41 +0100)]
dgit(1): Some more info about --deliberately.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agodgit(1): Reorder the options, moving more important ones earlier.
Ian Jackson [Sun, 23 Oct 2016 14:38:30 +0000 (15:38 +0100)]
dgit(1): Reorder the options, moving more important ones earlier.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agochangelog: start 2.7~
Ian Jackson [Sun, 23 Oct 2016 14:08:23 +0000 (15:08 +0100)]
changelog: start 2.7~

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