On Wed, Oct 10, 2018 at 11:51:24AM +0100, Ian Jackson wrote: > > However I also see that: > > * without --include-dirty, it's completely ignoring the added > > d/source/format file > > This is indeed wrong. I think fixing "dgit: build-source and > push-source disregard -wc" the way I plan to would fix this too.
ACK. > > * with --iclude-dirty is giving up with > > error: tree contains uncommitted files and --clean=check specified > > That seems coherent. Unless you think --include-dirty should turn > --clean=check into --clean=none ? That seems unwise. ACK > Consider --clean=dpkg-source --ignore-dirty, which means to run the > rules clean target and then tolerate uncommitted stuff. That's -wd/-wdd. Mhh, You have a point here, I should try that in the future. I like -wc because it's impossibly quick and usually it's the state I find myself in while working. > > * without -wc and with --include-dirty, it tries to its quilt > > linearisation, but it fails with: > > I think this is because the algorithm used by dgit for quilt > linearisation implicitly assumes that it can use the > debian/source/format from your git tree. I think trying to work with > an uncommitted change to debian/source/format is sufficiently weird > that I don't mind that it goes wrong. That's a fair assumption. You mentioned somewhere that you could add at least a warning when d/source/format has uncommitted changes (or is present but untracked). I think I would find that useful. > The other question is what you expected dgit's quilt linearisation to > do for you. If you use --include-dirty with a tree with > dpkg-source-uncommitted changes, I think you'll get the same error. > There is no way round this because dgit's quilt fixup generates > a *commit* containing the added patches. It wouldn't make sense to > commit patches for uncommitted changes. Right, now I get this. I think I didn't realize the not-so-little detail about linearising commits, not changes. > That --include-dirty does not cause dgit to try to do quilt fixup for > uncommitted changes is perhaps implicit in > https://manpages.debian.org/unstable/dgit/dgit.7.en.html#FORMAT_3.0_(QUILT) > and the description of `dgit quilt-fixup' in > https://manpages.debian.org/unstable/dgit/dgit.1.en.html > but perhaps something should be included in the discussion of > --include-dirty, maybe something like this: > > Changes not committed to git are not taken into account by dgit's > quilt fixup (see `FORMAT 3.0 (QUILT)' in dgit(7). So you may need > to run dpkg-source --commit yourself. > > ? I must admit that I haven't recently read dgit's documnetation (as I did last year, and costantly re-reading documentation you already read is quite boring), so I wouldn't have noticed. But perhaps making that point explicit could help others in the future. -- regards, Mattia Rizzolo GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. more about me: https://mapreri.org : :' : Launchpad user: https://launchpad.net/~mapreri `. `'` Debian QA page: https://qa.debian.org/developer.php?login=mattia `-
signature.asc
Description: PGP signature

