summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Test suite: Move bm-quirk-sbuild-after-act to lib-build-modesIan Jackson2016-07-16
| | | | This will allow other tests to check dgit sbuild.
* Test suite: build-modes: Move sbuild knowledge to libIan Jackson2016-07-16
| | | | | Teach bm-guess-e-source-e-targets about sbuild, so this knowledge can be reused.
* Test suite: build-modes: Move `build-source' knowledge to libIan Jackson2016-07-16
| | | | | Teach bm-guess-e-source-e-targets about dgit build-source, so this knowledge can be reused.
* Test suite: Break out bm-prep-ownpackage-branchesIan Jackson2016-07-16
| | | | | We are going to want to run some build modes tests on other exciting trees.
* Test suite: quilt gbp: Provide example worktree tarballIan Jackson2016-07-16
| | | | | | | This working tree has some patch queues etc. in it, which will be useful for testing --quilt=gbp. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: unapplied-pq2qc: move into lib as a t- subroutineIan Jackson2016-07-16
|
* Test suite: Provide tests/unapplied-pq2qcIan Jackson2016-07-16
| | | | | Utility script for invoking gbp pq. I think I will want to swallow this into a t-* function in tests/lib.
* Provide 3.0 (quilt) patches-unapplied with .gitignore test caseIan Jackson2016-07-16
|
* Split build: Add a bit more debugging outputIan Jackson2016-07-16
|
* Split brain: Run source build in dgit view directoryIan Jackson2016-07-16
| | | | | And, after the source build is done, copy the resulting files out into the invocation directory's parent, where people expect to find them.
* Split build: Split clean from source build in split build modeIan Jackson2016-07-16
|
* Split brain: some work on integration into the rest of dgitIan Jackson2016-07-16
| | | | | | | | | | | * Move the fast forward die to where we will need to make the synthetic commit, so that the tree equality check is done on the thing we will actually push. * Crash if we are trying to do split brain without split build. (This should never happen.) * Set split build if we need split brain.
* dgit: Rename $suppress_clean to $clean_using_builder (nfc)Ian Jackson2016-07-16
| | | | | This variable name was very confusing. Also, add a comment explaining the semantics.
* Split brain: Quieten dgit-view checkoutIan Jackson2016-07-16
|
* Split brain: introduce quiltmode_splitbrain() (nfc)Ian Jackson2016-07-16
|
* Split brain: Memoise (cache) split brain dgit-view in a reflogIan Jackson2016-07-16
|
* Split brain: Actually get gbp pq output back onto dgit-view branchIan Jackson2016-07-16
| | | | And explain why in a comment.
* Split brain: Transfer gbp-pq patch application output to dgit-view branchIan Jackson2016-07-16
| | | | This code does not work properly yet; it will be fixed soon.
* Split brain: Generate .gitignore patch in deterministic orderIan Jackson2016-07-16
|
* Split brain: Actually generate .gitignore patchIan Jackson2016-07-16
| | | | | | | | | Close our FH onto the file, and run git diff to fill it with the actual diff. Add the file to series. Use git add and git commit to commit the patch to the private git branch. Now most of the code to generate the .gitignore properly is present, I think, but not debugged.
* Split brain: Create debian/patches in case it does not existIan Jackson2016-07-16
| | | | | When we need to make the .gitignore patch, there may not yet be any debian/patches directory.
* Split brain: Add [dgit version ] tag to autogenerated .gitignore patch headerIan Jackson2016-07-16
| | | | So far we still don't generate the patch.
* Split brain: Provide a lot more information to quiltify_splitbrain (nfc)Ian Jackson2016-07-16
| | | | It is going to need this extra info in a moment.
* Split brain: Provide optional $ignorenamesr argument to quiltify_trees_differIan Jackson2016-07-16
| | | | | We are going to need this information to construct the substantive diff for the .gitignores patch.
* Split brain: quiltify_trees_differ: document $ignorenamesrIan Jackson2016-07-16
|
* Split brain: Print $unapplied tree hash to debug log, tooIan Jackson2016-07-16
|
* Split brain: Start work on generating gitignore patchIan Jackson2016-07-16
| | | | Generate a patch header, for now. Still not finished.
* Split brain: Move GIT_COMMITTER_* setting to quiltify_splitbrain toplevel (nfc)Ian Jackson2016-07-16
| | | | | We want this to apply to any commits we use git to make, not just gbp-pq.
* Split brain: Further improvements to split brain patch applicationIan Jackson2016-07-16
| | | | | | * Direct gbp-pq's stdout to /dev/null * Specify GIT_COMMITER_* so that the results are reproducible * Detect .gitignore problem
* Split brain: Pass $clogp to quiltify_splitbrain (nfc)Ian Jackson2016-07-16
| | | | We are going to want this in a moment.
* Split brain: Make clogp_authline capable of returning individual pieces (nfc)Ian Jackson2016-07-16
| | | | | | | | We are going to want this (so that we can set GIT_... variables to the pieces to make git construct commits the way we want). Both current call sites provide scalar context, so no functional change.
* Split brain: Break out $git_authline_reIan Jackson2016-07-16
| | | | | | This will make it a bit easier to reuse it. Actually AFAICT it turns out (looking at the rest of the branch) that this is not needed, but it's nicer for the future I think.
* Split brain: Start work on determining split brain necessityIan Jackson2016-07-16
| | | | | | | | | | | | | | | | | `Split brain' means the situation where `dgit push' makes private commits, to push to the dgit repos server, which are not left on the user's actual branch. Check whether the quilt mode and tree differences, taken together, mean that we need split brain. If we do need split brain, use gbp pq to apply the patch series. .gitignore changes are mishandled, still. And we don't actually follow through much yet. Also, fix a case where quilt mode `apply' hadn't been changed to `unapplied'.
* Split brain: Introduce $diffbits (nfc)Ian Jackson2016-07-16
| | | | | | | Replace ${user,{,un}applied}2${,un}applied with $diffbits->{[HOA]2[HOA]} This encapsulates the info it nicely and makes it easy to pass it to quiltify_splitbrain, which is going to need it.
* Split brain: quiltify_trees_differ: Improve doc commentIan Jackson2016-07-16
|
* Split brain: Rename quilt mode `apply' to `unapplied'Ian Jackson2016-07-16
|
* Split brain: Start introducing gbp (split brain) quilt modeIan Jackson2016-07-16
| | | | | | | | | | | * Replace quilt_could_gbp with new calculation based on three calls to quiltify_trees_differ. * Reworked messages about quilt differences. * Start to provide the `gbp', `apply' and `dpm' quilt modes. Currently we crash with a die if any of these are used. Nevertheless, we allow `gbp' and `apply' to be specified.
* Split brain: Make quiltify_trees_differ clevererIan Jackson2016-07-16
| | | | | | | | Have it be able to explain what was different, by returning a bitmask. Update the call sites. Incidentally, fix a bug where .gitignores other than in the toplevel would not be ignored when they ought to have been.
* Split brain: Include debian/tests/control in fake dscIan Jackson2016-07-16
| | | | | | Found this in a commit "WIP SPLIT BRAIN NEW DIFFS SEEM GOOD". Not sure why (I thought) it was needed. Maybe it should be reverted, but it's probably harmless.
* Split brain: Improve quiltify() messageIan Jackson2016-07-16
| | | | | Actually --quilt=gbp and --quilt=unapplied (well, what's called --quilt=apply here) aren't going to be quite identical.
* Split brain: Move $oldtiptree calculation out of quiltify (nfc)Ian Jackson2016-07-16
| | | | | And pass the result as an argument. Code outside quiltify is going to want this information.
* Split brain: Detect patches-unapplied tree and print a suitable messageIan Jackson2016-07-16
| | | | | | Note that the message refers to `--quilt=gbp' aka `--quilt=apply' which do not exist yet (and which we're going to call something else, later in this series). Oh well.
* Split brain: quiltify_trees_differ supports $ignoregitignore (nfc)Ian Jackson2016-07-16
| | | | We are going to want to handle this specially.
* Split brain: Rename $origtree to $unapplied (nfc)Ian Jackson2016-07-16
| | | | This is clearer.
* Split brain: Capture patches-unapplied tree objectIan Jackson2016-07-16
| | | | | No functional change as yet. But, now the correct value for $origtree is passed to quiltify.
* Split brain: Run dpkg-source --before-build separately (nfc)Ian Jackson2016-07-16
| | | | | | | | We are going to want to capture the patches-unapplied state of the tree as a git tree object. So split out the patch application part of the fake .dsc extraction. No functional change as yet.
* Split brain: Fake .dsc contains d/control and d/changelog tooIan Jackson2016-07-16
| | | | | We will want these because we're going to be doing more exciting dpkg-source and gbp operations etc.
* Split brain: Add $origtree argument to quiltify (nfc)Ian Jackson2016-07-16
| | | | Currently not used, nor any sensible value passed.
* Split brain: Document the planIan Jackson2016-07-16
|
* Split brain: Make git tree in fake sooner (nfc)Ian Jackson2016-07-16
| | | | No overall functional change.