summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* dgit: Move clean_tree_checkIan Jackson2018-10-13
| | | | | | Code motion. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Rorganise dpkg-source[-d] clean implementationIan Jackson2018-10-13
| | | | | | | | This will make it easier to introduce new variants. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Abolish obsolete variable $clean_using_builderIan Jackson2018-10-13
| | | | | | | | Nothing ever sets this to a trueish value. Abolish it. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Reorganise cleaning in build_prepIan Jackson2018-10-13
| | | | | | | | | | | | | | | 1. Replace the open-coded $includedirty with the equivalent building_source_in_playtree(), because the latter is what we actually care about here. 2. Reformat into if blocks. 3. Introuce and call clean_tree_check (currently a no-op). Now, writing clean_tree_check will be part of fixing #910705. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Honour new .clean-mode-newer access config optionIan Jackson2018-10-13
| | | | | | | This will allow us to extend the set of clean modes without causing irresolvable compatibility problems for users. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Put (?: ) around $cleanmode_re and use qr{}.Ian Jackson2018-10-13
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Drop (?!\n) from a use of $cleanmode_reIan Jackson2018-10-13
| | | | | | The config machinery now defends us from newlines. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Reject all git config options containing newlinesIan Jackson2018-10-13
| | | | | | | If we find something like this our regexp-based checking approaches are likely to fail and other strange may will go wrong. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Refuse to work if critical files have uncommitted changesIan Jackson2018-10-11
| | | | | | Notably, d/source/format and options, and the forbidden files. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Factor out debian/source/.. in check_not_dirtyIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Break out @forbid in check_not_dirtyIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changedir_git_toplevel: Special error for not in git treeIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Change to git toplevel dir before startingIan Jackson2018-10-11
| | | | | Closes: #910724. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: Move changedir_git_toplevel from git-debrebaseIan Jackson2018-10-11
| | | | | | NFC other than hardcoded qw(git). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: rename_link_xf: Avoid copying if src is a link to dstIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: rename_link_xf: Always use cpIan Jackson2018-10-11
| | | | | | If we use mv on a symlink, it moves the link, not the file. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: rename_link_xf: Minor style fixIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Handle EXDEV when putting in place output sourceIan Jackson2018-10-11
| | | | | | | | Replace a rename call with rename_link_xf, and change the subsequent error handling to use $@ iff appropriate. Closes: #910730. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Add missing error check in single-debian-patch handlingIan Jackson2018-10-11
| | | | | | | We called rename here without checking the error at all. Handle ENOENT in case dpkg-source makes no patch. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Handle EXDEV when saving origsIan Jackson2018-10-11
| | | | | | | | | Replace two link calls with rename_link_xf, and change the subsequent error handling to use $@ iff appropriate. Part of the fix to #910730. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: Provide rename_link_xfIan Jackson2018-10-11
| | | | | | This will be used for cross-filesystem support. No callers yet. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Forbid source building with --include-dirty non-.. bpdIan Jackson2018-10-11
| | | | | | | | Right now, this does bizarre damage to .. Fixing this is very hard without bpd support in dpkg-source. Closes: #910725. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quilt linearisation: Stop at debian/source/format changesIan Jackson2018-10-11
| | | | | | | Traversing a change of source format will not end well. Discovered this possibility while investigating #910687. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Replace mention of alioth by salsaIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Fix spelling errors etc. in messagesIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit-sponsorship(7): Fix spelling errorIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(7): Fix spelling errorsIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(1): Fix spelling errorsIan Jackson2018-10-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Avoid crash if branch_is_gdr finds an origin commitIan Jackson2018-10-11
| | | | | | Closes: #910687. Reported-by: Mattia Rizzolo <mattia@debian.org> Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Dgit.pm: git_cat_file: When passed undef, crash with \n at endIan Jackson2018-10-09
| | | | | | | | | Interpolating $objname into this string means that the crash occors before "GCFF>| " has been "printed" - but actually sits in a stdio buffer, waiting to appear after the output from confess. Reported-by: Mattia Rizzolo <mattia@debian.org> Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 7.1~Ian Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: changes for 7.0, and finalisedebian/7.0archive/debian/7.0Ian Jackson2018-10-04
| | | | | | Based on output from gbp-dch. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* make i18nIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: Provide `i18n-update' target in toplevel MakefileIan Jackson2018-10-04
| | | | | | With a convenience alias `i18n'. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po: Rename `all-po' target to `pofiles'Ian Jackson2018-10-04
| | | | | | I think this is more conventional. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: Fix reference to nonexistent translated-always targetIan Jackson2018-10-04
| | | | | | | This -always suffix was replaced with the use of .PHONY during development (and the result squashed), but this one was missed. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: merges: Make warnings of lossage less overblownIan Jackson2018-10-04
| | | | | | | | In particular, everyone's gdr (if it's new enough) should cope with the generated merged-breakwaters commits. And there are at least a couple of tests now, so the risks of total craziness are lower. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: gdr-makepatches7: Test dgit with missing git-debrebaseIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Do not sometimes crash in quilt-fixup if git-debrebase missingIan Jackson2018-10-04
| | | | | | Closes:#910221. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* test suite: gdr-makepatches7: Fix test for broken git-debrebaseIan Jackson2018-10-04
| | | | | | | | | | | dgit should treat git-debrebase not existing the same way as it exiting 7 (which in fact, is the same way it treats it succeeding). We are going to fix that. But first we need to make this test case not expect dgit to break in this situation. To test dgit with an actually *broken* git-debrebase, we specify `false' instead. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* po4a: dummy test case git-debrebase_5.en_US.po: Abolish againIan Jackson2018-10-04
| | | | | | | Though this was a useful test, and having this in the git history is useful, these files are, now, a distraction. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* po4a: dummy test case git-debrebase_5.en_US.po: Add a stringIan Jackson2018-10-04
| | | | | | | | | | | Change just one string for testing. I have verified that when the resulting package is installed, LC_MESSAGES=en_US.UTF-8 man 5 git-debrebase produces a manpage saying `reorganized' where previously it said `reorganised', as expected. Ie the translation machinery works. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* po4a: dummy test case git-debrebase_5.en_US.po: CreateIan Jackson2018-10-04
| | | | | | | | | | | | | | | | | | | | | This is the result of following the instructions in po4a/README on how to start a translation. For economy I have committed only this one new .po file, even though po4a generated loads and normally a translator would therefore send a PR with one file per document. This is part of testing that the machinery works. It is not practical to make this a proper test case, but I can at least leave records in the git history of how to do things. This change results in that one manpage actually being generated and installed, although it is very similar to the untranslated one. I have verified that unless the translated manpages line in debian/git-debrebase.install is uncommented, the package build now fails, which is reassuring, because it means that when we get a real translation we can't forget to actually ship it. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* po4a: Makefile: Honour PO4A and use i18n-common.makeIan Jackson2018-10-04
| | | | | | No functional change unless PO4A is in the environment. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: debian/rules: Install translated documentsIan Jackson2018-10-04
| | | | | | | | | XXX I have tested this by creating a git-debrebase_5.en_US.po containing one translation, forcing -k0 (in list-documents), uncommenting the two .install file entries, installing the resulting package, and asking for Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* po4a: Run po4a to generate .pot files and commit the resultIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: Add a symlink to po/READMEIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: Add a test that po4a.cfg is up to dateIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: Add the translated output to the global .gitignoreIan Jackson2018-10-04
| | | | | | Since that is where it ends up (for path convenience reasons). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* i18n: po4a: Run `make po4a.cfg' and commit the resultIan Jackson2018-10-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>