summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* 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.
* Split brain: Make prep_ud be able to make a different dir (nfc)Ian Jackson2016-07-16
| | | | We will want this later. No users yet, so no functional change.
* dgit: Add a comment about reason for commit_quilty_patch in pushIan Jackson2016-07-16
|
* Test dgit-repos-policy-debian with multiple (identical, as it happens) ↵Ian Jackson2016-07-16
| | | | existing taints.
* dgit-repos-policy-debian.: fix git-cat-file-handling with multiple taints in ↵Ian Jackson2016-07-16
| | | | db (!).
* dgit-repos-policy-debian: Better error handlingIan Jackson2016-07-16
| | | | Show more info when git-cat-file --batch goes wrong
* debian/changelog: Fix a formatting bugIan Jackson2016-07-16
|
* Dgit.pm: Provide hashfile()Ian Jackson2016-07-16
| | | | Call site(s) will come later.
* Test suite: Provide test for nonexistent --always-split-source-buildIan Jackson2016-07-16
| | | | | | | | | We are going to introduce this option soon. It is not supposed to actually have very much overall effect, although it will replumb the way dgit goes about making the source package. So the tests are just the same as the normal tests only with the additional option.
* dgit: Internal change: Support forcing split source buildsIan Jackson2016-07-16
| | | | | | | | | | | | | | | | | | | | | | | | We are going to start handling weirder kinds of git tree, which will require a kind of `split brain': the dgit-using maintainer's view will be a git tree which is not a dgit git tree. dgit will convert them during push. For this to work we will have to have dgit always (in these cases) generate the source package itself (with a separate invocation of dpkg-source). This will involve some dis- and re-entangling of the way we generate arguments to dpkg-buildpackage. We can profitably split this up into this pre-patch, which has no overall functional change for normal users. We do here provide a new --always-split-source-build option which allows the new approach to be explicitly requested. This allows us to use the test suite to not only test that we didn't break any of the existing building strategies, but also that the new strategies all do what we expect. But this option is not really semantically useful for users so we do not document it.
* Test suite: tartree-edit: document gitfetchinfo-merge in usage messageIan Jackson2016-07-16
|
* Test suite: run-all should use make -kIan Jackson2016-07-03
| | | | | Otherwise one failure causes the tests to be abandoned, which is not usually desirable.
* Test suite: lib t-untar of an edited tartree: do not hardlinkIan Jackson2016-07-03
| | | | | | Some of the tools we use, it turns out, do not update properly: they overwrite in place. This can cause inadvertant changes to a tartree opened for editing.
* Tests: tartree-edit: gitfetchinfo: Better commit messages for dirty tressIan Jackson2016-07-03
|
* Test suite: tartree-edit: gitfetchinfo generates remote/TT-HEADIan Jackson2016-07-03
| | | | Simply HEAD is not displayed by gitk, which is rather a shame.
* Test suite: tartree-edit: gitfetchinfo: Remerge on fetchIan Jackson2016-07-02
| | | | | When we unmerged some old A+B merged refs, make a note to merge them again. This saves the user calling gitfetchinfo-merge again.