summaryrefslogtreecommitdiff
path: root/dgit
Commit message (Collapse)AuthorAge
* dgit: New fetch algorithm: Fix a messageIan Jackson2016-10-08
| | | | | | This should have been debug output all along. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: Get rid of some pointless outputIan Jackson2016-10-08
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: Import: Add a lot of debuggingIan Jackson2016-10-08
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Import: orig files: cope with signaturesIan Jackson2016-10-08
| | | | | | | Fix up .orig detection to handle .asc's (and other signatures) of .orig components the same way as their tarballs. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Import: orig files: Fix .orig-comp pattern matchIan Jackson2016-10-08
| | | | | | | Fix up .orig detection to correctly allow exactly the right .orig-comp components accorging to dpkg-source(1). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: Entirely new import algorithmIan Jackson2016-10-08
| | | | | | See README.dsc-import (which needs some updating). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: make_commit_text: Some more debugIan Jackson2016-10-08
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: Introduce make_commit_text (nfc)Ian Jackson2016-10-08
| | | | | | No callers yet. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* New import: Print synthesised git commit message a bit earlierIan Jackson2016-10-08
| | | | | | No significant functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Fix up .orig detection to be less trustful of (ambiguous) filenames.Ian Jackson2016-10-08
| | | | | | | | | | | | | | | | | 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>
* New import: Slightly better message in mktree_in_ud_from_only_subdirIan Jackson2016-10-08
| | | | | | | 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>
* New import: mktree_in_ud_from_only_subdir: New $raw parameter (nfc)Ian Jackson2016-10-08
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Fix two calls to chdir without proper error checking.Ian Jackson2016-09-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Do not fail to do some important quilt processing in some --quilt modes.Ian Jackson2016-09-28
| | | | | | | 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>
* Split brain: Check that archive supports "maint", earlierIan Jackson2016-09-26
| | | | | | Otherwise the user will be disappointed shortly. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Overwrite: Support --overwrite without a versionIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: getfield, parsechangelog: Fix two bugs in error reportingIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Overwrite: Refer to $i_arch_v->[0] twice in plain_overwrite_pseudomergeIan Jackson2016-09-26
| | | | | | | | | | | | 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>
* Pseudomerge: pseudomerge_make_commit: Lift up some message generationIan Jackson2016-09-26
| | | | | | | | | 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>
* Overwrite: Fix messages referring to --overwrite-versionIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Overwrite: Document --overwrite=VERSIONIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Overwrite: Provide --overwrite=VERSION optionIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Default config: Switch to new tag format onlyIan Jackson2016-09-26
| | | | | | | 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>
* Ovewrite: Honour $overwrite_version in non-split-brain modeIan Jackson2016-09-26
| | | | | | | 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>
* Pseudomerge: Break out pseudomerge_version_check and _make_commitIan Jackson2016-09-26
| | | | | | | | 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>
* Split brain: Better tag format filteringIan Jackson2016-09-26
| | | | | | | | | 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>
* dgit: infopair tag fetch: Support multiple tagsIan Jackson2016-09-26
| | | | | | No functional change with existing callers. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Break out `infopair' functionsIan Jackson2016-09-26
| | | | | | | | 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>
* Split brain pseudomerge: Test $overwrite_version for definednessIan Jackson2016-09-26
| | | | | | Technically, `0' is a valid version number, but it is falsish. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Split brain: Only send rpush maint-view param if $maintviewheadIan Jackson2016-09-26
| | | | | | | 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>
* dgit: Some extra error reports for wrong split brain modeIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Allow --quilt=dpmIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Fix spelling of "pseudo"Ian Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Turn gc.auto off in our hidden working tree setupsIan Jackson2016-09-26
| | | | | | | | | 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>
* Split brain: Make pseudomergeIan Jackson2016-09-25
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Split brain: Always push the maintainer view tagIan Jackson2016-09-25
| | | | | | | | | | | 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>
* Split brain: Add some debug relating to tagwantsIan Jackson2016-09-25
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Changelog handling: Replace a call to parsechangelog with commit_getclogpIan Jackson2016-09-25
| | | | | | | | This is less code, and takes advantage of the memoisation. No overall functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Changelog handling: No not check out last push any more during raw importIan Jackson2016-09-25
| | | | | | | | | | | 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>
* Changelog handling: Use mergeinfo_getclogp during raw importIan Jackson2016-09-25
| | | | | | No overall functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Changelog handling: Provide commit_getclogp (nfc)Ian Jackson2016-09-25
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Push reorg: Have FF check use dgit view, not HEADIan Jackson2016-09-25
| | | | | | | | 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>
* del_lrfetchrefs: Improve debug output a bitIan Jackson2016-09-25
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Push reorg: Postpone FF checkIan Jackson2016-09-25
| | | | | | | 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>
* Push reorg: Introduce $archive_hash in dopush (nfc)Ian Jackson2016-09-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* fetch_from_archive: Mention that git_fetch_us must be called firstIan Jackson2016-09-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: changedir: use confess, to get a stack traceIan Jackson2016-09-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* fetch_from_archive: Return the hash (and update the comment)Ian Jackson2016-09-18
| | | | | | | | | | 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>
* dgit: Add a couple of commentsIan Jackson2016-09-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Push reorg: Move ff check out of cmd_push into dpush (nfc)Ian Jackson2016-09-18
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>