summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* changelog: finalise 10.0debian/10.0archive/debian/10.0Ian Jackson2022-09-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: Document changes since 9.16Ian Jackson2022-09-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: This is going to be 10.xIan Jackson2022-09-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit push: Add a test that we can make it mean push-sourceIan Jackson2022-09-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(1): Add caveats to --dry-run and --damp-runIan Jackson2022-09-04
| | | | | Closes: #973896 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit(1): Demote --dry-run and --damp-runIan Jackson2022-09-04
| | | | | | Code motion. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* docs: Update for changes to dgit push-*, and recommend push-sourceIan Jackson2022-09-04
| | | | | | | | | | | | | In command line runes and examples, generally change to "dgit push-source". In running text whwere we talk about "push or push-source", change to "push-built or push-source". In running text where we talk loosely about "push", leave it that way. Closes: #992606 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* docs: dgit(7): Update for change to dgit push-*Ian Jackson2022-09-04
| | | | | | | We speak here of "dgit push-*" when we mean "push-source or push-built or push". Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit push: Update testsIan Jackson2022-09-04
| | | | | | | | | | | | Change the global test git config to reject plain "git push". Update almost all tests to use "push-built". In some cases, change to using "push-source". In one case (chosen essentially arbitrarily), use the config override and continue using push to mean push-built. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit push: Make it warn (by default)Ian Jackson2022-09-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit push-*: Provide push-built; make push be an aliasIan Jackson2022-09-04
| | | | | | | | | | No overall chagne in behaviour since in this commit the default configuration is "built". However, the documentation already anticipates the change to add the warning. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* quiltify_trees_differ: Fix comment to reflect what we do nowIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: unrepresentable check: Restrict occurrence of LATE:Ian Jackson2022-09-03
| | | | | | | | | This represents a poor outcome which happily no longer occurs unless the user is using the deprecated-by-us "single-debian-patch" features. For more discussion see comments in quilt_fixup_dpkgsource_singlepatch. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: unrepresentable check: Remove BUILD: outcome caseIan Jackson2022-09-03
| | | | | | This represents a poor outcome which happily no longer occurs. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* docs: No longer recommend single-debian-patch anywhereIan Jackson2022-09-03
| | | | | | See #1018984. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Provide --quilt=singleIan Jackson2022-09-03
| | | | | | | This is to replace single-debian-patch. Closes: #1018984 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit; Pass --include-removal to dpkg-source -bIan Jackson2022-09-03
| | | | | | | Now, with single-debian-patch, we can still handle file removals. (This may fix other corner cases too.) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: unrepresentable check: Don't tolerate symlink creationIan Jackson2022-09-03
| | | | | | | | | | | | git diff can represent changes to symlinks, but dpkg-source uses diff(1) to apply changes, and git diff cannot. The result if we permit them is that we end up making source packages that can't be built, or aren't treesame to our HEAD. Reject this early. This resolves the error handling regression in dgit: quilt fixup: Don't use dpkg-source --commit, but git diff Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: unrepresentable check: Normalise the mode for execIan Jackson2022-09-03
| | | | | | | | | | | | | Now we use git diffs, which can represent changes to the executability of files. dpkg-source uses diff(1) to apply these. So it all works. Handle this by normalising the +x bits before seeing if the mode changed. Now we properly support executable files. Closes: #995056 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quilt fixup: Remove some now-unneeded "git checkout"Ian Jackson2022-09-03
| | | | | | | | | quiltify_make_dpkg_patch now uses git diff which doesn't require us to update the working tree. We still need to do it at the end, because the next steps expect it. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quilt fixup: Don't use dpkg-source --commit, but git diffIan Jackson2022-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | There are many things that dpkg-source can successfully extract, but which it can't create. (This is because dpkg-source largely delegates application to diff(1), and diff can do many more things nowadays.) Most real packages were made with git-format-patch or equivalent nowadays, so use of these features is common. (Hence #949675 and #995056, where even glibc has patches that dpkg-source cannot make.) Right now the practical consequences are: * Creating an executable file is fixed. This actually completes the work for #949675. * Creating a symlink has a regression in the error handling. Previously, dpkg-source --commit failed during quilt fixup. Now, we happily git diff which generates a patch that dpkg-source can't apply. We're going to fix this soon by aligning the representable change checking with reality. * It's faster and less complicated. Closes: #1018143 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quiltify_make_dpkg_patch: Pass git treeish'sIan Jackson2022-09-03
| | | | | | It will need these for running git diff. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quiltify_make_dpkg_patch: RenameIan Jackson2022-09-03
| | | | | | This is going to stop using dpkg-source. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests: unrepresentable: Add test case for adding executable fileIan Jackson2022-09-03
| | | | | | | | | | | | | | | | | | A test case like this was removed in a0ac573f8359 dgit: tolerate making quilt patches creating +x files That removal was a mistake. We should have changed the test outcome. In fact, right now the test outcome is that we can't in fact make new patches like this, because dpkg-source can't. When we try, we createa source package which doesn't represent our git tree. However, dpkg-source can *apply* such patches if they already exist. In #949675, there was an *existing* patch with this property. We don't test for this separately, and never have. Instead, I propose to make all dpkg-source-applicable patches creatable by dgit. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: quilt_fixup_dpkgsource_singlepatch: Add bug commentaryIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests: Test dpkg-source debian-single-patch with strange changesIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests: unrepresentable: Prep for richer bahvioursIan Jackson2022-09-03
| | | | | | | | | | | | | We are going to want to run these tests in different modes, and the results might vary between mode. So encode the expected results in the *arguments* to the sub-test finish subroutine (which we rename). The filenames go on the sub-test start subroutine. finish is going to gain features. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Rename quilt_fixup_dpkgsource_singlepatch and add commentIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: commentary: improve a diagramIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Break out quiltify_check_unrepresentableIan Jackson2022-09-03
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Dpkg::Source::Package: Fix require_valid_signature optionIan Jackson2022-09-03
| | | | | | | | | Dpkg::Source::Package::new takes both %opts and `options`, one nested within the other. Closes: #964286 Suggested-by: Guillem Jover <guillem@debian.org> Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dry run: Improve a message - fixupIan Jackson2022-08-25
| | | | | | Fix for "invalid variable interpolation" in i18n. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dry run: Do two more operations in the playtreeIan Jackson2022-08-24
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dry run: Gate two rename callsIan Jackson2022-08-24
| | | | | | These are operating on bpd etc., which they shouldn't with dry run. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dry run: Improve a messageIan Jackson2022-08-24
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 9.17~Ian Jackson2022-05-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 9.16debian/9.16archive/debian/9.16Ian Jackson2022-05-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: Document further changes for 9.16Ian Jackson2022-05-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git-debrebase: convert-from-dgit-view: turn off ignore-newIan Jackson2022-05-28
| | | | | | | | | Pass this option in the place where it's needed. Via the config file so things still work with old gbp. Part of #1005873. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit/gdr: playtrees: Provide function for gbp.confIan Jackson2022-05-28
| | | | | | | git-debrebase wants to mess with this. The config file is a way to pass options that doesn't rely on them actually being supported. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests: gdr: Provide a way to pass --diagnoseIan Jackson2022-05-28
| | | | | | I wanted this to debug gdr-import-dgitview wrt #1005873. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit/gdr: playtrees: Provide a gbp.confIan Jackson2022-05-28
| | | | | | | | | | | | | | | | This lets us override certain settings to make sure gbp behaves the way we want. So far, the only setting is "--ignore-new = false" which is there solely to catch bugs. As I wrote in #1005873 The difficulty [in this bug] is just the .pc directory. Perhaps dgit ought to remove it or move it aside, before running gbp pq. If we did that then we might want to explicitly *enable* the new checks. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Move .pc aside while running gbp pq importIan Jackson2022-05-28
| | | | | | | | | The new --ignore-new mode (which is now the default) trips on .pc, which gbp doesn't expect to see. Part of #1005873. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Fix typo in changelog for 9.14.Ian Jackson2022-05-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: start 9.16Ian Jackson2022-01-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: finalise 9.15debian/9.15archive/debian/9.15Ian Jackson2022-01-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* changelog: Document changesIan Jackson2022-01-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests: Update all using tests/update-db-compatIan Jackson2022-01-02
| | | | | | Closes: #1002927. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests/update-db-compat: Call git gcIan Jackson2022-01-02
| | | | | | | We want to pack everything down, as we're going to commit this stuff as tarballs into dgit's permanent history ! Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tests/update-db-compat: Adjust worktrees too.Ian Jackson2022-01-02
| | | | | | Now all the tests pass even with the debhelper that doesn't support 5. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>