summaryrefslogtreecommitdiff
path: root/dgit
Commit message (Collapse)AuthorAge
* dgit: Delete the playground on success, by defaultIan Jackson2024-02-09
| | | | | | | | | | Also add a --keep-playground option to control this. I haven't done this for git-debrebase, since its playgrounds are going to be much smaller. dgit's can contain orig tarballs etc. Closes: #1056103 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Don't rebind dateIan Jackson2023-11-10
| | | | | | | | | | | | This generates a warning "my" variable $date masks earlier declaration in same scope at /home/ian/things/Dgit/dgit/dgit line 2190. Possibly we should disable this warning, but it might be saving us from other kinds of bugs. (In Rust where I have gained this rebinding habit, the type system will generally spot mistakes.) Closes: #1055528 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: When importing origs, but changelog is busted, fall backIan Jackson2023-10-29
| | | | | | | Fall back to using data from top changelog entry. Closes: #1054630 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Break out import_r1authline and change variable plumbingIan Jackson2023-10-29
| | | | | | | | | | | Move the dicey parts into their own function. If there are no origs, or import_r1authline didn't obtain the top changelog entry, just call parsechangelog. No overall functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* clogp_authline: Pass through the changelog timezone to the commitIan Jackson2023-10-29
| | | | | | | This is more stable: generated commits don't any more depend on the prevailing timezone at the time of the conversion. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* clogp_authline: Break out Date field handlingIan Jackson2023-10-29
| | | | | | Code motion. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Detect tar-ignore in d/s/optionsIan Jackson2023-09-02
| | | | | | | | | | Distinguish situations where it's going to fail (until #908747 is fixed), from ones where we are probably working with a defective tree produced by importing a defective .dsc produced from a non-dgit upload. Closes: #1050709 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* get_source_format: Return an arrayIan Jackson2023-09-02
| | | | | | These options can accumulate. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* get_source_format: Call once somewhere, rather than twiceIan Jackson2023-09-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* get_source_format: Just save format in callers that don't need optionsIan Jackson2023-09-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* get_source_format: Allow callers to just get the format, not optionsIan Jackson2023-09-02
| | | | | | Use wantarray to distinguish the cases. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* d/source/options: Fix parsing to look for = not #Ian Jackson2023-09-02
| | | | | | | | | | But this is still not sufficient, because some dpkg-source options accumulate, so we mustn't just assign them. No change with existing code since right now we only test for single-debian-patch. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Prevent pushing old versionsIan Jackson2023-09-02
| | | | | | | | Bail out if the changelog version we are uploading is not strictly newer than the .dsc version in the archive. Closes: #1050711 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Prevent pushing old versions (prep)Ian Jackson2023-09-02
| | | | | | | | | Allow (but ignore) the --force option we're going to use. Apply it to two tests which play a bit fast and loose, (ie, which omit calls to dch to update the changelog version.) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Fix a minor formatting errorIan Jackson2023-09-02
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Use the old /updates security map for buster (Closes: #1050179)Matthew Vernon2023-08-22
| | | | | | | | | | | | | | The suite-map and suite-rmap for debian-security are necessary for the pre-bullseye layout of the security.debian.org archive. Since bullseye (i.e. after buster), the archive layout has changed, and these mappings are no longer necessary (indeed, they cause dgit clone to fail to work with bullseye and later security suites). Buster is the oldest suite still available on security.debian.org, so this is the only suite we still need the mapping for. Signed-off-by: Matthew Vernon <mvernon@wikimedia.org>
* dgit: Pass --no-source-only-changes to sbuildIan Jackson2023-06-14
| | | | | | | | Now that bookworm is released, this is now supported even by old-old-stable. Closes: #904969 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit, dgit-maint-merge(7): Merge README.source text into gen. headerSean Whitton2023-02-22
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* Suppress unwanted messages from git-rebase.Ian Jackson2023-02-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: dsc import: Launder the series file before feeding it to gbpIan Jackson2023-02-04
| | | | | Closes: #1030093 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Fix a call to die to be confess, if an unexpected copy failsIan Jackson2023-02-04
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Fix confusing appending of gbp-pq-outputIan Jackson2023-02-04
| | | | | | We don't want to inherit some prior output. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Add TODO about inappropriate translation of SubjectIan Jackson2023-01-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query: Declare that Debian supports thisIan Jackson2022-12-29
| | | | | | | | | This commit should be published in a dgit release after the corresponding server side code is deployed. Closes: #944855 Closes: #1027186 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (fix): Use deliberately()Ian Jackson2022-12-28
| | | | | | | This will allow the tests to bypass the local checks when they want to. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: deliberately: Centralise processing of TEST-dgit-onlyIan Jackson2022-12-28
| | | | | | | Make this apply to every call to deliberately(). (Now it is wrong to not use deliberately().) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (fix): Pass suite in check and use it for HEADIan Jackson2022-12-28
| | | | | | This now produces the same answers as push would. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Do hint addition in common message prepIan Jackson2022-12-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Use common message generator in dgitIan Jackson2022-12-28
| | | | | | The messages now come out the same. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects protocol: Reintroduce time, handle optionalityIan Jackson2022-12-28
| | | | | | | | | | | | According to the poldb schema, gitobjtype is optional, so make it optional in the protocol too. Reintroduce time, as we're about to need it for calling the common message construction. Clarify what optionality means and implement it properly. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Check policy-query-supported-ssh valueIan Jackson2022-12-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Add some printdebugsIan Jackson2022-12-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Check overrides firstIan Jackson2022-12-28
| | | | | | This can save on a git-cat-file. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* tainted-objects (cleanup): Tidy up an error messageIan Jackson2022-12-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query tainted-objects: Add hint to spec and clientIan Jackson2022-12-28
| | | | | | | | | We're going to want to print a hint. (In this case, the message that would be printed to stderr if we rejected the actual push.) Add it to the spec, and to the client code. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query: dgit: Fix code formattingIan Jackson2022-12-28
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query: dgit: Mention tainted object typeIan Jackson2022-12-28
| | | | | | And change the data structure to support this. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* policy-client-query: dgit: use tainted-objects queryIan Jackson2022-12-28
| | | | | | | | | | Add the config for controlling policy-client-query calls. For now we default to "unknown" everywhere. If supported, check if tainted objects are reachable from $dgithead, and report them. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Rename auto quilt mode to try-linearIan Jackson2022-12-26
| | | | | | | | | | "auto" makes it sound like this automatically selects the right quilt mode, which is far from true. Don't even document "auto" any more, but accept it for compatibility. Closes: #935762 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Scan for duplicated orig tarballs with different namesIan Jackson2022-12-26
| | | | | Closes: #993769 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: dotdot_bpd_transfer_origs: Promote calculation of $dotdotIan Jackson2022-12-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* include-binaries: Silently tolerate mentions of debian/Ian Jackson2022-12-26
| | | | | Closes: #1026918 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* include-binaries handling: Tiny refactoringIan Jackson2022-12-26
| | | | | | | Hoist the !@bpath check so we can add another statement here with different behaviour. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Make rpush be a configurable alias like pushIan Jackson2022-12-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Provide rpush-built as an (as yet undocumented) aliasIan Jackson2022-12-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Break out some_push_aliasIan Jackson2022-12-11
| | | | | | Preparation for rpush-built, rpush-source. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: implement rpush-sourceIan Jackson2022-12-11
| | | | | Closes: #974012 Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: rpush: Move responder_send_command into pre_ hookIan Jackson2022-12-11
| | | | | | | | | The main program does little between these: recording and checking the cwd, mainly, and slurping the config. But this comman doesn't depend on the config and doing it earlier will simplify things when we have rpush-source too. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: Fix "unknown operation" message to be orig kebab caseIan Jackson2022-12-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* dgit: polluted source-only changes: tidyingIan Jackson2022-12-11
| | | | | | Make this function a bit easier to read. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>