summaryrefslogtreecommitdiff
path: root/debian
Commit message (Collapse)AuthorAge
* changelog: start 5.4Ian Jackson2018-06-27
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 5.3debian/5.3archive/debian/5.3Ian Jackson2018-06-27
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(7): Add discussion of quilt fixup error messagesIan Jackson2018-06-27
| | | | | | | And add cross-references to dgit(1) and the actual error. Somewhat apropos of #842614. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Better message formatting when --overwrite may be neededIan Jackson2018-06-27
| | | | | | Closes:891031. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: Test ill-advised repeat dgit push after git push failsIan Jackson2018-06-27
| | | | | | | This demonstrates #869146, which is about dgit repeatedly adding the same .orig to the .changes. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Do not introduce duplicate origs in .changes filesIan Jackson2018-06-27
| | | | | | | | | | | | | | | | | | The .dsc and .changes matching code contained roughly $fieldbody =~ / \Q$item\E\n/m but this is wrong when the $fieldbody matches $item in its last line, and there is no trailing newline (as would be usual). This code is obviouslu confused because m affects only ^ $ which don't appear in the regexp. Change these to / \Q$item\E$/m which is what ought to have been, and probably was, intended. In one case we are trying to delete a line. In that case we need to remove the leading newline. The field body always starts with a newline so the use of \n rather than ^ is fine. Closes:#869146. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase new-upstream: Provide better reflog entriesIan Jackson2018-06-26
| | | | | | | | By setting GIT_REFLOG_ACTION. Closes:#901925. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* ref updates: Honour GIT_REFLOG_ACTION everywhere.Ian Jackson2018-06-26
| | | | | | | | Specifically, every time we call git_update_ref_cmd. Closes:#901935. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 5.3~Ian Jackson2018-06-24
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 5.2debian/5.2archive/debian/5.2Ian Jackson2018-06-24
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: dgit/gdr interop: test make-patches exiting 7Ian Jackson2018-06-22
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: git-debrebase interop: Actually tolerate git-debrebase status 7Ian Jackson2018-06-22
| | | | | | make-patches exiting with status 7 causes $?==7*256, not 7. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: git-debrebase interop: Add a missing debugcmd debugging print.Ian Jackson2018-06-22
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: warn if vcs-git seems out of dateIan Jackson2018-06-21
| | | | | | | Print a warning to stderr on `dgit fetch sid', if your vcs-git remote url disagrees with what's in sid's .dsc. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Provide `update-vcs-git' subcommandIan Jackson2018-06-21
| | | | | | | This is for creating and adjusting the vcs-git remote url. Useful for transition from alioth to salsa. Closes:#902006. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-user(7): Suggest sbuild-debian-developer-setup(1)Sean Whitton2018-06-21
| | | | | | | | | | | | | | | | This will only create the chroot for building packages for the machine's architecture, because sbuild-debian-developer-setup(1) does not have an --architecture option, so sbuild-createchroot(1) will be needed too, hence the 'and'. The nice thing about sbuild-debian-developer-setup(1) is that does fiddly things that a non-expert might forget about, like adding the current user to the sbuild group. So it is still worth recommending even though it does not have an --architecture option. Closes:#895779. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* dgit(1): Clarify that --overwrite does nothing if not needed.Ian Jackson2018-06-21
| | | | | | Closes:#863578. Related to #863576 too. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: --overwrite now no longer crashes if there is no $archive_hashIan Jackson2018-06-21
| | | | | | | | | | Ie there is nothing to overwrite (eg, when used with --new). Instead, it is simply ignored, as it is ignored in situations where the push is fast forward. Closes:#863576. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: Use nproc(1) rather than Sys::CPU.Ian Jackson2018-06-21
| | | | | | | | | This is more portable and does not depend on libsys-cpu-perl being installed. Closes:888496. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Non-noop git fetch is not available with --dry-run, so failIan Jackson2018-06-21
| | | | | | | | | | | | | | | | When fetch or push wants git fetch (other than in a situation where it happes to be a noop) but --dry-run was specified, we would loop with a false coplaint about git fetch. False, because we didn't actually run git fetch so of course it didn't do anything. Instead, fail with an explanation. Closes:#871317. This does not occur, and we do not fail, if git-fetch would be a no-op. We can tell when this is the case, because we use git-ls-remote too. This leads to one suggestion for a workaround for the user, which is to do a not --dry-run fetch first. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Improve message for discrepant quilt fixupIan Jackson2018-06-21
| | | | | | | When quilt fixup fails because of discrepancies, print a git diff rune which will show them. Closes:#865446. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: commit_quilty_patch: Handle other file statuses tooIan Jackson2018-06-21
| | | | | | | | | | | | | | | | In particular, R can occur if all Debian changes have been removed in a package with single-debian-patch, in which case we would fail to commit the patch queue removal. I don't think dpkg-source will remove files in other cases, so this is probably the only actually buggy case. I don't think the other letters are particularly likely but if they occur they should be committed too. I have deliberately excluded U which should definitely not occur. Closes:#893263. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit build: Better message when network is offline.Ian Jackson2018-06-20
| | | | | | | | | When build fails because the archive access fails, mention that this was tried because --since-version was not specified. Closes:#883340. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(1): Mention under `dgit build' that it uses the network.Ian Jackson2018-06-20
| | | | | | Part of the fix for #883340. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 5.2~Ian Jackson2018-06-20
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 5.1debian/5.1archive/debian/5.1Ian Jackson2018-06-20
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: document changes so farIan Jackson2018-06-20
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: suppress gbp pq export outputIan Jackson2018-06-20
| | | | | | Except in case of error. Closes:#901809. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: Trigger on indirect dependenciesIan Jackson2018-06-20
| | | | | | | As discussed on debian-ci. Bug report to request documentation for this in the autopkgtest spec is TBD. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* control file: Fix a typo in the git-debrebase descriptionIan Jackson2018-06-20
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: new-upstream: fix ff check handling of multi-piece upstreamsIan Jackson2018-06-20
| | | | | | | Multi-piece combine commits may have n or n+1 parents, depending on whether the previous new-upstream invocation was snag-free. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase manpages: Fix typos and etc.Ian Jackson2018-06-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 5.1~Ian Jackson2018-06-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 5.0debian/5.0archive/debian/5.0Ian Jackson2018-06-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: git-debrebase: Rename gdr-newupstream-v0 testIan Jackson2018-06-17
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: git-debrebase: Do some tests without dgit installedIan Jackson2018-06-17
| | | | | | | | | | | | | | | We provide a new psuedo-dependency NO-DGIT which throws away the usual default dependency list. We abolish NO-DEFAULT which could not be useful because the tests pretty much all depend on setup/gnupg which (currently, as a workaround for the gnupg2 races) requires chiark-utils-bin for with-lock-ex. There are two tests which don't actually need any interaction with the archive. Mark them accordingly. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: Split into its own packageIan Jackson2018-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | * Provide and use Debian::Dgit::GDR which does the same for @INC as Debian::Dgit:Infra, only for GDR. It's not *entirely* similar as its doc comment talks about ExitStatus too. * In Makefile, split off lots of GDR_* variables and the two targets install-gdr and installdirs-gdr We take no care that only the required manpages are built for each install target; instead, they all go in MANPAGES and `all'. * Add a control file stanza. git-debrebase takes over the dependenc on libfile-fnmatch-perl. We Recommend dgit and gbp. (Even though if you're working with neither the Debian archive nor `3.0 (quilt)', you need neither.) * In rules, add specpkg_install_gdr, to run the Makefile machinery. * In the test dependencies, GDR now means to ask for git-debrebase and also git-buildpackage (for make-patches). libfile-fnmatch-perl is handled via the dependencies of git-debrebase.deb. * Add a .gitignore for the staging area in debian/ Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: enumerate-tests: Refactor dependencies, support NO-DEFAULTIan Jackson2018-06-17
| | | | | | | | This will allow more flexibility in a moment. No users of NO-DEFAULT yet, and no functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* debian/rules: Refactor dgit-infrastructure perl arrangementsIan Jackson2018-06-17
| | | | | | We are going to want to do this for another package too. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: Document gdr, and bump to 5.0~Ian Jackson2018-06-17
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Bail if single-debian-patch needs committing with --quilt=nofixIan Jackson2018-06-16
| | | | | | Also, if the user invokes dgit push with uncommitted debian/patches/. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* exit status: Document in changelog.Ian Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: New test for subcommandsIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-newupstream-v0: new testIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-diverge-nmu-dgit: new testIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-diverge-nmu: new test, not complete yetIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-viagit: new testIan Jackson2018-06-16
| | | | | | | | | | | | | | | | | | | | | Have verified with this: diff --git a/tests/tests/gdr-viagit b/tests/tests/gdr-viagit index 55fe4d74..20576c23 100755 --- a/tests/tests/gdr-viagit +++ b/tests/tests/gdr-viagit @@ -17,6 +17,7 @@ git-debrebase) ;; cat <<'END' >$st #!/bin/sh set -x +export GIT_DIR=$PWD/`git-rev-parse --git-dir` exec "$DGIT_GITDEBREBASE_TEST_REAL" "$@" END chmod +x $st that this would indeed spot at least some problems. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-*: use faketime to control dch datesIan Jackson2018-06-16
| | | | | | | | | This means that the dgit- and gdr-generated commits with dates from changelogs are all adjusted. This makes the gitk in the gdr tests look more like a real one would, so we can see if it's pretty. (It also makes it easier to debug the tests.) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: test suite: gdr-import-dgit: wipIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: gdr-edits: wip new testIan Jackson2018-06-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>