chiark / gitweb /
dgit.git
2 years agodgit: Cope if the archive server sends an HTTP redirect
Ian Jackson [Sat, 8 Jul 2017 17:05:36 +0000 (18:05 +0100)]
dgit: Cope if the archive server sends an HTTP redirect

We achieve this by passing -L to curl.

We also pass an appropriate-seeming --proto-redir, because the curl
manual is not entirely reassuring that following redirections with the
default configuration is safe.

This finally fixes #867185/#867309.  What happens there is that curl
gets a redirect, along with an HTML error document.  curl then exits
with status zero, effectively pretending that the error document is
the resource which was requested.  dgit notices that something is
wrong because the file does not have the expected cryptographic
checksum.

I suspect that there are other download problems which would give a
similar effect.  Sadly the curl manpage doesn't seem to suggest a way
to avoid this.  At least, dgit will never carry on in such a
situation, since it insists that the file has the right hash.  And if
it does have the right hash we don't really care how it was obtained.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: avoid "Use of uninitialized value $got in concatenation"
Ian Jackson [Sat, 8 Jul 2017 16:59:55 +0000 (17:59 +0100)]
dgit: avoid "Use of uninitialized value $got in concatenation"

When dgit wanted to report that a file it downloaded had the wrong
checksum, it would instead crash with this message.  This was due to
complete_file_from_dsc's $got (which is relied on by the callers of
$checkhash) being shadowed inside $checkhash.

This is part of #867185/#867185.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: fix rpush+buildinfo: Transfer buildinfos for signing.
Ian Jackson [Sat, 8 Jul 2017 16:22:53 +0000 (17:22 +0100)]
dgit: fix rpush+buildinfo: Transfer buildinfos for signing.

buildinfos are supposed to be signed.  And, indeed, if they are
present, debsign wants to sign them.  That means they need to be
transferred to the signing end, and back again.

We check that the filename is not totally unreasonable, but do not
attempt to verify it completely.  If there are situations where
unwanted or confusing buildinfos are generated, this is the fault of
the build process.  dgit rpush should, in this respect, do the same as
debsign+dput - ie faithfully sign and upload what the build has
provided.

We do check that the buildinfo doesn't look too much like a .changes,
and mentions the same files as the .changes (insofar as they mention
files in common).  This is a rather nugatory defence against some
kinds of bait and switch attacks.

This is in some sense an incompatible protocol change: if the build
host has a new dgit, and sends buildinfos, an old dgit on the
initiator will declare a protocol violation.  However, the new
protocol elements occur only when needed.  in this situation, the only
way to get things to work at all with the old dgit at either end would
be to strip out the buildinfos, which is obviously undesirable.

Closes:#867693.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agorpush: break out @rfiles in dopush
Ian Jackson [Sat, 8 Jul 2017 15:51:06 +0000 (16:51 +0100)]
rpush: break out @rfiles in dopush

This very slight refactoring makes it easier to add additional files
here, and also factors out the appending of $dryrunsuffix to each one.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.11~
Ian Jackson [Sun, 12 Feb 2017 22:06:03 +0000 (22:06 +0000)]
changelog: start 3.11~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.10 archive/debian/3.10 debian/3.10
Ian Jackson [Mon, 6 Feb 2017 17:49:50 +0000 (17:49 +0000)]
changelog: finalise 3.10

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: Update for docs fixes
Nicholas D Steeves [Sun, 29 Jan 2017 23:01:27 +0000 (16:01 -0700)]
changelog: Update for docs fixes

Signed-off-by: Nicholas D Steeves <nsteeves@gmail.com>
2 years agodocs: Fix typos
Nicholas D Steeves [Sun, 29 Jan 2017 23:00:16 +0000 (16:00 -0700)]
docs: Fix typos

Signed-off-by: Nicholas D Steeves <nsteeves@gmail.com>
2 years agoimport-maintmangle: New test for changelog Maintainer mangling.
Ian Jackson [Sun, 5 Feb 2017 20:34:40 +0000 (20:34 +0000)]
import-maintmangle: New test for changelog Maintainer mangling.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agolib-import-chk: New import_chk_changelog_massage hook
Ian Jackson [Sun, 5 Feb 2017 20:33:47 +0000 (20:33 +0000)]
lib-import-chk: New import_chk_changelog_massage hook

Nothing sets this yet, so no functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: importing: Better handle commas in changelog maintainer fields
Ian Jackson [Sun, 5 Feb 2017 15:22:32 +0000 (15:22 +0000)]
dgit: importing: Better handle commas in changelog maintainer fields

Some maintainers have written commas in the maintainer field of their
changelog entries.  Such changelog entries could not be imported.

clogp_authline had code to replace multiple maintainers (which are
hypothetical right now) into just the first, but that trips on these
maintainers with commas.

Ultimately we should expect that the Maintainer: field from
dpkg-parsechangelog is in (a subset of) RFC5322 recipient field
format.  In that format, any commas would need to be quoted.

So:

If the Maintainer field from dpkg-parsechangelog has a comma which has
no @ or " before it, then we consider it a single old-school
comma-containing maintainer.  If it were intended as multiple
maintainers, then the first maintainer has no email address.  Not
coping properly with that very-hypothetical future seems OK.  We
simply delete the comma, so that the things we record in the git
history are more conservative.

If there is a " we leave things untouched in the hope that this is a
single address, albeit with some quoting.  The alternative would be to
try to use a full RFC5322 parser.  That's quite a risky change.

Perhaps we will revisit this after stretch.

For now this Closes:#852661.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: lib-import-chk: Test commit authorship
Ian Jackson [Sun, 5 Feb 2017 19:45:11 +0000 (19:45 +0000)]
test suite: lib-import-chk: Test commit authorship

Check that commits have smae authorship as appears in the changelog.
(Or, at least, the same authorship set.)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: Do not fail when run with detached HEAD. Closes:#853022.
Ian Jackson [Sun, 5 Feb 2017 14:41:43 +0000 (14:41 +0000)]
dgit: Do not fail when run with detached HEAD.  Closes:#853022.

Specifically:

* Pass -q to git-symbolic-ref.  That means that it doesn't print
  an error message when HEAD is not a symbolic ref (ie, a
  detached head), and it means that the exit status is then 1
  rather than 128.

* If the return value from cmdoutput_errok is undef, check $? (which
  is the exit status <<8) and then simply pass on the undef.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: branchsuite: Break out @cmd
Ian Jackson [Sun, 5 Feb 2017 14:20:15 +0000 (14:20 +0000)]
dgit: branchsuite: Break out @cmd

We are going to need to reuse this to print a proper error message.

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: Strip initial newline from Changes line from dpkg-parsechangelog
Ian Jackson [Sun, 5 Feb 2017 14:11:10 +0000 (14:11 +0000)]
dgit: Strip initial newline from Changes line from dpkg-parsechangelog

so as to avoid blank line in commit messages.  Closes:#853093.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: quilt-useremail: New test for user config copying
Ian Jackson [Sun, 5 Feb 2017 13:17:04 +0000 (13:17 +0000)]
test suite: quilt-useremail: New test for user config copying

Test for #853085.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: Copy several user.* settings from main tree git local config
Ian Jackson [Sun, 5 Feb 2017 13:15:52 +0000 (13:15 +0000)]
dgit: Copy several user.* settings from main tree git local config

Copy to dgit private workarea.  Closes:#853085.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.10~
Ian Jackson [Sat, 4 Feb 2017 14:32:43 +0000 (14:32 +0000)]
changelog: start 3.10~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.9 archive/debian/3.9 debian/3.9
Ian Jackson [Wed, 25 Jan 2017 16:22:28 +0000 (16:22 +0000)]
changelog: finalise 3.9

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): Quote sample clone commands
Sean Whitton [Wed, 25 Jan 2017 16:11:11 +0000 (09:11 -0700)]
dgit-maint-merge(7): Quote sample clone commands

Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): Get git clone url right. Closes:#852609.
Ian Jackson [Wed, 25 Jan 2017 15:49:31 +0000 (15:49 +0000)]
dgit-maint-merge(7): Get git clone url right.  Closes:#852609.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: overwrite-chkclog: test UNRELEASED handling.
Ian Jackson [Wed, 25 Jan 2017 15:46:55 +0000 (15:46 +0000)]
test suite: overwrite-chkclog: test UNRELEASED handling.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit --overwrite: Check $gf->('Distribution')
Ian Jackson [Wed, 25 Jan 2017 15:44:42 +0000 (15:44 +0000)]
dgit --overwrite: Check $gf->('Distribution')

Check that the overwritten version's changelog entry is not
UNRELEASED.

This could easily happen if this release was being made from a git
branch which predates the previous package upload, with working
practices which commit finalised UNRELEASED changelog entries with the
complete version number for the next upload.  (Such practices seem
quite common.)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agopseudomerge_version_check; Break out $gf
Ian Jackson [Wed, 25 Jan 2017 15:42:00 +0000 (15:42 +0000)]
pseudomerge_version_check; Break out $gf

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.9~
Ian Jackson [Wed, 25 Jan 2017 15:26:25 +0000 (15:26 +0000)]
changelog: start 3.9~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.8 archive/debian/3.8 debian/3.8
Ian Jackson [Mon, 23 Jan 2017 16:21:43 +0000 (16:21 +0000)]
changelog: finalise 3.8

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: defdistro-setup: Test that setup-* functions distro selection works.
Ian Jackson [Mon, 23 Jan 2017 16:20:15 +0000 (16:20 +0000)]
test suite: defdistro-setup: Test that setup-* functions distro selection works.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: t-defdistro: Set distro='' too
Ian Jackson [Mon, 23 Jan 2017 16:19:15 +0000 (16:19 +0000)]
test suite: t-defdistro: Set distro='' too

This means that t-defdistro works without t-chain-test and
reinvocation.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agoconfig and suite handling: Make dgit-setup-* work in default distro.
Ian Jackson [Mon, 23 Jan 2017 16:17:23 +0000 (16:17 +0000)]
config and suite handling: Make dgit-setup-* work in default distro.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.8~
Ian Jackson [Mon, 23 Jan 2017 16:18:26 +0000 (16:18 +0000)]
changelog: start 3.8~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agofinalise 3.7 archive/debian/3.7 debian/3.7
Ian Jackson [Sun, 22 Jan 2017 17:30:40 +0000 (17:30 +0000)]
finalise 3.7

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: Documemnt dgit-maint-merge changes
Ian Jackson [Sun, 22 Jan 2017 17:29:09 +0000 (17:29 +0000)]
changelog: Documemnt dgit-maint-merge changes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): updates re #852090: suggestions by Sean
Ian Jackson [Sun, 22 Jan 2017 11:23:29 +0000 (11:23 +0000)]
dgit-maint-merge(7): updates re #852090: suggestions by Sean

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): updates re #852090: suggestions by me
Ian Jackson [Sat, 21 Jan 2017 21:59:55 +0000 (21:59 +0000)]
dgit-maint-merge(7): updates re #852090: suggestions by me

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): updates re #852090: suggestions by me
Ian Jackson [Sat, 21 Jan 2017 20:43:18 +0000 (20:43 +0000)]
dgit-maint-merge(7): updates re #852090: suggestions by me

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): updates re #852090: suggestions by me
Ian Jackson [Sat, 21 Jan 2017 20:33:05 +0000 (20:33 +0000)]
dgit-maint-merge(7): updates re #852090: suggestions by me

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit-maint-merge(7): Fix a typo `detachs'
Ian Jackson [Sat, 21 Jan 2017 18:07:39 +0000 (18:07 +0000)]
dgit-maint-merge(7): Fix a typo `detachs'

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agoMakefile: New %.view target:
Ian Jackson [Sat, 21 Jan 2017 17:47:48 +0000 (17:47 +0000)]
Makefile: New %.view target:

`make dgit-maint-merge.7.view' runs `man -l ...'

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: defdistro-dsd-clone-drs: New test
Ian Jackson [Sat, 21 Jan 2017 11:39:16 +0000 (11:39 +0000)]
test suite: defdistro-dsd-clone-drs: New test

Would have detected #851906 (and hopefully #850521).

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: Document fixes to repos_server_url
Ian Jackson [Thu, 19 Jan 2017 20:05:46 +0000 (20:05 +0000)]
changelog: Document fixes to repos_server_url

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: repos_server_url: Set $access_forpush to 1
Ian Jackson [Thu, 19 Jan 2017 20:03:29 +0000 (20:03 +0000)]
dgit: repos_server_url: Set $access_forpush to 1

In 468edf05661e "dgit: clone-dgit-repos-server: Set $access_forpush"
we set this to 0.

But this is wrong.  The dgit-repos-server is used for pushing, not for
readonly access.  The readonly url may be entirely wrong, and indeed
it is, for Debian.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: repos_server_url: Set $isuite
Ian Jackson [Thu, 19 Jan 2017 20:01:20 +0000 (20:01 +0000)]
dgit: repos_server_url: Set $isuite

We need to set this or access_*() fails.  Set it to a dummy value.
The user will need to specify -d to get the server for a non-default
distro, which is hopefully obvious.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: repos_server_url(): Break out
Ian Jackson [Thu, 19 Jan 2017 20:00:32 +0000 (20:00 +0000)]
dgit: repos_server_url(): Break out

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.7~
Ian Jackson [Thu, 19 Jan 2017 20:00:00 +0000 (20:00 +0000)]
changelog: start 3.7~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.6 archive/debian/3.6 debian/3.6
Ian Jackson [Thu, 19 Jan 2017 01:15:11 +0000 (01:15 +0000)]
changelog: finalise 3.6

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: aptget archive access method
Peter Michael Green [Wed, 18 Jan 2017 23:37:12 +0000 (23:37 +0000)]
dgit: aptget archive access method

Add dummy implementation of file_in_archive_aptget copied from
file_in_archive_dummycat.  Re:#851697.

2 years agoinfrastructure: Do not reject commits with no author/committer name
Ian Jackson [Wed, 18 Jan 2017 18:18:38 +0000 (18:18 +0000)]
infrastructure: Do not reject commits with no author/committer name

But still insist on email address and date).

Peter Green reports that eg 71e128629ec786f3 in upstream xen.git is
such a commit (and is accepted by github).

Closes:#851716.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agoinfrastructure: Properly honour NOCOMMITCHECK policy hook exit status.
Ian Jackson [Wed, 18 Jan 2017 18:17:04 +0000 (18:17 +0000)]
infrastructure: Properly honour NOCOMMITCHECK policy hook exit status.

Closes:#851800.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: downstream-gitless: Test import of .dsc with unsafe url.
Ian Jackson [Wed, 18 Jan 2017 21:35:23 +0000 (21:35 +0000)]
test suite: downstream-gitless: Test import of .dsc with unsafe url.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: downstream-gitless: Test import of .dsc from unknown distro.
Ian Jackson [Wed, 18 Jan 2017 21:35:02 +0000 (21:35 +0000)]
test suite: downstream-gitless: Test import of .dsc from unknown distro.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: git_lrfetch_sane: Take $url, and pass it right value in import
Ian Jackson [Wed, 18 Jan 2017 21:32:33 +0000 (21:32 +0000)]
dgit: git_lrfetch_sane: Take $url, and pass it right value in import

This means we actually use the url from a Dgit .dsc field naming an
unknown distro.  Closes:#851728.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: git_get_config: Use confess, not croak
Ian Jackson [Wed, 18 Jan 2017 21:30:56 +0000 (21:30 +0000)]
dgit: git_get_config: Use confess, not croak

Using croak was simply a mistake.  I always wanted a stack trace.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agoDgit.pm: Call `confess' when shellquote gets an undef arg
Ian Jackson [Wed, 18 Jan 2017 21:28:25 +0000 (21:28 +0000)]
Dgit.pm: Call `confess' when shellquote gets an undef arg

This can happen if a command (eg passed to debugcmd) has an undef
argument.  This turns an undefined warning into an explicit internal
error.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.6~
Ian Jackson [Wed, 18 Jan 2017 18:15:18 +0000 (18:15 +0000)]
changelog: start 3.6~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.5 archive/debian/3.5 debian/3.5
Ian Jackson [Tue, 17 Jan 2017 22:36:28 +0000 (22:36 +0000)]
changelog: finalise 3.5

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: gardening
Ian Jackson [Tue, 17 Jan 2017 13:04:51 +0000 (13:04 +0000)]
changelog: gardening

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Call t-ok.
Ian Jackson [Tue, 17 Jan 2017 13:03:18 +0000 (13:03 +0000)]
test suite: gitattributes: Call t-ok.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: More testing of clone: check for message (#851624)
Ian Jackson [Tue, 17 Jan 2017 13:03:07 +0000 (13:03 +0000)]
test suite: gitattributes: More testing of clone: check for message (#851624)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: clonee: Do setup_new_tree earlier.
Ian Jackson [Tue, 17 Jan 2017 13:01:50 +0000 (13:01 +0000)]
dgit: clonee: Do setup_new_tree earlier.

This avoids printing a spurious warning about actually-defused
gitattributes when cloning.  Closes:#851624.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: More testing of clone: check good clone
Ian Jackson [Tue, 17 Jan 2017 12:59:25 +0000 (12:59 +0000)]
test suite: gitattributes: More testing of clone: check good clone

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: work around git attribute updates bug
Ian Jackson [Tue, 17 Jan 2017 21:52:34 +0000 (21:52 +0000)]
test suite: gitattributes: work around git attribute updates bug

touch af/*, to work around #851713

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: More testing of clone: check sums
Ian Jackson [Tue, 17 Jan 2017 12:55:33 +0000 (12:55 +0000)]
test suite: gitattributes: More testing of clone: check sums

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Start to test clone
Ian Jackson [Tue, 17 Jan 2017 12:54:24 +0000 (12:54 +0000)]
test suite: gitattributes: Start to test clone

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Break out sums_check_broken
Ian Jackson [Tue, 17 Jan 2017 12:53:47 +0000 (12:53 +0000)]
test suite: gitattributes: Break out sums_check_broken

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: Defuse gitattributes in private working area, always
Ian Jackson [Tue, 17 Jan 2017 12:49:44 +0000 (12:49 +0000)]
dgit: Defuse gitattributes in private working area, always

Even if we don't do it in the user's tree because config
setup-gitattributes=false.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: Improve comment left in .git/info/attributes.
Ian Jackson [Tue, 17 Jan 2017 12:45:05 +0000 (12:45 +0000)]
dgit: Improve comment left in .git/info/attributes.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Check that warning does not appear when unexpected
Ian Jackson [Tue, 17 Jan 2017 12:42:39 +0000 (12:42 +0000)]
test suite: gitattributes: Check that warning does not appear when unexpected

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Break out t-dgit-warn-check
Ian Jackson [Tue, 17 Jan 2017 12:37:32 +0000 (12:37 +0000)]
test suite: gitattributes: Break out t-dgit-warn-check

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Break out wd= setting
Ian Jackson [Tue, 17 Jan 2017 12:33:04 +0000 (12:33 +0000)]
test suite: gitattributes: Break out wd= setting

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Test that checkout is good too
Ian Jackson [Tue, 17 Jan 2017 12:30:38 +0000 (12:30 +0000)]
test suite: gitattributes: Test that checkout is good too

2 years agotest suite: gitattributes: Break out sums_check
Ian Jackson [Tue, 17 Jan 2017 12:25:53 +0000 (12:25 +0000)]
test suite: gitattributes: Break out sums_check

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Rename $branch (from $refname)
Ian Jackson [Tue, 17 Jan 2017 12:24:39 +0000 (12:24 +0000)]
test suite: gitattributes: Rename $branch (from $refname)

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Move setting of sums
Ian Jackson [Tue, 17 Jan 2017 12:23:54 +0000 (12:23 +0000)]
test suite: gitattributes: Move setting of sums

Fixes some of the working filenames.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Call t-git-none
Ian Jackson [Tue, 17 Jan 2017 12:19:02 +0000 (12:19 +0000)]
test suite: gitattributes: Call t-git-none

This is preparatory to testing clone.  No significant effect right
now.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Break out origtar= setting
Ian Jackson [Tue, 17 Jan 2017 12:16:06 +0000 (12:16 +0000)]
test suite: gitattributes: Break out origtar= setting

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Fix a ----- message
Ian Jackson [Tue, 17 Jan 2017 12:13:37 +0000 (12:13 +0000)]
test suite: gitattributes: Fix a ----- message

No significant change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Break out dscf= setting
Ian Jackson [Tue, 17 Jan 2017 12:13:17 +0000 (12:13 +0000)]
test suite: gitattributes: Break out dscf= setting

No functional change.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.5~
Ian Jackson [Tue, 17 Jan 2017 12:09:21 +0000 (12:09 +0000)]
changelog: start 3.5~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.4 archive/debian/3.4 debian/3.4
Ian Jackson [Mon, 16 Jan 2017 17:27:50 +0000 (17:27 +0000)]
changelog: finalise 3.4

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: worktrees: Replace references to /home/ian
Ian Jackson [Mon, 16 Jan 2017 15:48:24 +0000 (15:48 +0000)]
test suite: worktrees: Replace references to /home/ian

Replace with references to /nonexistent, to catch inadvertant
accesses.

Now `git-grep /home/ian' produces only one hit - in a commit message,
where it's harmless.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite; drs-push-rejects: Set origin's url
Ian Jackson [Mon, 16 Jan 2017 16:00:21 +0000 (16:00 +0000)]
test suite; drs-push-rejects: Set origin's url

Use an ad-hoc expression which produces the right ext:: rune, as dgit
would.

Closes:#851580.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: start 3.4~
Ian Jackson [Mon, 16 Jan 2017 15:42:48 +0000 (15:42 +0000)]
changelog: start 3.4~

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: finalise 3.3 archive/debian/3.3 debian/3.3
Ian Jackson [Mon, 16 Jan 2017 10:03:28 +0000 (10:03 +0000)]
changelog: finalise 3.3

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: try to guess some attr names from manpage
Ian Jackson [Mon, 16 Jan 2017 01:43:19 +0000 (01:43 +0000)]
test suite: gitattributes: try to guess some attr names from manpage

This may allow the test suite to detect if git gains new attributes.
The worst case is that we add unknown attributes to our test package.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agochangelog: Document gitattributes handling
Ian Jackson [Mon, 16 Jan 2017 01:31:55 +0000 (01:31 +0000)]
changelog: Document gitattributes handling

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit(1): gitattributes: Document dgit-distro.distro.setup-gitattributes
Ian Jackson [Mon, 16 Jan 2017 01:29:54 +0000 (01:29 +0000)]
dgit(1): gitattributes: Document dgit-distro.distro.setup-gitattributes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: Docs and message wordsmithing
Ian Jackson [Sun, 15 Jan 2017 22:45:31 +0000 (22:45 +0000)]
gitattributes: Docs and message wordsmithing

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Check for expected warnings
Ian Jackson [Sun, 15 Jan 2017 22:50:03 +0000 (22:50 +0000)]
test suite: gitattributes: Check for expected warnings

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: Issue a warning on un-defused .gitattributes
Ian Jackson [Mon, 16 Jan 2017 01:11:51 +0000 (01:11 +0000)]
gitattributes: Issue a warning on un-defused .gitattributes

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Remove .git from orig
Ian Jackson [Sun, 15 Jan 2017 22:50:12 +0000 (22:50 +0000)]
test suite: gitattributes: Remove .git from orig

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: test unsetup tree, too
Ian Jackson [Sun, 15 Jan 2017 22:19:55 +0000 (22:19 +0000)]
test suite: gitattributes: test unsetup tree, too

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Test source format 1.0 with diff
Ian Jackson [Sun, 15 Jan 2017 18:24:40 +0000 (18:24 +0000)]
test suite: gitattributes: Test source format 1.0 with diff

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: Reorganise and improve, still wip
Ian Jackson [Sun, 15 Jan 2017 12:19:35 +0000 (12:19 +0000)]
test suite: gitattributes: Reorganise and improve, still wip

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agotest suite: gitattributes: new test, still wip
Ian Jackson [Sat, 14 Jan 2017 23:08:37 +0000 (23:08 +0000)]
test suite: gitattributes: new test, still wip

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: dgit: setup-gitattributes: New action
Ian Jackson [Sun, 15 Jan 2017 22:45:09 +0000 (22:45 +0000)]
gitattributes: dgit: setup-gitattributes: New action

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: Suppress transformations in our cloned trees
Ian Jackson [Mon, 16 Jan 2017 01:10:03 +0000 (01:10 +0000)]
gitattributes: Suppress transformations in our cloned trees

The user wants a checkout of the actual source tree, so that their
checkout and the source package are identical.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: Suppress transformations in ud
Ian Jackson [Mon, 16 Jan 2017 01:05:37 +0000 (01:05 +0000)]
gitattributes: Suppress transformations in ud

We want all of our own manipulations to be unaffected by gitattributes
transformations, so that the imported git *trees* are identical to the
source packages.  (Ie, if transformations are in effect, the
*checkout* of such a tree might not be identical to the source
package.)

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: gitattributes: Provide setup_gitattrs (internal function)
Ian Jackson [Mon, 16 Jan 2017 01:04:25 +0000 (01:04 +0000)]
dgit: gitattributes: Provide setup_gitattrs (internal function)

This is the idempotent function which adds the appropriate runes to
.git/info/attributes.  No callers yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agogitattributes: dgit(7): Document our approach and rationale
Ian Jackson [Mon, 16 Jan 2017 01:07:50 +0000 (01:07 +0000)]
gitattributes: dgit(7): Document our approach and rationale

This is not properly implemented yet.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2 years agodgit: import_dsc: Break out import_dsc_result
Ian Jackson [Sun, 15 Jan 2017 18:36:47 +0000 (18:36 +0000)]
dgit: import_dsc: Break out import_dsc_result

No functional change other than slight change to messages.

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